すぎゃーん日記

つれづれに

プログラマ10年目


2008年9月1日、僕のプログラマとしての人生がスタートした。

2007 - 2008

2007年4月、地元の大学院を修了。上京して大手のSIerに新卒として入社した。

就活は適当、だったつもりは無いけど これといって強い意思は持っていなくて 何となく、という感じでIT系を選んでいた。

200人以上の同期たちと一緒に約半年にわたる新入社員研修、同時に配属先でOJT、という感じでとても手厚い教育制度があり それはそれは良い会社だった。 配属先での主な仕事はソフトウェア製品の動作テストなど、だったと思う(正直あんまり覚えていない)。 コードを書く仕事ではなかったけど、開発職や研究職に近い配属だったこともあり ちょっとしたプログラミング研修も受けたりした。

学生時代にも一応プログラミング演習の授業や修了研究でもちょっとしたものは書いていたので素人ではなかったけど、そのときはそこまで興味を持つ対象ではなかったし、それほど真面目に勉強したことはなかった。 優秀な同期に教えてもらいながら受けた研修、その後も自主開催していた社内勉強会的なものに参加して色々教えてもらい、プログラミングの面白さ・奥深さをそこで改めて知った気がする。

プログラミングに興味を持ち、Perlの入門書を買って自分で勉強し始めたりした。

インターネットの向こう側にはプログラマとして活躍している人たちが居ることを知り、そういう人たちに憧れるようになっていった。 id:amachangさんの「IT戦士の作り方」というスライドに心動かされ、「ウェブ進化論」という本を読んでワクワクした記憶がある。内容はもうどちらも忘れてしまったけど…。 とにかく、2年目社員になる頃には「プログラマとして生きていきたい!」と思うようになっていった。

Twitterを始め、はてなダイアリーも作って技術メモを書き始めた。

その頃の話を6年くらい前に書いたっけ。

blog.sugyan.com

その会社に居てもプログラマとしてのキャリアを歩める可能性もあったけど、どうせならプログラマしか居ない環境に移ってしまえば、と 転職を考え始めた。

とはいえコネも何も無くて他に選択肢もなく、普通に転職エージェントに登録。

第二新卒という扱いで見てもらえる部分はあっても、それにしても実務経験も実績も無い素人なんて採ってくれるところはそうそう無く。

社員15人くらいの所謂ベンチャー企業にたまたま拾ってもらえたけど、今思うと本当に奇跡的なくらい有り難いことだったなぁ、と。 拾ってくださった社長に本当に感謝しております。。

せっかく地元の国立大を出て大手企業に入ったのに1年半で辞めてしまって まぁそりゃ年収だって百何十万かは下がるわけで 親や周りの同期にはすごく心配されたりもしたけど 意外と自分の決意は固かった。

そして2008年8月で新卒入社した会社を退職し、同年9月1日 新しい人生の第一歩を踏み出した。

なんとなく入社初日だし、と思って一応スーツ着ていったけど マンションの一フロアにある小さな開発会社でそんな格好していっても浮くだけだった、のを強烈に覚えているw それがスーツを着て出社した最後の日、だったかな。

2008.09 〜

25歳、未経験のプログラマとしてのスタート。

ちょうどiPhone SDKが出てアプリ開発やっていくぞ!という流れで 触ったことのなかったMacと真っ黒なObjective-Cの本を与えられ、ほぼゼロの状態から ひたすらそれを勉強した。 めっちゃ難しくて大変だった記憶があるけど、とにかく自分が挑戦してみたいと思っていた そういう仕事が出来て、楽しかった。

その後はGoogle App Engineを触ったり。 出たばかりの先進的な技術を触ることができて、本当に恵まれた環境だったと思う。

仕事の勉強もしつつ 趣味では自分の興味持ったものを勉強しつつ 外部の勉強会やエンジニアコミュニティにも積極的に参加したり。 おかげで社外にも同業の知り合いが少しずつ増え、世界が拡がっていった。

2009

趣味で主にPerlワンライナーとか記号プログラミングとか勉強したりを続けていた。 書いたプログラム、参加した勉強会、はてなダイアリーにたくさん記録を残しながら。

