今朝(米国時間7/28)、TechCrunch Disruptを始め数多くのハッカソンにバックエンド・ツールを提供してきたChallengePostがDevpostと改名したのを祝って大量の興味深い統計を公開した。これに昨年のハッカソンで使われたモバイル・プラットフォーム、使用されたプログラミング言語、APIなどの種類が人気順にリストアップされている。
この統計は13,281人のデベロッパーが1万のプロジェクトに取り組んだ160回のハッカソンに基づいている。オリジナルのレポートはこちらで公開されているが、いくつかハイライトを紹介してみよう
デベロッパーが好むモバイル・プラットフォームについては次のような結果になった。Android、38.2%。iOS、22.7%。Windows Phoneははるかに引き離されて4.9%。34.2%のデベロッパーは「特に好みなし」。
Devpostのハッカソンで使われたプログラミング言語トップ10:
HTML/CSSとJavascriptがトップに来るのは自然だ。スクリプト言語vsプログラミング言語というテーマでたちまち議論が起きそうだが、ともかくどちらもとっつきやすく、コンパイルを必要とせず、OSと独立にブラウザ内で動作する。多くのデベロッパーが最初に学習する言語でもある。どんなハッカソンでももっとも使われる言語だろう。
注: HTMLはもちろん「プログラミング言語」ではない。これはドキュメントの要素をレイアウトし、コントロールするためのマークアップ言語だ。しかし「言語」であることには変わりない。またデベロッパーがもっとも頻繁に使う言語でもある。そこで言葉の定義には目をつぶってリストアップしておく。
Appleが公開してからわずか1年と1ヶ月しかたっていないのに早くもSwiftがリストされているのは驚きだ。
ではAPはどうだろう?
DevpostはAPIは細かいカテゴリー別に順位を公開している。いずれも非常に役に立つAPIだ。
コミュニケーションAPIのトップはDevpostによればTwilioだ。ソーシャルは予想どおり、FacebookとTwitter。支払ではVenmoがPaypalを上回った。話題のStripeは3位にとどまった。Google Mapsが位置情報カテゴリーのトップなのも予想どおりだろう。
Twilioがコミュニケーションでトップになったのは、Twilioがハッカソンに非常に力を入れてきた成果だ。ときにはTwillioのエバンジェリストが非公式に会場に姿を見せるだけという場合もあったが、ほとんどあらゆるハッカソンにTwillioが何らかの形で参加しているのを私は見てきた。Twilioは新たに採用した社員に必ず同社のAPIを使ってプロジェクトを完成させるよう義務付けている。Twillioの上級エバンジェリストの一人は会社を辞めてMajor League Hackingという学生のハッカソンを世界中で組織するスタートアップを立ち上げたくらいだ。
ゲームではUnityが圧倒的だ。1000件ものプロジェクトがUnityを利用したという。2位のPygameのプロジェクトはわずか50件だった。
Devpostはテキスト・エディタのランキングも発表している。1位はSublime Textだったが、偶然これは私も愛用している。実はこの記事もSublime Textで書いている。
ではハードウェアはどうだろう?
ハードウェア・ハッキングのキングがArduinoというのは誰しも納得だろう。比較的軽量なハードウェア・プロジェクトならなんでもこなす柔軟性があり、開発の途中でボードを数枚破壊してしまってもそれほど懐が傷まない。もっとトレンディーなところではMyoのジェスチャー・リストバンド、Pebbleのスマートウォッチ、Leapのモーション・ジェ・コントローラー、Oculus Riftヘッドセットなどが目立つ。Raspberry Piはなぜか6位にとどまった。
こうした統計は興味深いものの、現実世界の動向を表しているとは限らないという点は念を押しておきたい。このデータだけを頼りにどの言語を学ぶか決めたりするのは賢明ではない。初心者は取り付きやすい言語を選ぶのがよいだろう。その点でJavaScriptは悪くない。いずれにせよ、まずプログラミングというものの性質全般を学び、その後で各言語の差異に注意を向けるようにした方がよい。「そんな言語は古いからダメだ。なんとかいう〈今年のトレンディー言語〉を学べ」などという奴がいたら「くそくらえ」と言ってやるとよい。
Devpostのオリジナル・レポートはこちら。
TechCrunchの主催するDisruptサンフランシスコのハッカソン も数週間後に迫っている。
[Devpost(以前のChallengePost)がこの興味深いデータを送ってくれたことに感謝する]
[原文へ]
(翻訳:滑川海彦@Facebook Google+)