massa142's blog

くり返す このポリリズム

エンジニア立ち居振舞い:ドキュメントを書く

お題「エンジニア立ち居振舞い」

blog.sushi.money

SQUEEZEに転職してから頑張っていることの1つに「ドキュメントを書く」がある。

これはPyCon JPのスタッフをやっているなかで身についた習慣だと思う。PyCon JPの運営はボランティア活動でありスタッフメンバーも流動的なので、情報が属人的にならないためにドキュメントを書く文化が根付いてる。

僕はこのPythonicな文化がとても気に入っている。

エンジニア立ち居振舞い:ドキュメントを書く

ドキュメントを書くことによって得られるメリットは数多くあるけど、次のようなことを日々実感できている。

チーム

  • 属人性を減らす
  • 言った・言ってない議論をなくす
  • ルールの明文化によって判断軸がぶれない
  • ナレッジの共有
  • 透明性の確保

個人

  • 思考の整理

思考を整理するためのフレームワークとしての「書き言葉」の話は、naoyaさんの次のエントリーで詳しく言語化されてる。

d.hatena.ne.jp

書く行為には今自分で考えたことを文章という形で外部化し、それを足がかりに次の思考のステップへ進むということを強制する側面がありそれが大きいと思っている。つまり、書く行為は思考過程の不確実性みたいなものを最小限に留めながら物事を考えるフレームワークになっている。

とはいえ、ドキュメントに時間や労力もかけすぎてしまうのは避けなくてはならない。エンジニアは解決すべき課題に最も集中すべきだし、何事も頑張りすぎると人間は長続きしないので。

ドキュメントを楽して書くために普段意識していることはこんなところ。

  • いつも使ってるエディタで書く
  • コードと同様にバージョン管理する
  • 必要最低限のドキュメントに抑える
  • プログラムとドキュメントを乖離させない
  • docstringやtestも立派なドキュメントと考える

PyCon APAC 2016 に行ってきた #pyconapac

はじめに

韓国ソウルにて 2016/8/13~2016/8/15 に開催された PyCon APAC 2016 に参加してきたので、その参加メモです。

PyCon APACって?

PyCon APAC 2016

PyCon s a non-commercial conference held by Python Programming Communities over the world.

PyCon Korea has been successfully hold in two years with a group of volunteers called ‘PyCon Korea Preparation Organizers’, who support the local Korean Python community. This year, we're preparing PyCon Korea with Asia-Pacific pythonistas. Please help us make PyCon APAC 2016 with a full variety of sessions, a great place to share Python knowledge, and a fantastic networking opportunity.

すでにあるまとめとか

参加メモ

全体を通しての感想

  • 会場がめちゃくちゃ良いところ

    • Coexっていう有名な巨大複合施設
    • カンファレンスの部屋が広くて、みんな余裕持って座れてた
    • 色んなお店やフードコートが充実してて、ご飯食べるところに困らない
    • 広すぎて初日は施設内で道に迷った
    • 'I’m Coexed.'で迷子って意味らしいw
  • Armin(@mitsuhiko)のKeynoteが現場のWeb開発での知見が詰まっていて、とても勉強になった

  • PyCon JPよりもframework(Flask, Django)やasyncといったwebに関するトークが多かった

    • 日本同様に、Deep LearningとかTensorFlowの話は盛り上がってた
  • スタッフにも参加者にも女性がとても多かった印象

    • 正確な数字じゃないけど、全体の15%くらいって聞いた
    • Django Girlsなどのコミュニティが活発からなのかな?
    • カンファレンスのテーマである"Diversity"を感じられてよかった
  • 英語でのアナウンスがほとんどなくて困った

    • 会場アナウンスがハングルで話されて、海外参加者にとってはつらみ
    • 言語的マイノリティになって初めて英語サポートの重要性を感じた
    • English Talk が Korean Talk に変更になっちゃう事件も発生

参加経緯

一般社団法人PyCon JPで募集されていたツアーに申し込んで行ってきました。

PyCon APAC 2016 in Korea のツアーを企画・開催

飛行機・ホテルなどの予約を寺田さんがまるっとやってくださったので、感謝しかないです。 予約などの手続きが面倒くさいと思う自分にとっては、とてもありがたいツアーでした。

日本から一緒に参加した方々のおかげでAPACをより楽しむことができました。ありがとうございましたm(_ _ )m

f:id:massa142:20160820225025j:plain

来年のPyCon APACは...

マレーシアのクアラルンプールで開催!!

今年のAPACが初めての海外カンファレンス参加でしたが、PyConに参加できて観光もできてと最高でした。

