SCRABBLE NOTE

思うがままに書き殴るブログ

2012-04-02

プログラマーの技術情報を記録するアプリKobitoが素晴らしい!

皆さんは、プログラミングに関する知識をどうやって蓄積していますか?私は、ずっとEvernoteに蓄積していたんですが、つい最近からKobitoへ乗り換えました。今回は、このKobitoについて、少し紹介したいと思います。

Kobito

Kobitoとは、プログラミングに関する知識を記録、共有する最適なサービスQiitaのチームによって開発中のMacクライアントアプリです。2012/04/01の現在では、先行ユーザーのみ利用する事が可能で、4月上旬にリリースが予定されています。

主な機能

Kobitoは、プログラマーの技術情報の記録と共有に特化しています。主な機能は、以下の通りです。

* Markdown記法を用いたメモと即時プレビュー機能

* コードのシンタックスハイライト機能

Kobitoが素晴らしい理由

Kobitoを利用すると分かりますが、非常にシンプルな作りとなっています。UIも目立ったデザインではありませんし、斬新な機能が搭載されている訳でもありません。では、何がそんなに素晴らしいのでしょう?私の中で、Kobitoが素晴らしいと思う理由はただ一つです。

プログラマーの技術情報のメモをストレス無く簡単に取れるから

私はKobitoが使いたい訳ではなく、技術情報をメモして残しておきたいだけです。Kobitoは、必要以上にそのエディターとしての存在をアピールしません。それくらい、UIが非常にシンプルに設計されており、『メモを書く』事だけに集中させてくれます。シンタックスハイライトもサポートされているし、何よりアプリ自体の動作が軽いので使いやすいのです。

Evernoteは、必要以上にメモの体裁を整える事が可能です。技術情報をメモして残しておきたいだけの場合、そこまでの機能は必要ありません。そもそも、何故、メモを取るのかと言うと、すぐ忘れるからです。忘れる事を前提にしている為、メモをしておいて後で見返す訳です。必要以上に体裁を整える事よりも、メモをするという行為自体をスピードアップし、いつでも見返したい時にすぐ取り出せるようにした方が効率的です。

Markwodn+シンタックスハイライトという非常に一般的な既存技術を組み合わせただけのソリューションですが、私の中では現時点で最強のメモアプリです。

Qiitaチームが目指す未来予想図

プログラマーは誰でも、メモの一つや二つは隠し持っていると思います。何故、それを皆で共有しないんだろうか?もっと積極的に自分が持つメモを共有した方が、プログラマー全員が幸せになれるのではないか?壁にブチ当たる度にググって、あちこちのサイトを彷徨うより、1箇所に全ての技術情報が集約されている方が幸せではないだろうか?Qiitaチームは、このような問題を解決すべく、その為の環境作りをしているのではないかと勝手に予想しています。今後に期待ですね。

まとめ

『全てはプログラマーが幸せになる為に!』

そんな熱いメッセージがQiitaやKobitoからは感じられます。やっぱり、プロダクトに愛って宿るんだなーって、しみじみと感じている今日この頃です。皆さんも、Kobitoがリリースされたら、是非使ってみて下さい。

2012-03-31

『第4回 SFNewTech Japan Night 東京セミファイナル』を観覧して来ました!

2012/03/30(金)に開催された『第4回 SFNewTech Japan Night 東京セミファイナル』を観覧して来ました。場所は皆さんお馴染み、VOYAGE GROUPさんです。

SFNewTech Japan Night

このイベントは、『日本からオリジナリティの高いWebサービスをもっと世界へ発信する!』という想いから始まったイベントです。スタートアップ企業が自らのサービスをアメリカのVCに対してプレゼンし、勝者はサンフランシスコにて行われる本戦に出場する権利が得られるそうです。このイベントによる過去の出場企業の実績も見れるみたいです。

当日

