massa142's blog

くり返す このポリリズム

2016年の振り返り

あけましておめでとうございます。

年末はなにかと忙しくて2017年になっちゃいましたが、2016年を振り返っておこうと思います。 2017年の抱負はまた後で書きます。

massa142.hatenablog.com

エンジニア

Python

2016年はこれまで以上にPythonにハマっていきます。

SQUEEZEに転職してPythonで仕事するようになったし、Pythonにどっぷり浸かることができた。

やればやるほど奥が深くて面白い。自分が苦手なネットワーク周りの低いレイヤに関する知見を2017年は勉強していきたい。

Pythonの各項目別の達成度は以下の通り。

転職前まではPythonの勉強のために読み進めてたけど、春以降はやらなくなった。

転職して英語のドキュメントに抵抗はなくなったし、必要になったもの/興味が出たものを引き続き読んでいけばOKかな。

flake8プラグインを作ろうかなと思ったけど、去年はできなかった。業務で必要になったら作ろう。

  • PyCon JP 2016のスタッフを引き続き頑張る

2016の会場チームは経験があまりないメンバーが多かったので、多少なりとも自分が引っ張ることができてよい経験だった。また寺田さんと一緒になる時間が増えたことで、仕事の進め方・周囲の巻き込み方などを勉強することができた。

PyCon JPのスタッフ活動からは、技術以外の大事な社会人スキルをたくさん学べている。

YAPC::Hokkaidoのあらたまさんのtweetはとてもしっくりきた。

ただPyCon JP 2016に関しては、家庭の事情でカンファレンス2日目に参加できなかったことが心残りで不完全燃焼。

それでトークもキャンセルせざるを得なかったのは残念だった。2017はやりたいことやって完全燃焼できるようにしたい。

転職などでばたばたして休止していたもくもく会を10ヶ月ぶりに再開できた。

mokupy.connpass.com

けど結局2016年はこの1回だけになってしまったので、2017年はなんとか毎月開催を再会したい。

  • PyCon APAC 2016に参加する

初めて海外カンファレンスに参加した。

めちゃくちゃ楽しかったし、Python・カンファレンス運営の勉強になったので、2017年もPyCon APACにぜひ参加したい。

massa142.hatenablog.com

英語

SQUEEZEは公用語が英語なので、英語学習にはとても良い環境だった。

おかげで英語のドキュメント・リスニングに対する抵抗感はほとんどなくなった。

ただ話すほうは挫折した。

日本人比率も下がるしなんとか頑張りたいけど、英語に対するやる気と技術に対するやる気が両立しないのが難しい。どうするのが自分にとっていいのか模索中。

まあ英語な環境を楽しめているんで、焦らず気長に取り組んでいきたい。

アウトプット

ブログ

Qiiita

2015年と同じでAdvent Calendarの時期にアウトプットが集中したかな。これこそAdvent Calendar駆動開発。

量をこなせるようになったので、2017年はもっと質にこだわりたい。

また日報を11月から始めた。

wikihub.io

無理をせずに継続することを大事にしてるので2・3日おきの更新にはなってるけど、

  • 作業ログ
  • 感情の整理
  • アウトプットの練習

としてとても役立ってる。

飽きっぽい性格なんで3日坊主で終わるかと思ったけど、ゆるい感じのやり方が性に合ってたみたい。

この1年間の振り返りと日々の日報の中間的な存在として、2017年は毎月ごとに振り返りをブログでやっていきたい。

ラクロス

2016年のAdvance-Hanglooseは弱かった。

自分がAdvanceでプレーし始めてからチームは上昇しつづけてきたけど、去年ははじめて挫折を味わった。1勝もできずに、入れ替え戦にも破れて2部降格。

自分の反省としては、「幹部に頼ってしまい責任感がなかった」

もっとラクロスに真剣に向き合って取り組まなくては。

今年は久しぶりに幹部もやるので、Advanceが再び強いチームになるための礎を築きたい。

Perfume

2016年参戦記録

2016年はラクロス部とPyCon JPにもPerfumeの輪を広げることができてよかった。

日々の暮らし

  • 心と体を整える

体のメンテナンスがだいぶできた。

体の調子がいいと心の調子も良くなる。

  • 月2万ずつの貯蓄

