CODEBASE βhackathon に参加した話

11/22-11/24の3日間 CODEBASEの βhackathon というイベントに参加してきました。

βhackathon とは

βhackathon とは、プロダクトの設計やワイヤーフレームなどの準備ができていて実際に動く試作品を作りたいと思ってる人と、CODEBASEのプログラミング講座卒業生(学習時間500-800h)が、一緒になって動くものを作っていくイベントです。アイディアを持っている人は動くものが手に入り、プログラミング初学者はより実践的に開発を学べるという趣旨のイベントです。

全体流れ

3日間でざっくり20時間ぐらいの作業

22日19時~22時 オリエンテーション&開発@CODE BASE

今回作るアプリの説明、チーム分け、タスクを洗い出した後、各チームに分かれて開発に取り組みました。チームは3チームに分かれて、ざっくりとした役割分担だと、フロントのデザインを作るチーム、作りたい機能を実現するのに少し調査が必要なタスクをこなすチーム、Scaffold&リレーションを作って基本的な機能を作っていくチーム、というような感じ。

23日10時~20時 開発@ペンション

ペンションに到着後、ひたすら開発。優先度が高いissueから消化していく感じ。夜はBBQ

24日10時〜20時 発表&BBQ@ペンション

起床後、ひたすら開発。優先度が高いissueから消化していく感じ。夜は成果発表&寿司&ピザ

やってみての感想/振り返り

  • 今回のハッカソンで、久しぶりにRailsを触って、忘れているところがめちゃめちゃ多かったので、改めてRails勉強し直したいなという気持ちになった。(もともとが、Railsチュートリアルを2周とオリジナルアプリ制作に取り組んでいたぐらいだったので、しばらく触ってないと、ほんとすごく忘れちゃうなーってのを実感した。。。最近出たRailsの本をとりあえずサクッと読んで思い出したい)プラスに考えると、自分がどれぐらい忘れてるか把握できてよかった。

  • gitの使い方がすごく勉強になった。3チームで作業していて、conflictがめちゃめちゃ起きたので、conflictを解消する方法を学べてよかった。(単純にgit rebaseするだけならいいけど、conflict起きた際に、複数のcommitを一つにして、更にrebaseして....、みたいなことが何回か起きて、そのあたりのgitの使い方がちゃんと理解できてないので、キャッチアップする。以下、よく使ったコマンドメモ)

# これで、直近のコミット4つを一つのコミットにする(このコマンド叩いた後、コミットでpickになってるのをfに変更する)
git rebase -i HEAD~4
# ログをみる
git log --one-line --graph --all
# 強制的にpush
git push --force-with-lease origin feature/xxxxx
  • 最終的に今回作ったアプリは、ユーザー登録(devices)、このアプリで使う各データの基本的なCRUDの処理、チャット機能(Action Cable)、フロントのデザインもある程度いい感じに仕上げれた、というような感じで各チームがいい感じにまとまって、とりあえずベータ版を作るのを仕上げられたのでよかったのではないかと思います。とはいえ、細かいところ、荒いところがまだまだたくさんあると思いますし、issueも全体でみると14/46の消化だったので、今回取り組めなかったところや、時間がかかったところなどは、新ためて整理して、次回にいかしていきたいと思います。

まとめ

今回のハッカソンは、ローケーションがほんとに凄く良くて最高でした。みんなでワイワイしながら開発して、サービス作って、BBQしてと、凄くよかったです。運営や事前準備をしてくださった皆さんほんとにありがとうございました!!!凄く良いイベントだったので、次回もぜひ参加したいです。

最後にCODEBASEのプログラミング講座の5期生を募集してるとのことです。プログラミングに限った話じゃないけど、みんなでワイワイしながら一緒に学ぶ体験ってめちゃめちゃ良いなあと思うので、webが好きで気になっている人がいたらぜひ見てみてください!!!