Rails is programming

Ruby on Railsはプログラミングではないの記事が巷を賑やかせている。 自分もプログラムの初心者でRailsを勉強していうるけれども、自分はRailsは初心者にも持って来いのフレームワークだなとおもう。

Railsの良い所はそのフレームワークにベストプラクティスが、詰まっているということだ。 Rails is OmakaseとDHHが言っているが、寿司屋の大将が、その時の旬はネタを握ってくれるように、今のウェブ開発のデファクトスタンダードといってよい技術がRailsには詰まっている。

初めて触った時に、サンプルのブログやEコマースサイトをスカフォールドで作成すると驚くほど簡単にwebアプリが出来上がる。それにbootstrapを使えばデザインも今風に綺麗に出来てしまう。 でもそれでwebアプリは終わりじゃない。 なぜならRailsはフレームワークなのでスタートアップにプロトタイプに早く開発できる環境を提供しているに過ぎない。 自分のアプリのロジックは自分で考えてプログラミングしなければならない。このアプリケーションのロジックがプログラミングの勉強であってRailsはそこに集中できるようにあくまでレールを提供しているだけなのだ。

最初はScaffoldingのコマンドでModelからViewまで勝手に作られると何が何だか理解ができなくて、基本的な仕組みを先に理解したい気持ちはわかる。 もちろん理解するほうが良いの、だけれど最初から全てを理解するのが無理なように初めは動くWebアプリを作成しながら少しずつ理解を深めていく勉強の方が自分は大事だと思う。 仕事では、開発ではなくてネットワークだったりするけど、最初からTCPのプロトコルだったりベンダー独自の仕様を完全に理解してスイッチやルータを設定をすることはない。設定がうまく行かなかったりトラブルに遭遇したりして、調べることでその仕組をより深く理解できるようになっていく。

プログラミングも同じこと。 一番大事なのは続けること。少しづつ理解を深めて機能をより良くすること。