« 2014年8月 | メイン | 2014年10月 »

2014年9月

2014年9月29日 (月)

プロフェッショナルのための実践Heroku入門

ちょっと遅くなりましたがHerokuの相澤さんより「プロフェッショナルのための 実践Heroku入門」を頂いたので軽く感想を書いておきます。



ページ数は180ページと若干薄めです。
アドオンやアーキテクチャのあたりはもう少し分量あっても良かったかな、という印象。
わりとすぐに全部読めちゃいます。

一回通しで流し読みした後は逆引きで使えるのが良いです。
ドメインやSSLの設定とかはHeroku使っててもやったことがない人も多いだろうからとっかかりとしてはとても良いと思います。
(ただし、UIとかはわりと頻繁に変わるので概要理解したら一度はDev Centerのドキュメントも見た方が良いです。)

ちなみにHerokuチョット使える身としてはほとんど既知の内容だったんですが、一個だけはじめて知った機能はこれ。

 

$ heroku logs -r prod

 

git remoteに複数のHerokuアプリケーションが登録されている場合に「--remote」または「-r」にgit remoteのエイリアスを指定することでアプリを指定できる

おおっ!
これまでずっと「-a <アプリ名>」でやってたよ。。。
こっちの方が大分タイプ量が減るので便利。(^^v


個人的に一番面白かったのは「はじめに」のHerokuの歴史のところです。僕がはじめてHerokuに触ったのはJavaサポートが入った頃なので、それ以前の歴史は興味深かったです。


あと最後のThe Twelve Factor Appもお勧め。

The Twelve Factor Appはネット上にも日本語訳ありますが、これはWebアプリを開発する人は全員読んだ方が良いと思う位の良プラクティスです。
Heroku使わない場合でも有効なプラクティスなので、できるだけ多くの人に読んでもらいたい。(^^;



そして、これこそが僕がHerokuを好きな理由でもあります。

Herokuを使うと、これらのプラクティスが半ば強制的に適用されるようになっているんですが、何が凄いってそれでいてベンダーロックインにならないんですよね。
Herokuで作ったアプリは割と簡単にAWS等の別の環境に移すことができます。

これは本当に凄いことだと思います。
ベンダーはあの手この手でユーザを自社環境に縛りつけようとするものですが、そのための一番簡単な手段(=うちの環境使うとこんなに簡単にアプリ作れますよー、そのかわり他の環境では動かないけど)を放棄しているので。

逆から言うと、Heroku以外の環境を使う場合でもベンダー独自機能の誘惑に負けずTwelve Factorは適用すべきとも言えます。
それによってベンダーロックインから逃れることができるので。

大事なことなのでもう一回言いますが、Herokuを使うとTwelve Factorが半ば強制的に適用されます。読んでみて内容はわかるけどイマイチぴんとこない、という人は一度Herokuを使ってみると良いと思います。
最初は不便に感じるかもしれませんが、使っているうちに自然にTwelve Factorが身に付きます。

書籍の冒頭にも書いてありますが、Herokuの理念は「アプリケーション開発者の生産性を高めること」であり僕の関わったこの数年ではその理念はまったくぶれていないと感じます。
Herokuには是非ともこのままがんばってほしいものです。

本当にもうあとは日本に来てくれさえすれば何の文句もありません。

2014年9月12日 (金)

ScalaMatsuriに行ってきた話

先週末はScalaMatsuriでした。
非常に内容の濃い2日間でとても勉強になりました。

本当は2日目は途中で離脱する予定だったんですが、あまりにも面白かったので結局最後までいちゃいましたからね。(^^;

Scalaの懐はあまりにも深く、チョットカケルようになった位ではまったくその深淵には辿りつけないということを改めて実感しました。
それが面白いところでもあるんですけど。(^^;

セッション中も本編よりも端の方にさらっと書かれている知らないワードをググって芋づる式に新事実(俺が知らなかっただけ)に気付かされることも度々。

ちなみにそんな中で個人的な最大のヒットはこれです。

Iterator.continually()を使おう


こんなメソッドあるなんて全然知らなかった。。。
今までJavaのInputStreamを読む時はあきらめてvarを使ってましたが、これがあればvalだけでいけますね。(^^;
(場所によっては甘えだと怒られるようです(Scala怖い)。僕は絶対に使いたくない!と言うほどに否定的ではないですが極力使わない方が良いですね。)

セッションで面白かったのは

- 小田好先生のScalaの歴史、未来、哲学の話
- sbtのお話
- Node.js vs Play
- マクロの話
- RubyとScalaの話
- HaskellとScalaの話
- コードレビューの話
- GitBucket会議

などです。
初日のセッションは全部ニコ生で見られるようなので興味ある人は見てみると良いと思います。

http://live.nicovideo.jp/watch/lv191315006

なんか再生数が凄いことになってますが。。。(^^;;;
僕もいくつか裏番組気になってるものがあるので週末に見ます。


本当は終わり間際にツィートしてたHerokuでScalaのコンパイルをスキップする方法についてちょっとトライしたのでその顛末について書こうと思ってたんですが、ScalaMatsuriを振り返ってたら結構な時間を消費しちゃったのでまた今度にします。
(ちなみに結論はできることはわかったけど多分イマイチです。)



最後に今回のScalaMatsuriを企画・運営されたスタッフの皆様に心から感謝申し上げます。
ハッピ着たスタッフの人達20人以上いたんじゃないですかね。こんなにもScalaを盛り上げようとしている人がたくさんいるのかということに驚いたし嬉しくもなりました。
Scalaもっとメジャーになると良いですね。

ちょっと前までは入門者から初心者になるまでのハードルがものすごい高かったけど最近はそうでもないので、とりあえず皆触ってみると良いよ。(^^;

採用情報

株式会社フレクトでは、事業拡大のため、
Salesforce/Force.comのアプリケーション
開発
HerokuやAWSなどのクラウドプラッ
トフォーム上でのWebアプリケーション開発

エンジニア、マネージャーを募集中です。

未経験でも、これからクラウドをやってみた
い方、是非ご応募下さい。

フレクト採用ページへ

会社紹介

株式会社フレクトは、
認定コンサルタント
認定上級デベロッパー
認定デベロッパー
が在籍している、
セールスフォースパートナーです。
heroku partnersにも登録されています。
herokuパートナー
株式会社フレクトのSalesforce/Force.com
導入支援サービス
弊社の認定プロフェッショナルが支援致します。
・Visualforce/Apexによるアプリ開発
・Salesforceと連携するWebアプリ開発
も承っております。
セールスフォースご検討の際は、
お気軽にお問合せください。
Powered by Six Apart