来年のマレーシアでのAPACも都合が合えば、ぜひ参加しようと思います!

2016年の抱負

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

これまでは抱負とかを書き記す性格じゃなかったんですが、惰性を貪ってしまいがちな社会人生活の良い仕切りとすべく今年の抱負を述べておこうと思います。

自分の3つの構成要素である

に付け加えて、「日々の暮らし」の4つに分けてそれぞれ書きます。

エンジニア

Python

2016年はこれまで以上にPythonにハマっていきます。 (参照:Pythonの肩に乗る)

とりあえず以下に取り組んでいくものを列挙してみました。

英語

Rebuild: 125: Toothbrush Can Be Exciting (N, naan)

この回でのHiroshimaさんの「英語喋れないとか21世紀だからありえないよね」という言葉にショックを受けて、これまでの人生で避けてきた英語に対するモチベーションが高まりました。頑張ります。

とりあえずは、以下の記事を参考にまずは自分なりの勉強法を模索しようと思います。

アウトプット

2015年に引き続きQiitaはてなブログでのアウトプットを継続していきます。

Advent Calenderのおかげもあるが、去年の11月12月でQiita9記事、はてなブログ10記事書くことができてアウトプットの習慣化ができたのは良かった。

ラクロス

Advance-Hanglooseでの実働3年目。

去年はプレーオフでStealersに敗れたが手応えを感じれたシーズンでした。 2015年は仕事とラクロスの両立が割とうまくできたので、今年も継続していきたい。シーズン序盤で飛ばしすぎないペース配分が大事。

自分がまだ経験したことない場所である

になんとしても進みたい。

Perfume

2015年は結成15周年・メジャーデビュー10周年というanniversary yearだったため、めちゃくちゃ忙しい1年となりました。

2015年参戦記録

  • METROCK 2015
  • SONIC MANIA 2015
  • Perfume FES!! 2015 ~三人祭~
  • 第3回 Perfumeダンスコンテスト ~魅せよ、武道館!~
  • LIVE 3:5:6:9

この他にも「SXSW」「Perfume×伊勢丹」「Perfumeタワレコ前後編」「WE ARE Perfume – WORLD TOUR 3rd DOCUMENT」などなどイベント盛りだくさんで最高でした。

2016年はすでに発表されている春の全国アリーナツアーはほどほどにして、今年の開催が予想されているNY Madison Square Gardenでのライブに期待してそこに全力を注ぎたい所存です。

日々の暮らし

  • 心と体を整える
  • 月2万ずつの貯蓄
  • 家計簿をつける

結び

2016年は公私ともに転機の年になると思うので、より良い結果を収めるべくこれら精進していきます。

それでは、今年もどうぞよろしくお願いします。

おうちハック入門

はじめに

このエントリはおうちハック Advent Calendar 2015 25日目の記事です。

qiita.com

皆さんメリークリスマス! 先月引越しをしたので良い機会だと思い、おうちハックに入門してみました。

もともとのテーマとしては
「Advent Calendarでの皆さんの投稿を参考にして、1週間でおうちを快適にしてみる」
でしたが、諸々忙しく作業できた時間は1日だけでした...

それなんで凝ったことは全然できていないですが、世の中の便利デバイスのおかげですぐに快適なおうちにすることができました。

参考にした記事

使用したデバイ

※ デバイスの説明文は、amazonでの商品説明文の一部を引用したものです。

Netatmo

Netatmo ウェザーステーションは、屋内外用2つのモジュールで気温や湿度、CO2濃度などから屋内外の空気質を評価して日々の健康管理に役立てることができるアプリケーション連動型ウェザーステーションです。観測データには、iPhoneスマートフォンのアプリのほか、PCのブラウザからも簡単にアクセスできます。

https://www.netatmo.com/ja-JP/product/weather-station

f:id:massa142:20151231031817j:plain

Hackey

HackeyはインターネットにWi-Fi接続された、手のひらサイズのキースイッチです。付属の鍵をひねる事で、IFTTT、TwitterFacebook等のWebサービスを、あなたの設定した通りに動作させる事ができます。

http://hackey.cerevo.com/ja/

f:id:massa142:20151231032114j:plain

IRKit

IRKitは、WiFi機能の付いたオープンソースな赤外線リモコンデバイス。 家庭のエアコンやテレビ、ライトなど、赤外線で操作できる家電を、 WiFiをとおして、iPhoneiPadなどから操作できるようにするものです。

http://getirkit.com/

f:id:massa142:20151231032535j:plain

これらをIFTTTでつなぎ合わせて、おうちハックを進めていきました。