夏に少し形態素解析というものに触れて、動詞の前に「全裸で」ってつけるだけの下らないネタを書いたら結構ウケが良くて、それを使ってTwitter botを作ったらなんか1万フォロワーくらい付いて嬉しかった。 そのネタでLLイベントやYAPC::AsiaでLTさせてもらったりして、また知り合いが増えたりした。

せっかくPerlをよく使っているし そっち方面で面白いところに、と考えるようになり、縁あって鎌倉の面白い会社に転職することに。

結局2社目は1年3ヶ月だけの在籍で 勉強するだけさせてもらって利益を生み出すような貢献も何も出来なくて、不義理だらけで去ることになってしまったのは大変申し訳なく思っています…。

2010

住居も鎌倉に移し、(といっても社員同士でのルームシェアの家には寝るだけだったり 寝るのも会社で家にはシャワーを浴びに帰るだけになったりもしていたけど) 新たなスタート。

B2CのWebサービスのサーバサイド開発というものに本格的に取り組んだのも始めてで、これはこれで趣味の勉強の範囲では知らないことだらけだったのでとても苦労した。与えられた仕事も満足にこなせず 泣きそうになりながらGWを会社で過ごしたような記憶がある。

でも、自分たちの作ったサービスにユーザが居て 使ってくれているのが見える というのはとても新鮮だったし、強烈なインパクトがあった。

とにかく濃い時間を過ごし、色んなモノを作ったし 色んな経験をさせてもらった。 プログラマとしてのスキルはこの1年が一番大幅にアップしたんじゃないだろうか。

2011

Node.jsに興味を持って、アプリを書いてみたり。

震災があって少し心が不安定になったり 突然アイドルにハマり始めたりした。

ISUCONというコンテストが始まり、会社のメンバーと出場して優勝できた。

また色々とタイミングであったり思うところがあったりで、転職して都内の会社に移ることに。 この頃にはもう転職エージェントとかに頼る必要はなく 自分で調べて自分で行きたいところを決めることができるようになっていた。

2012

前職に続いてPerlでWebアプリケーション系の仕事。

大好きなアイドルの夏ツアーを追いかけて初年度の有給や貯金を使い果たしたりしていた。

そんな好きなアイドルを効率的に追いかけるためのツールを自作していたり、プログラマとしての知識がとても役に立っていた。プログラマになっていて良かった

2013

なんか気付いたら会社名が変わっていたり。関わる仕事も基本的に大規模なアクセスが当然のように来るサービスになっていて、すごい経験もさせてもらった。

前年は出題の手伝いをさせてもらったISUCONに 再び出場し、また優勝を経験させてもらった。

2014

変わらずアイドルを追いかけつつ Webアプリケーションの開発をやらせてもらっていた。 有り難いことに新規サービスの立ち上げに関わらせてもらうことが多く、比較的新しい技術に触れる機会も多かったように思う。

趣味ではGoやWebGLとか触ったりしていたようだ。

2015

ReactやPerl6をちょっと触ったり。数年ぶりにJavaを書くようになったりもした。

そしてTensorFlowに出会い、年末くらいから機械学習をやり始める。

2016

ひたすら趣味の機械学習に力を入れていたように思う。

その中でPythonの他にRailsやらJSやらGoやら色々やった。

2017

社内でちょっとした異動があり、また新しいプロダクトの開発に関わらせてもらっている。

気付くとそれなりの古株社員になってしまっていて、それなりに信頼も得て? 面白い開発の仕事を任せてもらっている、と思う。

どうにか、ちゃんと「コードを書いて生きていく」ことができている。

それなりに給料もいただいて、食っていくのに困ることのない生活はできていて、

社内にも社外にもたくさんエンジニアの知り合いが居て、周りには頼りになる仲間が居て。

9年前にスタートを切ったばかりの時の自分には信じられないくらいに、素敵な世界に生きていられている、んじゃないかな。

いつまでこの生き方ができるのか、どんどん優秀な若者が現れて自分は老害化していくし 身体は弱っていく一方だし 不安は尽きないけれど

自分が選んで決めた道。

精一杯やれるだけのことをやって プログラマ10年目も頑張っていこうと思います。

ドルヲタを辞めた

