頭の中身をアウトプットしていく
筆記開示目的でもあり、自分がどういうことを考えているか?どんな人間なのか?を知ってもらうために記事を書き連ねていこうと思う。 おそらく技術的な記事はあまり書かないと思う。技術的なことは好きだが整理したり、調べなおしたり、アウトプットに時間がかかる。 一方で考えていることをアウトプットするのは、あまり時間がかからない。短文でもいい。良いと思ったこと、日々感じたこと、頭の中を駆け巡ったことを、なるべく書いていこうと思う。
継続>>>分量、質
コンテキストマネージャーとwith文 Pythonトリックより
with文
Pythonに限らずファイルをオープンしたらクローズしないといけない。
with文がなかったころは、こう書いていた。
f = open('hello.txt', 'w') try: f.write('hello, world') finally: f.cloe()
with分を使うとこう書ける。
with open('hello.txt', 'w') as f: f.write('hello, world')
enterとexit
自作したクラスでもwith文に沿ってopen->closeができる。それがコンテキストマネージャー
以下のようにクラスに__enter__
と__exit__
を実装してあげればよいとのこと。
3. Data model — Python 3.8.2 documentation
class ManagedFile: def __init__(self, name): self.name = name def __enter__(self): self.file = open(self.name, 'w') def __exit__(self, exc_type, exc_val, exc_tb): if self.file: self.file.close()
コンテキストマネージャー
クラスだけではなくcontextmanagerデコレータを使用することで、関数に対してwith文を適用できる。
from contextlib import contextmanager @contextmanager def managed_file(name): try: f = open(name, 'w') yield f finally: f.close() with managed_file('hello.txt') as f: f.write('hello, world!') f.write('bye now')
大昔ですがJavaもtry-catchのtryでcloseできるようになりましたよね。 一瞬で実行し終えるスクリプトならcloseが漏れても、プロセスが終了するので問題ないが バッチ処理とか長時間処理する場合は、クローズ漏れはリソースを逼迫します。 コンテキストマネージャとwith文積極利用していきましょう。
assertではなくraise AssertionErrorしましょう
Python Tricksにassert使っていけ!と書いてあったので、早速使ったらraise AssertionError
をつかえ!とlinterに怒られた。
言語問わずassert系をプロダクションコードに使うものではないよね。
ちゃんとraiseしましょう。
Pythonのdataclass
補完を利用したい。タイポで苦しみたくないから辞書型の使用は極力さけてClassを書くようにしていたのですが、dataclassという機能をしりました。 Pythonなどオブジェクト指向言語だと、ちょっとした構造体を用意するにもClassをつくってコンストラクタを作ってと面倒なのですが、そのあたりをショートカットできるデコレータのようですね。 Python3.7以降なのであたらしいプロジェクトじゃないとだめだけども積極的に使っていこう。
在宅リモートワークで集中力アップにつながったこと
人生初のリモートワークでして、やり方について試行錯誤している最中です。
モニタの数を上下2枚にする
- モニタの数=効率だと思っていましたが逆
- 左右にモニタを並べると首を振らなければならず、首を降るだときに集中力が途切れる
- またモニタ多数囲まれるとバックライトが眩しくて集中力がおちます。
- 足りない分は仮想ワークスペースやMissonControlをつかって画面切り替えましょう。
Youtubeで常時、顔出し配信
- 「監視されているわけではないが、人に見られているとような感覚」で出勤している感覚をだす。
- 自由に私生活行動ができてしまうと気持ちが緩んでしまい集中が途切れるけれど、配信していると私生活行動防止になる。
- ほどよい緊張感になるのでおすすめしたい。
2018年に読んだ本
年末にまとめるつもりが新年でした。 いっぱい読んだなー。この一覧以外にも積読がたくさんある。 まったくお金がたまらない。
読み切った本
PythonとKerasによるディープラーニング
- 作者: Francois Chollet,巣籠悠輔,株式会社クイープ
- 出版社/メーカー: マイナビ出版
- 発売日: 2018/05/28
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る
今年一番影響を受けた本。ディープラーニングの細かいところをここまで丁寧に説明している本はなかなかないと思う。非常に実践的な本
エンジニアの知的生産術
エンジニアの知的生産術 ──効率的に学び、整理し、アウトプットする (WEB+DB PRESS plusシリーズ)
- 作者: 西尾泰和
- 出版社/メーカー: 技術評論社
- 発売日: 2018/08/10
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (2件) を見る
経験則でやっていた・心がけていたことをすべて文字で説明されていた。もっと効率的にやれそうなことにも気付かされたすごい本。うまく説明できないけどすごい。曖昧にやっていたことを文字にしたことがとにかく凄い。
AWSによるサーバーレスアーキテクチャ
- 作者: Peter Sbarski,吉田真吾,長尾高弘
- 出版社/メーカー: 翔泳社
- 発売日: 2018/03/14
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
最近のAWSの使い方を教えてくれた本。実務と完璧にマッチしたためAWSに対する意識がおおきくかわった。
Clean Architecture
Clean Architecture 達人に学ぶソフトウェアの構造と設計 (アスキードワンゴ)
- 作者: RobertC.Martin,角征典,高木正弘
- 出版社/メーカー: ドワンゴ
- 発売日: 2018/08/01
- メディア: Kindle版
- この商品を含むブログを見る
オブジェクト指向、関数型などパラダイムを説明する下りがとくに気に入った。「我々はなにをしたら良いかは分からないけど、何をしてはいけないかはわかる」という言葉は最高。後半は細かすぎてすぎてついていけなかった。
基礎から学ぶVue.js
- 作者: mio
- 出版社/メーカー: シーアンドアール研究所
- 発売日: 2018/05/29
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
まったく興味がなかったけどVueをやることになったので読んだ。SPAはロジックでWebページを作っていくのでロジック書きたいマンにはVueは楽しい。HTMLとCSSがわからんので最低限のことはできるようになりたい。
Linuxのしくみ
[試して理解]Linuxのしくみ ~実験と図解で学ぶOSとハードウェアの基礎知識
- 作者: 武内覚
- 出版社/メーカー: 技術評論社
- 発売日: 2018/02/23
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
2018年にOS(Linux)の仕組みを簡単に説明してくれた貴重な本。ただ誤植が多く、図がわかりにくいのが難点…。2版、3版で修正されていたら書い直したい。
Docker/Kurbenetes実践コンテナ開発入門
- 作者: 山田明憲
- 出版社/メーカー: 技術評論社
- 発売日: 2018/08/25
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
単なるDocker入門書ではなく、正しいDockerの使い方を説明した良書。最近Dockerに触れていないのでそのうち読み直したい。
スターティングGo言語
- 作者: 松尾愛賀
- 出版社/メーカー: 翔泳社
- 発売日: 2016/04/15
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (5件) を見る
単なる入門書だろう…と高をくくっていたけど、かなり細かいところまで説明している本だった。他の言語を長年やっていてGoを始めようとしている人にはピッタリだと思う。
JavaScript関数型プログラミング
JavaScript関数型プログラミング 複雑性を抑える発想と実践法を学ぶ impress top gearシリーズ
- 作者: LuisAtencio,株式会社イディオマコムニカ加藤大雄
- 出版社/メーカー: インプレス
- 発売日: 2017/06/09
- メディア: Kindle版
- この商品を含むブログ (1件) を見る
実務でTypeScript/JavaScriptを書くために読んだ本。なるほどーで終わっている
TypeScript実践マスター
- 作者: 古賀慎一
- 出版社/メーカー: 日経BP社
- 発売日: 2017/12/12
- メディア: 単行本
- この商品を含むブログを見る
実務でTypeScript/JavaScriptを書くために読んだ本。
読み切ったけどピンとこなかった本
UNIXという考え方
- 作者: Mike Gancarz,芳尾桂
- 出版社/メーカー: オーム社
- 発売日: 2001/02/01
- メディア: 単行本
- 購入: 40人 クリック: 498回
- この商品を含むブログ (145件) を見る
古典。UNIX全盛期に書かれたものなのでオラオラ感がすごい。いいことがたくさん書いてあるのだけれど、宗教色がつよいのでお腹いっぱい。
SQLアンチパターン
- 作者: Bill Karwin,和田卓人,和田省二,児島修
- 出版社/メーカー: オライリージャパン
- 発売日: 2013/01/26
- メディア: 大型本
- 購入: 9人 クリック: 698回
- この商品を含むブログ (46件) を見る
理論から学ぶデータベース実践入門
理論から学ぶデータベース実践入門 ~リレーショナルモデルによる効率的なSQL (WEB+DB PRESS plus)
- 作者: 奥野幹也
- 出版社/メーカー: 技術評論社
- 発売日: 2015/03/10
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (20件) を見る
SQL実践入門
SQL実践入門──高速でわかりやすいクエリの書き方 (WEB+DB PRESS plus)
- 作者: ミック
- 出版社/メーカー: 技術評論社
- 発売日: 2015/04/11
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (7件) を見る
検索エンジンをメインで触れていたのでSQL疎くて再勉強した。ORMをばりばり使うことになったので、あまりピンとこなかった。
つまみ食い or 途中まで読んだ本
実践Vim
- 作者: DrewNeil,新丈径
- 出版社/メーカー: 角川アスキー総合研究所
- 発売日: 2014/01/28
- メディア: Kindle版
- この商品を含むブログ (4件) を見る
超良書だけど覚えることがおおいのでつまみ食いして終わっている。なんども読みかえすべきほん。今年は本格的なVim入門年でした。Vim力をたかめていきたい
Amazon Web Service 実践入門
Amazon Web Services実践入門 (WEB+DB PRESS plus)
- 作者: 舘岡守,今井智明,永淵恭子,間瀬哲也,三浦悟,柳瀬任章
- 出版社/メーカー: 技術評論社
- 発売日: 2015/11/10
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
AWSの全体像を知りたくて買ったけど、内容が古かった。実際触らないとイメージし辛いことが多いので読んでると眠くなる。
AWS Lambda実践ガイド
- 作者: 大澤文孝
- 出版社/メーカー: インプレス
- 発売日: 2017/10/16
- メディア: Kindle版
- この商品を含むブログを見る
Lambdaの使い方をまなぶために読んだけど、途中までよんで公式を理解できるようになったので放置
Elasticsearch実践ガイド
Elasticsearch実践ガイド (impress top gear)
- 作者: 惣道哲也
- 出版社/メーカー: インプレス
- 発売日: 2018/06/15
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
業務でElasticsearchを使うことになったのでかった。スキーマ設定まで知りたかったので途中までよんだ。
Nuxt.jsビギナーズガイド
Nuxt.jsビギナーズガイド―Vue.js ベースのフレームワークによるシングルページアプリケーション開発
- 作者: 花谷拓磨
- 出版社/メーカー: シーアンドアール研究所
- 発売日: 2018/10/17
- メディア: 単行本(ソフトカバー)
- この商品を含むブログを見る
Nuxtの使い方をしるためにかった。途中で止まっている。
体系的に学ぶ安全なWebアプリケーションの作り方
体系的に学ぶ 安全なWebアプリケーションの作り方 第2版 脆弱性が生まれる原理と対策の実践
- 作者: 徳丸浩
- 出版社/メーカー: SBクリエイティブ
- 発売日: 2018/06/21
- メディア: 単行本
- この商品を含むブログを見る
ORMばかりだったので、インジェクション系がもピンとこなかった。また読み直したい。
Goプログラミング実践入門
Goプログラミング実践入門 標準ライブラリでゼロからWebアプリを作る impress top gearシリーズ
- 作者: Sau Sheong Chang,武舎広幸,阿部和也,上西昌弘
- 出版社/メーカー: インプレス
- 発売日: 2017/03/17
- メディア: Kindle版
- この商品を含むブログ (1件) を見る
入門書に読もうとおもったけど、いきなり読む本にしては難易度が高めだった。途中で挫折。
会社で読む本と読まない本
無事に入社して2ヶ月経ちました。
自席も徐々に自分のモノであふれはじめました。 技術書も5,6冊ほど持ち込んだのですが、全く読まない本と定期的に手に取る本があることに気づきました。
先にまとめてしまうと、「手に取らない本 = Google or 公式Docで解決できてしまう本」 でした。
手に取った本
手に取らない本
まとめ
中級・上級向けの本を持っていきましょう。
ちなみに手に取らない本が役に立たないというわけではないです。 通勤時間や暇な時間に眺めていると新しい発見があったりします。 仕事中は辞書としての役目を果たすかがとても重要で、仕事上PCの前にずっといるため ネットを上回る情報がないと職場に持ち込もう本としては不適だなと感じました。