TechトレンドVol.143

『Dropbox』入社3番目のプログラマーが語る「僕らがすべてをPythonで開発してきた理由」~PyCon APAC 2013

近年タブレットやスマートフォンの普及によってあらゆる場所からネットにアクセスできるようになり、前以上にストレージサービスが重宝されるようになってきた。それに伴い、GoogleやMicrosoftといったブラウザを提供する企業が自社ブラウザと相性の良いオリジナルのストレージサービスを提供するようになった。

しかし、その中でもいまだに根強い人気を誇るのがDropboxである。

Dropboxは2012年11月にユーザー数が1億人を超え、2013年7月9日時点で1億7500万人を突破したと発表した。実に約8カ月で7500万人のユーザーを獲得したことになる。

そんな巨大なサービスとなったDropboxのコードは、すべて1つの言語で書かれている。その言語がPythonである。

Pythonの魅力はどこにあるのか、9月13~16日に開催された『PyCon APAC 2013』の基調講演で来日したDropboxのエンジニアRian Hunter氏が語った。

豊富なGUIツールキットがDropboxのポータビリティを実現する

Rian氏は、Dropbox初期のアルファおよびベータバージョンのころから開発に携わってきたエンジニアだ。同氏が開発にかかわるようになってからずっと、「DropboxはどのOS、どんな解像度の画面であっても常に正常に動作するのを前提としてきた」と語る。

by ilamont.com ストレージサービスは大前提としてあらゆる環境からのアクセスが可能でなければならない
by ilamont.com ストレージサービスは大前提としてあらゆる環境からのアクセスが可能でなければならない

さまざまな環境からアクセスされることが大前提のストレージサービスでは、ユーザー環境に依存しない開発が重要なのだという。Dropboxはこれを実現するためPythonを用いたということだ。

「Pythonは魅力的な開発言語の一つです。それに、プログラマーとして書いていて心地いい(笑)。学びやすく書きやすいシンプルさ、自分の使いたいように編集できる拡張性、クラッシュすることが少ない安全性など、その魅力はたくさんありますが、GUIツールキットはPythonがDropboxにもたらした恩恵であると言えます」

Rian氏によるとDropboxのポータビリティを可能にしたのはPython の豊富なGUIツールキットによる所が大きいという。

ctypesやwxPythonなどのGUIツールキットを用いればプラットフォームに依存しない環境を作ることが可能になるため、DropboxはUIに至るまで、徹底的にすべてPythonのみで書かれている。

欠点を克服することで世界的なサービスに

by niallkennedy Guido Van Rossum氏は「Pythonの父」と呼ばれる人物だ
by niallkennedy Guido Van Rossum氏は「Pythonの父」と呼ばれる人物だ

とはいえPythonにも、もちろん欠点はあるとRian氏は続ける。現在Dropboxが40億ドルの企業価値を得られるまでになったのは、それらの克服なしではありえなかっただろうとRian氏は説明する。

「Pythonは強い動的プログラミング言語(dynamically typed language)です。いわゆる“お堅い”言語のため、どうしてもTypeErrorが出やすい仕組みになっています。また、動的型付け自体が一般的ではないとの声もあります。これらはネット上でも“Pythonの弱点”としてよく言われていることですが、ダック・タイピングで克服すればいいのです」

Dropboxは2012年12月、Pythonの作者であるGuido Van Rossum氏をGoogleから引き抜いたことからも読み取れるように、Pythonでポータビリティを実現したいという同社の並々ならぬ強いこだわりを感じた。

Rian Hunter氏の講演の動画は以下 ※全編英語

『Keynote: One Million Lines of Python by Rian Hunter』

取材・文・撮影/佐藤健太(編集部)

この記事が気に入ったらいいね!しよう

エンジニアtypeの最新情報をお届けします

RELATED POSTS関連記事

JOB BOARD編集部おすすめ求人

この記事に関連する求人・キャリア特集


記事検索

サイトマップ



株式会社富士通エフサス【ポジションマッチ登録】 オープンポジション

キャル株式会社 開発エンジニア/未OK/全員面接/残業月10h以内/採用者例…

キャル株式会社 インフラエンジニア/未OK/全員面接/残業月10h以内/採用…

住友林業情報システム株式会社 インフラエンジニア【住友林業グループのイ…

キヤノンビズアテンダ株式会社 RPA作成職(最先端Roboticsツール)/月給4…

キャル株式会社 機械・電気設計/未経験OK/残業月10h以内/年間休日125…

株式会社東亜産業 【商品企画・生産管理】理系・電子工学系出身大歓迎!入…

株式会社ウイルテック エンジニアリング事業本部 【総合職】機械系総合…

サーモス株式会社 筐体設計(水筒)/世界120カ国以上に展開/新しい市場…

ソニーエンジニアリング株式会社 [機械設計] ~ソニー製品の機械設計/機構…

「幾多の修羅場を乗り越えた」ユーザー数4900万人突破の『モ...

「タダでやってよ問題」にエンジニアはどう対応すべきか?澤円か...

SIerって本当にヤバいの? ひろゆきが語る、業界ごと沈まな...

「インフラエンジニアは今こそ作り手に回れ」国産クラウド『ニフ...

若手エンジニアが急成長する組織は何が違うのか? AWS導入の...

「type転職エージェント」無料転職サポートのご案内