最後の推しの居るグループが6月下旬に発売した3rdシングルのリリースイベントを応援し続けたのを機に、アイドル現場に行くのをやめた。

そのCDの購入者特典のイベントが後日に幾つかあって それに足を運んだ以外では、今月は一つもライブ等に行ってない。その感謝イベントも最後の一つが終わり、大好きな推しの子ともお別れを済ませた。


なんで辞めたか、っていう決定的な理由は特に無くて。ただ最近は仕事も趣味の勉強も楽しく忙しくて年間200や300の現場に通うほどの余裕は無いし、中途半端にダラダラと続けるよりは区切りの良いところで断つ方がスッキリするな、と思って決意した。


正直、今だって推しの子たちは大好きで会いに行きたいし、アイドルの現場・ライブはとても楽しくて 行かなくなった今はいったい何を楽しみに生きてるんだろう、って思ってしまうくらい空虚で。

でもそれも数週間程度のもので、また少し時間が経てば心境も変わってくるんじゃないかな。と思って今を過ごしている。


別にアイドルが嫌になったわけではないし 推しの子たちはずっと応援していきたい気持ちもあるけど、自分もこのままではいけない。前に進んでいかなくては。

たくさん元気や感動を与えてもらったのを糧にして、僕も仕事や勉強ももっと頑張って 自分の人生をより充実したものにしていこう。と思います。


アイドルちゃん、沢山のステキな思い出をありがとう。



撮ったチェキは見返して思い出に浸ることができて良い

f:id:sugyan:20170719005649j:plain

胃腸炎 ふたたび

1月にノロウイルス(と思われる)に罹ってまだ半年も経っていないところで。

新年あけましてノロウイルス - すぎゃーん日記

再びウイルス性(?)の胃腸炎にかかって大変な数日間だった。

経過

20日

昼くらいから腹の調子は悪いな〜 という感じで

夕方にかけて少し全身が気怠い感じに。「風邪か…?」と

熱っぽさも少し感じていたけど測ってはいない。

とにかくしっかり食べて寝よう、とココイチで牛メンチカツカレー+野菜トッピングを食べて、ポカリスエット2リットルを購入して帰宅。熱を測ったら37.4℃だった。

21日

食べ過ぎたのか 寝苦しくてなかなか眠れず…

うーん、おかしいな… と思ってトイレに立ったら急に吐き気が来て一気に嘔吐。

1月のときと同様にビックリするくらい出てきて、「あぁ、さっきの1200円のカレーが…」って泣きながら全部吐いてしまった。多分昼飯の松屋の定食も出てたと思う。

で、熱を測ると38℃を超えていて。

これはノロウイルス再来か…!? いやしかしこんな季節にも来るのか?と呟いているとアデノウイルスというのが流行っているらしい、という情報も。

とにかく風邪ではなく何らかの細菌かウイルスで胃腸がやられているのは間違いなさそう、という感じ。

会社お休みしてひたすら寝込むことに。

やはり嘔吐はその1回きりで あとはひたすら水様の下痢が頻繁に続く。

1月のときは身体の震えとか高熱がキツかった覚えがあるが、今回は下痢の方がキツかった。ポカリスエット飲んでも飲んでもすぐに身体から水分が出ていってしまう感じで ちゃんと補充できていなかったら脱水症状がヤバかったのでは…と。

22日

やはり怠くて起き上がって動いたりは出来ず、引き続き寝込み続ける。

体温は37℃台まで下がったり、またぶり返して38℃を超えたり。

なかなか症状も良くならないし いつ治るんだ…と絶望しかけたけど、

夜になって突然すっきりしだして下痢も収まり 体温も36℃台に回復。

23日

朝起きるとすっかり平熱に戻っていて、動ける状態になっていた。

近所の内科に行って症状を伝えて診てもらう。

やはり時期的に考えるとウイルス性じゃなくて細菌性のものじゃないか、とのことで とはいえ怪しいものは特に食べた覚えはないし…

血液検査の結果を見るとどうやら細菌性のものの場合の結果とは違ったようで、やはりウイルス性だったのかもね、と。

結局 何が原因で何にやられていたのかは分からないまま。