いや、実は全く認知していないイベントだったのですが、相棒に一緒に行かないか?と誘われたので行ってみました。やや遅れて会場入りするも、既に、大勢の人が集まっていて盛り上がっていました。当日の様子は、『#SF_JPN』のハッシュタグで確認してみて下さい。

パネルディスカッション

まずは、孫泰蔵さん、本間真彦さん、上杉周作さん、ブランドン・片山・ヒルさんによるパネルディスカッションでした。テーマは、『今グローバル起業家に求められる要素』です。その中でも特に気になった点だけ幾つか挙げてみます。

・そろばんに価値は無い

孫泰蔵さんのお兄さんである孫正義さんのエピソードです。孫正義さんが小学生の頃は、そろばん塾へ通うのが当たり前な時代だったそうです。そんな当たり前の状況下、孫正義さんは敢えてそろばん塾には通いませんでした。理由は単純明快で、自分が大人になった時、こんなそろばんを使って計算しているなんて有り得ない!そんな事より、もっと大切な事に時間を割くべきだと考えていたからだそうです。自分の中で何が大事で、何がゴミかって話しですね。ゴミに時間を費やすくらいなら、もっと大切にすべきモノに時間を割くべきです。非常に共感しました。

・クリエイティビティを鍛える環境

海外のある小学校では、絶対的な正解が無い問題を解かせているそうです。正解が無い問題をどうやって解けば良いのか。これは自分の頭のクリエイティビティをフル回転させて、オリジナリティのあるアウトプットを出す訓練です。公文式で幼少を過ごした私には驚きでしたね。正解の無い問題を解く事ほど、難しい事は無いですよね。

・英語版を先に開発すべし

よくある日本企業は、日本のマーケットだけを見ているので、当然、日本版の開発を優先して実施します。その後、日本版を海外版へローカライズする訳ですが、ココが大抵上手く機能しないというお話しでした。日本版を開発する際に、どうしても日本向けに開発するという思考が働いてしまい、日本仕様になってしまうらしい。海外を視野に入れているのであれば、まず、最初に英語版を開発しなさい。それから、日本版へローカライズするのです。この視点は今まで無かったので、とても新鮮でした。何か開発する時は、念頭に置いて開発した方が良さそうです。

プレゼン

スタートアップ企業15社による5分間のプレゼン、その後、5分間だけVCからの質問に答えるという形式でした。プレゼンはアメリカから来たVCに対して行うので、当然、全て英語。VCからの質問も英語だし、回答も英語。しかも、通訳は一切無し!という、英語さっぱりな私には敷居が高い感じがありましたが、日本語英語?であれば、なんとか聞き取れる事が判明しました。実は、この手のプレゼン、俗に言う、エレベーターピッチを生で聞くという体験は初めてだったので、アジャイルサムライに出てくるエレベーターピッチを思い出しながら聞いていました。で・・・結果的には、途中で抜けだしてしまったんですが、感じた事を書いておきます。

問題に深く共感出来るかどうか

どんなにそのサービスのアイデアが斬新で素晴らしくても、デザインがイケてても、そのサービスが解決しようとしている『問題』そのものに共感を持てなければ、人の心は動かせない、つまり、そのサービスを自分が利用するだけの価値は生まれて来ないなと思いました。全てのプレゼンを見た訳では無いのですが、少なくとも、自分は使わないだろうな、使っても一瞬で飽きるだろうなと。要は、私はターゲットユーザーでは無かったという事になります。実際、今までたくさんのサービスが生まれては触り、そして、触らなくなりました。人の時間は限られているので、そのサービスに割り当てられるだけの価値が無ければ、長く使ってもらう事も出来ませんよね。どれだけのターゲットユーザーが共感をし、そのサービスを愛してくれるかが肝ですね。

まとめ

何はともあれ、日本のスタートアップ企業の熱さは体感出来ました。私はエンジニアなので、開発という視点だけで見てみると、どれも素晴らしい出来だなと思いました。このイベントに参加して、もっともっと、日本からモンスター級のサービスが出てきて欲しいし、自分もその一端に少しでも関われたら良いなと思いました。その為には、日々、修行が必要ですね。

