今年読んだ本のまとめ

これはPDC Advent Calendar 2016 4日目の記事です。
そしてこれは@eraiza0816 Advent Calendar 2016 4日目の記事です。
昨日はid:eraiza2580 さんのChromebookと過ごす大学生活でした。

 

記事製作コストがあまりにも掛かるので今回は2個のAdvent Carendarを纏めて書きます。

大学に進学してから学科内で特に話す相手も居なかったので、空きコマや放課後には図書館に籠って読書をする日々を送ってきた。その為今年(僕にしては)結構な量の技術書を読破したので所感を書こうと思う。

内容覚えてなかったり、曖昧な部分があります。ごめんなさい><

 

情報系関連

RubyRORもここ)

Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例

Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例

 

 有名(?)なクローラー本。

結構初歩から書いてあるので初心者でも読めるはず。

Practical Object-Oriented Design in Ruby: An Agile Primer (Addison-Wesley Professional Ruby)

Practical Object-Oriented Design in Ruby: An Agile Primer (Addison-Wesley Professional Ruby)

 

 洋書だったけど大学図書館でも買ってくれた。他学はどうなのか分からないけど面白いので読んでくれ〜

 

Rubyのしくみ -Ruby Under a Microscope-

Rubyのしくみ -Ruby Under a Microscope-

 

 Rubyがコードを実行するとき、裏でそのように動いているのかが書かれていた。

あまり意識して書いてこなかったので新鮮というか、ふ~んって気分になった。

 

実用的Rubyスクリプティング―入門から次の段階に進むためのスクリプトの書き方講座

実用的Rubyスクリプティング―入門から次の段階に進むためのスクリプトの書き方講座

 

 タイトルで選んだ。肝心の内容は覚えてない。。

Rubyスクリプティングテクニック ―テスト駆動による日常業務処理術

Rubyスクリプティングテクニック ―テスト駆動による日常業務処理術

 

 これもタイトルで選んだ。肝心の内容は覚えてない。。

リファクタリング:Rubyエディション

リファクタリング:Rubyエディション

 

 例のあのクライアントの可読性を上げるために読んだ。

そこそこ改善できたのでまた読んで参考にしていきたい。

メタプログラミングRuby 第2版

メタプログラミングRuby 第2版

 

 メタプロ極めたくて読んだ。

僕にはまだ早かった気がする。サンプルが結構多くて読み応えはあった。

Rubyベストプラクティス -プロフェッショナルによるコードとテクニック

Rubyベストプラクティス -プロフェッショナルによるコードとテクニック

 

カニの表紙の本、実はこれ図書館から借りたときはあまり読んでいない。id:mmzuku-quality が僕の誕生日のときプレゼントして貰った(ありがとうございます)のをきっかけに再度読んだ。

まだまだ鍛錬が足りない。

 

以下ROR

Ruby on Rails 4 アプリケーションプログラミング

Ruby on Rails 4 アプリケーションプログラミング

 

 

パーフェクト Ruby on Rails

パーフェクト Ruby on Rails

 

 

 Ruby on Railsはどれがいいのか分からなかったのでとりあえずこの3冊借りた。

アプリケーションプログラミングは後から読み返すのによいということで、読んだ後に自分でも買った。

パーフェクトはなんかウェブアプリを作っていく感じだったので、とりあえずコマンド覚えて構築できる力身に着けておこうとするならこれかなぁ。

実践はパーフェクトと内容が近かった気がする。

 機械学習とか

実践 機械学習システム

実践 機械学習システム

 
Pythonによるデータ分析入門 ―NumPy、pandasを使ったデータ処理

Pythonによるデータ分析入門 ―NumPy、pandasを使ったデータ処理

 
Sparkによる実践データ解析 ―大規模データのための機械学習事例集

Sparkによる実践データ解析 ―大規模データのための機械学習事例集

 

 この辺は例のあのクライアントを拡張するのに読んだ。読んでいる間、機械学習の奥の深さとかをひしひしと感じる日々だった。