おうちハック実例

  • 部屋の二酸化炭素濃度が1500ppmを上回ると、Hackeyが赤く点灯

つい先日、この記事がバズりましたがCO2の濃度は、生活の快適度に大きく影響を与えます。 チームラボオフィスの空気環境(CO2)を測定して改善している話

NetatmoによってCO2を検知できるので、閾値を超えたらHackeyが赤く点滅するようにしました。

  • 家の近くに入ると、エアコンON
  • 家の近くを出る、エコンOFF
  • Hackeyを回すと、エアコンON/OFF

エアコンの設定が大半になってますが、

  • エアコンの消し忘れ多発
  • 狭い一人暮らしの家ではこまめなエアコンの調節が必要

という個人的な状況なので、こうなってしまいました。

おまけ

cloudiss

cloudissはBLEを備えた小型のスマートフォン連携型アラーム装置です。仕事やプライベートの予定をGoogleカレンダーに登録するだけで、朝の最も早い予定にあわせて自動的にアラームが作動します。

https://cloudiss.cerevo.com/ja/

IFTTTで他のデバイスとの連携はできませんが、「cloudiss」も毎日使用してます。 cloudissの使用感については、こちらのエントリに書きました。

IMG_0182.JPG

Hue

hueとはスマートフォンタブレットなどからアプリを使ってコントロールできる、まったく新しい照明システムです。

http://www2.meethue.com/ja-jp/

f:id:massa142:20151231032342j:plain

Hueといえば、おうちハックの代表的なデバイスです。

僕も入門の道としてHueを意気揚々と購入したんですが、口径のサイズの違いでうちの家では使用できる場所がありませんでした... 皆さんも今後Hueを買う機会があれば、購入の前におうちの電球サイズをぜひご確認ください。

youcuneさんのコメントに従って、口径変換アダプタを購入すれば無事Hue使えました。ありがとうございます!

おわりに

すみません。これくらいしか成果がまだないです...
ただ、おうちハックのAdvent Calendarやコミュニティの盛り上がりのおかげで、

  • 自分もやってみたくなる
  • 説明記事がたくさんあるので、初心者でも進めやすい

ということが実感できました!
先人の皆さんのおかげです。ありがとうございました!!
来年はもっと精進して、面白いおうちハックができるよう頑張りますm( )m

『WE ARE Perfume -WORLD TOUR 3rd DOCUMENT』について

このエントリはプログラマの映画 Advent Calendar 2015 24日目の記事です。

qiita.com

はじめに

プログラマが見ると
モチベがアガル。
テンションがアガル。
なんかもう色々アガル。
そういう映画のコト。

このAdvent Calendarは、とりあえずプログラマにとってアゲアゲな映画を紹介すればOKのようです!
そこで僕がオススメする映画はこれ!

we-are-perfume.com

「なんやPerfume推しか。おれ別にPerfumeのことそんな好きちゃうし、この記事関係ないわ...」
と少しでも思ったそこのプログラマ

安心してください。技術者であれば、Perfumeのことを好きになる可能性を大いに秘めています。
これから、この映画の技術者ならではのオススメポイントを紹介していこうと思います。

※ ちなみにあの世界のmiyagawaさんもかなりのPerfumeファンです!嬉しいですね。

オススメポイント

  1. テクノロジーを駆使した圧倒的なパフォーマンス

映画のオープニングは今年3月にSXSWで披露した『STORY』のライブ映像から始まります。


Perfume Live at SXSW | STORY (SXSW-MIX)

『STORY』はもうやばいです!
言葉ではもう表現できないかっこよさ!!
バーチャルとリアルの融合がたまらない!!!

先日このパフォーマンスに関して、Rhizomatiks 真鍋大度さんへのインタビュー記事がGIZMODOさんで公開されたので、詳しくはそちらをご覧ください。

www.gizmodo.jp

この記事では、『STORY』の映像で用いた技術も説明されています。

  • 会場全体にモーションキャプチャーカメラを設置
  • 会場全体をスキャンし3Dモデルを作成
  • 複数の撮影カメラにマーカーを取り付けカメラの位置、角度を取得。それらの情報と3Dモデルの情報を用いたカメラ映像モーフィングシステムを開発
  • スクリーンにマーカーを取り付け位置、角度を取得し自動でプロジェクション画角を補正するシステムを開発
  • リアルとバーチャルの世界をシームレスに行き来するために上記の情報、システムを使用

2.ものづくりに対する真摯な姿勢