2012-03-06

第1回 渋谷Edge Rails勉強会×株式会社ドリコム事例発表 + heroku de rails事例発表に参加したよ!

2012/03/06(火)にGMOさんで開催された、第1回 渋谷Edge Rails勉強会×株式会社ドリコム事例発表 + heroku de rails事例発表に参加したよ!

 

記念すべき第1回という噂を聞き付けて、これは是非出てみようと思って参加した。

会場はとても広くてキレイで、もうここに住んで作業しちゃいたいくらいでしたね。

 

で、集まった人数は約250人くらい?今年に入ってから色んな勉強会に出てきたけど、こんなにRailsやってる人が居たのかー!と衝撃を受けた。そして、そこに紛れ込むいつもの勉強会の顔ぶれ。

 

まず、最初は @ppworks さんによる「HerokuでRails3.2 - We love Heroku 開発事例」です。

http://speakerdeck.com/u/ppworks/p/we-love-heroku

 

We love Herokuとは、 @ayumin さんがボソッとツイートした一言をきっかけに一夜にして @ppworks さんが作り上げたサービスで、Herokuを使ってるサービス、どんどん登録して紹介してこうよー!っていうサービスです。LT内容は、HerokuでRails3.2をやる場合、当然、StackはCedarだよねーとか、therubyracerは不要だよねーとか、これからHerokuでRailsする人には必須の知識を紹介していた。そして、最後に少しOpenGraphのお話し。あんまりFB周りに詳しくないので、あんまり理解出来なくてスマン。

 

次は、 @onk さんによる「Rails3.2って何が変わるの?」のお話し。

http://www.slideshare.net/takafumionaka/rails32

 

まず、Development環境が超高速化した。これは今まで全ファイルを読み込んでいたのに対して、差分があったファイルのみを読み込むようにしたからだそうな。高速化が体感出来る程、早くなるとはちょっと試してみなくてはである。あと、ログにタギング出来るってのも追加されたらしいし、スロークエリーが出力されるようになってたりと、もう超高速で説明してくれて、Rails3.2、細かい所が改良されてて良い感じですね。他にもたくさん紹介して頂いたのだが、如何せん、量が多くて全て覚えきれなかった。後日、スライドをアップするそうなので、そちらを参照すると良いっすね。

 

最後は、 @arihh さんによる「ソーシャルアプリで使うjpmobileガラケーからスマホへの対応」のお話し。

ソーシャルゲームのというお題だったけど、あんまり普通のjpmobileの扱い方の領域を出なかった感がある。でも、jpmobileを知らない人にとっては、ほぅほぅ、って感じだったのかな。自分は去年、jpmobileでガツガツ作ってた事があったので、それ程、新鮮味は無かったかもー。

 

その後、ドリンクと軽食が出てきて懇親会。いや、太っ腹ですね、こんなに色々と無料で出してくれちゃって良いんですか?でも、一瞬で全て無くなった。

 

この時、 @ayumin さんによるHerokuのLTも実施された。この中でHeroku使ってる人は?って問いに手を挙げたら、手を挙げた奴に要はないから後ろに引っ込めと誘導されたりとか。ついでにHerokuの名刺も頂きました。前回会ったHerokuのMeetupではSalesForceの名刺だったんですが、Herokuの名刺格好良いっす。

 

そして、いつも勉強会でよく会う人達と少し喋ってお開き!

 

今回の収穫は何だろう?と考えると、 @ppworks さんによる勇気と行動力だろうか。

これはきっと、彼の才能なんだと思う。俺も勇気と行動力、意識して高めて行きたいわーって思った。

全然Rails関係ねーじゃん!でも、楽しかったから良し!

2012-03-06

The RSpec Bookを読んだ!

