昨日は初心者向けプログラミングイベント、GreenHackに行ってきました。

greenhack

 
大学生の方が主催者で、プログラミングに興味があるけれどやったことがない人や、プログラミングの初心者の方のために開催されている企画。

まず最初に同じテーブルの人とチームを組んで、簡単なアイデアゲームで共同作業をした後にプログラミングの講義、お昼休憩を挟んでまた講義、その後自分でアプリの企画を考えて作成するという流れになっています。

開発にはCorona SDKというフレームワークを使用します。言語はLuaです。
Corona SDKもLua言語も今回初めて触ったのですが、物理演算やメディアの処理も簡単に行えるので、初心者向けにとてもいい環境だと感じました。
何よりコードを修正するとすぐにシミュレーターに反映されるというのはとても楽です。

参加者の方は20代の方がほとんどで平均年齢はかなり若めでキラキラ輝いていました。
そんな中で一つだけやたらと平均年齢が高いチームが…当然私のいるチームですね。
なので、とても居心地はよかったです。

講義内容としてはネットワークなどはタッチせず、画像と音声の扱い方や、タッチイベントの処理、衝突判定などを勉強しました。
私や他の言語を触ったことがある人は簡単に把握できる内容ですが、プログラミング自体が全く初めてという方だとちょっと難しい部分もあるのかなと思いました。
ただ、わからないという方にはスタッフの方が一人ひとりについて丁寧に教えてました。

最後にアプリを完成させた後に各チームから一人がアプリの発表会を行うのですが、皆さんアプリの完成度が高くびっくりしました。
サンタをドラッグさせるとプレゼントを振りまくアプリや、サ○エさんの父親(波○と海○)を振り分けるアプリ、人形を釣り上げるUFOキャッチャー、上から流れてくる写真をタップするとアーティストの音楽が流れるアプリなどが発表されましたが、発表されていない方のアプリもそれぞれよく出来ていました。
もちろん完成させられない方もいらっしゃいましたが、開発用の時間が短め(2時間)なのでそこは仕方ないですね。

私が作ったのは下のアプリです。
一定時間ごとに湧いて動き回る敵を、タップして消していくというものです。
敵にはそれぞれHPが設定されており、強い敵は得点も高くなりますが、タップしなければいけない数も多くなります。
スコアは経験値となり、継続して何回もプレイしてレベルアップすることにより、強い敵も楽に倒せるようになっていきます。
本当は敵をタップした時や倒した時のエフェクト・効果音・アニメーション、レベルアップ時の効果等が必要なのですが、ちょっと時間がなくて実装できませんでした。
それにしても、こんなに短い時間で開発するのは初めてなので、とても勉強になりました。

game


ドロップボックスにAPKを上げておきますので、もし興味がある方はどうぞ。
ちなみにゲームオーバー時に連打しているとバグで停止すると思います。
ダウンロードページ

今回のイベントは初心者の方にもおすすめできる内容ですしお金もかからない(懇親会出席者のみ500円)ので、プログラミングに興味のある方はぜひオススメです!

1月にも第8回が企画されているようです。
今度はCorona SDKではなく、millkcocoaでwebサービスをつくろうという内容のようです。
私はJavaScriptにも詳しくないのでよくわかりませんが、なかなか面白そうですね。