An Elegant Puzzle: 2 Organizations のメモ

背景 前にも一度読んでいて、簡単なblogを書いたけれど、もう少し詳細に日本語で自分用に見返せるメモが欲しいなと、改めて読んでいて思ったので大きな章ごとにまとめておく 2. Organizations I believe that excellent organizations grow from consistently applying a straightforward process. 複雑なパズルもシンプルなアプローチで解けることは意識したい When I have a problem that I want to solve quickly and cheaply, I start thinking about process design. A problem I want to solve permanently and we have time to go slow? That’s a good time to evolve your culture. However, if process is too weak a force, and culture too slow, then organizational design lives between those two. ...

2020-08-19 · 4 min · jarinosuke

ダークモード対応した

やったこと prefers-color-scheme を使ってスタイルの切り替えを実装した(ダークモード対応) それに伴って全体的にデザインを変更、普段使ってる Mac/iOS Note.app ぽい黄色にした シンタックスハイライトのデザイン変更した コードブロックの上にファイル名やタイトルを付け加えられるようにした 内部の Markdown へのリンク遷移時に、リロードされないようにした gatsby-plugin-catch-links を使った 直リンクだと、デプロイ前のプレビューで遷移確認できないのと、せっかくSPAぽく動いてるので無駄なリロードは避けたかったので 対応した PR はこれ しなかったこと シンタックスハイライトのダークモード対応 面倒そうだったのと、 prism-tomorrow でどちらの場合も事足りそうな雰囲気だったので見送り トグルやチェックボックスを置いて、ユーザがスタイルを切り替えるようにする React Component をシュッと作れそうに無かったのと、そんなに使われなさそう CSS Media Query ユーザの端末や設定などに CSS からアクセスするための仕組み 今回のダークモードについても prefers-color-scheme というキー名に対して以下の様にクエリを投げ、 その返り値が light か dark によってスタイルの出し分けを行っている @media (prefers-color-scheme: light) { body {} } @media (prefers-color-scheme: dark) { body {} } 手元の Safari や Chrome では動くぽいので、既に一定標準なのかもしれない 参考 prefers-color-scheme を用いた Dark Mode 対応と User Preference Media Features Gatsbyでブログを作りました Gatsbyにシンタックスハイライトを入れてコードをきれいに表示する GatsbyJSで作っているブログでコードブロックにタイトルをつけられるようにした Relative page links in markdown files within gatsby Gatsby.js: Preprocessing Relative Path Links in Markdown

2020-07-25 · 1 min · jarinosuke

Gatsby + Netlify の新しいブログを作った

動機 最近 blog 書く頻度また減ってきた。 それと同時にもう少しカジュアルに書きたい・書けるようにしたいというモチベーションが出てきて これを機会に blog の移設をしようと思った。 今までははてなブログで書いていたけれど、以下のような点で億劫になってきていた。 Markdown で書けるには書けるが、画像のアップロードなどでなんやかんや結構 CMS というか Web UI を触らなければならない ローカルのエディタで編集は完結していて、あとは push したらシュッと色々やられてデプロイされるのが望ましい はてなブログ Pro の値段が高い / その価格に対して恩恵を得られていない(ブログを書いていないのが大きいのかもしれない…) 界隈のコミュニティ 今までの記事全てを export するのも面倒だなと思ったので、2020 年に書いた 3 つの記事だけ手作業で移した。 Gatsby Gatsby を選んだ動機は ishkawa さんの記事 ブログをGatsbyで再構築した | ishkawa を見て良さそうと思ったから。 CSS など特に参考にさせてもらった。 Jekyll の延長線くらいの理解で、ちゃんと理解しないまま Gatsby を使い始めたけど、 Reactベース静的サイトジェネレータGatsbyの真の力をお見せします を読んで結構違うよう。 GraphQL を使って、ビルド時にあれこれできるのは面白いなと思った。 Netlify デプロイ + ホスティングには GitHub Actions + Pages は使っていなくて、 Netlify で完結している。 ポチポチやるだけで GitHub とのインテグレーションが完結して、なんなら Pull Request を作成するたびに gatsby build が走ってデプロイ予定の Preview のビルドまでしてくれる。 ...

