デザイン会社 btrax > Freshtrax > シリコンバレーのスタートアップ...
シリコンバレーのスタートアップはどんなプログラム言語を使っているのか?
先日どんなプログラミング言語をアメリカの企業やサービスが使っているのかリサーチしていたところ、興味深い英語記事を発見したのでシェアしたいと思います。
今日では様々なプログラミング言語が存在しそれぞれの言語が特定のそしてユニークな役割を果たしています。これらは特徴が異なるためどの言語が優れているか一概に言うことはもちろん出来ません。しかし時代によって人気のプログラミングの言語は移り変わっています。今シリコンバレーエリアの企業で使われているプログラミング言語は何なのでしょうか?
スタートアップに人気の4言語 – PHP, Ruby(Rails), Scala, Python
PHP – ウェブ開発において最も人気の言語
動的なページを作る上で最適なサーバーサイドスクリプト言語である。シンプルなブログ作成から誰もが使ってる世界的ウェブサービスを作るまで様々な用途に対応する。2013年1月の時点で、PHPは24億のウェブサイト、210万のウェブサーバーで使われている。
それではPHPを使っているシリコンバレーのスタートアップ企業を見てみよう。
PHPを使う企業/サービス一例
長所
- 広範囲に渡るユーザーとエンジニアを持つ
- 広範囲においてデータベースとの親和性が高い
- 文法が比較的容易なため、経験が浅いデベローパーでも使いやすい
- 長期間に渡る利用者が多いため、ネット上に利用可能な多量の拡張とソースコードがある
- 環境設定が行いやすい
- 異なるタイプのウェブサイトに対応できる
短所
- デスクトップアプリ開発には向いていない
- エラーハンドリングがあまり良くない
- 他の言語と比べ一般的に安全性が劣る
Ruby (Rails) – ピュアオブジェクト指向言語
手軽なオブジェクト指向プログラミングを実現するために、まつもとゆきひろ氏により開発されたオブジェクト指向プログラミング言語である。テキスト処理関係の能力に優れ、また文法もシンプルなため、簡単にコーディングが出来る。人間が自由に書きやすくデザインされており、10人が書いたら誰もが違うコードを書く可能性が高いので、可読性が落ちやすいことが難点。最近では、世界で最も人気のプログラミング言語トップ10にランクインしている。
それではRubyを使っているシリコンバレーのスタートアップ企業を見てみよう。
Rubyを使う企業/サービス一例
長所
- 複数のプラットフォームで機能する
- 文法が比較的容易なため、経験が浅いデベローパーでも使いやすい
- 曖昧であるとパーサが判断しない限り、予約語を識別して使うことができる
- 安全性に長けている
- シンタックス(文法構造)が柔軟である
- 日本のコミュニティが比較的大きい
- ダックタイピングと動的型付き言語である
短所
- リソースが比較的不足している
- 他の言語と比べて実行速度が遅い
- 保守性が低いため可読性が問題となることがある
Scala – 新世代言語
簡素かつ、エレガント、そして型安全な方法で、プログラミングパターンを表現するために作られた言語である。関数型言語とオブジェクト志向言語を上手く統合しており、それぞれの長所を併せ持つ。簡単にコードを書き換えられるため、変更に強く、そして柔らかい。一度ベータ版をリリースして変更を加えるリーン型スタートアップに向いている。最も若い言語の1つであり、今とても注目されている言語である。
それではScalaを使っているシリコンバレーのスタートアップ企業を見てみよう。
Scalaを使う企業/サービス一例
長所
- オブジェクト指向言語である
- 関数型言語としての側面も有する
- 静的に型付け可能である
- 拡張可能である
- 簡潔に書ける
- 柔軟なシンタックスを持つ
- リーン型スタートアップに向いている
短所
- 比較的難易度が高いため、書けるようになるまで時間がかかる
- コンパイルに時間がかかる
- まだまだ成長過程の言語である
- IDE環境を調えることがかなり難しい
Python – 多目的プログラミング言語
広く使用されるオブジェクト志向型スクリプト言語である。より少ないコード行数でプログラミングを表現することが出来る。洗練されたデザインと豊富な拡張モジュールを兼ね備える。ウェブアプリには向いていないが、数字の扱いに優れているため、機械学習、人口知能、AI、ビックデータ処理などに向いている。最も人気なプログラミング言語トップ8に2008年から常にランクインしている。
それではPythonを使っているシリコンバレーのスタートアップ企業を見てみよう。
Pythonを使う企業/サービス一例
長所
- 複数のシステムで実行することが出来る
- シンタックス(文法構造)が堅い
- ラピッドプロトタイピングと動的型付きを提供する
- 海外でコミュニティのサポートが強大である
- 長く多くの利用者が多いため、ネット上に利用可能な多量の拡張とソースコードがある
- 環境設定が行いやすい
短所
- 並行プログラミングにあまり向いていない
- 日本語の情報リソース(本、インターネット上での情報)が比較的少ない
- 日本でのユーザーがまだ少ない
最後に
それぞれの言語の説明も人によって解釈が違うので参考程度にとは思いますが、一つの目安にはなるかと思いました。どのプログラミング言語を学べば良いか迷っている場合、好きなスタートアップが使っている言語から始めてみるのも一つの手になるかもしれません。
プログラミング言語に詳しいエンジニアの方々、おかしい箇所等ありましたら、下のコメント欄に書いていただけると助かります。
参考記事: http://www.1stwebdesigner.com/css/tutorials-css/php-vs-ruby-vs-python/
photo by Heisenberg Media
CES 2025の革新を振り返りませんか?
私たちは1月11日(土)、btrax SFオフィスで「CES 2025 報告会: After CES Party」を開催します!当日は、デザインリーダーたちがCES 2025での注目トピックスや最新トレンドを共有します。ネットワーキングや意見交換の場としても最適です!