![]() |
安藤幸央のランダウン[41]
夏休みに世界へ挑戦!
プログラミングコンテスト
安藤幸央(yukio-ando@exa-corp.co.jp)
株式会社エクサ
2008/7/18
「Java News.jp(Javaに関する最新ニュース)」の安藤幸央氏が、CoolなプログラミングのためのノウハウやTIPS、筆者の経験などを「Rundown」(駆け足の要点説明)でお届けします(編集部)
■ プログラマーにもオリンピックや甲子園がある!
| この記事は、プログラミングに誇りを感じるヒトのための技術情報フォーラム「Coding Edge」との連動企画です。 |
もうすぐ、オリンピックが開幕します。多くのアスリート/スポーツ選手が、世界一になるために自分の持ち得る力や技術を競うことでしょう。では、普段仕事でプログラミング(コーディング)している人や、趣味でプログラムを作っているホビープログラマーが自身の腕を競おうと思ったときに、どんな舞台があるのでしょうか?
もちろん、素晴らしいプログラムやサービスを開発して世の中に広めることができれば、技術力や企画力は大いにアピールできます。その一方、優秀なプログラマーやコーダーがたった1人でも挑戦できて、世界中から大いなる称賛を浴び、あわよくば賞金や就職先までせしめてしまう方法があります。
それが“プログラミングコンテスト”です。
腕に自信があるのに、仕事では報われていないなどと嘆かずに、自分の腕が世界のどの程度に位置するのか、まずは競ってみてはいかがでしょうか(けれども、多分ほとんどの人は世界のトップレベルと自分との差に、がくぜんとするはずです)。
プログラミングコンテストに参加する意義 |
| ・技を知る。自分の能力を見つめ直すことができる ・複雑なアルゴリズム問題を解く楽しみ ・一定期間に集中して成果を出すことに慣れることができる ・ 世界中のプログラマーと競争することでモチベーションを高めることができる ・ リクルーティングの場でもあり、プログラミング能力を生かした仕事へのきっかけ作り |
プログラミングコンテストへ参加する際に注意すべきポイント |
| ・完成してから登録するものと、登録してから参加するものがある ・ 個人で参加するもの、グループで競うものがある ・ 既発表のものもOKの場合と未発表でなければダメな場合がある ・ 自分の得意のプログラミング言語がカバーされているかどうか |
■ 世界で腕を競う舞台
それでは、プログラミングコンテストにはどんなものがあるか見ていきましょう。まずは世界的なコンテストからです。英語ということで少し敷居が高いかもしれませんが、世界のレベルを知るというのは良い経験になることでしょう。
■■ TopCoder
![]() |
| TopCoderのトップページ |
- 締め切り:各コンテストによって違う。ほぼ毎週なんらかのコンテストが開催されていう。メインイベントの「TopCoder Open 2008」は2008年5月に終了している
- 言語:Java、C++、C#、VB
- 賞金:〜10万ドル
- 参加資格:賞金が受け取れるのは18歳以上
- 特徴:制限時間内に問題を解く速さを競うものが多い(プログラムの動作速度の速さは関係ない)
■■ Google Code Jam
![]() |
| 「Google Code Jam」のトップページ |
- 締め切り:2008年7月17日(残念ながら締め切ったばかりだが、おそらく来年も開催される)
- 言語:前回とは違い、問題を解くためのプログラミング言語は特定されていない。コンテスト用のデータファイルが読み書きできるプログラミング言語であれば参加可能
- 賞金総額:8万ドル(1位 1万ドル、2位 5000ドル、3位 2500ドル、以下100位までは1500〜250ドル)
- 参加資格:13歳以上(グーグルのオフィスでのコンテストに参加できるのは、18歳以上)
- 特徴:アルゴリズム問題に挑戦。Web経由で、一定時間内に問題を解く
後述しますが、ほかにも締め切りが終わってしまった世界的コンテストがあります。
■ 国内のコンテスト
次に、国内のコンテストを見てみましょう。
■■ Mashup Awards
![]() |
| 「Mashup Awards」のトップページ |
- 締め切り:2008年9月16日
- 言語:指定なし。応募対象のWebサービスAPIを1つ以上使ったWebサイト、アプリケーションを構築
- 賞金:大賞 100万円、ほか部門賞あり
- 参加資格:個人でもグループ、法人でも参加可能など
- 特徴:WebサービスAPIを組み合わせたマッシュアップ・サービスのコンテスト
編集部注:マッシュアップについて詳しく知りたい読者は、 「いまさら聞けない「マッシュアップ」超入門」をご参照ください。
■■ U-20 プログラミングコンテスト
![]() |
| 「U-20 プログラミングコンテスト」のトップページ |
- 締め切り:2008年7月31日
- 言語:指定なし。Windows/Mac OS/Linuxで動作するもの。それ以外は要相談
- 参加資格:20歳以下であること
- 特徴:個人部門と団体部門あり。主に高校生〜専門学校からの参加が多い
■■ Award on Rails
![]() |
| 「Award on Rails」のトップページ |
- 締め切り 2008年9月30日
- 言語:Ruby on Railsを使ったWebアプリケーション
- 賞金:大賞 100万円、そのほか部門賞、企業賞あり
- 参加資格:個人でもグループ、法人でも参加可能など
- 特徴:Ruby on Railsを使うコンテスト
■■ パソコン甲子園
![]() |
| 「パソコン甲子園」のトップページ |
- 締め切り:プログラミング部門とデジタルコンテンツ部門は2008年7月31日
- 言語:プログラミング部門は、C、C++、Java
- 参加資格:高等学校および高等専門学校の3年生までなど
- 特徴:プログラミング部門、デジタルコンテンツ部門、いちまいの絵CG部門の3つがある
■ 進行中または終了したコンテスト
2008年7月18日現在で終了したコンテストも、毎年行われるものであれば、来年また挑戦の機会があります。また、入賞作品からコンテストの傾向やレベルを知ることもできます。
■■SuperCon
![]() |
| 「SuperCon2008」のトップページ |
- 高校生がスーパーコンピューターを使って、プログラミングのアイデアを競う大会(進行中)
■■ Imagine Cup(終了)
![]() |
| 「Imagine Cup」のトップページ |
- マイクロソフト毎年開催する学生向けプログラミングコンテストの世界大会
- 「Imagine Cup」最新記事一覧
■■Adobe AIRコンテスト
編集部注:Adobe AIRについて詳しく知りたい読者は、 「いまさら聞けないAdobe AIR「超」入門」をご参照ください。
■■ACM国際大学対抗プログラミングコンテスト
![]() |
| 「ACM国際大学対抗プログラミングコンテスト」のトップページ |
- 大学生チームを対象とした世界的規模のプログラミングコンテスト(進行中)
■■Android Developer Challenge
- Google Androidのコンテスト(進行中)
- 賞金総額:1000万ドル
- 現在のトップ50一覧
編集部注:Google Androidについて詳しく知りたい読者は「Google Android用携帯アプリ作成のための基礎知識」をご参照ください。
■■全国高等専門学校プログラミングコンテスト(終了)
![]() |
| 「全国高等専門学校プログラミングコンテスト」のトップページ |
■■iGoogle Gadgetコンテスト(終了)
■■カブロボアワード
![]() |
| 「KabuRobo」のトップページ |
- 全自動で株を売買するプログラム(ロボット)を開発(継続開催中)
- 2008年度優秀アルゴリズム賞
■■Yahoo! JAPAN Web APIコンテスト(終了)
![]() |
| 「Yahoo! JAPAN Web APIコンテスト」のトップページ |
■ Webデザインや広告も
プログラミングコンテストだけではなく、Webデザイナーやコーダーであれば、そのほかのコンテストでの活躍の場が広がります。WebサイトのコンテストやWeb広告系の広告祭も世界各地で開催されています。
■ コンテストとプラットフォーム・ビジネスの関係
話は変わりますが、SNSサービスのFacebookやOpenSocial、そしてiPhoneがアプリケーションのプラットフォーム/SDKを提供するなど、最近はプラットフォーム・ビジネスが盛んのようです。
編集部注:FacebookやOpenSocialについて詳しく知りたい読者は、 「Google OpenSocialによってSNSで何ができるのか?」をご参照ください。
先ほどAdobe AIRやAndorid、iGoogle、Yahoo! JapanのWeb APIのコンテストを挙げましたが、自社のプラットフォーム/SDK上で動くキラーアプリを作ってくれるような優秀な開発者を集めるために、コンテストは非常に有効な手段なのでしょう。もちろん、高校生や大学生向けに開催しているものや、純粋にプログラミングの腕を競わせるコンテストもたくさんありますが。
いま話題のiPhoneも、そのうちアプリケーションのコンテストを開催するかもしれませんね。
■ ファンドの取得もコンテストの1種?
また、iFundのようなソフトウェア開発のためのファンドの取得も、広義にとらえれば、コンテストに近いかもしれません。2008年7月現在iFundでは、地図を基に周辺の店舗情報やイベント情報を提供するサービスの「whrrl」と、エアコンや照明、ブラインドなど家電機器をリモートコントロールするセキュリティシステムの「iControl」が資金を得て開発を進めているそうです。
■ 世界中に実力を知らしめる良い機会
ここで紹介したプログラミングコンテストは、ごく一部のもので、まだまだ紹介し切れないものがたくさんあります。高校生・専門学校生など学生を中心としたものから、世界中の第一線のプログラマーが腕を競うものまで、さまざまなコンテストが開催されています。
スポーツ選手であれば、ワールドカップやオリンピックがあるように、プログラマーやWeb、インターネットの世界で活躍する選手にとっては、プログラミングコンテストは世界中に実力を知らしめる良い機会なのかもしれませんね。
次回は2008年9月初めごろに公開の予定です。内容は未定ですが、読者の皆さんの興味を引き、役立つ記事にする予定です。何か取り上げてほしい内容などリクエストがありましたら、編集部や@ITの掲示板までお知らせください。次回もどうぞよろしく。
■ @IT関連記事
| この記事は、プログラミングに誇りを感じるヒトのための技術情報フォーラム「Coding Edge」との連動企画です。 |
| Ajax開発者がヒーローになるとき、それはいま! Ajax うきうき Watch(23) マッシュアップやウィジェットのコンテストが流行中。Twitterのような短文ブログTumblelog。さらに、セカンドライフやiPhoneなど全8トピック 「リッチクライアント & 帳票」フ ォーラム 2007/7/24 |
||
| プロフィール |
安藤幸央(あんどう ゆきお) 1970年北海道生まれ。現在、株式会社エクサ
マルチメディアソリューションセンター所属。フォトリアリスティック3次元コンピュータグラフィックス、リアルタイムグラフィックスやネットワークを利用した各種開発業務に携わる。コンピュータ自動彩色システムや3次元イメージ検索システム大規模データ可視化システム、リアルタイムCG投影システム、建築業界、エンターテインメント向け3次元
CG ソフトの開発、インターネットベースのコンピュータグラフィックスシステムなどを手掛ける。また、Java、Web3D、OpenGL、3DCG
の情報源となるWebページをまとめている。ホームページ Java News.jp(Javaに関する最新ニュース) 所属団体 OpenGL_Japan (Member)、SIGGRAPH TOKYO (Vice Chairman) 主な著書 「VRML 60分ガイド」(監訳、ソフトバンク) 「これがJava だ! インターネットの新たな主役」(共著、日本経済新聞社) 「The Java3D API仕様」(監修、アスキー) |
安藤幸央のランダウン バックナンバー 連載インデックスへ»
- 第1回 Javaを速くするための心構え
- 第2回 サーバサイドで進化するグラフィックス
- 第3回 ユーザビリティ(使いやすさ)の大切さ
- 第4回 Javaプログラマのお役立ちサイト
- 第5回 伝説のイベントJava Night
- 第6回 次世代のインターネット言語curl登場!
- 第7回 次世代を予感させるグリッドコンピューティング
- 第8回 音声はコンピューティングを変える?
- 第9回 GoogleをWebサービスから利用するAPIの登場
- 第10回 これは使える!Java風スクリプト
- 第11回 PtoPはいよいよビジネスのステージに
- 第12回 ハリウッド映画並のCGがPCに到来する日
- 第13回 知的ゲーム「Robocode」でJavaのチャンピオンに
- 第14回 海の上のJava Night
- 第15回 Java版テラリウム? ただいま開催中
- 第16回 進化したアプレット、Viewletとは?
- 第17回 Eclipse:新しい開発環境モデルの誕生
- 第18回 Webサービス、どこまで実用になっている?
- 第19回 SWTは本当に高速なGUIを実現するのか?
- 第20回 JavaOne 2003の注目トピックを振り返る
- 第21回 SIGGRAPH 2003に見るJavaの進化
- 第22回 AmazonWebサービスの可能性
- 第23回 オープンソースの検索エンジン登場
- 第24回 技術者の祭典JTC BOFとJava Night
- 第25回 リッチクライアント時代の到来
- 第26回 Eclipse 3.0のリッチクライアントとは?
- 第27回 データ中心型、簡単リッチクライアントJDNC
- 第28回 浸透する新世代のシンクライアント
- 第29回 WebプログラマはRailsに乗るべきか?
- 第30回 Ruby On Railsのチームに学ぶ仕事術
- 第31回 JavaプログラマはAjaxに乗るべきか
- 第32回 Java SE 6へ移行する理由と移行をとどまる5つの理由
- 第33回 見つけて得するソースコード専用の検索エンジン
- 第34回 Podcastでプログラマーに必要な英語をStudyしよう!
- 第35回 人気のAPI/フレームワークを作るための39カ条
- 第36回 あなたのサイトはiPhoneで見られますか?
- 第37回 バッチ処理はJavaでバッチリ?その現状とこれから
- 第38回 Cometに代表されるサーバ・プッシュ技術の復権
- 第39回 ソースコードの宝石箱、●●Forgeを見逃すなかれ
- 第40回 Webアプリ開発環境としてのSafariを知ってますか?
- 第41回 夏休みに世界へ挑戦! プログラミングコンテスト
- 第42回 開発者が知っておくべきJavaと仮想マシンの歴史
- 第43回 あなたの知らないJDKの便利ツールたち
- 第44回 時を欠ける症状−うるう秒から考えるサステナビリティ
- 第45回 IT業界で楽しく仕事をするための10カ条
- 第46回 そのWebサービスで“対価”をもらえますか?
- 第47回 IT系でも活用しなければ損。論文を読んで広がる知見
- 第48回 Webからの知見、見つけた論文の読み解き方
- 第49回 Java技術者も知っておきたい「AR(拡張現実)」
- 第50回 クラウド活用「雲活」のために押さえるべき39のポイント
- 第51回 意外と知らないバージョン表記・数字の豆知識
- 第52回 グーグルは、○○おもいっきり、テレビ
- 第53回 いま購読するべき15の開発者ブログ
- 第54回 技術者なら知っておきたい「ソーシャルゲーム」とは
- 第55回 開発者は覚えておきたいアプリストア/マーケット大全
- 第56回 売れるスマホアプリを目指せ! テスト達人への道
- 第57回 プレゼン巨人の星となるためのツールと手法のまとめ
- 第58回 ぼくらの七ボタン戦争 - Social Buttons War
- 第59回 師走を楽しもう。技術系アドベントカレンダーの魅力とは
- 第60回 GitHubをもっとソーシャルに使いこなすための7つ道具
| ご意見、ご感想は掲示板へどうぞ |
| JavaコラムINDEX |
TechTargetジャパン
- 並列分散処理の常識をHadoopファミリから学ぶ (2012/2/8)
並列分散処理の課題やHadoopの長所/短所、そして短所を補うHadoop関連プロジェクトの構成や概要などを簡単に紹介 - WebLogicサーバ最新版「12c」の気になる4つの特徴 (2012/1/31)
久々にメジャーアップグレードしたJavaアプリケーションサーバについて、製品担当者に軽量インストーラなどの特徴を聞いた - GitHubをもっとソーシャルに使いこなすための7つ道具 (2012/1/23)
ソースコードホスティングのGitHub周辺で便利な新サービスが続々登場しているので、まとめて紹介しよう。特に連動クラウド「fluxflex」が注目だ - 新キャラ登場!スクラムやるならRedmineとALMinium (2011/12/26)
「黒板を“かんばん”にしてたら先生に怒られた(T_T)」「管理はPC内でやればいいのよ」「承知しました」
|
|
キャリアアップ
スポンサーからのお知らせ
- - PR -
イベントカレンダー
- - PR -

















1970年北海道生まれ。現在、株式会社エクサ
マルチメディアソリューションセンター所属。フォトリアリスティック3次元コンピュータグラフィックス、リアルタイムグラフィックスやネットワークを利用した各種開発業務に携わる。コンピュータ自動彩色システムや3次元イメージ検索システム大規模データ可視化システム、リアルタイムCG投影システム、建築業界、エンターテインメント向け3次元
CG ソフトの開発、インターネットベースのコンピュータグラフィックスシステムなどを手掛ける。また、Java、Web3D、OpenGL、3DCG
の情報源となるWebページをまとめている。