この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。
3月も後半に入り、卒業式シーズンまっさかりですね。この春からこの業界に入られる新卒の皆様、入社(予定)おめでとうございます。
というわけで、新卒で入社する前、入社した後あたりに読んでおいたら捗るかもしれないものをご紹介できればと思います。
対象としては以下のような方を想定しています。
- ウェブサイトの開発を行う会社で技術系の職種に就く予定
- これからする仕事の内容について未経験
- 下手するとプログラミング等も未経験
学校やアルバイト、あるいは個人でモリモリ開発業務みたいなことやってましたというかたや、きちんと情報系の学問を勉強してきましたというかたにとっては、おそらく既知の情報かと思います。文系でプログラミングなども未経験というかたには、少し役に立つかもしれません(自分がそうだったので、あのころ読んでおいたら捗ったかもしれない、というものをあげています)。
■ 目次
- しごとでつくる領域のこと
- しごとでつかう領域のこと
■ しごとでつくる領域のこと
読んでおいたら捗ったかもしれないもの
理由
特定の言語やフレームワークによらない、ウェブアプリケーション開発に必要な情報が満載です。HTTP についての基本的な内容はためになります。Rails で強く推されている REST についてもわかりやすく書かれており Rails での開発に役立つこと請け合いです。
Rails などのフレームワークを利用して開発すると、HTTP の仕様についてあまり意識せずに機能を実現できます。「その機能でやりたいことだけを考えて作業できる」ので、とても生産性が高いです。なので、HTTP の仕様について知識がなくても開発をすすめることができますが、知らなくていいというわけではありません。
たとえば以下のようなバグは、本当に基本的なことを知っていれば防げるようなことですが、何も考えずに作業しているとうっかり仕込んでしまうかもしれません。
- アクセスするたびにカートに物が増える(許容される場合もあるかもしれません)
- クローラがリンクをたどったらリソースが消えた
- リンクを踏んだら「こんにちはこんにちは」という記事が書かれた
Rails などのフレームワークを利用して HTTP についてあまり意識せず機能を実現できる、というのは、もうすこし正確に言うと、「その機能でやりたいことを、周囲のいろいろなことから切り離して考えて作業できる」です。なので HTTP についての基本的な内容を知っておくと、バグや脆弱性の少ないウェブサイトを実現できて、捗ります!
■ しごとでつかう領域のこと
読んでおいたら捗ったかもしれないもの
- LPI-Japan Linux標準教科書
- http://www.lpi.or.jp/linuxtext/text.shtml
理由
この業界では、おそらく、開発環境は Linux や Mac などの Unix 的なもので行う可能性が高いです。Windows で開発をするとしても、.NET なので本番サーバも Windows です、というようなケースを除けば、本番は Linux の OS がのったホストでアプリケーションが動いている、という可能性が高いはずです。
なので、どこかしらで Linux 環境に触れる機会がでてくると思います。ディレクトリの移動や、ファイルの一覧を見る、ファイルの中身を見る、ということはできてあたりまえになっておくと捗ります。
また、ちゃんと基本的なことを知っておけば「なんかアプリケーションがログ吐けずに死にます、バグってるようなので、調査します」→「よくみたらディレクトリの権限がおかしかったみたいです」というような凡ミスに気付く確率があがり捗ります。
なにより、普段自分が普段作業するときに、ストレスなく作業できるようになっていれば、間違いなく捗ります。このテキストはかなりボリュームがあり挫折しそうになるかもしれませんが(自分は挫折しました)、読めば読んだだけためになると思います。
開発環境については、自分が普段つかう(つかおうと思っている)エディタや IDE についても、基本的なこととヘルプの引きかたを覚えるだけで捗り度はアップします。vim については、日本語のヘルプをひけるようにしておくと、より捗るかもしれません。
なお、設定にこだわりすぎたり、エディタ議論に絡むのは楽しいかもしれませんが、あまり捗らないのでほどほどにしておくといいと思います。
■ 次のステップ
基本的なことを知ったら、こんどはインフラやセキュリティ、品質を上げる知識などを学んでいくといいかもしれません。 「データベース技術[実践]入門」は「サーバインフラ本」「徳丸本」と並ぶウェブエンジニア必携の教科書 – As a Futurist… などを参考にされるとよいかと思います。
以上、ヒヨッコながらも、先輩風を吹かせてみましたが、だれかのお役に立てば幸いです。
新卒の皆さんが、楽しく捗りライフを送られることをお祈りいたします。