やっぱり、ちゃんとテスト出来るようになりたいっていう一心で、The RSpec Bookを購入して読んでみた。

 

まえがきをすっ飛ばして読んでいたのだが、途中で「あれ、これRSpecの本じゃないな」とか思ったら、フォロワーさんからまえがき読みましたか?と。

戻ってまえがきを読み返してみると、「これはRSpecの本ではありません」と書いてあるではないか!

 

そう、RSpecの文法を覚えたくて購入したんだけど、前半は全然そんな類の話しが出てこないのだ。

そもそも、テストを書くとはどういう事なのか、そこから丁寧に説明してくれる。

感覚的にはRSpecよりも、もっと上のレイヤーから説明をしてくれていて、だんだんと深堀りしていく感じ。

RSpecは手段であり、目的ではないという事を教えてくれる。

 

本質に迫る説明なので、テストについて包括的に学びたい時にもオススメ出来る。

説明は段階を踏んでいるので、その時、どう考えるべきかといった視点も身に付くだろう。

 

後は、これを読んだ結果をアウトプットとして、実際に試してみる事が課題だな。

Webratについては、最新版と違う所もあるそうだし、最近はCapybaraの方が良いよという話しもあるそうだし、

まだまだ、やる事が盛り沢山な感じですなー。

 

って事で、まだ読んでない人、特に、テストをまだ書いてない、書き方が不明、考え方が不明な人は是非、一度読んでみると収穫があると思う。

特に自分の場合、RSpecだけの知識を期待して購入したので、意外な収穫があって得した気分になった。

2012-03-06

ワンクリックデプロイ勉強会に参加したよ!

2012/03/05(月)に横浜のアットウェアさんにて開催された、ワンクリックデプロイ勉強会に参加した!

 

当日使用されたスライドはこちら。

http://www.slideshare.net/Ryuzee/101-10647187

 

詳細は全てスライドに書いてあるので省略!

一番印象に残った言葉についてだけ書く。

 

「テスト自動化しないなんて、頭おかしいんじゃないですか?」

 

ジョークのように聞こえるかもしれないが、これをサラっと言える、その感覚がスゴく大事だと思った。

これは、テスト自動化する事を常識として捉えていて、テストを手動でやるという選択肢が無い事を意味している。

もちろん、時と場合によって手動テストでないと困難なケースもあるだろうけどね。

 

自分はまだ、この領域に手を出し始めたばかりで、その感覚には程遠い。

テスト自動化するのが当たり前で、それが無いと不安に陥るくらい、自分の中に定着しないといけないと思った。

話しはそれからだ。

2012-03-02

最高にクールなeラーニングサービスを知ってるかい?教えてあげよう!それは・・・!

Code Schoolさー!

知ってる人は知っている、海外の有名企業envylabsが絶賛提供中のeラーニングサービスである。

 

まずは、トップページをご覧頂こう。

f:id:fakestarbaby:20120302140907j:plain

 

Railsを世界にぶっ込んだ、あのDHHもこう言っている。

 

Code Schoolはマジでヤベェ・・・コイツは次世代の学習方法さ

 

Code Schoolは、Rails公式サイトでも紹介されてるので、お墨付きと言ってもいいだろう。

では、何がそんなにヤベェのか?

 

Code Schoolのコンセプトはこうだ。

 

本を読むだけでは技術は身に付かない。実際にコードを書いてブラウザで確認する作業が必要だ。そして、その作業は楽しくあるべきだ。

 

これを実現する為に生まれたCode Schoolの特徴を簡単にまとめるとこんな感じだ。

・特定のテーマ(Ruby/Rails/jQuery/CSS/Coffee…)単位で学習コースを受講可能で、無料と有料がある。

・ブラウザでスクリーンキャストを視聴して理解した直後、すぐに問題にチャレンジして理解を深める。

・スクリーンキャスト、スライドを入手可能。

 

ふ~ん・・・という感じだろうか。ちょっと文面だけでは伝わりにくいかもしれない。