貯蓄全くできてないけど、月2万の保険に入ったからよしとする。

  • 家計簿をつける

つけてない。けど現金で払うことがほとんどないから家計簿いらないかな。

お金に向き合うための別の方法を考える必要あり。

観に行った映画

今年振り返ってみて

良かったこと

  • SQUEEZEへの転職
  • 尊敬できるメンバーと出会えた
  • 業務外で手伝える会社に出会えた
  • Vue.js・Angular.jsのコミュニティに関わった
  • 技術本をたくさん読んだ
  • Steins;Gateを今更観た
  • ボルタリング始めた
  • 真田丸最高だった

悪かったこと

  • 発表をほとんどしなかった
  • 12月以外でのアウトプットが少ない
  • アウトプットにRockとエモさが足りない
  • 読書ログがない
  • 西武ライオンズが弱い
  • 相変わらず朝が弱い
  • 家族との時間が少ない

情報収集方法まとめ 2016年12月版

はじめに

この記事は、ぼくの情報収集方法 | tsub's blogのインスパイア記事になります。

ちょうど良い機会なので現時点での情報取集のやり方をまとめておこうと思います。

どうやって情報収集しているか

Twitter

ちゃんとした技術的発信をしている人のアカウントは積極的にフォローしてます。
Twitterのタイムラインを追ってるだけで楽しいので、仕事中に身過ぎないようにするのが大事になってきます。

t_wadaさんも言う通り、何気ないつぶやきやRTを「たまたま見かける」ことで情報収集に役立ってます。

現時点でのフォロー数は1140です。これだけのtweet全てをタイムラインでキャッチアップするのは不可能です。 けど自分にとって大事なtweetを見逃したくないのが人の常です。

このためにTweetDeckで、追っておきたいハッシュタグ・ユーザーを登録していって複数のタイムラインにしてます。

tweetdeck.twitter.com

違う対応策として「リストの作成」というのがありますが、リストメンバーの管理コストがめんどくさいのでリストは使ってないです。

はてブホットエントリー

はてブホットエントリーも、今話題になってる情報が詰まってます。

はてなブックマーク - 人気エントリー - テクノロジー

かなりの頻度でここをチェックしてたんですが、いちいちブラウザで開くのが面倒だったので去年CLIツールを作りました。

GitHub - massa142/gotebu: Command Line Client for Hatena Bookmark HotEntry

自分も1年間飽きずにこのコマンド使い続けたんで、はてな民にはオススメだと思います。

HBFav

これもはてな民にとっては外せないツールです。作者であるnaoyaさんには感謝しかないです。

hbfav.bloghackers.net

HBFavは、はてブでお気に入りに登録しているユーザーがブクマした記事が流れてきます。

現時点では、はてブのお気に入りユーザーはTwitterのフォローよりも人数が少なくテック要素が濃いめという状態になっています。なので、タイムラインの流れの速さがTwitterに比べてゆっくりで、かつ内容は技術に関するものがほとんどというSNSを構成することができてます。 Twitterのフォロー人数が膨れ上がってるはてな民にオススメです。

Podcast

Podcastは仕事の行き帰り・仕事中・入浴中によく聴いてます。

rebuild.fm

mozaic.fm

購読しているのはこの2つです。

特にRebuild.fmはサポーターにもなってる大ファンです。好きなゲストはNさんとhigeponさんです。

この前試験的に放送されたPyData JP FMも面白かったです。日本でPython系のPodcastは少ないので、ぜひ継続開催してほしいと願ってます。

pydatatokyo.connpass.com

Github

GitHubのWatchやアクティビティも有益な情報なんですが、GitHubのタイムラインは観測しづらいUIなのが辛いです。

自分は@azuさんが作成したTwitterGitHubの通知を流すlambdaファンクションをforkして利用してます。基本読み飛ばしてもいい情報なんで、Twitterで眺めるのがちょうどいい感じです。このアカウントをTweetDeckに追加してタイムラインが見れるようにしてます。

このlambdaの詳細は以下のエントリとリポジトリを参照してください。

GitHub - azu/github-to-twitter-lambda: Lambda bot that fetch own GitHub notifications/events and post to Twitter.

AWS lambdaでGitHubのアクティビティをTwitterで読む用に投稿する | Web Scratch

