ここ最近

前回の記事から5ヶ月ほど放置してしまった。 この5ヶ月何をしていたかというと、仕事ではJavaを触っていた。幸いというか何というか今までやった事がない類の仕事だったので、いい経験を得られたと思っている。後半は本気でしんどくて初めてこのままやってると倒れるかもとは思ったけど。まあ得がたい経験を得たので終わった今となっては良しとしよう。 では、仕事以外ではどうかというと、ずっとNode.jsをやっていた。とは言ってもチマチマやっていたので5ヶ月もあったが恐ろしく勉強としては進んでいない。が、先ごろようやく前回の記事で参考にしょうとした技術書を一通りやれたので、改めてNode.jsの感想みたいなものを書いてみたい。

Node.jsを動かしてみて

とにかく引っかかるのが非同期な動作。①とあるRSSを読み込んで、②XMLを解析して、③該当部分を加工してCSVに書き込む、みたいな事をしようとしたら、①、②、③が非同期で動くので予想外のCSVが出力される。①、②、③のそれぞれの動きは今までに似たような事を別の言語でやっていれば難しくはないだろう。非同期な部分をどう解決するかが勉強してきてのキモの一つだと思える。 ちなみにそこらへんはNode.js環境がv6なので、Promiseで解決した。が、v8以降ではasync/awaitを使うようになっているらしい。大きな変更点だと思うが、そういう変更が入るということはやはり多くの人が同じところで苦戦している証明でもあるような気がするでもない事もない。 上記の動作から言語としての難易度は少し高いように思えるけど、Atomを実装しているElectronの例もあるし、何か出来るのではないかという期待は、本を読み終わった後、むしろ高まった。せっかくなので、もう少し色々と挑戦してみたい。

とはいえ、次は

二つの本を用意した。

Swift実践入門 ── 直感的な文法と安全性を兼ね備えた言語 (WEB+DB PRESS plus)

Swift実践入門 ── 直感的な文法と安全性を兼ね備えた言語 (WEB+DB PRESS plus)

Deep Learningについては少し真面目に調べてみたいと思っていたので、この本が評判が良かったので試してみる事にした。ついでにpythonも経験出来るので、一石二鳥になれば良いかなあ。 Swift実践入門については、とりあえず発表された当初から触ってはいるものの、所詮仕事としてではないので、ここらで実践で使っている先達の技術を少しでも目にしたいので買ってみた。 この二つをまあバランスよく読めていければいいかなあと思っている。

上記二つを読みつつ、さらにちょっと試したいiOS11の新機能もあるし・・・やりたい事だけはどんどん膨れる感じだ。