massa142's blog

くり返す このポリリズム

コミュニケーションがうまくいかない時の心理パターン

はじめに

この記事は コミュニケーション Advent Calendar 2017 9日目の記事です。

qiita.com

「なんか今日うまくコミュニケーションいかないなー」っていう感覚が自分には割とあって、その時は「なんか無愛想でめっちゃ申し訳ない...」とは内心思いつつもどうしようもなくなっている。

この対策としてとりあえず、どういったときにこの感覚に陥っているかをまとめてみた。

1. 寝不足でイライラ

睡眠不足が続くと自律神経のバランスが乱れて、イライラしやすくなる。寝不足は集中力も落ちるしやっぱりいいことはない。

2. 余裕がなくてテンパってる

色々抱え込んだせいで余裕がなくてテンパってると、相手の話が頭に入ってこない感覚になる。あとこっちから連絡しておかないといけないことがあっても、自分のタスクを整理できてないから連絡が遅れるみたいなこともおきがち。

一歩引いて自力で整理できたらベストだけど、とりあえず「自分いまパツッてます!」ってアラートを出すだけでも経験上よかったりした。

3. 自分だけが頑張ってるという感情

konifar-zatsu.hatenadiary.jp

このブログめちゃくちゃ共感できた。「俺はこんな頑張ってるのに..」みたいな感情湧くこと誰でもあると思う。この感覚に陥ると、「みんなもっと頑張れよ」的なイライラに繋がってしまう。

ただこの場合、他の人が頑張っているところを自分が知らないだけだったり、自分の勘違いだったということが往々にしてある。まずは冷静になって、HRT(Humility・Respect・Trust)の原則を思い出したい。

4. コードに集中していて頭が切り替わらない

コードを書くことに集中してると、なかなか人とのコミュニケーションに頭が切り替わらないっていうこともよくある。マシンとプログラミング言語で会話してる世界から抜け出せない感覚。

5分くらい時間をおかないと、相手の話が入ってこないで頭の中では続きのコードを考えてる。

まとめ

気持ちのコントロールって難しいね。

もっと余裕をもてるように頑張っていきたいぞ。

2017年11月の振り返り

仕事

アウトプット

連載

ブログ

イベント

音楽

  • Everyday
    • Perfumeに囲まれる!没入感!


[MV] Perfume「Everyday」-AWA DANCE 360°VR ver.-

  • Fusion
    • ヤスタカ神!
    • watashi to fusion!!!


FUTURE-EXPERIMENT VOL.01 距離をなくせ。

映画・ドラマ・アニメ

N/A

ラクロス

  • クラブ選手権1回戦 vsOPEC VORTEX 16-8 Win
  • クラブ選手権準決勝 vsFALCONS 7-16 Lose

これをもって今シーズン終了!

目標と成果

  1. △ Web連載第2回執筆
    • 半分くらいの進捗しかでなかった 
  2. × 書籍のサンプルアプリケーション作成と第5章執筆
    • 手が回ってなくてつらい
  3. ○ JS本執筆の準備
    • デザインスプリントやった
  4. △ 出社チャレンジ頑張る
    • 今後も頑張っていきたい
  5. ○ ライブに向けてBAND-MAIDの予習
    • ライブ当日にapple musicで聴いた
  6. × Advent Calendarの準備
    • まったく準備できなかった
  7. × Rustの勉強を再開
    • 進捗ダメでした
    • 業務が忙しかったからなのか目標ほとんどできてないな

12月に向けて

  • Web連載第2回執筆
  • 書籍のサンプルアプリケーション作成と第5章執筆
  • JS本執筆
  • 出社チャレンジもっと頑張る
  • Advent Calendar完走
  • 合同勉強会 in 大都会岡山 楽しんでくる

Yasutaka Nakata presents OTONOKO[オトノコ] 2017 に参戦してきた #prfm

この記事は Perfume Advent Calendar 2017 3日目の記事です。

2017/12/02 金沢で開催されたOTONOKOに参戦してきたので、Perfumeについてのレポートになります。

www.otonoko.com

2003年からPerfumeのプロデューサーであるヤスタカと初めて同じステージに立つということで、記念すべき日となりました。

セトリ

1 GLITTER
2 FLASH
- MC -
- P.T.A.のコーナー -
3 FAKE IT
4 チョコレイト・ディスコ (2012-Mix)
- MC -
5 TOKYO GIRL
6 Fusion (with DJ 中田ヤスタカ)

※ これに加えてDJ 中田ヤスタカのところで、Perfumeが再登場して『If you wanna』を演奏

チームわけ

恒例のチーム分けの名前は「ナ」「カ」「タ」でした。

感想

若干期待してたけど、本当にやるとは思っていなかった新曲『Fusion』を初披露!