2020-07-24 · 1 min · jarinosuke

‘Intro to TensorFlow for Deep Learning | Udacity’ を受講した

Intro to TensorFlow for Deep Learning Udacity の Free Course で Intro to TensorFlow for Deep Learning を受講した 空き時間などで少しずつ進めて、だいたい1ヶ月ちょっとで一通り終えられたと思う この記事は受講した上での感想と、忘れないために受講後にわかったこと/わからないことを挙げている その後に簡単に自分の目線でのコースの説明も付けておいた 感想 コースの全体的な構成としては、数分の説明用のビデオ(Youtube)を見た後に Colab と呼ばれる Google が提供している Python のオンラインの実行環境で課題を行うという流れだった 以前受講した Coursera の Machine Learning というコースは Octave という Matlab ぽい数値解析言語を使っていたのに対して、この Colab + Python(numpy) という環境が気軽に実行できるかつ分かりやすくてとても良かった 課題の内容自体は、基本的には前回のビデオの内容から分かるもので自力で頑張るというより、そこからパラメータを変更したりして学習内容の結果を比較したりなどが多い印象 なのでどこかでスタックしてやる気を無くすみたいなことは無かった。反面、身に付いているかどうかは少し疑問が残るので以下に身に付いたこと、全然わからないことなどメモとして残す 身に付いたこと TensorFlow を用いた学習のパイプラインと実際のコーディング ただし見ないで書けるわけではない CNN Convolution/Pooling layer についても大枠理解 また CNN が画像系で力を発揮することも理解した この blog もわかりやすかった Transfer Leraning とはなにか 大体これでいい結果出るのでは…? Overfitting の避け方 これは単純に面白かった 意図的にニューロンを消したり(Dropout)、テストデータを擬似的に増やしたり(Image augmentation)など 全然わからないこと NNのモデルのレイヤーやパラメータをどうやって決めるのか 各レイヤーのニューロンの数、レイヤーの数など 何かセオリーがあるのか 問題にアプライするNNへの勘どころ CNN/Transfer Learning Transfer Learning だとしてどれを使うのか ImageNet, Inception V3 など(それぞれのアーキテクチャについてはもちろん知らない) Inception の論文 https://arxiv.org/pdf/1409.4842.pdf Inception V3 の論文 https://arxiv.org/pdf/1512.00567.pdf Python 3/Numpy がまだまだ怪しい 特に tensor のサイズ違いでのエラーなど多い コース内容 Introduction to Machine Learning Fahrenheit = celsius * 1.8 + 32 の温度の変換式を、簡単な NN モデルを使って学習し求める ...

2020-03-25 · 1 min · jarinosuke

‘A Philosophy of Software Design’ を読んだ

A Philosophy of Software Design Kindle だと 1000 円ちょっとで買えた。 Comment に関する Chapter は飛ばしたが、ざっと全部読んだ。 英語も平易な感じなので苦労せず読めた。 A Philosophy of Software Design 内容を簡単に説明すると Complexity とは何か Complexity を最小化する大きな2つのアプローチ その2つについての具体的な複数手法(Design Principles)についての説明 Complexity 増加の原因となりうる red flag と、全体を通して Complextity と戦う話になっていた。 この本は code review や architecture design を複数人で行うときなどに revisit すると良いと思った。 ...

2020-03-05 · 1 min · jarinosuke

‘An Elegant Puzzle: System of Engineering Management’ を読んだ

Summary An Elegant Puzzle: Systems of Engineering Management (English Edition) Yahoo, Digg, Uber, Stripe などの会社で EM/VPoE などの組織をリードしてきた(現在もしている) Will Larson @lethain さん。 エンジニアリング組織において発生する色々な課題に対して筆者が考える解決策を分かりやすく書いてくれている本になっている 以下は序文からの引用になるけれど There’s a saying that people don’t leave companies, they leave managers. Management is a key part of any organization, yet the discipline is often self-taught and unstructured. Getting to good solutions for complex management challenges can make the difference between fulfillment and frustration for teams, and, ultimately, between the success or failure of companies. ...

2020-01-24 · 2 min · jarinosuke