arveltのソフトウェア技術メモ

Arvelt's software technology memo

2016年を振り返って

去年立てた目標

フロントエンドは諦めたので、サーバー側の勉強をしていく。いかしたAPIはどういうものか?そのための適切な設計は?テストの書き方は?そういう感じのこと。 品質について体系的なことを知りたい、というのは諦めない。 ブログをちゃんと書く。ちゃんと普段から勉強してれば月に1つくらいは書くことあるというのは経験上わかっている。それができるくらいには学習を怠らないようにしなくてはいけない。 やらない言い訳のために自分でハードル上げてしまっている気がするので、もっと気軽にアプリケーションを作りたい。ライブラリだか、ゲームだかはわからないけれど、とりあえず3日くらい勢いで書いて公開方法はあとから考えるくらいの気軽さで取り組めるメンタルに変えていきたい。 あと漫画かけるようになりたい。

目標を達成したか

  • サーバー側の勉強
    • 明確にこのために取り組んだものはない
  • 品質について
    • やっていない
  • ブログ書く
    • 去年よりも減った
  • 気軽にアプリ作る
    • pkmn-tool.appspot.com とか作った
  • 漫画書く

所感

全然やれてないなぁと自分で思った。プログラミングがうまくできなくてとにかくプログラミングができるようになりたいと思っているのだが、だいぶ迷走しているのだと思う。1つには基本的なことを何も知らないのだということについてちゃんと受け入れて勉強するべきだと思っている。

そこで、コンピューターサイエンスをちゃんと勉強したいと思う。とはいえ、じゃあ仕事で目の前のコードを書くときにその価値があるのか?というと多分そんなに差はない。知っていれば役に立つことも万が一ある、程度でしかない。でもだからこそそういう部分の積み重ねで差がついてしまっているのだと考えている。

勉強なくちゃいけない、プログラミングできるようにならなくちゃいけない、と思っていてもじゃあ何をしたらいいのかというのはよくわかっていなかった。そんな中例えば Students - Guide to Technical Development - Google Careers こういうページがあって、一人前のソフトウェアエンジニアになるために勉強することが並んでいる。これはとてもありがたくて上から順番にやっていこうと思った。

そして挫折したのだ。私は学生がやるようなこういったものを学ぶことのできるレベルにさえ至っていないということだった。だからそこにいたるまでを1つずつ丁寧に積み上げ直すしかないだろうと思っている。それで仕事ができるようになるかというと多分関係ない。そこまでわかっていてもやるしかない。他にやり方はわからないからだ。

仕事でやるプログラミングをうまくやれるようになるための方法として、いろんなコードを読むようにすることを考えている。これは薄々感じていたのだが、私が今まで読み書きしたコード量はいわいるすごい人と比べたら圧倒的に少ないのだ。そこに問題の本質があるように思う。仕事で使っているdjangoとか、pythonらしいコードとして評判だったGAEのPython SDKとかを読んでみたいと思う。

漫画を書きたいと思って例大祭で同人デビューした。やりたいやりたい言いながら手を付けなかっていなかったことに挑戦したのはがんばったと思う。あとこっちは趣味なので当然だけど、プログラミングの勉強をするよりもずっとずっと楽しいのだ。今後もやりたい。

来年の目標