ドラッカーによるイノベーションの7つの機会

年末年始にドラッカーのイノベーションと企業家精神を読んだ。面白かったがが頭の中で整理しきれなかったので、その中から「イノベーションの7つの機会」をまとめてみる。 あるイノベーションは、いずれかの機会のみによって生まれるとは限らず、複数の機会…

ひとり Advent Calendar を振り返る

ひとりでやる Advent Calendar 2017 - Adventar 最終日。見切り発車で始めたものの、なんとか最後までたどり着いたのでほっとしています。まとまった時間がとれなかったために当初考えていた重めのテーマがいくつか書けなかったのが心残り。でも、しばらく放…

音楽をどのように好きか

ひとり Advent Calendar 24日目、きょうはポエムです。 音楽が好きだ。詳しくはないが。 俺はどう音楽が好きなのか、昔から考えていたけど、ここ数年で安定してきた。それは、俺は音楽に憧れ、音楽になりたいということだ。

いろいろな Web フロントエンドの技術

最近フロントエンドのあれこれに触ることが多い。フロントエンドといえば諸々のつらみとの戦いである。それらを解決するいろんな技術があるがいろいろありすぎてとっつきづらいので各技術が何を解決したいのかまとめてみた。 各技術の詳細は、それぞれ詳しい…

Node.js で Elasticsearch にクエリ