Qiita

Qiitaのタイムラインはフォローするタグのチューニングを正しく行えば有益な情報源になります。というのは、キャズムを超えたタグだとスパムみたいな有象無象の投稿によってタイムラインが埋まってしまうからです。

日本ではまだニッチで投稿数も多くない分野のタグのみをフォローしておくことが、Qiitaを嫌いにならないHowtoかなと思います。

自分が現時点でフォローしてるタグはこの6つでした。

メルマガ

フロントエンド系のメルマガを2つ購読してます。

1週間分の注目記事がまとまってるのは、なにかとありがたいです。

社外Slack

社内Slackはもちろんですが、OSSやコミュニティのSlackにも参加するとよいです。 自分がハマった場合に知見がある人に気軽に質問できたりしますし、他の人たちの技術的雑談をROMってるだけでも勉強になることが多いです。

まとめ

ここまでオンラインでの情報収集方法についてまとめてきました。

ただ、やはりオンラインよりも実際に人と話す・人から聞くというオフラインのほうが情報吸収率は高いと思ってます。機会があれば、どんどん外に行きたいところです。

あと意識したいのは、

  • 黙ってコードを書く
  • 自分からも発信する

ことを怠らないことですね。情報収集厨にならないように気をつけましょう!(自戒を込めて)

2016年買ってよかったもの

この記事は、今年買ってよかったもの Advent Calendar 2016 20日目の記事になります。

www.adventar.org

エアーフロス

Rebuild.fmでmiyagawaさんとhigeponさんがお薦めしてたエアーフロス。
今年から矯正もはじめていて、ちょうど歯への意識も高まっていたので購入してみた。

rebuild.fm

フィリップスの取説によると、

歯ブラシ・歯間ブラシではケアしにくい「奥歯と奥歯の間」や、「歯並びの悪いところ」、「矯正器具やブリッジまわり」の歯垢・食べかすを除去してくれます。

らしいです。

使ってみた感想は

  • 使用感が気持ちいい
  • 届きにくいところを掃除できる
  • 水が飛び散って綺麗に使うのがむずい
  • お値段は高い

ってところです。

おわりに

残念ながら、紹介できるのエアーフロスしかなかったです。
振り返ってみると、今年はガジェットにはお金使ってなかったみたい。

2017年はもうちょっとガジェットに投資したい。あと備忘録も兼ねて、買ったものは追記形式で書いてみます。

こんな感じを真似したいところ。

kannnonn.com

まだ見ぬバグゼロを夢見て

はじめに

この記事は、ポエム Advent Calendar 2016 15日目の記事です。

過去

半年前に入社したときのSQUEEZEのコードは、いわゆる不吉な匂いに満ちていました。

  • 重複したコード
  • 長すぎるメソッド
  • 巨大なクラス
  • 長すぎるパラメータリスト

などなど。

ただスタートアップでスピード重視の開発をしていたので仕方なかったのだと思います。

現状

※ まだバグゼロは実現してません。少なからずバグは存在しています。

サービスをよりスケールさせていくために、それに耐えうる品質が求められています。 バグゼロに向けて、現在次のような取り組みを行っています。

  • テストコードを書く
  • エラートラッキング
  • リリースサイクルを短くする
  • 古いコードのリファクタリング・破棄
  • コーディングスタイルの統一
  • コードレビューの徹底

これらに関しては、バグゼロを実現した話とその後の顛末 - Cybozu Inside Out | サイボウズエンジニアのブログの記事をおおいに参考にしています。

ここではこういった取り組み以外に、バズゼロに向けて自分が大事にしているエンジニアの教訓を紹介します。

ボーイスカウトの規則

http://d.hatena.ne.jp/asakichy/20100706/1278377244

アメリカのボーイスカウトにはシンプルな規則があります。「自分のいた場所は、そこを出て行くとき、来た時よりもきれいにしなければならない」というものです。

これは、実装作業にも当てはまります。コードは何度も洗練され続けなければならないからです。

割れ窓理論

http://d.hatena.ne.jp/asakichy/20101217

長期間修理されることのない割れた窓が1枚でもあると、ビルの住人に「投げやりな(ビルの状態など気にもかけないようになる)感覚」が植えつけられていきます。すると、次の窓が割れます。さらに、ゴミが撒き散らかるようになります。落書きもされるようになります。