出社などに関しては明確な基準は無いし、飲食業の人間じゃない限りは御自身の判断でどうぞ、とのこと。

その後

やはり少し脱水気味なのか本調子という感じではなく 結局また半日寝込んだり。体力も著しく低下しているのを感じたので 徐々に慣らしていかなくては。

結局何が悪かったのか分からないし今後に備えての気をつけようもなくて また別の感染性胃腸炎にかかるのに怯えながら生きていくしかない、というのはつらい。けど仕方ないか。

今まで一度も罹ったことなかったのに ここにきて半年で二回もやられると流石に凹む…

2 days in Singapore

あ…ありのまま 今週末 起こった事を話すと

「おれは 趣味でアイドルの顔を識別し続けていたと思ったら いつのまにかシンガポールでのAPACのイベントに機械学習エキスパートとして参加していた」

f:id:sugyan:20170304214642j:plain

色々な運と縁があり お声をかけていただき、シンガポールに行ってきました。 すべての日程を終え、チャンギ国際空港で帰りの飛行機までの時間でこのブログを書いています。

  • 3 Mar: Machine Learning Expert Day
    • APAC各国から集まった機械学習・TensorFlowのエキスパートたちが約30名集合
    • 2月にMountain Viewで行われたTensorFlow Dev Summitの参加者によるRecap
    • 各参加者による取り組み・事例紹介などのLT
    • 交流
  • 4 Mar: TensorFlow CodeLab
    • GDG Singapore主催のワークショップで、チューターとしてお手伝い
    • その資料の作成のお手伝いも少々
    • 当日参加者(100名弱)の環境構築を手伝ったり、質問に答えたり

という感じで Googleさんにお世話になりまくりの2日間でした。

1日目

カンファレンスでの発表、というほどではない簡単な自己紹介LTにしても 海外で人前で英語で話すというのが初めての経験だったので とにかく緊張した。

内容は勿論、今までブログに書いたりしてきたことの簡単なまとめで「日本のアイドルっていう人達の顔識別したくてひたすら画像集めてデータセット作って、あと生成とかもしてみたよ」というだけの話だけど 上手く伝えられるかどうか、、という不安がいっぱい。 でも事前に@kazunori_279さんが紹介してくださっていたのもあり、どうにか他国の方々にも理解していただいて興味を持っていただけたようで。

あとでいただいたフィードバックは

  • 「100,000件もデータセット作ったのすごいな」
  • 「94%くらいの精度って 失敗してるのはむしろ君のラベル付けのミスなんじゃないの?(そういうジョーク)」
  • 「1年以上もそんなことを続けていて、お前はワイフやガールフレンド居ないのか?(うるせぇ)」

など。

特にDCGANでの顔画像生成はインパクトあるようで 他の参加者にも「顔生成してた日本人」として覚えてもらえたっぽい。嬉しい。

夜は台湾・マレーシアの参加者の人たちと一緒にMarina Bay Sandsのバーにちょっとだけ飲みに行ったり

2日目

午前・午後と分かれて2セッションのお手伝い。

よく紹介していただいている、と話には聞いていたけど 海外でこうやって紹介していただいているのか〜 と生で見ることができて感無量。

それを知ってかCodeLabの教材そっちのけで「自分と、妻と娘の顔写真を使って顔画像を生成したいんだけど どうしたらいいんだ」ってめっちゃ前のめりで質問してきたおっちゃんがいたりして面白かった。

チューター業はまずWindows機でDockerを動かすのに苦戦する人を助けるのが大変だった、というのが第一で… しかし@kazunori_279さんが作った教材はとても面白くて 比較的初心者な参加者の方々には楽しんでいただけたのでは、と思います。

が、やはり英会話が全然出来ないマンなのでちょっとした質問に対しても何度も聞き返してしどろもどろの回答ばっかりになってしまってつらい…。さらにただでさえ日本語でも上手く説明できる気がしないようなニューラルネットワーク機械学習の深い質問なんかは本当に返答に窮して周りに助けを求めることしか出来ず 情けない思いでした…。

でもやっぱりこっちの人たちは日本人より遠慮が少なくちょっとしたこともガンガン質問してくるし マトモに回答できてなくても笑って頷いてくれるし、気分としては終始楽しくチューター業ができて良かった、かな。