Elasticsearch の公式クライアントで叩く。 const elasticsearch = require('elasticsearch'); const client = new elasticsearch.Client({ host: 'http://localhost:9200' httpAuth: 'user:password' log: 'trace' }); client.search({ index: index, type:…

Array.prototype.reduce() に親しむ

JavaScript の配列に reduce という関数がある。 MDM のドキュメント によると以下のように書かれている。 arrayObj.reduce(function(previousValue, currentValue, index, array){ // ... }) previous とか current いわれてもよくわからん。。 ただ、感覚…

Node.js × TypeScript 勉強中 (2)

Node.js × TypeScript 勉強中 - take a keen edge から続いた。 JavaScript の拡張メソッド (って呼ぶの?) 書くときはこうなる。 Array.prototype.chunk = function (size) { if (!this.length) return []; return [this.slice(0, size)].concat(this.slice…

打ち合わせで実現したいこと

良い打ち合わせは自然とは生まれないものです。自戒の意味も込めて考え直してみました。 参加者と、いわゆるファシリテーターの役割がごっちゃになっているので注意が必要かもしれません。 目的を明確にする 何のために集まっているか? 情報を知ってもらう …

ドヴォルザークの序曲「オセロ」について

ドヴォルザークの序曲「オセロ」作品93は、ここ数年で出会ったクラシック曲の中で断トツに好きな曲だ。 youtu.be この曲は序曲3部作の3曲目らしい。2曲目はドヴォルザークの作品の中でも有名な「謝肉祭」。アマチュアオケの演奏会情報を掲載されている i-Ama…

Elasticsearch でつまづいた話 (5)

Bucket Selector Aggregation というのがある。Terms Aggregation を柔軟にしたようなもので、「あるフィールドで特定の条件を満たすレコードの単位で集計」というような記述ができる。 下の例では 2 つのフィールドをまたがって条件を指定している。 { "buc…

Node.js × TypeScript 勉強中

Node.js × TypeScript の勉強中。いずれも触るのはほぼ初めてです。各種チュートリアル記事を読んで試していますが、「このおまじないは何?どっからきたの?」状態なので、今回疑問に思ったことがそれぞれがどの文脈に帰属する問題なのか (Node.js / TypeSc…

仕事中のBGM

昨日の仕事中の BGM - tom-manabe’s kiroku に触発されて、仕事中にきく BGM について。 私は仕事中はほぼエレクトロニカかアンビエントか、できるだけ感情が動かないような曲を聴きます。だいたい垂れ流しなのですが、たまに凄い刺さるアーティストに当たる…

Elasticsearch でつまづいた話 (5)

Elasticsearch でつまづいた話 (3) - take a keen edge のページング取得では、1回 scroll して、戻り値から次の scroll id を取得して、もう一度クエリを投げて... だったが、せっかくスナップショットをとっているのであれば並列で取得しにいきたいのが当…

今年読んだ本を総括

28冊。夏~秋にあまり読んでいなかったようだ。 ベストは終盤に滑り込んだ「失敗の科学」かな。「脳はなぜ都合よく記憶するのか」も面白かった。 来年は小説に力を入れていきたい。 技術書だとモデリング関係の書をもう数冊読みたい(実践しなきゃ意味ないと…

今年知って惚れたバンド(アーティスト)

4ユニットと1人。ほとんどは以前から活動している。 AL youtu.be andymori が再びバンドを組むときいて飛びついたけど小山田壮平と長澤知之のツインボーカルにかなり戸惑った。でも、これがこの2人にしかできない音楽だった。andymori 時代の小山田が歌う「…

同時実行するときのコレクション

C#

以下を実行すると、ArgumentException になったり result が歯抜けになったりする。 var result = new Dictionary<int, int>(); Parallel.For(0, 10000, i => { result.Add(i, CalculateSomething(i);); }); これは Dictionary がスレッドセーフでないため。 Concurren</int,>…

vue.js でつまづいた話 (1)

Elasticsearch に引き続き vue.js でつまづいた話。続くかどうかはわからない。 v-bind で、バインドする内容を動的に切り替えたいときの話。 公式ドキュメント のとおり、 v-bind:class では以下のように記述すると isActive や hasError の真偽値でバイン…

無作為抽出のトリック

この記事で、「ある集合の上位 5% を 95% の確率で選択するためには、全体のデータ数によらず 59 件取得すれば十分である」という命題を使用しました。これを証明しましょう。 集合 U の部分集合 Q があり、 Q の要素数は U の要素数に対して割合が p だとし…

会社の創業記念パーティのBGMを振り返る

弊社の Advent Calendar ネタにするつもりだったが、その前の流れがみんな真面目だったのでお蔵入りにしかけた内容。 今年の6月に会社の創業記念パーティがあり BGM を選曲したので振り返る。一晩で選んだので投げやり感もあるがご愛嬌。あと「音楽好きです…

いま修論を振り返る

この記事は Sansan Advent Calendar の9日目です。 約5年前、修士時代にやってた機械学習の研究の話をします。この分野で5年前といったら化石のような内容かもしれませんが、いま思い返してもなかなか面白いテーマでした。ちなみに普段の私の業務では機械学…

Elasticsearch でつまづいた話 (4)

前回に引き続きページング取得の話。 Aggregations でページング Terms Aggregations したとき、キーが多すぎる場合に分割して取得したい。そんなときは Partition に区切って取得することになる。 { "size": 0, "aggs": { "aggregation_name": { "terms": {…

Elasticsearch でつまづいた話 (3)

今回のテーマはページング取得。 Query したときの件数 RDB の発想だと SQL select * from table したら全件取得されるのが当然だが Elasticsearch だと何も指定しなければ 10 件までしか取得されない。 size を指定するとこれを大きくできる。 { "size" : 1…

ASP.NET のセッションと同時実行

ASP.NET で複数リクエストからセッションを扱おうとすると困ったことになるよという話。 SPA とかだと、画面からいろんなリクエストを非同期で飛ばして、パーツごとに表示することがある。 そんなとき、たとえば認証情報をセッションから取得して、その情報…

正解率の高い予測が必ずしも良い予測ではない

タイトルのとおりなんですが、何かしらの予測に対してその良さを語るために「正解率90%」とか「精度90%」とかよく表現されますね。 で、今回は「正解率が高ければ良いというわけじゃない」という話です。 正解率 (accuracy) 正解率の定義は、当然、正解数を…

いろいろな交響曲第1番

作曲家にとって交響曲第1番はロックバンドにおける 1st アルバムと同じ。 Oasis の Definitely Maybe だし、 Weezer の blue album だ。 今回は、偉大なる作曲家たちの交響曲第1番を振り返ってみる。セレクションは適当です。 L. v. ベートーヴェン www.yout…

Elasticsearch でつまづいた話 (2)

今日のテーマは複数の Nested Field があるときの Aggregations 。 Nested Field とは 日本語での説明は このあたり に譲るが、簡単に言うと親子関係が維持された Array である。データの見た目は Array と同じだ。 "user" : [ { "first" : "John", "last" :…

Elasticsearch でつまづいた話 (1)

一人で Advent Calendar をやる。 テーマは決めてない。技術か音楽の話が大半になりそうだ。 いまのプロジェクトで Elasticsearch を使っている。そのなかで、知ってたらそりゃ当然なんだけど、はじめ概念として理解できなかったことが色々あったのでまとめ…

ユーザーストーリーマッピング

ユーザーストーリーマッピングを読みました。 ユーザーストーリーマッピングの方法論よりも、とにかく会話する、作るものを減らすことを論じています。 ドキュメントが正義じゃない、バックログを上から消化するのが正義じゃない、というのは私もぼんやりと…

パセラのコワークに行ってきた

パセラのコワーク 東新宿に行ってきた。なかなか快適だったのでメモ。 快適ポイント ディスプレイ借りられる 15インチのWXGAだったかな。 変換ケーブルもあったが、不足気味だった。 コーヒー、ミネラルウォーター飲み放題 コーヒーはもちろん豆から挽いてる…

Productivity Engineering − Forkwell Meetup #4

【増枠!】Productivity Engineering − Forkwell Meetup #4 - connpass に参加したメモ。 チーム開発、改善のフローをどうやって回すかが大事。改めて感じた。 あとなんだかんだで、リモートとかで顔を合わせないことによるデメリットはなかなか埋められない…