このようにして、たった1枚の割れた窓から、建物全体に対する深刻な破損が起こり始めるのです。これが「割れ窓理論」です。

ソフトウェアの「割れた窓」、つまり「悪い設計」「間違った意志決定」「悪いコード」を放置してはいけません。ソフトウェアをごく短期間で腐敗させることになります。「割れた窓」が何枚かあるだけで、「残りのすべてのコードもガラクタなんだから、自分も適当に作業してしまえ」という考え方が忍び込みやすくなるのです。

伝えたいこと

つまりこういった日々の小さなカイゼンが、品質の継続的な向上につながっていくのだと。ここに銀の弾丸なんてものはない。

「忙しいからカイゼンできない?」 ちがう、カイゼンしないから、忙しいのだ。 :: by and for engineers

このタイトル通り、カイゼンしないことの積み重ねは未来の自分の首を締めることになる。

カイゼンすべき割れ窓に気がついたら、言い訳せずに見て見ぬ振りをせずに真摯に向き合っていく姿勢こそが、バグゼロ実現のために必要なことなのだと信じています。

Creative Commons Licenses に関するメモ書き

はじめに

この記事は、法律 Advent Calendar 2016 18日目の記事です。

Creative Commons 4.0

Creative Commons Licensesとは

クリエイティブ・コモンズ・ライセンスとは | クリエイティブ・コモンズ・ジャパン にある説明・画像を引用します。

CCライセンスとはインターネット時代のための新しい著作権ルールで、作品を公開する作者が「この条件を守れば私の作品を自由に使って構いません。」という意思表示をするためのツールです。

CCライセンスを利用することで、作者は著作権を保持したまま作品を自由に流通させることができ、受け手はライセンス条件の範囲内で再配布やリミックスなどをすることができます。

nyumon2_gd11.png

左側はいわゆる「All rights reserved」、著作権がある状態を表します。右側はパブリックドメインなどといわれる、保護期間が終了したり、権利が放棄されている状態です。

CCライセンスは先ほど示した左右の状態の中間に存在しており、“Some rights reserved”、限定された権利を主張するライセンス形式を提案しています。

ウェブが普及した世界において、作り手の権利が守られつつ、誰もが平等に作品を共有すること。

わたしたちは、このような中間領域を定義する方法で、作品の共有をスムーズにし、創造性豊かな環境を実現しようとしています。

Creative Commons Licensesの種類

クリエイティブ・コモンズは「表示(BY)」「非営利(NC)」「継承(SA)」「改変禁止(ND)」という4つの条件の組み合わせから6つのライセンスが存在します。

creative-commons-783531_1280.png

表示(BY)

by-large.png

  • Attribution
  • 作品のクレジットを表示すること

非営利(NC)

nc-jp-large.png

  • NonCommercial
  • 営利目的での利用をしないこと

継承(SA)

sa-large.png

  • ShareAlike
  • 元の作品と同じ組み合わせのCCライセンスで公開すること

改変禁止(ND)

nd-large.png

  • NoDerivatives
  • 元の作品を改変しないこと

ソフトウェアにクリエイティブ・コモンズ・ライセンスを付与することができますか?

FAQ よくある質問と回答 | クリエイティブ・コモンズ・ジャパン

可能ですが、お勧めはできません。

クリエイティブ・コモンズ・ライセンスは、ソースコードとオブジェクトコードについては、適用の対象として考慮していないからです。Free Software Foundationによって公開されているライセンス(日本語参考訳)や、Open Source Initiativeがリストに挙げているライセンス(日本語参考訳)等、ソフトウェアに適したライセンスが既に他にありますので、そちらのご利用をご検討ください。これらのライセンスは、クリエイティブ・コモンズ・ライセンスと異なり、ソフトウェア専用のライセンスとして設計されています。

メモ書き

Creative Commonsはソフトウェアを考慮しておらずお薦めしていないので、GitHubのライセンス選択肢にも出てきていない。

Choose an open source license - Choose a LicenseではNon-Software Licensesにおいて、CC0-1.0CC-BY-4.0CC-BY-SA-4.0が紹介されている。

ソフトウェアだけでなくその他のコンテンツを含んだプロジェクトにおいては、該当箇所を明記した上で複数のライセンスを掲げることが推奨されている。