『Fusion』はこの前の Perfume×ドコモ 『FUTURE-EXPERIMENT VOL.1 距離をなくせ』で披露した新曲。


FUTURE-EXPERIMENT VOL.01 距離をなくせ。

これだけでもテンションめっちゃ上がったのに、なんとヤスタカがDJとして登場!!

Pefumeの頭上のDJブースにライトが照らされて、ヤスタカの姿が現れた瞬間はもう興奮して嬉しすぎて泣きそうでした...

ヤスタカが普段よりも嬉しそうに観客を煽ってる姿が、ほんとにもう最高でした。

まとめ

ヤスタカはやっぱり神でした

2017年のPerfumeを振り返る #prfm

この記事はPerfume Advent Calendar 2017 1日目の記事です。

adventar.org

今年もこの時期がやってきました。

1日目のこの記事では、2017年のPerfumeの動きを月ごとに振り返っていきます。

1月

日本テレビ水曜ドラマ『東京タラレバ娘』に、あ~ちゃんが声の出演

www.ntv.co.jp

『TOKYO GIRL』が主題歌ということもあって、Perfumeファンには幸せな2017年のスタートとなりました。

2月

『TOKYO GIRL』リリース

www.youtube.com

エフェクトをあまり効かせず、3人の声がよく聞こえる曲をヤスタカが作ってくれました。大人になった今のPerfumeによく似合っている曲だと思います。

東京タラレバ娘』の主題歌ということで、タイアップに従順なヤスタカらしいタイトルとなっています。今年の紅白の曲はおそらく『TOKYO GIRL』になるので、2017年のPerfumeを代表する1曲と言えるでしょう。

3月

Perfumeオリジナル香水「PERFUME OF PERFUME」発売

natalie.mu

ファンが長らく待ち望んでいたなか、薬事法?の問題なので難航していたオリジナル香水がついに発売されました。

広島限定 1stシングル『OMAJINAI☆ペロリ』の発売15周年を記念して3/21から販売となりました。

4月

テレビ東京 ドラマスペシャル『パンセ』初主演

www.tv-tokyo.co.jp

Perfumeとしては初となる、地上波でのドラマ出演、主演でした。

驚きの新しいチャレンジとなりましたがこのドラマに対する評価も高く、今後の活躍の幅が広がるきっかけになったと思います。  

5月

WOWOW特別番組『Perfume スペシャルプログラム ~collaboration~』放送

http://www.wowow.co.jp/music/perfume/www.wowow.co.jp

ここでPerfumeとヤスタカとのメディア初対談が実現しました。ヤスタカがテレビに出てくるのも珍しいのに、Perfumeとの対談なんて最高なプログラムでした。

対談の中から、Perfumeにとってヤスタカは神であるという関係性が改めて垣間見れました。

 

6月

Perfume FES!! 2017 @ MAKUHARI MESSE

www.perfume-web.jp

シャングリラな2組との対バンでした。

チャットモンチー作曲の「Ora2(オーラツー)はみがきのうた」もここで初披露されました。

www.youtube.com

Amuse Fes in MAKUHARI 2017 – rediscover -

www.amusefes.jp

高橋 優が歌う『Dream Fighter』は本当に渋くていい。

8月

『If you wanna』リリース

www.youtube.com

ヤスタカが今年取り組んでいるFuture bassというサウンドを取り入れた1曲。

もうとにかくかっこいい。

9月

Perfume FES!! 2017 追加公演

名古屋・大阪で開催されたPerfume FES!!の追加公演。

Perfumeと星野 源が一緒に踊る「恋ダンス」は本当に最高でした。

10月

NHK総合「内村五輪宣言!~TOKYO 2020開幕 1000日前スペシャル~」出演

www6.nhk.or.jp

perfume-lighting-project.tokyo

去年まではライブなどでは東京オリンピックを意識した発言がありましたが、今年になってメディア上でもそのような発言が増えてきました。本格的にプロジェクトが動いているのだろうか・・・!?

11月

『Everyday』-AWA DANCE 360°VR ver 公開

www.youtube.com

Perfumeに囲まれる!没入感!

Perfume×ドコモ 『FUTURE-EXPERIMENT VOL.1 距離をなくせ』生配信

www.youtube.com

3都市を繋いだパフォーマンスはただただ凄いとしか言えないし、新曲『Fusion』もめちゃくちゃかっこいい。

Perfume Clips 2』発売

約3年半ぶりのミュージックビデオクリップ集『Perfume Clips 2』がリリース。

『Spring of Life』から最新曲『If you wanna』までを全16曲を収録。

おわりに

今年のPerfumeを振り返ってきましたが、まだ12月が残ってます。12月の目玉はなんと言っても大晦日の紅白歌合戦ですが、その前にヤスタカがプロデュースする音楽フェス「OTONOKO」出演を明日に控えています。

