無理だと思ってたら結局毎日書けたのでAdvent Calendar振り返り

※この記事は丸太式 Advent Calendarの25日目です

まさか最後まで書けるとは思っていなかった

25日目です。

仕事で帰りが23時になる日も多かったですが、自分でもよく書けたと思っています。
何日か日付またいだけど

Advent Calendarの記事はAdventarにまとめてあります。
http://www.adventar.org/calendars/402

おおむね技術系の記事になっています。そういう仕事だし仕方ないね。
どうせ記事を書くなら業務からネタを持ってきたかったのですが、自社フレームワークだったりバージョンが若干古かったりしたので、あまり書くことがありませんでした。

毎日アウトプットするのは大変でしたが、来年は隔週くらいで何かしら出力していきたいです。

さて、明日は仕事納めです。
仕事納まるかなぁ・・・

皆さん、良いお年を!

IT技術者「35歳定年説」について考えてみた

※この記事は丸太式 Advent Calendarの16日目です

IT技術者の定年は35歳であるという節、いわゆる「35歳定年説」がありますが、試しに検索してみると「本当だった」という声と「嘘だった」という声が両方とも見られます。

個人的な見解ではありますが、「35歳定年説」は嘘だと思っています。

まず、日本社会は年功序列の考えがまだまだ強く、IT企業であっても例外ではないということがあります。
会社側が”35歳定年”になってしまうキャリアパス、つまりマネジメントへの道しか提供していない為にこのような俗説が出現したのでしょう。

ただ、35歳だろうが45歳だろうが、途中で技術から離れてしまう様な人は技術者では無いと思っていますし、それまでどれだけの功績を残していても認識を改めることになります。
技術から離れてマネジメント側につく人は、技術にさほど興味が無かったのでしょうね。
本当に技術に興味があれば、現場から離れることはないでしょう。

確かに”プロジェクトマネジメント”は誰かがやらなければならないことですが、だからといって技術から離れるくらいならそんなものは技術者じゃない人に任せておけば良いのです。(技術を知らない人がマネジメントするという問題もありますが、技術から離れてまでマネジメントに専念するならあなたは技術者ではありません)

以上、個人の見解でした。
私が35歳になるまでまだ10年以上ありますが、そのときになっても同じような意見が言える技術者でありたいです。

今年も無謀な挑戦を始めます[Advent Calendar 2014]

※この投稿は、丸太式 Advent Calendar 2014の1日目です

無謀な挑戦=一人でAdvent Calendarを埋める

無謀ですね。
海外ではクリスマスまでのカウントダウンのために、Advent Calendarというカレンダーがあるそうです。
近年、日本のIT系技術者の間ではあるテーマに基づい12月1日から25日まで、日替わりでブログ等のエントリを書く催しがはやっています。

目的

一人でアドベントカレンダーを埋めることで、単純にアウトプットを増やすだけでなく、継続してアウトプットするきっかけにしたいと考えています。
挫折したら挫折したで、また来年がんばろうとは思いますが、去年も挫折しているので今年は毎日何かしら書きたいです。

今年のアドベントカレンダーは、「丸太式 Advent Calendar 2014」にまとめているので、気が向いたらご覧ください。

※去年の挫折した結果はこちら→http://www.adventar.org/calendars/256

GitLab環境のUbuntuを13.10->14.04にアップデートしたときにはまった話

GitLabを手動でインストールしていたUbuntuを13.10から14.04にアップデートした後、GitLabが立ち上がっていないことに気づいたので解決方法を記載します。

たぶんこの問題で一番厄介なのは、service gitlab startコマンド自体は正常に終了するってところです。
ブートログを見ても特に問題が見つからず、いつの間にかGitLabだけが落ちているように見えてしまいます。

環境

  • GitLab 6.6.5
  • Ubuntu 13.10 -> 14.04

原因

実はかなり単純な問題で、charlock_holmesというgemに必要なlibicuパッケージが更新されたことが原因です。
unicornのエラーログを見てみると、/home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/activesupport-4.0.3/lib/active_support/dependencies.rb:229:in `require': libicui18n.so.48: cannot open shared object file: No such file or directory - /home/git/gitlab/vendor/bundle/ruby/2.0.0/gems/charlock_holmes-0.6.9.4/lib/charlock_holmes/charlock_holmes.so (LoadError)とあります。
ここに出てくるlibicui18n.so.48は、Ubuntu 13.10のlibicu48パッケージでインストールされたファイルですが14.04ではlibicu52となっており、そもそもこのファイルは存在しません。

解決法

charlock_holmes gemを再インストールする必要があります。
このgemはNative extensionが要るのでビルド時にlibicui18n.soのバージョンが固定されてしまいます。
若干面倒ではありますが、GitLabのインストールパス/vendor/bundle以下のcharlock_holmes関連ファイルを削除し、bundle installを再実行することで新しいバージョンのlibicui18n.soを参照するようになります。

まとめ

GitLabのUbuntu 14.04向けパッケージが提供されると幸せになれそうですね。
PPAでも良いけど。

Javaの勉強会を探しています

By: Michael SauersCC BY-NC-SA 2.0

Side Dにも書きましたが、おかげさまで就職できました。

会社で主に使う開発言語がJavaなのでどこかの勉強会に参加して知識を深めたいと思っています。
おすすめの勉強会があればぜひ教えてください。