『Effective Python』を読んだ

『Effective Python』を読んだ。
メインで扱っている言語がPHPとJavaScriptで、これらのコードの書き方の作法はわかっているがPythonのそれはわかっていない。
Pythonらしい書き方、行儀のよいPythonコードの書き方を学ぶためにこの本を読んだ。

よく、他の言語から入ってきた人が書いたコードで 「あーこれPHPじゃこんなやり方しないよなー。ちょっといけてねーなー」と思うことがよくあり、 自分の書いたPythonコードがそう思われたくない。
Pythonicな書き方を学ぶにはこの本がよい、と風の噂で聞いたので読んでみた。

effective_python

中級者・上級者向けの本であるためか、Pythonの文法・基本的な知識がないと読めない本である。
一番自分が知りたかったPythonicな書き方というものは最低限知れたのかなと思う。
最低限というのは、小さい単位でコードを分割したときの場合においてPythonicに書けそうだが、...

続きを読む

『入門 Python 3』を読んだ

来週から本格的にPythonでデータ分析を始めることになるので、 そのまえにPythonの復習をすることにした。
オライリーの『入門 Python 3』を読んだ。 原題は『Introducing Python』。

対象としている読者は「プログラミング初心者」らしい。
さすがオライリー。こんなん初心者殺しやわ。
オライリーの本で初心者向けというのはだいたいウソ。
別のプログラミング言語をやったことがある人じゃないと30ページくらいで挫折すると思う。

introduction_python3

中級者以上にとっては、今からPythonを学ぶために読む本としてはとてもよいと思う。

...
続きを読む

こだわりの作業用音楽

作業開始の合図はTMGEのゲットアップルーシー。
朝からテンションをあげるには最適な曲である。

tmge_playlist.png

全曲TMGEで占められたプレイリストが終わる頃にちょうどよくミーティングが始まる。
リモートワークだと当然ひとりで作業することになるので、自分でモチベートさせていかなければならない。
競技開始前に精神集中または闘争心に火をつけるためにアスリートが音楽を聴くのと似たようなものである。

闘争心だいじ。
TMGEは闘争心に火をつけるのにまさにうってつけ。
(本当は最後のスタジオアルバムの曲を入れたいんだけどCD失くしてしまって聴けない…)
プログラマには闘争心が必要だ。 闘争心を持たずにコードリーディングすると、クソコードというモンスターにやられてしまう…

...
続きを読む

エンジニアにとっての資格は技術力のものさしにならないが非エンジニア向けへの証明書にはなる

エンジニアにとって資格はあまり意味はない。
IT資格は弁護士免許、医師免許といった業務独占資格ではない。
エンジニアになるのに資格は必要ないのである。

ではどうしてIT資格というものがあるのか。
純粋に技術力を測るものさしの役割を担うのだが、昔ならいざしらず現在ではGitHubやQiitaなどがものさしとしての役割を担っている。
資格が優れたエンジニアということを証明するものではない。

だが、その分野について「勉強した」ということの証明にはなる。
過去勉強したことは今でも役に立っている。

以下は過去取得したものである。

capabilities

上段左から

    ...
続きを読む

田舎でリモートワーク

田舎はよい。

空気がうまい。
水がうまい。
米がうまい。
野菜がうまい。
人混みがない。
星空がきれい。

田舎なので小洒落た格好をする必要もない。
田舎なので電車に乗らなくてもよい。

こんな田舎に住んでいる。

country1

...
続きを読む

自宅開発環境について

リモートワークをしているので、 当然、会社で仕事をすることはほとんどない。 「ノマドワーキング」という言葉がようやく一般的になったかと思うが、自分の場合は外で作業することはなくほぼ自宅の自分の机で作業している。
座り慣れた椅子と複数のディスプレイ、使い慣れたキーボードがないと作業効率が落ちてしまう(気がする)。
リモートワークのよいところは作業効率の改善のためにいろいろ工夫できることである。

