何でも屋エンジニアのブログ

Rails中級者向け勉強会Step-to-Rails-Expert.rbや出席した勉強会に関するメモが多い

ExpertTodo(Todoアプリレビュー企画)について

以前から少しずつ触れてきたTodoアプリを作成してきてレビューしあう企画について、fixしたものをまとめておきます。
TODOの箇所について、「こうすれば良いのでは?」など案があれば、ぜひコメントください!

ExpertTodoとは

Todoアプリを作成し参加者でレビューしあうという企画の名称、または本企画で使用されるアプリの名称を指します。 どういう経緯で本企画が企画されてきたのかは、以下のリンクをご覧ください。
http://biibiebisuke.hatenablog.com/entry/2017/05/26/115016 http://biibiebisuke.hatenablog.com/entry/2017/07/19/232203 http://biibiebisuke.hatenablog.com/entry/2017/06/29/121713

目的

同じ仕様のアプリを参加者で実装しレビューしあうことによって、RailsWayがどのような設計・実装によって実現できるかを参加者で議論しながら探求していきます。

背景

Gemやちょっとした機能を実装した知見はweb上にたくさんありますが、それらをRailsWayに乗って書くにはどのように書くべきか、という知見が少ないと感じています。Rubyに関してはOSSのコードを見ることで学べますが、RailsOSSは少なく参考にできるプロジェクトがあまりないのが現状です。 そこで、ExpertTodoではRailsを使ってどのように設計・実装すべきかを、実際のアプリを作成し互いにレビューしあうことによって学んでいきます。その際、追加する仕様をランダムに設定し「仕様が天から降ってくる」実際の業務に近い状態を作り出すことで、変更に強い設計・実装を学ぶことができます。この意味で業務に直結する設計力・実装力の向上を期待できます。

参加することで学べる可能性のある事柄

  • RailsWayを学べる
  • 変更に強い設計・実装を学べる
  • 実装だけでなく開発フローなどの指摘も得られる
  • CI環境の設定方法・Paas/Iaasを使ったアプリプラットフォーム構築の知見を得られる
  • 既存のアプリをメンテする勘所を学べる(他の参加者のアプリをforkして進めることもできる)

開発方法に関して

開発の流れ・開発のルールに関しては、ExpertTodoのREADMEをご覧ください。

ExpertTodoの進め方

  • 基本的にレビューは当日までに行い、気になったことを本番で話す
    • TODO: レビューのアサイン方法などを決める必要あり
  • オフライン/オンライン両方で進めるために当日channelを用意する
  • TODO: たぶん、ある程度事前にどこまで解くつもりかor解いたかを知らせてもらった方がよい

  • 当日1人1つ仕様案を足す

必要なもの

  • TODO: ランダムで仕様を選ぶやつ
  • TODO: 質問・サポートの場(実装というよりは仕組みや運営の不備による不明瞭な事柄についての窓口)
  • TODO: 無料でできる構成のサンプルを提供する(heroku&circleCIなど)

その他

本企画ExpertTodoは、非常に学びがある企画だと考えていますが企画の性質上あまり多くの参加者を受け入れるキャパシティがありません。実際にアプリを作っていなくても参加できる枠組み(オンラインの参加で議論の様子を聞けるなど)を考えてはいますが、運営リソース等の制限で実現できるかは定かではありません。そのため、他のコミュニティや集まりで本企画を実施して頂くのは大歓迎です。その際は、フィードバックを受けたい・場合によっては参加させて頂きたい等の理由から、Step-to-Rails-Expert.rb主催者のebiまで一声かけて頂ければ幸いです。