ブックマーク / blog.shibayu36.org (18)

  • 自分流Elasticsearch入門 - $shibayu36->blog;

    【2016/09/10追記】 勉強しなおして、Elasticsearchの知識についてさらにまとめた記事を書いたので、そちらを参照してもらうと良さそうです。 blog.shibayu36.org 最近Elasticsearchの勉強をした。ただ、入門のためどのような資料が適しているかを知るのが大変だった。そこでどのように勉強したかについてメモをしておく。少しまとめエントリー的なノリになりそう。 Elasticsearchの概念を知る 全文検索技術の基を知る Elasticsearchのドキュメントのたどり方を知る の順に学習を進めていった。 Elasticsearchの概念を知る Elasticsearchの学習を始めようとした時に、まずは基からということで以下のを読んでいた。 高速スケーラブル検索エンジン ElasticSearch Server (アスキー書籍) 作者:Rafal

    自分流Elasticsearch入門 - $shibayu36->blog;
    deeeet
    deeeet 2015/08/17
    僕も入門するぞ!!
  • 歴史文学「HHhH」 - $shibayu36->blog;

    歴史文学でもたまには読もうと思い、「HHhH」というを読んだ。 HHhH (プラハ、1942年) 作者:ローラン・ビネ東京創元社Amazon このは第二次世界大戦中のドイツ占領下におけるプラハや、ナチの中で重要なポジションを担いプラハの統治を行っていたハイドリヒ、そしてハイドリヒの暗殺計画に携わったクビシュとガブチークについて書かれた歴史文学。 歴史文学と聞いていたので、最初は小説のつもりで読んでいた。だけれどたちまち僕はどういう構造になっているのか掴めなくなった。例えばこのの中に書かれている「僕」というのは誰なのか。「僕」の視点になったり、その状況下のプラハの情景に変わったり、ころころ場面が変わるのはなんなのか。 いろいろ見てみると、いくつかの発見があり、ようやくどういうなのかわかってくる。この歴史について創作で書くことをよしとせず、残っている資料を元にしか書かないという制約

    歴史文学「HHhH」 - $shibayu36->blog;
    deeeet
    deeeet 2015/01/21
    今まで読んだノンフィクションで一番面白かったし,こんなの見たことないと思った
  • hubotにikachan的な役割を担わせる - $shibayu36->blog;

    最近Hubotの導入をしている。今回はHubotを導入したらikachanというツールの代替も出来たのでそのメモ。 ikachanとは http://blog.yappo.jp/yappo/archives/000760.html https://github.com/yappo/p5-App-Ikachan ikachanとは、HTTPのAPI経由でIRCに対してメッセージを送るように出来るようになるPerl製ツール。ikachanはdaemonとして動き、特定portでLISTENされるので、そこにcurlなどを使ってPOSTすると簡単にIRCにメッセージを送れる。これまで様々な人がIRC botを作って、投稿する部分を実装していたのだけど、ikachanがproxyとしてHTTP APIを提供してくれるので、それを起動しておいてHTTP APIを叩くだけでひとまずメッセージを送る部分

    hubotにikachan的な役割を担わせる - $shibayu36->blog;
    deeeet
    deeeet 2014/10/14
  • 実践に繋げるように勉強する - $shibayu36->blog;

    遅延評価勉強法だと得られなかったもの - As a Futurist... 漢(オトコ)のコンピュータ道: ヒゲモジャのギークが提案する技術習得戦略 を読んで、なんとなく気分が高まったので、自分の学習のことについて書いてみる。 以下の様なことを書いているつもり。 勉強は実践につなげると知識が定着すると思っている 実践課題を探すのではなくて、実践の目処のあるものを勉強する 一番簡単な実践課題として、自分の言葉でまとめ直すということをしている 実践に繋げる 僕は勉強する時は、いろいろを読んだり、情報を調べたりして、まず知識をつけようとすることが多い。ただし、それだけだとだめで、実践しないと知識が定着せず、どんどん忘れていき、結局意味ないということになる。実践大事。 大事なのはわかってるんだけど、実践するのは意外と難しい。に練習問題あったりすることもあるけどあんまり面白くないし、良い実践課題

    実践に繋げるように勉強する - $shibayu36->blog;
    deeeet
    deeeet 2014/08/04
  • 見学のときに不動産屋に質問して得た有益情報 - $shibayu36->blog;

    良い物件ではなく良い不動産屋を探した - $shibayu36->blog; 先日の物件探しの見学のときに、不動産屋のこと全く知らないし質問チャンスと思っていろいろ聞いたのだけれど、いろいろと内容が面白かったので公開します。ちなみに京都で、かつその不動産屋で、ということなので、一般的ではないかもしれません。 その部屋が隣の音漏れがあるかとか運ですよね 雑談してて、部屋の間取りとか条件とかは情報で得られるけど、壁の音漏れとか、条件に入ってこないところとかもあったりして、そういう部分を含めると引っ越しは運ですよねーって話をしてたら、有益情報を得られた。 正確さは保証できないが、実は壁の音漏れなどの情報を得ることも出来る そういう条件に入ってこない悪い部分があると、住人が管理会社に何度もクレームを送って、対応されないから退去ということが起こる可能性がある なので、退去理由やクレームの量・内容を、

    見学のときに不動産屋に質問して得た有益情報 - $shibayu36->blog;
    deeeet
    deeeet 2014/07/22
  • 良い物件ではなく良い不動産屋を探した - $shibayu36->blog;

    いろいろあって今の家から引っ越すことになった。 良い物件どうやって探したらいいか分からなかったので、適当にググって http://nanapi.jp/286/ を実践してみたら、結果的にうまく行ったので経験をメモ。 結論 良い物件を探すのではなく、良い不動産屋を探すという方法にしたところ、僕の性格としては上手く行った 今回の流れ suumoやhomesで住みたい場所の物件を眺める 希望条件をまとめる 不動産屋を選んでメールしまくる 良さげなところを数社に絞って、さらに送られた物件見ながら返信してみる 一番いい感じに返答してくれた雰囲気の店に行って相談 suumoやhomesで住みたい場所の物件を眺める http://nanapi.jp/286/ とやってることは一緒なので割愛 希望条件をまとめる http://nanapi.jp/286/ とやってることは一緒なので割愛 不動産屋を選んでメ

    良い物件ではなく良い不動産屋を探した - $shibayu36->blog;
    deeeet
    deeeet 2014/07/18
  • Server::Starterから学ぶhot deployの仕組み - $shibayu36->blog;

    以前http://tech.naver.jp/blog/?p=1369の記事を読んだのだけれど、それまでにprocessの知識が無かったりして、まったく理解できませんでした。そこでWorking with UNIX ProcessesやServer::Starterの中身を呼んでようやくhot deployの仕組みを理解できた(気になっている)ので、Server::Starterの実装を追いながら、それをまとめてみます。 hot deployとは hot deployとは「再起動の時にリクエストの処理を続けながら、変更の内容を反映するための手段」です。 通常serverをrestartさせるときは、stop -> startの流れになると思いますが、この場合stopしてから、start出来るまでの期間にリクエストを処理できない期間が発生します。その期間なしにdeployする仕組みがhot

    Server::Starterから学ぶhot deployの仕組み - $shibayu36->blog;
    deeeet
    deeeet 2014/05/29
  • 開発フローに新しい仕組みを導入するとき気をつけていること - $shibayu36->blog;

    最近開発フローに新しい仕組みを導入したりすることも多いのだけど、気をつけていることがいくつかある。 小さく導入する 短く導入する 振り返る 小さく導入する なんか導入する時は出来るだけ小さく導入してる。 理由は いきなりスクラムだとか言い始めてチーム全体のワークフローを変えようとした結果、チームの文化が崩壊する いきなりこれからはこのツールだとか言い始めてツールを導入した結果、誰も得してないのにツールだけ使われ続ける みたいなことがよく起こると思ってるため。既存の文化を壊したら元も子もないので結構気をつけてる。 小さく導入すれば、影響範囲を最小限に留めることができるし、あとから簡単にやめることが出来る。 小さく導入する方法はいくつかあって スクラムの中の一部だけ、チーム全体に適応する -> 導入するものを小さくする チーム内タスクの一部分だけに、仕組みを導入する -> 導入する範囲を小さく

    開発フローに新しい仕組みを導入するとき気をつけていること - $shibayu36->blog;
    deeeet
    deeeet 2014/05/14
    参考になる
  • ターミナル版anything的なpercolをzawの代わりに試してみた - $shibayu36->blog;

    emacsを使っているとterminalでもanything的にいろいろやりたくなるんだけど、そういう時にこれまでzawというツールを使ってきた。 https://github.com/zsh-users/zaw zaw.zshで最近移動したディレクトリに移動する - $shibayu36->blog; zawを使って最近更新したブランチをチェックアウトする - $shibayu36->blog; zaw結構便利なんだけど問題点もある。 読み込む行数が増えてくると遅くなる 履歴検索で10万行とか行くと動かないので致命的 zshに完全に紐付いてしまって、気軽には使えない で、この前YAPCでid:moozさんと話してて、percolという便利ツール作ってると聞いたので、試してみた。 percolとは 紹介記事などがあるので、それを参考に。 https://github.com/mooz/pe

    ターミナル版anything的なpercolをzawの代わりに試してみた - $shibayu36->blog;
    deeeet
    deeeet 2014/05/03
  • 「チーム開発実践入門」を読んだ - $shibayu36->blog;

    チーム開発実践入門というが最近出ていたので、読んだ。 チーム開発実践入門 ~共同作業を円滑に行うツール・メソッド (WEB+DB PRESS plus) 作者:池田 尚史,藤倉 和明,井上 史彰技術評論社Amazon このは良くない開発フローの例をケーススタディとして2章で紹介し、その後の章でそれに対応する形でバージョン管理やチケット管理、テスト、構成管理などの紹介をしている。 なんとなくエンジニアリングの開発フローがうまく行っていないけど、どこから始めていいか分からないという人には非常に面白いと思う。2章のケーススタディの例を読んでみて、その中で確かに自分のチームでもあるあると思えたところを中心につまみ読みしてみると良いと思う。 個人的にはほとんど知っている内容ばかりだったので、どちらかというと事例を含めてもう少し内容があると良かったように思う。 このを読んでいる中で一番良かったの

    「チーム開発実践入門」を読んだ - $shibayu36->blog;
    deeeet
    deeeet 2014/05/02
  • DevLove関西で「課題をテストで解決する」という発表をしました - $shibayu36->blog;

    DevLove関西に行ったので、「課題をテストで解決する」という発表をしてきました。 内容はスライドに書いてあるとおりです。以下のことを特に話したくて、今回の発表をしました。 何度も起こる課題があったときに人が気をつけようとしない 最悪のケースでは根原因を知ろうとせず、間違えた人を怒ることで解決しようとしてしまう 何度も起こる課題なら、機械に自動的にやらせる その例として今回はテストでやりましょうという話をした あとテストいろいろあって始め方がわからないという時は、こういう課題をテストにするというところから始めるとやりやすいかもしれない 参考 この資料作るにあたってひたすらブログ書いたので参考にどうぞ 設定の仕様をドキュメントに書くのではなく、テストにしてしまう - $shibayu36->blog; ドキュメントの場所を知らせるために、落ちるテストを作る - $shibayu36->b

    DevLove関西で「課題をテストで解決する」という発表をしました - $shibayu36->blog;
    deeeet
    deeeet 2014/04/27
  • 設定の仕様をドキュメントに書くのではなく、テストにしてしまう - $shibayu36->blog;

    以前開発のドキュメントをどこに置くか問題 - $shibayu36->blog;という記事を書いた。まだよい方法はちゃんと考えられてないが、少しずつケースバイケースでいろいろな手法を試してみている。今回は設定項目の仕様のドキュメントという観点で考えたときに、テストを作ることで解決できないか、ということについて書く。 設定項目の仕様 例えば以下の様な設定があったとする*1。 [ { "blog_url" : "http://shibayu36.hatenablog.com/", "permission" : "public", "can_be_edited_by" : [ "shiba_yu36" ] }, { "blog_url" : "http://shibayu36-private.hatenablog.com/", "permission" : "private", "can_be_

    設定の仕様をドキュメントに書くのではなく、テストにしてしまう - $shibayu36->blog;
  • レビュータイムの導入・消滅・再導入 - $shibayu36->blog;

    今日こんなかんじの会話があって、レビュータイム導入した時のことを思い出したので、適当に書こうと思う。 ひさいちレビュー、必ず通すみたいなの良いのか悪いのか— ひさいち (@hisaichi5518) 2014年3月13日 @hisaichi5518 マジレスすると、そのような体制にしておくとスケールしないので、最初の段階では必ず通すというルールにしつつ、他の人がレビューしても大丈夫に出来るように、レビューの練習を同時にしていってもらうとしないといけなさそう— 柴崎優季 (@shiba_yu36) 2014年3月13日 @hisaichi5518 今のチームで新人が入った時は、レビュータイムというのを必ず設けてその時間には最低限どれか一つレビューするというのをやってもらってる。でも慣れるまではこれまでチームにいる人がレビューしないとmergeしないということにしてる。— 柴崎優季 (@shi

    レビュータイムの導入・消滅・再導入 - $shibayu36->blog;
    deeeet
    deeeet 2014/03/13
  • serfとDockerでクラスタを組んでみる - $shibayu36->blog;

    最近Serfというツールも気になっていたので、とりあえずクラスタを組んでイベントハンドラの設定をしてみるところまでやってみました。 Serfとは http://www.serfdom.io/ https://github.com/hashicorp/serf Serf is a decentralized solution for service discovery and orchestration that is lightweight, highly available, and fault tolerant. Orchestrationという層を支援する軽いツールみたいですね。これをうまく使うことで、クラスタにjoinしたweb serverを自動的に配下に加えるHAProxyとかを実装したり出来ます。参考: Serf+HAProxyで作るAutomatic Load Balanc

    serfとDockerでクラスタを組んでみる - $shibayu36->blog;
  • EmacsからiTermにコマンドを送る - $shibayu36->blog;

    EmacsからiTermに対してコマンドが送りたい時がある。例えば 現在Emacsで開いているファイルのディレクトリにiTermで移動したい 現在Emacsで編集中のテストをiTermで実行したい など。 そういう時には以下の様なユーティリティを定義しておくと便利。AppleScriptを利用して、iTermにコマンドを送る。 (defun execute-on-iterm (command) (interactive "MCommand: ") (do-applescript (format "tell application \"iTerm\" activate tell current session of current terminal write text \"%s\" end tell end tell" command))) これを利用して「現在Emacsで開いているファイ

    EmacsからiTermにコマンドを送る - $shibayu36->blog;
    deeeet
    deeeet 2014/02/11
  • コードレビューを円滑に行いたい (#cross2014 のお話) - $shibayu36->blog;

    id:antipopさんやid:studio3104さんに機会をもらえて、CROSS 2021に参加させてもらい、はてなでのレビューの話を軽くさせてもらった。はてなからは僕とid:hakobe932さんとで参加した。 http://blog.kentarok.org/entry/2014/01/18/204552 2014/1/17 #cross2014 コードレビューCROSS 〜ぶつかり稽古 2014初場所〜 - Togetter それで、今回参加して他の会社の人のレビューの話も聞いて、あーそれはあるあるとか、そういう問題解決するためにこういうことしてますとか、他の会社ではこういう時どうしているんだろとか、幾つかおもうところがあったので、もう少しレビューのことについて書いてみる。 レビューと関係性問題 レビュアーとレビュイーの関係に関して - 職質アンチパターン コードレビューと関係性

    コードレビューを円滑に行いたい (#cross2014 のお話) - $shibayu36->blog;
    deeeet
    deeeet 2014/01/20
  • Dockerが利用しているAUFSとLXC - $shibayu36->blog;

    最近Dockerをいろいろ触ってみていて以下の様な記事を書いたりしました。 Dockerで立てたコンテナにsshで接続する - $shibayu36->blog; serfとDockerでクラスタを組んでみる - $shibayu36->blog; 番環境のBlue-Green Deploymentの仕組みのプロトタイプを作っていた - $shibayu36->blog; Docker, Mesos, Sensu等を利用したBlue-Green Deploymentの仕組み - $shibayu36->blog; 社内用Docker Registryを立てる - $shibayu36->blog; docker commitでCMDやENVなどを指定する - $shibayu36->blog; docker inspectでDockerコンテナの情報を取得する - $shibayu36-

    Dockerが利用しているAUFSとLXC - $shibayu36->blog;
  • 社内用Docker Registryを立てる - $shibayu36->blog;

    Dockerにはimageを登録しておくためのregistryが用意されていて、https://index.docker.io/ にPublicなイメージを登録しておくことが出来ます。また、社内用など、Publicには出したくない時も自分でregistryを立てることが出来ます。そこで、今回は社内用Docker Registryの立て方について書こうと思います。 https://github.com/dotcloud/docker-registry を参考にします。 Docker Registryを立ち上げる 立てるのはすごく簡単で、docker runするだけでした。 $ docker run -p 5000:5000 -d stackbrew/registry これで実行したhostの5000番portにDocker Registryを立てることができます。 ここに対して、pushやp

    社内用Docker Registryを立てる - $shibayu36->blog;
  • 1