まとめ

  • とても貴重な経験ができました、本当にありがとうございます!
  • 一緒だった日本の参加者の皆様とも色々とお話できて良かった
  • 英語に自信なくても自分が作ったもの・自分のコードには自信を持てていたのでそれは良かった
  • たくさん刺激を受けたし、これからも頑張るぞ!!!!1

f:id:sugyan:20170304225936j:plain

余談

他の参加者のブログ

新年あけましてノロウイルス

いやはや、新年早々から災難でした。

10日の深夜、なんか寒気がするけど 今日寒いからかな〜 と思ってたら どうも気分悪くなってきて眠れず。

どうやらノロの症状とほぼ一致してるっぽいし間違いなさそう、感染経路は謎だけど まぁ何が起きているのかは理解できたのでちょっと安心した。

コンビニが歩いてすぐの近所で本当に良かった… それでも出歩くのちょっとつらい、くらいにはフラフラしていた。帰ってきてすぐ気分悪さがMAXになって、嘔吐。吐くほど飲む、とかもここ数年なかったから 数年ぶりの体験だった気がするw おれ今日こんなに食ったっけ?ってビックリするくらい出てきて はやくも全身ほぼ空っぽになった感じ…。

そこからは症状は落ち着いたけど熱が38℃後半まで上がったりしていて(普通はそこまで上がらない、って書いてあったのにな…?) 下がるまでひたすら寝つづけた。

見立て通り1〜2日で無事に回復できてよかった。

手洗い、うがい、気をつけます。

2016振り返り

2016年とは何だったのか

どんな1年だったのか振り返ってみます。

とか、それくらいかな。

アイドル顔識別

TensorFlowを使った機械学習による画像分類の勉強の延長で、「アイドルの顔画像を分類する」という独自のテーマ、 ちょうど年明けくらいから取り組み始めた。

まずは画像を集めてデータセットを作る基盤作りから。

最初はももクロだけで試し、2月くらいからより広範囲のライブアイドルを対象にデータ収集、分類器の評価・改善など

5月頃、ある程度データが集まったところでDCGANによる生成も。

暫くはGCEを使っていたけど、6月頃にEC2のGPUインスタンスに学習環境を移行。

8〜9月くらいにDCGANでの生成の改善版を試してみたり

10月くらいからはLINE BOTと連携してアプリケーション動かしてみたり、とか。

TensorFlowはPythonだけど、データ管理アプリはRailsで書いてフロントエンドはwebpack(Babel+React)使ってみたり、LINE BOT関連でGo書いたり、そこそこ色々触った。

ブログ

とにかく作ったもの・書いたものは出来る限りブログに書いてまとめた。 流行りの分野だけに結構興味を持って読んでくれた方も多かったようで、おかげさまでホッテントリも6回くらい載ったようだ。

基本的に自分用のメモ書きだけど、なんだかんだで読んでくれる人がいるしあまり適当なことや嘘情報は書けない、ある程度は事前知識が無い人にも伝わるよう 出来るだけ正確で論理が分かるように書こう、とは心掛けて書いてきた。つもり。

勉強会

そんなブログから興味を持っていただいた方々から声をかけていただいて、勉強会で発表する機会も。

年明け1月末には福岡でお話させていただく予定も。 TensorFlow User Group にも少しだけ関わらせていただいたり、そのあたりのコミュニティの方々とお知り合いになれたのもとても有り難い出来事でした。

2016まとめ

とりあえず"Write Code Every Day"を1年続けることができたのは満足(年末に失速して途切れてしまったけど)。 そのおかげもあってアイドル顔識別をずっと取り組み続けて色々つくったりできたので良かった。

とはいえまだまだ勉強が足りない、もっと頑張らねば…と思うことが沢山。引き続き色々考えて工夫しつつ発展させていきたい。

趣味のドルヲタ活動は年間250〜300現場くらい行ってたのが今年は210程度まで減少したのでだいぶヲタ卒に近づいていると思う。

2017年は

機械学習関連ももっと勉強しつつ、また新しい面白い技術とかあったら挑戦してみたいなぁ。