本当は2015年以内にやりたかったけど、中々時間が作れなかったので元旦の今やる。
とりあえず、自分の記憶が正しければこんな出来事、またはチャレンジしたことがありましたよと。
- ダイエット開始 -> 習慣化失敗 -> でも、少なくとも月1回は走るようになった
- カロリー計算を習慣化
- 家計簿を習慣化
- 英語を理解できるように勉強開始 -> 習慣化失敗
- ギターを弾けるように練習開始
- 転職しました
- このブログのPVが月間9000台にのりました
- このブログで収益を得ることができました
こんな感じだと。。。思う。
書いてある通り、このブログが月間9000PVになりました((((;゚Д゚))))
初めのころの記事を読んでるとわかりますが、当時はブログが副業になるとうれしいななんて考えていましたが、アクセスは100を超えることはありませんでした。月500PVぐらい。
ただ、そういう考えをやめて、とりあえず俺的メモにしちゃおうってことで、仕事のメモ的な内容をどんどん載せていったら記事も増え、それに比例してアクセスも伸びていきました。
しかし、直帰率はすごく高いので(90%ぐらいw)、同業者ならわかると思いますが、「仕事がうまくいかない」=>「エラー文で検索」=>「ヒットしたブログをざっくり確認して、解決方法をコピー」=>「ペーストして試す」みたいな流れの中で瞬間的に参照されているからじゃないかなと。つまりは、解決策が知りたいだけで内容はあんまりみられていないですよってことですかね。
とはいえ、Webサイトの集客という意味でもすごく勉強になったので、来年は文章力を鍛えてみて、直帰率を下げるみたいな施策も試してみたいですね。
また、IT技術的のイベントはこんな感じでしたよ。こっちは技術ブログっぽく内容を書きます。
- 1~4月にかけて、HtmlとCSSを一通り使えるようになりました
- 1~3月でPHPとCakePHPが使えるようになりました
- 6月でJavaScript(jQuery)が使えるようになりました
- 3月~9月ぐらいまでPlayFrameworkを使った開発に携わった
- 10月ぐらいから機械学習に興味を持ちました
- Jenkinsを業務に導入した
- ちょっとしか味わっていない技術について
1~4月にかけて、HtmlとCSSを一通り使えるようになりました
Webサイト作成を主にしている会社から、外注して頂いていたので、(エセ)プログラマーだった私も携わることになりました。
2014年の後半に一度お願いされたレスポンシブのサイトを完成させることができなかった苦い思い出があり、それからちょっとは勉強したので、一応知識はあった感じでした。
が、実際書いてみると中々うまくいかず苦戦したのを覚えています。
さらにいうと、HtmlとCSSってmarginが効かないとか、このブラウザではこのプロパティが使えないとかパット見、エラーを表示してくれないので、サーバあがりの自分からするとすごくわかりずらかったです。
とあるデザインを作るために、いくつも手法があるということも苦戦しました。本当「お絵かき帳」みたいな言語です。。。
でもまぁできるようになりましたけどね。だけど、レスポンシブのサイトとかできればBootstrapで作りたいなぁ(めんどくさいから)
ちなみに、覚えるコツとして、ドットインストールでHtmlタグの理解CSSのオプションの種類などや動きを覚えて、ブロック要素やインライン要素などを理解し、あとはひたすら書いてくってステップがいいんじゃないかなと思います。一番ハマるブラウザの互換は失敗と経験でしか補えないんじゃないかな。
1~3月でPHPとCakePHPが使えるようになりました
この記事のソースみたらひどいねw
2015年の正月はプログラムの勉強のために、CakePHPを使ってWebサイトを作ろうとしたのを覚えている。一応できたけど今は公開していない。
そのときまで一応プログラムは何度か書いていたんだけど、めちゃめちゃ初心者だったし、コードがどう動くかなんて全然イメージできていなかった。また、リファレンスにもめちゃ弱かったと思う。
これを解決してくれたのはとある案件で、外注先さんが組んだCakePHPのソースを読んだのが一番の薬だったと思う。
人のソースを読むことはすごく勉強になった。
そのコードが綺麗かどうかはさておき、人のコードを読むと自分で書いたときの疑問点を解決してくれた。
例えば、「配列でも連想配列でもこの処理を書くことができるんだけど、どっちが正しいか」みたいなどうでもいい問題に頭を悩ませることは多々あった。人が書いたコードを参考にすると、「あ、この人はこう書いてあるからこうすればいいんだな」って感じで参考にすることで、そういう悩みを消してくれてコードを書くことに集中することができた。
これを何度か繰り返していると、いつの間にかコードが書けるようになっていました。
このやり方は今でもよく使います。とある処理を実装したいときに、似たようなアプリがないかgithubを探しにいって参考になりそうなコードがないか探したりとかね。
6月JavaScript(jQuery)が使えるようになりました
「使えるようになった」は誤解を生みそうな言い方かな?
実際のところ、「とりあえず書けるようにはなったが、いまいちJavaScriptの仕様は理解していない」が正しいと思います。
あと、jQueryが書くのが楽でやばい。理解しなくても書けるようになってしまったという感じ。
また、その裏にはデスマがありました。この月は平均夜中1時ぐらいまでひたすらjQueryを書いてきました。ひたすら$(...)
を打ち込みました。炎上案件だった...可能な限りやりたくはない。
最近「パーフェクトJavaScript」を購入した。理解はしていないけど書けるJavaScriptを深く理解したいないと思う。
3月~9月ぐらいまでPlayFrameworkを使った開発に携わった
この中では一番期間をつかった開発ですが、そんな大した内容ではありません。どっちかつーと、先方とのやりとりですごく時間がかかった案件でした。
その時にPlayFrameworkを使いました。Javaはチュートリアル程度なら触ったことがありましたが、いかんせん中々慣れなかった。
さらにこの時のPlayFrameworkは2.4で、MVCでいうVのテンプレートはScalaだったので、ここで初めてScalaと出会いました。Scalaむずい。
Scalaは近年人気になりつつある(?)言語らしいので、せっかくなので覚えたいというところですが、学習の時間が中々取れず、いまだ習得出来ていません。
PlayFrameworkはModelやControllerもScalaで書くことができるので、可能であれば、このとき作成したアプリをすべてScalaにできればいいかなーと思っています。プログラムは書かなければ覚えることができないので。
10月ぐらいから機械学習に興味を持ちました
PyDataという勉強会に参加しました。私はPythonの構文が好きで、Pythonが書けるなら!と思い参加したところ、内容の80%は統計の数式を学ぶことになったという「?」な状態になりました。
というのも、PyDataはPythonを使って機械学習を学ぶ・試すという試みなので、そりゃ当たり前な話といえばそうなんですけどね。
っつーことで、Pythonを書きたい私は参加したいけど、数学赤点な私は置いてけぼりになっていますので、自主的に統計を勉強する流れになりました。あとR言語も使えるようにします。
とりあえず、「マンガでわかる統計」のシリーズを読んでみました。感じはわかったけど難しいお(^ω^
あとは繰り返し問題集をクリアしていこうかなと思います。
Jenkinsを業務に導入した
CI(Continuous Integration、継続的インテグレーション)の代表であるJenkinsさんを業務に導入しました。といいましても俺しかつかっていませんが(´;ω;`)ブワッ
しかし、すごく便利です。これまではこういったツールは学習にコストをサクため、簡単には導入できなかった。時間がかかるため、忙しい時期には中々手をさくことができなかった。ただ、一度導入しちゃえば、これまで手間暇かけていたデプロイ作業とかテストをすべてJenkinsさんが行ってくれるので、結果的にみれば元はすでに取れていると思う。
自分で学習するより、勉強会や他使える人を探して教えてもらってから自分で触ってみるというのが今んとこ効率のよい学習方法だと思っている。
また、今後はテスト自動化やWebのリンクチェックなどのテストケースを用意して、会社全体に利用していきたいと考えている。
ちょっとしか味わっていない技術について
本業では触ることはなかったが、気になったので、試した技術について。
- Docker
- Ansible
- Vagrant
- Swift
Dockerはすごく便利だった。これは是非CIと組み合わせてテスト環境をもっとよくしていきたい。それにはAnsibleやVagrantも加わってくると思う。
また、機械学習を勉強するためにデータをたくさん集めたいため、Swiftでちょっとしたロギングアプリを作りたいなと思っている。Objective-Cを一度経験したが、Swiftはすごく書きやすくなっているイメージです。Optionalがまだなれないけど。
この4つは2016年でものにしていきたいと思う。
雑なまとめ
2015年で足りないと思うことは英語をものにできなかったこと。これはどうすれば良いかな。
とりあえず2015年はお疲れってことで。