プログラマ行進曲第二章

主にソフトウェア関連の技術をネタにした記事を執筆するためのブログ

積ん読状態になっている技術書(電子書籍)を再び読み始める方策を考えてみた

電子書籍で買った技術書がPCの奥深くに眠っていて紙の書籍よりも全然読み進められていないことに気がついたのでどうにかしないといけないと思ったのが動機。

結論

以上。

こんな感じ

狙っていること

  • PCを立ち上げたら嫌でも積ん読状態になっている技術書が目に入るので「しょうがない、読むか」と思う機会を増やしている
  • 読んでいないままだとデスクトップが乱雑なままなので、デスクトップを綺麗にしたい人は嫌でも積ん読を解消せざるをえなくなってくる。

注意点

普段からデスクトップが乱雑な人には恐らく効かない。

まあ、とりあえずの施策である。

WEB+DB PRESS vol.80の特集「エンジニアの学び方」の書評を読んで気になったので該当書籍買って読んでみた

要約

  • はてなブックマークを眺めていたら、「エンジニアの学び方」というタイトルの書評エントリを見かけた。
  • 記事を読む限り、今の自分のニーズに合致しそうなことが書いてありそうだったので、該当書籍の「WEB+DB PRESS vol.80」を買ってみた。
  • 該当特集の「エンジニアの学び方」を読んだところ、この特集内で言うところの「深い理解」軸と「応用対象」軸の学びに関して2年間くらい悩んでいたため、今後の学習計画の糸口が出来て非常に良かった。

Web+DB PRESS vol.80を購入したきっかけと実際に特集を読んでみて

直接のきっかけは上記要約に書いたように「『エンジニアの学び方』というタイトルの書評エントリを見かけて、内容が気になったから」というものです。

「じゃあ、何で該当エントリを読んで特集の内容が気になったの?」というと、2年くらい前から「個別具体的な技術とか知識とかツールの使い方ばかり覚えてきたけど、そういったものを自分の作りたいものに上手く活かせない…どういう風にしたら学んできた技術なりツールの使い方を実際のプロダクトを作る際とか目の前に表れた問題を解決する時に応用できるんだろう?」という疑問を持っていたからです。

そんな疑問を持っていた私に、この「エンジニアの学び方」では以下の2つのモデルを教えてくれました。

  • 知識には3つの軸がある

    1. 「広い視野」軸
    2. 「深い理解」軸
    3. 「応用対象」軸
  • 学びには3つのフェーズがある

    1. 「知識収集」フェーズ
    2. 「抽象化」フェーズ
    3. 「応用」フェーズ

それぞれの詳細について書くと長くなってしまうので割愛しますが、上記のモデルで言うと私は知識も学びも1ばかりに偏ることをずっとしていて、2,3を疎かにしていることが特集を読んだ後はっきりしてきました。

2,3に当たる部分を疎かにしていることは何となく自覚していたのですが、「抽象化」フェーズといった明確な名前と位置づけを与えられたことで「今自分がしている学びはどのフェーズに当たるもので、現在の自分に足りない知識はどの軸のものか?」といった判断がしやすくなったと思います。

領域は多少違えど、デザインパターンの文脈やリーダブルコード的な文脈で良く言われている「名前重要!」という話しと被るところが多く、理解をモデル化して適切な名前を与えることの大切さを実感できました。

特集「エンジニアの学び方」の内容に関してもっと知りたい方は著者の西尾さん自身がブログに書いているので、それを読むといいと思います。

結論

非常に俺得な記事でしたので非常に幸せになりました。

特集記事を書いた西尾(@nishio)さん、書評エントリを書いたmarcoさん、ありがとうございました! 手を広げすぎると失敗するので後回しになると思いますが、この特集が生まれるきっかけになった『コーディングを支える技術』も良い本だと聞いているので、いずれ買って読んでみようと思います。

特集気になった人はWEB+DB PRESS vol.80買ってみるといいと思います。他の特集も「Web技術入門」だとか「テスト駆動インフラ」だとか「Courseraで計算機科学を学ぼう」だとかあるので、私みたいに基本的なところがボロボロ抜け落ちている人間にはオススメだと思いますよ。

WEB+DB PRESS Vol.80

WEB+DB PRESS Vol.80

電子書籍版もあるみたいですね -> 電子書籍版 Web+DB PRESS vol.80

GAEとかVue.jsとかMartiniとかいじって何か作り始めた

地味にiOSプログラミングは続けているのだけれど、表に出せる結果が無いのでショボーンとしつつ、久しぶりにブログでも更新しようかなとか思い始めて今こうして書いている。

が、特にネタは無い。

強いて言えば、タイトルで書いたように、GAE/Goを使って何か一つWebアプリっぽいものをこしらえたいなと思ったので、まだ動作するわけじゃないけどMartiniを使ってアップしてみた。

本をどこまで読んだか読書記録を残しておけるものが欲しかった*1ので、それが出来ないかな?と思いながら作り始めた。