www.otonoko.com

というわけで明日はOTONOKO参戦しに金沢行ってきます ( ・ㅂ・)و ̑̑

「ハイパフォーマンスPython」を読んだ

ハイパフォーマンスPython

ハイパフォーマンスPython

Pythonの高速化技法について一歩踏み込んだプロユースの解説書。ボトルネックの測定方法から、最適なデータ構造の使い分け、CythonやPyPyなどのコンパイラの比較、numpyなどのパッケージの使い方、マルチコアCPUの活用法、メモリ効率を劇的に改善するトライ構造や近似計算まで、シンプルな実例プログラムを用いながらわかりやすく説明します。高性能なプログラムの書き方だけでなく、高性能なシステムの作り方を総合的に学ぶことができるPythonエキスパート必携の一冊です。

https://www.oreilly.co.jp/books/9784873117409/

ここにも書いてあるように、プロファイリングのやり方からデータ構造、Cコンパイル・並列並行処理など幅広い内容が扱われていた。CPython以外の実装について勉強しようと思ってこの本を読み始めたので、個人的には「7章 Cにコンパイルする」が特に面白かった。

また普段はI/Oバウンドなプログラムを書くことが多いので、RAM使用量の削減とかそのためのプロファイリングなどCPUバウンドなプログラムについての知見が得られてよい。

時間ができたら次は積ん読になってるCythonのやつを読もう。

Cython ―Cとの融合によるPythonの高速化

Cython ―Cとの融合によるPythonの高速化

読書メモ

3章 リストとタプル

  • リストは動的な配列
  • タプルは静的な配列
  • サイズが1~20の小さなタプルについては、使われなくなってもメモリがOSに返却されず、将来の再利用のために保持される
>>> %timeit l = [0, 1, 2, 3, 4, 5 ,6, 7, 8 ,9]
96.8 ns ± 1.22 ns per loop (mean ± std. dev. of 7 runs, 10000000 loops each)
>>> %timeit t = (0, 1, 2, 3, 4, 5 ,6, 7, 8 ,9)
16.4 ns ± 0.205 ns per loop (mean ± std. dev. of 7 runs, 100000000 loops each)

4章 辞書と集合

5章 イテレータとジェネレータ

def fibonacci():
    i, j = 0, 1
    while True:
        yield j
        i, j = j, i +j
def fibonacci_succinct():
    is_odd = lambda x: x % 2
    first_5000 = islice(fibonacci(), 0, 5000)
    return sum(1 for x in first_5000 if is_odd(x))
  • ジェネレータで省メモリで高速な処理が可能
    • 遅延評価

6章 行列とベクトルの計算

  • メモリ断片化

    • リストはデータそのものではなくポインタを保持している
      • どんな型でも格納できるのでたいていの場合では便利
      • ベクトルや行列の演算においては、著しい性能劣化の原因に
      • データをメモリ上の連続した1つのブロックとして扱うことができれば、データ全体を一回の操作で移動できる
      • データが断片化されていると、ブロック全体を移動できず、各位要素をばらばらに移動する必要がある
    • ループがベクトル化に対応していない
      • 一度に1つの要素を演算するループを、ひとまとまりのデータに対して同時に処理したい
  • numpy導入

    • 効率のよいベクトル化演算パッケージ
    • データを連続的なメモリ領域に保持し、ベクトル演算命令をサポート
    • +=*=などのインプレース演算は、入力の1つを出力として も使うから、計算結果を格納するための領域を確保する必要がない
    • numexpr

7章 Cにコンパイルする

  • AOTコンパイラ

    • Cython
    • Shed Skin
    • Pythran
  • JITコンパイラ

    • Numba
      • Continuum(Anaconda)謹製
      • @jitデコレータを付けるだけ
    • PyPy
      • GCのやり方が違う
        • CPythonは参照カウント法/PyPyはマーク&スイープ法
      • Cによる拡張ライブラリには効果がない
        • Pythonのコードを高速化するのが仕事
      • RAMの使用量が多い
  • CPython Compiler Tools
    • ここに色々まとまってる
  • PyPyはPython3・Numpy対応できるように進化しててすごい
  • ctypes
    • 外部関数インターフェース
    • 引数をCの型へキャストする必要あり
    • 複雑でメンテナンスが大変になりやすい
  • cffi
  • f2py

