タグ

ブックマーク / blog.kentarok.org (14)

  • 効率的に新しいことを学ぶ方法 - Kentaro Kuribayashi's blog

    社内SlackTwitterなどで、自分が新しいことを学ぶ時に実践していることを書いたりしていたのだが、今日メンバーと1 on 1をしていて、あらためて新しいことの学び方について訊かれたので、ブログにも簡単にまとめておく。 まず前提として、学ぶ対象の「新しいこと」とは何かについて述べておく。ここでいう新しいこととは、研究やイノベーションに関することではない。そういうのは、ググっても出てこないレベルの新しさなので、このエントリで述べる対象ではない。ここでいっているのは、自分にとって新しい知識であり、かつ、既に一定の蓄積があるような内容のことである。 それをひとことでいうと、入門書があるような領域ということになる。たとえばプログラミング言語はメジャーなものはたいてい当てはまるし、DockerとかKubernetesのような技術要素も入門書があるし、もっと広く学問一般についても当てはまる定義で

    効率的に新しいことを学ぶ方法 - Kentaro Kuribayashi's blog
  • 大きな構想を持つこと - Kentaro Kuribayashi's blog

    DeNAのZIGOROuさんによる技術選択とアーキテクトの役割というスライドを拝見して、大いに感じるところがあったので、少し書く。といっても、技術的な話というよりは、もうちょっと違うレイヤの話(技術選択についても思うところはあるのだけど、それはそれについて述べたスライド*1を参照していただきたい)。 経験曲線効果 経験曲線効果という言葉がある。元は、ボストン・コンサルティング・グループ(BCG)のコンサルタントによって提唱されたものだ*2。このような図*3を見たことがあるだろう。 Wikipedia*4には以下のように説明されている。 経験曲線効果(けいけんきょくせんこうか、experience curve effect)とは、経験と効率との間の関係を示す経験則である。単に経験効果とも呼ばれる。一般に個人や組織が特定の課題について経験を蓄積するにつれて、より効率的にその課題をこなせるように

    大きな構想を持つこと - Kentaro Kuribayashi's blog
  • 組織能力を圧倒的に成長させること - Kentaro Kuribayashi's blog

    この記事は、Pepabo Advent Calendar 2014の12日目の記事です。前日は、hisaichi5518さんの「Web APIを作るときに考えること。 - パルカワ2」でした。 ここ半年ほど考えていることを、以下に述べる。 技術とは何か? 「技術とは何か?」という問いに対しては様々な回答があり得るが、ひとまず「企業にとっての技術」という観点からいえば、経営学による以下の記述にその定義を求めてもよいだろう*1。 すべての企業が、自分が必要なインプットを市場から買ってきて、それに自分が得意とする「技術的変換」を加えて、その結果として生まれてくる製品やサービスを市場で売っている。 (中略) 誰にでも容易に手に入る財やサービスであれば、とくに企業が存在してその提供を業とする必要はない。その提供プロセスが難しいからこそ、その困難さを解決する努力が企業の「技術的変換」になるのである。

    組織能力を圧倒的に成長させること - Kentaro Kuribayashi's blog
  • 型システムの意義(TAPL第1章より) - Kentaro Kuribayashi's blog

    『アンダースタンディング コンピュテーション』に続いて、『型システム入門―プログラミング言語と型の理論』を読む。 型システムの定義 システムが仕様通りに動作するかどうかを保証する形式手法と呼ばれるものにはいろいろあるけど、利用が難しい。もっと簡単に使えるような軽量形式手法として普及しており、確立されてもいるのが型システムである。 型システムとは、プログラムの書く部分を、それが計算する値の種類に沿って分類することにより、プログラムがある種の振る舞いを起こさないことを保証する、計算量的に扱いやすい構文的な手法である。 (書 p.1より) 型システム(型理論)には、論理学・数学におけるいろんな理論からの流れもあるけど、書では、上記の定義にある通り、プログラムの動作に関する推論のためのツールという側面にフォーカスしてみていく。また、型システムを、プログラミングにおける項を値の性質によって分類し

    型システムの意義(TAPL第1章より) - Kentaro Kuribayashi's blog
  • RESTが日本で受け入れられていった頃の話( #mozaicfm の補足) - Kentaro Kuribayashi's blog

    mozaic.fm第7話のRESTの話で、RESTが日で広く受け入れられていった頃、というか、その端緒の頃の話が出ていて懐かしかったのだし、細部にやや不正確なところがあるのが気になったりもしたので、補足を書いておきますね。 まず、いわずとしれた@yoheiさんがRESTをまず知ったのが2003年とかそれぐらいの時期とおっしゃっていて、それから数年経ち、RESTがWebエンジニアに広く受け入れられていったのは、2007年末にリリースされ、resourcesという機能を取り入れたRails2からというのは、@t_wadaさんがおっしゃっている通り、事実だろうと思います。 また、Podcastの中では、主催のJxckさんが、それはそれと認めた上で、彼自身にとってはAjaxの登場が大きかったということを述べた上で、@yoheiさんの主催された第八回XML開発者の日での高橋征義さんとid:seco

    RESTが日本で受け入れられていった頃の話( #mozaicfm の補足) - Kentaro Kuribayashi's blog
  • RailsでTypeScriptを使う - Kentaro Kuribayashi's blog

    JavaScriptは設計が難しい。経験上、すぐグシャグシャになってしまう。よくわからなくなる。もちろん、私のスキル不足というのはあるだろうけれども、スキルが不足してるのはしかたないので、学習は続けることは前提であるにしても、技術的に解決できるなら技術に頼りたい。そうした意味で、いわゆるAltJSの中ではTypeScriptが有望だろうと思う。 RailsTypeScript TypeScriptを使うにしても、それ単体で使うというシーンは、Webアプリケーション開発という文脈ではあまりない。たとえば、Railsで開発しているWebアプリケーションのフロントエンドを構成する言語として使うことになるだろう。その際、まず考えるべきことは、Asset Pipelineとどう折り合いをつけるかということだろう。 Asset Pipelineは、以下の機能を担っている: 拡張子(例:applica

    RailsでTypeScriptを使う - Kentaro Kuribayashi's blog
  • 「「技術的負債」を問いなおす」というタイトルでJAWS DAYS 2014で話してきた #jawsdays - Kentaro Kuribayashi's blog

    JAWS DAYS 2014のImmutable Infrastructure(以下、II)に関するトラックに呼ばれたので、話をしてきました。Immutable Infrastructure時代のConfiguration Management Toolの要件およびその実装についてや最近のImmutable Infrastructureに関する議論(Orchestration編)というエントリを書いていたからということでしょう。 ただ、最近は首都大学東京ビジネススクール不合格記に書いたように、経営学関連の学習をずっと行っていて、すっかりそのような話題から離れてしまっていた、ありていにいえば特に興味を持たなくなってしまっていたので、進学していたら研究テーマのひとつにしていたであろう件について、だいぶ生煮えではあるけれども最近またそうした話題でネットが盛り上がっていたりもしたので、以下スライド

    「「技術的負債」を問いなおす」というタイトルでJAWS DAYS 2014で話してきた #jawsdays - Kentaro Kuribayashi's blog
  • A/Bテストでいちばん大切なこと - Kentaro Kuribayashi's blog

    「A/Bテスト」が、Webサービスの最適化技法として人口に膾炙して久しい昨今ですが、それでもなお、個々の施策実行時にはいろいろと迷うことがあります。たとえば: 有用なテスト結果を得るためにパターンをどのような基準で用意すればよいのか テスト結果の統計的有意性をどのように検定すればよいのか 個々の改善がそれぞれによかったとしても、それらが局所最適に陥らないためにはどうしたらよいのか といったあたりが挙げられます。(2)については純粋に技術的な問題なので、ここでは議論しません。問題にしたいのは(1)および(3)についてです。ひとまず、いまのところ僕が思う一番大切なことをひとつだけ述べておきましょう。それは: 「それに対してなんらかの肯定的/否定的意見のあるパターンをテストする」 ということです。どういうことか。 視野狭窄的なA/Bテスト A/Bテスト、あるいは同様の最適化技法については、かつて

    A/Bテストでいちばん大切なこと - Kentaro Kuribayashi's blog
  • Webサービスのようなプロダクトについての議論について教えて下さい - Kentaro Kuribayashi's blog

    このブログを提供している「はてなブログ」もそうであるような、一般ユーザ向けのWebサービスのようなプロダクトについての議論を知りたいんです。ここでいう「Webサービス」とは、以下のような特徴を持っているものをいいます(これが全部ではないですが、少なくともこれらを全部満たします)。 不特定多数のユーザが共通の物理的実体にアクセスし、サービスを利用する 継続的に機能が追加されていく(削除されることもある) 一般に、いつまで使われ続けるのかあらかじめ決められていない コア技術の多くを外部に依存しているため、外部環境の変化を受けやすく、またその変化が非常に早い Webサービスの構成要素の一番大きなものはソフトウェアですが(もちろん「サービス」なのでソフトウェアだけで完結するとは限らない)、WebサービスMicrosoft Officeなどのようなソフトウェアとを比べると、(1)が一番大きく違いま

    Webサービスのようなプロダクトについての議論について教えて下さい - Kentaro Kuribayashi's blog
  • アジャイル開発プロセスの実証的効果検証について - Kentaro Kuribayashi's blog

    これまでこのブログであれこれ書いている通り、今年は勤務先の有志によりスクラムが大規模に導入され、様々なひとたちの協力と粘り強い実践のおかげで、徐々に定着しつつある。当初の理想のようにはうまく行かないことも多かったけれども、もっとよくしようという工夫、よくなるはずだという信念によって、実践に取り組んでいる人々の中では、改善の効果が実感されつつあるように思う。 しかし、問題がないわけではない。もちろん、プロセスそのものをさらに改善できるという意味でも課題はあるが、それとともに、導入の効果を実証的に示すことがなかなか難しいということも大きい。簡単にいえば「で、スクラム導入によってなにがどれぐらいよくなったの?」という端的な質問(別に誰かにそうきかれたわけじゃないけど、自分自身にそのように問いなおした場合)に、うまいこと答えられないということだ。 VersionOneによる年次報告のような継続的な

    アジャイル開発プロセスの実証的効果検証について - Kentaro Kuribayashi's blog
  • 「PHPアプリケーションの継続的バージョンアップ」という題でPHPカンファレンス2013でトークしてきた #phpcon2013 - delirious thoughts

    PHPカンファレンス2013で「PHPアプリケーションの継続的アップデート」というタイトルで話をしてきました。僕は、いまでこそPerlRubyの人みたいな感じですが、もともとはPHPからプログラミングを始めたので、PHPカンファレンスで話すというのは、感慨深いものでした。「ぺちぺ」「ぺちぱー」という言葉の創始者でもありますし。 トークの内容は、最近仕事でやってきたことのまとめみたいな感じです。PHPといいながら、2/3ぐらいはPHPには直接関係ないことばかりでしたが。トーク中でもいったように、言語そのものというよりは、システムの複雑性をいかに減らすかが「継続的な」取り組みには必要なので、いたしかたありません。それなりに面白いものになっていると思います。 スライドは以下。 これまで『WEB+DB PRESS Vol.75』『入門Puppet - Automate Your Infrastr

    「PHPアプリケーションの継続的バージョンアップ」という題でPHPカンファレンス2013でトークしてきた #phpcon2013 - delirious thoughts
  • SQLインジェクションについてのスライドを作成した - Kentaro Kuribayashi's blog

    社内で、SQLインジェクションについてあらためて原理・原則から議論したいねという風潮がにわかに起こったので、ひとまずは叩き台として僕の方でまとめて皆で議論しましょうというわけで、以下のような資料を作成した。 社内勉強会用の資料なのだけど、僕は別にセキュリティに詳しいわけでもないし、ましてやPHPのことは素人なので、外部の識者にレビューしていただいて、できるだけ正しい知識に基づいて議論できればと思い、まずスライドを先行公開することにした。そうしたところ、Twitter上で多数の識者よりいろいろとご指摘いただいて、少くとも決定的におかしな内容にはなっていないものになったようだ。ありがとうございます。 僕らの職務のひとつに「セキュリティ関連」というものも謳われているので、そのあたりの知識普及・基盤整備についても、仕事のひとつとして行っている。先にも書いた通り、僕自身がその点についてよく理解できて

    SQLインジェクションについてのスライドを作成した - Kentaro Kuribayashi's blog
  • 第1回Ruby開発環境勉強会 - Kentaro Kuribayashi's blog

    社内で、Ruby開発環境勉強会を行いました。趣旨としては、 Rubyプログラマ歴ひと月未満の僕が、最近自分でやってみた開発環境について説明・実演する それを聞いているひとが「こんなことも知らないのか」とあきれて、いろいろ教えてくれる という会です。いろいろ勉強になったので、とてもよかったです。開発環境やツールまわりの勉強会、面白いので、次回以降もなんかしら開催したいと思います。また、 西園寺おんじ氏: http://p.booklog.jp/book/51223 刺身氏: http://blog.kyanny.me/entry/2012/05/30/164601 の2名も発表してくれました。 とはいえ、単に「教えて」というだけいっても意味ないので、以下の軸に沿って問題を整理しつつ、それぞれについて説明・実演をしつつ、みなさんの意見をうかがう感じですすめました。 シェルの設定 irb/pry

    第1回Ruby開発環境勉強会 - Kentaro Kuribayashi's blog
  • 『Linuxカーネル解読室』輪講 #1「プロセススケジューリング」 - Kentaro Kuribayashi's blog

    Linuxカーネルの話を知りたいなーってんで、『Linuxカーネル解読室』の輪講を始めました。とりあえず、カーネルのソースをがりがり読み込むというよりは、ざっくりと動作を把握しようという感じで。今日の初回は、第1章「プロセススケジューリング」を読みました。この分野にまったくもって不案内なので、難しい……。少しづつでも理解を進めたいです。 以下に資料を貼り付けておきます。実際には、id:naoyaをはじめとした参加者によるフォローに助けられて進めた感じなので、資料だけだといろいろとアレな面もあるとは思います。 Linuxカーネル2.6解読室 作者: 高橋浩和,小田逸郎,山幡為佐久出版社/メーカー: ソフトバンククリエイティブ発売日: 2006/11/18メディア: 単行購入: 13人 クリック: 189回この商品を含むブログ (116件) を見る [24時間365日] サーバ/インフラを支

    『Linuxカーネル解読室』輪講 #1「プロセススケジューリング」 - Kentaro Kuribayashi's blog
  • 1