Packt Publishingの電子書籍を安く買う方法

イギリスのIT系の出版社であるPackt Publishing、知ってる人も多いと思います。紙の書籍と電子書籍を出しており、Amazonなんかでも買えます。

で、Kindleで安く売ってたりするんですが、一部の書籍は50%オフで買える場合があります。

Exclusive offer: get 50% off this eBook

ということで、私が見つけた50%引きのオファーが掲載されているページをまとめておきます。

Packt Publishingから直接買った方が、DRMフリーでPDFやEPUBなどさまざまなフォーマットで入手できますので、少しくらい高い程度なら直接買うことをおすすめします。

「Getting Started with Phalcon」、もちろん公式ドキュメントよりはずっと薄い(というか公式ドキュメントをソニーリーダーに入れたら1000ページ以上あるw)んだけど、INVOチュートリアル以上にわかりやすい。 https://twitter.com/ryomojp/statuses/428485533434519553

『Mastering Web Application Development with AngularJS』は洋書だけど、AngularJS やるならこれだけは読んどけっていう、ほんとによく書かれてる本。めっちゃ勉強になってます。 http://angularjsninja.com/blog/2013/12/20/mastering-web-application-development-with-angularjs/

$5 eBook Bonanza

あと、年末にすべての電子書籍が5ドルになるセールをやっていました。

このようなセールがいつ、あるいは、どれくらいの頻度であるのかわかりませんが。

(2015-01-24 追記) 少なくとも、2013年、2014年の年末年始にこのセールがありました。

ちなみに、bonanzaとは英辞郎によると「〔思いがけない〕ぼろもうけ、大当たり、幸運、掘り出し物、たなぼた、当たり年」というような意味らしいです。

関連

Tags: ebook, fuelphp, codeigniter, phalcon, angularjs

FuelPHP 1.7のComposerによるインストール

FuelPHP Advent Calendar 2013
FuelPHP Advent Calendar 2013参加有志
達人出版会
発行日: 2013-12-27
対応フォーマット: EPUB, PDF

『FuelPHP Advent Calendar 2013』の11日目に

  • FuelPHPをもっとComposerで使う

がありますが、fuel/fuelリポジトリ内の必要なファイルを個別にダウンロードして取得するというのが、どうもスマートでないので、私なりの方法を考えてみました。

(2014-07-14 追記) FuelPHP 1.7.2から正式にComposerによるインストールが可能になりました。詳細は、FuelPHP 1.7.2のComposerによるインストールを参照してください。

オレオレインストール方法

GitHubからfuel/fuelリポジトリの必要なブランチを取ってきます。

$ git clone -b 1.7/master git://github.com/fuel/fuel.git ProjectName

.gitmodulesを削除します。

$ cd ProjectName
$ rm .gitmodules

composer.jsonを編集しサブモジュールだったものを追加します。必要なパッケージは、requireに追加してください。以下の例ではoilしか追加していません。