エンジニアHowTo系?

プログラマのためのサバイバルマニュアル

プログラマのためのサバイバルマニュアル

 

プログラマはこうあるべき。みたいな指針が書かれた本。

量も少なくてサクサク読めた。

インターフェイス指向設計 ―アジャイル手法によるオブジェクト指向設計の実践

インターフェイス指向設計 ―アジャイル手法によるオブジェクト指向設計の実践

 

 「アジャイルって何」という状態だったので読んだ。

結局アジャイルって何?

リファクタリング・ウェットウェア ―達人プログラマーの思考法と学習法

リファクタリング・ウェットウェア ―達人プログラマーの思考法と学習法

 

 まずプログラマの脳を最適化しよう。みたいなことが書かれてる本、あまり覚えてない。けど笑える内容だった。読んでね。

エンジニアのための時間管理術

エンジニアのための時間管理術

 

 タスク管理のことはこれ読んで学んだ。

エンジニアのためのって書かれてるくらいなので、内容もエンジニア向けで結構共感しながら読み進めることができた。

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック (Theory in practice)

 
プログラマが知るべき97のこと

プログラマが知るべき97のこと

 

「これくらい読んでおけ」

と言われたので読んだ2冊。なるほどな〜。ってするので皆さんもなるほどしてください。 

未分類

サイバーセキュリティプログラミング ―Pythonで学ぶハッカーの思考

サイバーセキュリティプログラミング ―Pythonで学ぶハッカーの思考

 

 「こんなのも置いてあるのか…。」

と思って気が付いたら借りていた。内容覚えてないし、CTFer各位が読んでいたなぁとかしか感想がない。

入門Redmine 第5版

入門Redmine 第5版

 

 自分用にRedmine導入しようとしたけど使い方がわからなかったので借りてきた。

結局わからないままで、Githubのproject機能使ってタスク管理してる。

 Dockerの本読みたくて借りた。

[増補改訂版]クラウド時代のネットワーク技術 OpenFlow実践入門 (Software Design plus)

[増補改訂版]クラウド時代のネットワーク技術 OpenFlow実践入門 (Software Design plus)

 

 id:mmzuku-qualityが課研で話すとか聞いたから、知識持った状態で発表聞きたかったので借りた。

サーバの冗長なんかするときにまた借りようと思う。

 

情報系ではないもの

ヒョウモントカゲモドキと暮らす本 (アクアライフの本)

ヒョウモントカゲモドキと暮らす本 (アクアライフの本)

 

 飼いたい飼いたい拗らせていたら、大学図書館に入った。

ヒョモントカゲモドキ可愛いので飼いたい。

 

さいごに

大学図書館は活用せよ。

 大学Prime会員なら無料で利用できます。


明日はid:eraiza2580 さんです。

Chromebookと過ごす大学生活

これはPDC Advent Calendar 2016 3日目の記事です。
昨日はid:eraiza2580 さんのPDCと寿司でした。

r-pechi.hatenablog.com

r-pechi.hatenablog.com

これらの再編集をしたものを書く。
開発者モードでの動作を前提としているので、何か起きても責任は追わない。

プログラミング系

弊学科1年は基本的にC言語しか学ばず、キーボード入力から画面出力が出来れば問題のないものばかりなので、凝った環境は不要。
アーキテクチャIntelならChromebrewが使える。

github.com

ARMの場合でもパッケージがあるものの、僕の環境(C100PA)ではエラーで環境構築できなかった。

github.com

ChromebrewがあればVimやGit等の大抵のパッケージをChromebookに追加できるのでこれだけで便利になる。

オンラインでIDE環境としてはcloud9やNautilus等のWebIDEと呼ばれるサービスを利用していけば実習でも十分可能。

ネットワーク系の講義

一応ネットワーク系の講義も申し訳程度にある。 これの対処は簡単で、VPS借りるか、家にテキトーなサーバ建ててSSHするだけ。 Chromebookだけでは流石に無理だけど、クライアントとして利用すれば十分に使える。