映画のなかでは、Perfumeが公演毎にその日の振り返りを行って、衣装やパフォーマンス、セットリストの微調整を絶えず話し合っている姿が映されてます。
現状に満足せず常に上へ、常により良いものを求め続ける姿勢には、学ぶことが多いのではないでしょうか。

World Tour 3rdのスポンサーであったデルタ航空のCMのワンフレーズ
『Keep Climbing 今より上を更に上へ向かって 』
を3人が気に入って、移動車の中で一緒に声に出してるシーンがとても印象的でした。

Perfumeが自分たちを奮い立たせる大事な歌としている『Dream Fighter』の歌詞をまさしく体現している姿にただただ感動です。

最高を求めて 終わりのない旅をするのは
きっと 僕らが 生きている証拠だから


[MV] Perfume「Dream Fighter」

3.素晴らしいチーム

映画のなかでは、Perfumeのパフォーマンスを支える様々なチームメンバーの様子も映っています。
有名なのは先ほど紹介した記事にも載っている

ですが、その他にも

  • 舞台監督
  • 衣装製作
  • マネージャー
  • 照明 / レーザー

などなど多くのプロの仕事が垣間見れます。
そして、そのチームメンバーがみな「誰のエゴも出ていない」姿勢で裏方に徹していることもまた感じ取れます。

個人的には『Team Geek』の三本柱・HRTを思い出しました。

  • 謙虚(Humility)
  • 尊敬(Respect)
  • 信頼(Trust)

Team Geek ―Googleのギークたちはいかにしてチームを作るのか

ともあれチームPerfumeが、チーム開発の大事なことを教えてくれているような気がします。

合わせて読みたい

Perfumeに興味ない人を劇場に連行してみたというエントリです。 こちらも映画の雰囲気がとても伝わる良記事なので、ぜひご覧ください。

tkito.hatenablog.com

おわりに

以上、『WE ARE Perfume -WORLD TOUR 3rd DOCUMENT』を技術者視点からオススメしてみましたが、如何でしたでしょうか?
ちなみにこの映画は、ぴあによる2015年の満足度年間総合ランキング第1位のようです!

cinema.pia.co.jp

まだいくつかの映画館で絶賛上映中なので、このブログを読んでアゲアゲになった方はぜひ映画館まで観に行ってみてください!!

※ 本記事はAdventerのPerfume Advent Calendar 2015の24日目も兼ねています。

teratailを1ヶ月使ってみた感想 #teratail

このエントリはteratail Advent Calendar 2015 24日目の記事です。

www.adventar.org

はじめに

teratail | 思考するエンジニアのためのQAプラットフォームを 2015/11/27から使ってみたので、そのネガポジな感想をざっとまとめようと思います。 massa142のQAプラットフォーム|teratail(テラテイル)

そもそもteratailを使ってみるきっかけになったのは、teratailがサポートしていた以下のイベントに参加した際に、teratailのナカノヒトと話して面白そうだったからという感じです。
【増枠】「最近、Go言語始めました」の会~GoConWinter開催前の入門者向けLT大会&交流会~

teratail自体はサービス開始時から知っていたのですが、アカウント登録しただけでなんの活動もしたことはなかったです。そしてこんな印象を持ってました。

  • 困ったことがあると自分で調べる派なので、ユーザとしてはstackoverflowで満足
  • 日本に閉じたQ&Aサービスってどれくらい需要があるのか...?
  • WEB+DB PRESSに記事掲載したり、広告出稿も目立っていて、マーケティング頑張っている
  • 勉強会やカンファレンスのサポートをこの頃たくさんしている

感想もろもろ

ポジティブ

  • 自分の回答で問題解決されると嬉しい(徳を積んでる感)
  • 回答しようとしても、雰囲気でしかわかってなくて言語化できないことがあると無知に気付かされる
    • そういった時に的確な回答をしている方の文章を読むととても勉強になる
  • shimizukawaさんなど有識者に回答してもらえる機会があるのすごい
  • サクッと回答できるものもあるので、いい時間つぶしになる
  • ランキングやバッジなど、teratailのユーザに向いたサービス設計がとても良い

ネガティブ

  • 回答しようがない質が低い質問も多く見られる
  • 開発で困った時のググり方をまず教えた方がいいと思うケースが多く見られる
  • なにか回答すればスコアがもらえるので、スコア獲得目的だと思える雑な回答がある

その他

  • いい質問には、いい回答が集まる
  • イケてない質問には、イケてない回答が集まる