--- a/composer.json
+++ b/composer.json
@@ -18,7 +18,117 @@
     "require": {
         "php": ">=5.3.3",
         "monolog/monolog": "1.5.*",
-       "fuelphp/upload": "2.0.1"
+       "fuelphp/upload": "2.0.1",
+        "fuel/core": "1.7",
+        "fuel/oil": "1.7"
+    },
+    "repositories": [
+        {
+            "type": "package",
+            "package": {
+                "name": "fuel/core",
+                "type": "fuel-package",
+                "version": "1.7",
+                "require": {
+                    "composer/installers": "*"
+                },
+                "source": {
+                    "url": "https://github.com/fuel/core.git",
+                    "type": "git",
+                    "reference": "1.7/master"
+                }
+            }
+        },
+        {
+            "type": "package",
+            "package": {
+                "name": "fuel/auth",
+                "type": "fuel-package",
+                "version": "1.7",
+                "require": {
+                    "composer/installers": "*"
+                },
+                "source": {
+                    "url": "https://github.com/fuel/auth.git",
+                    "type": "git",
+                    "reference": "1.7/master"
+                }
+            }
+        },
+        {
+            "type": "package",
+            "package": {
+                "name": "fuel/email",
+                "type": "fuel-package",
+                "version": "1.7",
+                "require": {
+                    "composer/installers": "*"
+                },
+                "source": {
+                    "url": "https://github.com/fuel/email.git",
+                    "type": "git",
+                    "reference": "1.7/master"
+                }
+            }
+        },
+        {
+            "type": "package",
+            "package": {
+                "name": "fuel/oil",
+                "type": "fuel-package",
+                "version": "1.7",
+                "require": {
+                    "composer/installers": "*"
+                },
+                "source": {
+                    "url": "https://github.com/fuel/oil.git",
+                    "type": "git",
+                    "reference": "1.7/master"
+                }
+            }
+        },
+        {
+            "type": "package",
+            "package": {
+                "name": "fuel/orm",
+                "type": "fuel-package",
+                "version": "1.7",
+                "require": {
+                    "composer/installers": "*"
+                },
+                "source": {
+                    "url": "https://github.com/fuel/orm.git",
+                    "type": "git",
+                    "reference": "1.7/master"
+                }
+            }
+        },
+        {
+            "type": "package",
+            "package": {
+                "name": "fuel/parser",
+                "type": "fuel-package",
+                "version": "1.7",
+                "require": {
+                    "composer/installers": "*"
+                },
+                "source": {
+                    "url": "https://github.com/fuel/parser.git",
+                    "type": "git",
+                    "reference": "1.7/master"
+                }
+            }
+        }
+    ],
+    "extra": {
+        "installer-paths": {
+            "fuel/core": ["fuel/core"],
+            "fuel/packages/auth": ["fuel/auth"],
+            "fuel/packages/email": ["fuel/email"],
+            "fuel/packages/oil": ["fuel/oil"],
+            "fuel/packages/orm": ["fuel/orm"],
+            "fuel/packages/parser": ["fuel/parser"]
+        }
     },
     "suggest": {
         "mustache/mustache": "Allow Mustache templating with the Parser package",

Composerで必要なコンポーネントをインストールします。

$ php composer.phar install

これで完了です。

本家のfuel/fuelリポジトリの変更を今後もgitで取得したい場合は、このままこのリポジトリでアプリを開発していきます。

まあ、開発用のブランチくらい切る方がいいでしょうが。

$ git checkout -b develop

でdevelopブランチにcommitしていきます。

fuel/fuelの更新はほとんどないので手動でもいいという場合は、.gitフォルダを削除して、Gitリポジトリを初期化します。これなら、アプリに必要ないfuel/fuelの履歴は残らず、アプリの履歴のみがリポジトリに保存できます。

で、この状態のリポジトリを、プロジェクト最初の雛形としておけばいいのではないかと思いました。

(2014-05-28 追記) 解説した手順のGitリポジトリをGitHubで公開しています。

参考

Tags: fuelphp, composer

電子書籍『FuelPHP Advent Calendar 2013』正式版(1.0.0)が達人出版会より出版されました!

昨年末にβ版として公開されていた電子書籍『FuelPHP Advent Calendar 2013』が、昨日2014/01/27に正式版(1.0.0)としてリリースされました。

FuelPHPは、日本で人気のあるオープンソース(MITライセンス)のPHPフレームワークです。この1年でFuelPHPで構築された多くのサイトがリリースされており、日本での実務での利用実績も飛躍的に増え定着した感があります。日本語の情報も非常に増え、CakePHPには及びませんが、他の有名フレームワークに勝るとも劣らない状況だと思います。

この書籍は、アドベントカレンダーの記事をまとめ編集したものです(ブログ記事の誤りの修正や補足の追加も少々されています)ので、内容的には記事の寄せ集めであり一貫性はありません。また、順番も基礎から応用へというに整理されたものではありませんが、FuelPHPに関する最新の情報をいろいろな人が書いており、さまざまなトピックが含まれています。

FuelPHP Advent Calendar 2013
FuelPHP Advent Calendar 2013参加有志
達人出版会
発行日: 2013-12-27
対応フォーマット: EPUB, PDF

以下の達人出版会のサイトに会員登録すれば、どなたでも無料で入手(ダウンロード)できます。

内容は、開発環境の構築からレンタルサーバやPaaSでの使い方、ユニットテストの書き方、Twigの使い方、RESTful APIの作成方法、Composer、MongoDB、Fluentd、ユーザ認証に関するものなど非常に多岐に渡ります。

DRMフリーのPDF版とEPUB版がありますので、お好きなデバイスで読めると思います。無料ですので、ぜひ、読んでみてください!

過去の「FuelPHP Advent Calendar」の電子書籍

また、これでFuelPHP Advent Calendarは3年連続、電子書籍化され有名出版社より出版されています。3年連続で出版されているアドベントカレンダーはFuelPHPのものだけだと思います。

去年、一昨年のものは若干古くなってしまっているとは思いますが、それでもまだいろいろと参考になる点も多いです。すべて無料ですので、興味のある方は是非入手してみてください。

Tags: fuelphp, ebook