個人的にCode Schoolが最高にクールだと思っている点は、テーマ毎に構築された世界観と、学習する際のゲーミフィケーションだ。

 

では、Code Schoolで提供されている学習コースを見てみよう!

f:id:fakestarbaby:20120302141034j:plain

いっぱいあるー!

今回は無料コースのRails For Zombiesについてご紹介しよう。

f:id:fakestarbaby:20120302141236j:plain

このコースはRailsの基本的な仕組みについて学習する事が出来るコースになっている。

海外らしくゾンビを世界観にする事で、非常にクールでグロい感じになっているのが伝わってくる。

始めに断っておくが、周りに人が居ない事を確認してから試す事をオススメする。

俺みたいに電車内でゾンビ映像を垂れ流して、隣の人に白い目で見られてはイケナイ・・・。

 

コースを始めると最初に目にする画面はコレだ。

f:id:fakestarbaby:20120302141412j:plain

 

えぇ、グロいですが乗り越えましょう。最初だけです。

コースは5つのレベルに分けられており、それぞれ、テーマ毎に学習する内容が異なっている。

Rails For Zombiesは以下のようなレベル分けとなっている。

 

Level1:CRUD

Level2:Model

Level3:View

Level4:Controller

Level5:Routing

 

それぞれのレベルで5~10分程度のスクリーンキャストが用意されていて、クールな音楽と映像、そして、軽快な喋りで説明をしてくれる。

もちろん、全て英語だが心配しなくても大丈夫!

このスクリーンキャストは非常に分り易く出来ている為、見ているだけでも理解出来るようになっている。

次世代の学習方法の一つとして、このようなインタラクティブなスクリーンキャストは個人的に注目。

本を読んでいるだけでは味わえない、スッと理解出来るようなこの感覚は病みつきになる。

 

さて、スクリーンキャストを視聴して大体理解したら、次は実際にコードを書いて試す画面へ。

f:id:fakestarbaby:20120302141515j:plain

問題が出題されるので、正しいコードを書いて理解を深めるモードになる。

問題数は学習コースによって異なる。

問題って言ったって、スクリーンキャストを見ただけじゃ解けないよ!そんなに記憶力ねーよ!と嘆かなくても大丈夫!

そんな貴方の為に、ヒント機能が搭載されている。

各問題につき、2~3個のヒントが用意されていて、少しずつヒントを貰って頑張る!といった解き方が可能。

但し、ヒントを貰うとスコアが減る。スコア?そう、スコアっていう概念がある。

ノーヒントで全レベルの問題を解けばパーフェクト!ヒントを貰いまくってると、どんどんスコアは低くなる。

これは単純に言えば成績みたいなもんだ。

 

そして、全ての問題を解くと次のレベルへ進めるような仕組みになっている。

地味にバッチが貰えたりとか。

 

簡単に説明すると、こんな流れになる。

この時に視聴したスクリーンキャストとそのスライドはダウンロード出来るので、手元で確認する事も可能だ。

これは嬉しい特典。

 

更に、学習コースをコンプリートすると、RailsTutorialの割引きが受けられたり、CodeSchoolの割引きが受けられたりもする。

実に上手く出来てる。

 

有料の学習コースを単独で申し込む事も出来るが、月額で$25払えば全てのコースが遊べるようになる。

更に、別枠で用意された単体のスクリーンキャストも閲覧可能になる。

ホント、実に上手く出来てる。

 

少しでも興味を持ったら試してみるべき!

これは体験しないと分からない、そんな新しい学習方法だ。 

一言で言えば、楽しい!ただ、それだけ。でも、楽しいの大事!

 

個人的にオススメしたいのは、Rails Best Practiceという学習コース。

汚いコードがみるみるリファクタリングされ、美しいコードになる様は見ていて気持ち良い。

これは本では味わえない感覚。

 

さぁ、今すぐ貴方も試してみよう!

http://www.codeschool.com/