まとめ(?)

  • パワーの必要なプログラミングじゃない限り平気
  • ネットワーク関連も別の環境に繋げば平気
  • CADとかは(やったことないけど)辛そうなので無理っぽい?

Chromebook愛してれば、気合いでなんとかなるもんです💪

明日はid:eraiza2580 さんです。

モニター買った

 

 買いました。

 

僕は家ではソコソコサーバを建てて過ごしているけど、1枚もモニター持ってなかったので今回買うことにした。

コストパフォーマンスの高さが良いらしいと勧められたのと、AmazonPrime会員だと値引きが効いたので良かった。

朝注文してその日の夜には届いてたのでさすがAmazonって感じです。

 

モニターそのものはフツーの特筆する箇所はないけど、よい買い物だった。

あと2枚くらい買ってモニターアームからニョキニョキさせたい。

ヤミ金ウシジマくんPart3を観てきた

やっと観れました。
Twitterでは結構前々からみたいみたい言ってたけど、都合がつかなかった。

ウシジマくん見に行くチャレンジが始まります。

あまり面白くないですね。

ファイナルが楽しみです、22日以降にまた見に行きます。

今年の夏にしたこと

r-pechi.hatenablog.com

夏休み明けたので、これの報告。

GAのプロジェクト完遂

成功🎉🎉
よくやった。
お疲れ様でした。

エアコンを自室に設ける

設置しました。
快適です。

Javaの習得

できていないので頑張る。

パソコンだいすきクラブで集う

集えましたね。
詳しくは「にほんごのれんしゅう」へどうぞ。
eraiza.hatenablog.com

eraiza.hatenablog.com

花火大会に行く🎆

行きました。
一人で。

Rubyの更なる学習(メタプロ極める)

出来た?
バイトのほうで結構やりました。
今後はRailsも触っていくことにします。

Chromebookを買う

夏がくる前に買った。

r-pechi.hatenablog.com

言語を1つ習得

特に出来てない。

モニター増やす

クレジットカード来たら買います。

モニターアームも増やす

クレジットカード来たら買います。

かき氷食べる

今年は食べませんでした、誰か食べに行こう?

Clientの改善

Twitterがこの夏で結構変わって、その辺の仕様も追いつけてません、今後改善します。

(分野問わず)読書

時間管理方法とか、タスク管理とかの本を結構読んだ気がします。

まとめ

概ねよし

来年も有意義な夏を過ごしたい。 今季も頑張ります。

Cloud9sdkが良かったので書く

r-pechi.hatenablog.com

これの続き。
呼び方が商用サービスのとは異なるらしいので『cloud9sdk』と書くことにする。
前回まではlocalでは動いたけどLAN内ではアクセスが出来てなかった。

解法

カレントディレクトリで

sudo ./server.js -p 8080 -l 0.0.0.0 -a :

これでいけた。
原因だけど、まずsu権限が付与されないと起動はしてもTerminalが動かない。
次に-l 0.0.0.0の引数で公開される。
-aで basic認証が掛けれる。
user:password という感じ。

後々読んだら書いてあった。

cloud9-sdk.readme.io

これで時間かかってしまったのは頭が悪かった。

所感

余ってるサーバ資源使えるし、とても良い感じ。
でも気になった点が何個かあって、

  • 複数端末からログインすると、排他制御が効いてファイル更新があるたびに再読み込みする必要がある

本家では同時に編集できてペアプロとかに便利だったのに残念、そこはGitを使っていこうと思う。
これはあくまでα版だしだし、今後のアップデートで対応したらいいなぁ。

  • インストールすると開発環境が1個しか持てない

Pythonやりたい時とRuby書きたい時で全く同じものを触るのはなんだか良くないと感じる。
dockerとかでcontainer建てて、container毎に環境分けをすれば有用そう。

それでもChromebookでcrewを使いたかったけどARMなので利用できなかった僕には嬉しい限りなことに違いはないので良かった。