プログラミング初心者の方がはじめに訳わからなくハマって、やっぱり開発つまらない / 向いてないと思ってしまうケースを防ぐ役割として、日本語Q&Aのteratailはとても価値がありそう。
ただそのフェーズを抜けたら、プログラミングに英語は避けて通れないので日本語Q&Aに頼らない方がいいよなーっていうのが個人的な思いです。

回答してためになった問題

1 コードレビューにおける指摘事項の強要について。

  • コードレビューの姿勢
  • メソッドの切り出し方

この2つの議論が回答を通じて活発に行われた問題でした。 「思考するエンジニアのためのQAプラットフォーム」というteratailが目指している場を感じられて楽しかったです。

2 instagramのデベロッパーでアプリ登録について

2015/11/17にアップデートがあったInstagram Platformに関した質問でした。 Instagram Platform Update

この変更内容は追っていたのですが、実際どのようなアプリレビューが行われているのかまでは情報がありませんでした。 質問された方が実際にアプリ申請〜レビュー結果までの経緯を丁寧に記述してくれたので、とても参考になりました。

さいごに

色々言ってきましたが、teratailはエンジニアに真摯に向き合ったサービスだと感じました!
今後どういった展開に持っていくのか注目しつつ、引き続きteratail活動していこうと思います。

面倒くさがりな人のための「家庭を支える技術」

このエントリは、家庭を支える技術 Advent Calendar 2015 の8日目です。

はじめに

  • 26歳男性
  • 独身
  • 都内一人暮らし
  • 面倒くさがり

というスペックなので、支えるべく家庭はまだないですけど、面倒くさがりでもなんとか生活できている術を記しておこうと思います。

話すこと

  • タスク管理
  • 定期的な買い物管理

タスク管理

皆さんお馴染みのWunderlistを使用してます。

意識していること

手間がかかると長続きしない性格なんで、極力シンプルに使うことを心がけてます。
具体的には以下のような感じ。

  • 設定項目は「タイトル」と「期限」のみ(リマインダーは自動設定)
  • 「メモ」とか「ファイル」とか詳細な記述はしない
  • カテゴリ分類も面倒なので、基本『家事』に突っ込む
  • 仕事関連のタスクはWunderlistで管理しない

カテゴリ分類

時期によって変化がありますが、現在は5つのカテゴリになってます。

  • 家事
  • 欲しいもの
  • ストレス
  • エンジニアリング
  • Advent Calendar

上記で書いたように、生活関連のタスクは『家事』になんでも追加していってます。

カテゴリの中で特に気に入っているのが『ストレス』です。
自分が日頃感じたストレスを可視化することで

  • ストレスを表に出すことでスッキリ
  • 無意識に溜め込まない
  • ストレス原因を除去できないか模索できる

という効果がありました。
調べてみたら、厚生労働省のサイトでもオススメされてたんで、きちんとしたストレス対応策のようです。 www.mhlw.go.jp

補足

面倒くさがりではなく、もっときちっとタスク管理やりたい / Wunderlist使いこなしたい という人には、去年の家庭を支える技術での monoooki さんの記事がとても参考になると思います。

monoooki.net

定期的な買い物管理

日用消耗品の買い替え」これは一人暮らしに限らずどの家庭でも、面倒で忘れやすい問題だと思われます。
しかも切らしてしまった場合には、その日のQOLがめちゃくちゃ低下して萎えちゃいます...

そんな問題に、kei_s さんはGoogle App Scriptを用いて立ち向かっていました。
まさに「家庭を支える技術

kei-s.hatenablog.com

しかし、これでも面倒くさがりな自分としては

  • もっと管理を楽したい
  • そもそも外に買い物行くのも面倒

という思いでいっぱいです ><

解決策

そこで行き着いた解決策が「Amazon定期おトク便」です!

Amazon.co.jp ヘルプ: Amazon定期おトク便について

f:id:massa142:20151209040920p:plain

Amazon定期おトク便のメリット

  • 管理が本当にお手軽
  • Amazon定期おトク便割引があってお得
  • 家から出なくていい

Amazon定期おトク便のデメリット

  • 購入できるモノの選択肢が通常よりも狭まる
    • 定期おトク便だと通常のAmazonよりも商品のレパートリーは狭まる
    • とは言っても十分揃っているんで、こだわりが強くなければ全然OK

おわりに

こんな感じで技術と言えることはほとんどないですが、一人暮らしを精一杯を支えることができています!
世の中に数多くいるであろう面倒くさがりにとって、少しでも有益な情報になれば幸いです。
次回は 120reset さんの番です。 家庭を支える技術 Advent Calendar 2015 まだ何日か空きがあるので、興味ある方はぜひ参加してみてくださいー

www.adventar.org