e.g. https://github.com/github/choosealicense.com#license

The content of this project itself is licensed under the Creative Commons Attribution 3.0 license, and the underlying source code used to format and display that content is licensed under the MIT license.

Software Licenses

ソフトウェアに関するライセンスについては、Choose a Licenseまたはその翻訳記事をあたるとよい。

Pythonと私の想い出 #pyconjp

はじめに

この記事は、PyCon JP Advent Calendar 2016 13日目の記事です。

テーマ

Pythonと私の想い出」

3日目の@rhoboroが書いたPythonと私の想い出 - PyCon JP Advent Calendar 2016の構成を真似て、自分の想い出をつらつら書いていこうと思います。

Pythonと私の想い出

想い出その1 - Pythonを知ったきっかけ -

前職のアライドアーキテクツで、関根さん(@checkpoint)がPythonの良さを社内で宣伝してたのがきっかけだと思います。PHPJavaがメインの会社だったんで、あまり普及活動はうまくいってなかったですが...

当時なんでPythonに興味をもったかを思い出すと

  • The Zen of Python かっこいい
  • シンプルな構文 美しい

-- ここまでは@rhoboroと同じ感想 --

次に

  • 科学分野にも強い

というのは魅力的でした。数学が好きだったので。

最後は

  • 関根さんがそこまで推すなら間違いなさそう

という気持ちが大きかったです。

そんな感じでPythonを学び始めました。

はじめは「みんなのPython 第3版」を買ってきて勉強してました。

ちなみに来週第4版が販売されるみたいですね。表紙がなんともファンキーになってます。

みんなのPython 第4版

みんなのPython 第4版

想い出その2 - Pythonの好きなところ -

想い出その1で書いたポイントは変わらずいまでも好きです。ここではさらにPythonやり始めて好きになったことを紹介します。

  • PEPの存在
    • 建設的な議論ができる仕組み
  • ドキュメント文化
    • コミュニティのドキュメントに対する意識の高さ

あとはPythonが好きになるにつれて、PyCon JPのコミュニティに惹かれていきました。 2014に一般参加、2015からスタッフ参加ですが、次のようなことをいつもクールだなと感じてます。

  • 上下関係がないフラットさ
  • 属人性を嫌った情報のオープンさ
  • 門戸を常に開いているウェルカムさ
  • やりたいことができる自由さ
  • 無駄なことを嫌う効率のよさ

想い出その3 - これまでとこれから -

こんな感じでPythonにはまっていって、今年の4月には縁あって関根さんがCTOのSQUEEZEに転職もしました。まだまだ会社の規模も小さく大変ですが、やりがいを感じながら楽しく仕事してます。

Pythonの世界を教えてくれた関根さんへの恩返しという思いもあって、SQUEEZEの成功のために頑張りたいなと思う今日この頃です。

さいごに

ちょっと大袈裟になりましたが、以上「Pythonと私の想い出」をお送りしました。

明日の分はまだ埋まってないっぽいですね。だれか書いてくれるとうれしいなー д・)チラッ

www.adventar.org

作業用BGMとしてのPerfume #prfm

はじめに

この記事はPerfume Advent Calendar 2016 6日目の記事です。

www.adventar.org

作業用BGMとしてのPerfume評価

2015・2016のPerfume Advent Calendar カジュアル勢の皆さんが作業用BGMとしての魅力を語ってくれました。

またRebuild.fmでmiyagawaさんも仕事中にPerfumeをよく聞いているとも話しています。

ここでは、Perfumeのどういったところが作業用BGMとして優れているのか分析してみました。

作業用BGMとしてのPerfume分析

  • 集中の邪魔にならない感情を込めない歌い方
  • トランス状態へといざなうヤスタカの打ち込み
  • マシンの気持ちに寄り添っていけるテクノポップ
  • 特に意味がなかったりするけどポジティブな歌詞
  • 3人の人間性からもらえる元気と癒し

おわりに

参考: Perfume x 作業用BGM での検索結果

世のエンジニアの集中力と生産性を高めるPerfumeの魅力がもっと伝わっていけばいいなと期待しつつ、明日以降のPerfume Advent Calendarの参加者を待つことにしましょう!