いろいろ工夫した結果、現在以下のような環境で作業している。

desk1

上の画像じゃわかりづらいかもしれないが、 21インチのディスプレイ2枚と16インチのディスプレイ1枚+MacBookProのディスプレイ1枚の4枚。
タブレット端末のディスプレイもあわせると5枚もある。
人によってはこんなにディスプレイはいらないかもしれないが、個人的にはディスプレイは最低2枚、できれば3枚は欲しい。

基本的に正面の2枚をMacBookProに繋げている。
...

続きを読む

リモートワークにおけるテキストでのコミュニケーション

リモートワークを開始して2ヶ月が経とうとしている。

リモートワークは難しい。
やはりコミュニケーションコストがかかってしまうのは否めない。
ただ、難しいが工夫次第でいくらでも改良は可能だと今のところは思っている。

テキストのやりとり限定だが、 リモートでもコミュニケーションをうまく取るために、以下のことを心がけている。

  • テキストはやわらかく。なるべく絵文字を使う。
  • 用がなくてもつぶやく。
  • 文章にできるだけ情報を詰める。
  • 抽象的なことはつぶやかない。具体的なことをつぶやく。
  • あえて行間を読まない。
  • 言葉の選択を間違ってもくよくよしない。

以下、ひとつずつ説明する。

テキストはやわらかく。なるべく絵文字を使う

テキスト中心のコミュニケーションの場合、...

続きを読む

『データサイエンティスト養成読本 機械学習入門編』を再読した

データサイエンス、機械学習について復習のため、
過去に読んだ『データサイエンティスト養成読本 機械学習入門編』をもう一度読んだ。

datascience

この本は、データサイエンス・機械学習ではじめに読む本としてはとてもいいと思う。
内容も平易で文章も読みやすい。
機械学習はこういうものです、というのをわかりやすく教えてくれる。

前半はデータサイエンス・機械学習の概要から基礎、理論、それらのユースケースについてわかりやすく説明されている。
後半はライブラリを使った実践となっている。

後半部分はエンジニアじゃないと読んでもしょうがない内容だと思うが、 前半部分は非エンジニアにも読んでもらいたい内容だった。
...

続きを読む

『ゼロからはじめるデータサイエンス』を読んだ

データサイエンス、機械学習の勉強のために『ゼロからはじめるデータサイエンス』を読んだ。

datascience

本書の構成を大きく分けると、1章から11章まではデータサイエンスの土台となる基礎部分について、 12章から22章までは応用、23と24はRDBとMapReduceの説明になっている。

読み進めるとわかるが、各章の内容が浅い… わずかばかりの用語説明とPythonのコードがあるのみで、あとは各自調べてね、というスタンス。
数学に関する章も多く、途中から高校の教科書を引っ張り出したくらいだ。

Amazonのレビューの評価が低いのもうなづける。
この本だけでデータサイエンスを学ぼうとしているならやめたほうがいい。

これを読むと、データサイエンスという分野が 本一冊で十分に学べるほどではないことがわかる。

これからデータサイエンスを学ぶ足がかりとして読むならいいかもしれない。 データサイエンスについて今後学んでいくにあたって、 どのようなものを学んだらいいかのあたりはつけることができた。

...
続きを読む

Route53とCloudFrontで独自ドメインのGitHub PagesをHTTPS化した

タイトルのとおりHTTPS化した。
さすがにいまどきのページでHTTPSにしてないページはどうかと思う。
Let’s Encrypt などの無料でSSL証明書を取得できるサービスも出てきたのに、平文でやりとりするのはよくない。

今回はCloudFrontを利用するので、SSL証明書をAmazon Certificate Manager(ACM)で 無料で利用できる。
しかも 更新は自動だ!

今回の作業するにあたって以下の記事が参考になった。
Github Pagesでホスティングしつつ、CloudFrontを使ってサイトをSSL対応の独自ドメインにする

...
続きを読む