8章 並行処理

  • イベントループで並行処理を実現
    • 2つの考え方
      • コールバック
      • Future
  • gevent
    • http://www.gevent.org/
    • 標準 I/O 関数を非同期に変えるモンキーパッチ
    • 軽量スレッドで並行処理ができるGreenlet
      • 複数のCPUを使わずに、イベントループを使うことによって I/O 待ちの間にgeventのスケジューラがGreenletを切り替える
    • grequests知らなかった
  • tornado
    • http://www.tornadoweb.org/en/stable/
    • コールバックの方法を採用していたけど、バージョン3.xからは、互換性を保ったまま、コルーチ 風の処理が追加された
    • イベントループは全体で動作していて、非同期I/Oにかぎらず プログラムの実行の流れを制御している
    • geventはiwait関数が実行している間だけイベントループが動作
  • asyncio
    • asyncioライブラリは、tornadoやgeventのようなモジュールと組み合わせて、同じイベントループで動作させることも可能
  • やっぱり標準ライブラリがいいよね

9章 multiprocessingモジュール

  • embarrassingly parallel問題(あきれるほど 簡単に並列化可能な問題)
    • ジョブを互いに独立な単位に分割する
    • ワーカーによって計算時間にばらつきがあるのなら、処理の順序をランダム化することを検討する
    • 処理の遅い順に並べて、もっとも遅い処理から先に片づける
    • 検証された理由がないかぎり、デフォルトのchunksizeを用いる
    • チャンク数を物理コア数の倍数にすること
  • 可能なら自前で非同期システムを作るのは避ける
    • geventのような成熟したライブラリがbetter
    • 外部のキュー管理システムについてもCeleryとかを使おう

10章 クラスタとジョブキュー

11章 RAM使用量を削減する

  • テキスト処理アルゴリズム
    • トライ
    • DAWG(有向無閉路文字列グラフ)
  • RAM使用量を削減するコツ
    • 数値データを扱うならnumpy
    • ジェネレータを使う(Python2.x: xrange/Python3.x: range)
    • 大量のUnicodeオブジェクトを使うならPython3.3+
    • ビット列を太陽に使うならnumpy/bitarray
  • 確率的データ構造
    • 精度を犠牲にしてメモリの使用量を膨大に削減

2017年10月の振り返り

仕事

  • silkを使ってプロファイリング
  • N+1クエリを消していった
  • transactionの見直し
  • transactionの観点からよくないsignalをリファクタ
  • マルチスレッド処理で発生したギャップロックを解消
  • RemovedInDjango20Warning対応
  • 使ってないメソッドを掃除

アウトプット

ブログ

スライド

イベント

音楽

N/A

映画・ドラマ・アニメ

N/A

ラクロス

目標と成果

  1. ◯ Web連載執筆
    • 第1回分納品できた
  2. △ 書籍の第3章執筆とサンプルアプリケーション作成
    • 第3章は書けたけど、サンプルアプリできてない
  3. ◎ なんか本2冊読む
    • 「理科系の作文技術」「ハイパフォーマンスPython」「Angular CLIがわかる本」「逆引きwebpack」とか色々読み終えた
  4. × 出社チャレンジ頑張る
    • 改善できてきた気はするから11月に期待

11月に向けて

  • Web連載第2回執筆
  • 書籍のサンプルアプリケーション作成と第5章執筆
  • JS本執筆の準備
  • 出社チャレンジ頑張る
  • ライブに向けてBAND-MAIDの予習
  • Advent Calendarの準備
  • Rustの勉強を再開

「Angular CLIがわかる本」を読んだ #AngularCLIがわかる本

leanpub.com

Angular Japan User Group代表のlacoさんが、「Angular CLIがわかる本」という電子書籍を出版したので早速読んでみた。

lacolaco.hatenablog.com

目次

  • 本書について
    • フィードバックについて
    • 対応バージョン
  • Angular CLIの基礎
    • Angular CLIとは
    • はじめてのAngular CLI
    • Angular CLIの学び方
  • Angular CLIを使いこなす
    • ng newを使いこなす
    • ng generateを使いこなす
    • ng buildを使いこなす
    • ng testを使いこなす
    • E2Eテストの実行
    • Lintの実行
  • Schematics
    • Schematicsの概要
    • ng generateコマンドを拡張する
  • ng ejectとwebpack
    • ng ejectコマンド
    • @ngtools/webpackモジュール
  • インテグレーション

感想

  • Angularの基本的な使い方・オプションを体系的に復習できた
  • stories · angular/angular-cli Wiki · GitHub にある内容を、かいつまんで説明してもらえてよい
  • Angularのチュートリアルやったことある人なら理解できる内容だったと思う
  • Schematicsを使ってng generateのカスタマイズという話は初耳だったんで、勉強になった
  • 量もほどほどで1時間ちょっとで読めた
    • "この本は 55%完全です"ってあるから、今後ページ数も増えていくのかな
  • "取り上げるユースケースも順次増やしていく予定"とのこと
    • 実践的な話をもっと読みたいから楽しみ
  • 登録料分すぐに売れて、lacoさんのモチベーション高まってよかった

おわりに

うん「Angular〇〇がわかる本」他にも読みたいから、シリーズ化に期待!