で、作りながら「これ、Vue.jsみたいなクライアントサイドの仕組みを勉強するいい機会なのでは?」と思ったので、それにも挑戦している。

現状、ローカルで単にブラウザを起動して試したときではちゃんとVue.jsのデータバインディングが機能していたのに、goapp serveで実行すると何故かデータバインディングが機能しなくて困っているところだ。

フロントエンド周りのこと全く不案内で意味不明なので自力で解決できるのかよく分からないでやっている。何かクリックでイベントが発火しなかったりして困っているのだった。

*1:というかiOSアプリでそういうものがある

iOSプログラミングの勉強をしているのですが、こっそりと…

今やっている勉強メモとか貼り付けておきます。

上記リンク先はQiitaの限定共有です。勉強しているネタ元は以下の書籍。

iOS Programming: The Big Nerd Ranch Guide (4th Edition) (Big Nerd Ranch Guides)

iOS Programming: The Big Nerd Ranch Guide (4th Edition) (Big Nerd Ranch Guides)

なんで限定共有でやっているかというと…

  • 勉強途中で書き途中だから
  • それ以上に本の中身の記述をそのまま書いている箇所が多いため、公開で投稿してるとアウトだと思っているから

じゃあ何で今回記事にしているかというと、今はこういうこと勉強してます!というアピールしたいから。

なので、ある程度時間が経過したらリンクをサクッと削除すると思います。

こうやってブログ更新しておかないと勉強しているのに何もやってないように外からは見えるだろうからです。

無職は辛い!!仕事したい!!

Xcodeにプラグインを導入してみた

最近iOSプログラミングもちょびちょびと勉強しているわけですが、iOSプログラミングする際に使うXcodeにそろそろプラグイン導入して楽したいなと思い始めてみたので、軽く調べてみました。

ここら辺を見ると「何をすればプラグインを導入できるか」「どういう風に役立つプラグインがあるか」といったことが一望できるので、まずはここら辺から始めてみるといいかと思いました。

プラグイン入れすぎるとXcodeが重くなるのかどうかは知りません。

最初に何を入れればいいか分からないという人は、Xcode5に対応したパッケージマネージャのAlcatrazとコード補完を強化するプラグインFuzzyAutocompletePluginを入れてみるといいと思います。

前者を入れてしまえば後はメニューからプラグインを管理できるだけでなく、どんなプラグインがあるのか概観できるし、後者はコード補完がデフォルトより融通が利くようになるので導入直後から便利さを感じ取れると思うのでお勧めです。

"The Flask Mega-Tutorial"のPartXIVまで進んでて、詰まってる

前回の記事の続き…というわけではないが、ブログ更新しないと永遠に更新しなくなりそうなので、こんなネタでもいいから書いてみる。

実は2〜3週間前(確か)には既にPart XIVまで進んでいたのですが、諸事情あってそこで止まってます。

  1. 右腕を怪我したこと。

    • 実はまだ痛みがあるので空手とか激しい運動は止めた方がいいと医者から言われている。
  2. Part XIVが上手くいかない

    • i18nl10nなので日本語圏に済んでいる私としては関係ある話題なのだが、最初に取り組んでみたとき、書き写すのを間違えたのか、ちゃんと動かなくて放置していた。
  3. 最後に提供されているソースコード使って起動させようとしても失敗した。

    • 途中上手くいかないから最後の完成物を使って次のPartに進もうとしたらそれが動かなくて萎えた & 今日久しぶりに取り組んで、次のPartからやろうとしたらPart XIVの成果を使いそうな漢字だったので現在進行形で萎えている。

そんなわけで今はiOSプログラミングとかに現実逃避している。

そうじゃなくても現実逃避している、という突っ込みは受け付けません。

ヤフー vs クラスメソッド「iOS 炎の7番勝負」に参加してきた

表題の通りです。

http://connpass.com/event/5159/

これに参加してきました。

今日の内にブログ更新したいので全く内容が無い感じになってしまいますが、イベントの内容は以下の方の参加記事を読むとまとまっていていいと思います。

簡単に感想でも書くとすると

  • 対決形式が予想以上に面白かった
    • 面白いと思った時にボタン連打するのが割と一体感を高めていて良かったと思う。
    • でも、今後同形式のイベントするときには今回のようなアプリだとJavaScript等でチートできそうな気がしたので、そこら辺のケアは必要な感じがしました。
  • 一つの発表が5分だけだったので、そこはちょっと物足りなく感じました。
    • 私は初心者なのでまだいいですが、少しでもツッコんでiOSに取り組んでいる人には物ないようだったのかも足りないないようだったのかも?
    • でもiBeaconは全く触ったことなかったので発表自体楽しかった。他は色んなところでちょくちょく名前を目にする機会多かったので。
  • iBeaconの発表をしていた人が両者とも内定者とのことでしたが、どちらも社員と間違えるほどの発表クオリティで素晴らしかったですね。

ヤフーさん、クラスメソッドさん、面白いイベントありがとうございました。