読者です 読者をやめる 読者になる 読者になる

みんなのGo言語〜現場で使える実践テクニック〜

みんなのGo言語【現場で使える実践テクニック】作者: 松木雅幸,mattn,藤原俊一郎,中島大一,牧大輔,鈴木健太,稲葉貴洋出版社/メーカー: 技術評論社発売日: 2016/09/09メディア: 大型本この商品を含むブログ (1件) を見る 執筆陣の一人である@songmuさんから献…

#shibuyago #2でSlackboardの話をしました

shibuyago.connpass.com Shibuya.go#2でSlackboardの話をしてきました。以下発表資料。 speakerdeck.com 資料にもあるようにSlackboardはSlackのプロキシサーバとそのためのクライアントプログラムで構成されるツールです。 github.com 具体的には以下の3つ…

『nginx実践入門』出版記念nginx Tech Talksを開催しました

eventdots.jp 『nginx実践入門』の出版を記念してnginx Tech Talksを開催しました。司会や進行をやるのは初めてだったので正直不安でしたが、とりあえず大きな問題はなくできたのではないかと思います。以下自分の発表スライド。 speakerdeck.com Togetterま…

nginx実践入門出版記念イベントの開催と参加者募集のお知らせ

先週書いたエントリの続きです。既に募集が始まっていますが、来月の2月8日(月) 19:00から渋谷のイベントスペースdots.をお借りしてnginx実践入門の出版を記念したイベントを開催します。 eventdots.jp 執筆陣二人(@cubicdaiya, @harukasan)による書籍内容や…

「nginx実践入門」を執筆しました

@harukasanと共同で「nginx実践入門」を執筆しました。2016年1月16日発売です。 nginx実践入門 (WEB+DB PRESS plus)作者: 久保達彦,道井俊介出版社/メーカー: 技術評論社発売日: 2016/01/16メディア: 単行本(ソフトカバー)この商品を含むブログを見る 電子…

2015年振り返り

実家に帰る途中の新幹線で降りる駅を間違えるというアホなミスをやらかしたせいで無駄に疲れが溜まってるんだけど、コタツに入りながらのんびりと今年を振り返ってみる。 3ヶ月前に書いたメルカリに入社して1年経ったと被っている部分もあるけどあっちは会社…

ISUCON5本選で3位(+特別賞)でした

ISUCON5本選に@kazeburo、@shmorimo、@cubicdaiyaの3人でチーム「GoBold」として参加して3位になりました。また、合わせて運営が定めたスコア(100,000点)に最も早く到達したチームにもらえる特別賞ももらいました。 10万点最初に到達したチームは GoBold …

Goオールスターズ

先日dots.で開催されたGoオールスターズというイベントで発表してきました。 Goオールスターズ - dots. Goオールスターズ - Togetterまとめ スライドはこちら。 speakerdeck.com 内容はこれまでのイベントで話した内容と被ってるところありますが、インフラ…

PHPカンファレンス2015でメルカリのエンジニアリングについて発表してきました

2015年10月3日に開催されたPHPカンファレンス2015で「フリマアプリ「メルカリ」の急成長を支えるエンジニアリング」というタイトルで発表してきました。 フリマアプリ「メルカリ」の急成長を支えるエンジニアリング speakerdeck.com 内容的には昨年の9月に自…

ISUCON5予選 2位で通過しました

ISUCON5予選に@kazeburo、@shmorimo、@cubicdaiya(敬称略)の3人でチーム「GoBold」として参加してきました。 isucon.net 15時過ぎるくらいまではスコアが伸び悩んでいましたが、結果的に2位でフェニッシュすることができました。 以下はスコアの遷移をグラフ…

メルカリに入社して1年経った

昨年の秋にメルカリに入社してから1年経った。今となってはこういう時ぐらいしかブログ書かないだろうし、 せっかくなので入社後1年間でやってきたことをざっくばらんにまとめてみる。 Ansibleのplaybookを書き続ける日々 メルカリで一番書いた量が多いのはY…

YAPC::Asia 2015でnginxのモジュール開発について発表してきました

YAPC::Asia 2015で「Practical nginx module development〜C and Lua〜」というタイトルで発表してきました。 Practical nginx module development〜C and Lua〜 speakerdeck.com マニアックなネタなので「聞きに来てくれる人いるかな」とちょっと不安だった…

GoCon 2015 summerでGo製プッシュ通知サーバの話をしました

Go Conference 2015 summer (2015/06/21 10:00〜)gocon.connpass.com メルカリのプッシュ通知基盤のコアとしてGoで開発しているgaurunの話をしてきました。 gaurunはサーバプログラムであり、私も開発と運用を同時にやってることもあって Go製のサーバプログ…

Shibuya.pm#17でnginxの話をしました

speakerdeck.com Shibuya Perl Mongersテクニカルトーク#17にお呼ばれしたのでnginxの話をしました。(なんとShibuya.pmは初参加です) 発表直後にちょっと私事でバタバタした関係であまり集中して他の方の発表を聞くことができなかったのが少し残念ですが、 …

mozaic.fm#18でnginxの話をしました

#18 Nginx | mozaic.fm mozaic.fm#18で1時間半たっぷり(収録は2時間越)nginxの話をしてきました。 おおまかな内容は、 nginxを使い始めたきっかけ nginxとスクリプティング with Lua or mruby nginxとApache nginxとh2o nginxとhttp/2 Tengine NGINX Plus ng…

http2study(2015/04/14)でLTしてきました

HTTP/1.1 -> SPDY/3.1 -> HTTP/2 内容的には、海外にあるサーバ上で動いてるZabbixのダッシュボードに日本からアクセスした際のWebページのロード時間をHTTPサーバのチューニングだけで速くした話です。当初4秒かかっていましたが、最終的に1秒ちょいまで早…

画像変換Nightでngx_small_lightの話をしました

画像変換Night (2015/02/18 19:00〜) 画像変換Night - connpass @harukasanと@yoyaの三人で画像変換Nightを主催しました。(と言いつつイベントの下準備などの重要なことは大体この二人がやってくれた感じで僕はイベントの運営に関してはあまりコントリビュー…

2014年振り返り

もう年明けちゃったけど、軽く振り返ってみる。今年はまぁ、なんかいろいろつらいことがあって正直エンジニアやめて実家帰ろうかと思った時期があったり、1ヶ月間くらい体調崩して死にそうだったりで踏んだりけったりだったけど今は元気です。 あと転職もし…

どのバージョンのnginxを使うべきか?

先日、元同僚のエンジニアと話した際にnginxのstable版とmainline版との違いについて話題にのぼったんだけど、nginxの中の人的には基本的にmainline版を使え、ということらしい。ソースは以下。 http://nginx.com/blog/nginx-1-6-1-7-released/ 上記の一部を…

ハロー・ワールド ――Hello World――

ハロー・ワールド ――Hello World―― (講談社ラノベ文庫)作者: 仙波ユウスケ,ふゆの春秋出版社/メーカー: 講談社発売日: 2014/05/02メディア: 文庫この商品を含むブログを見る ヒロインがプログラマという設定に惹かれたので読んでみたのだが、結論から言うと…

『マスタリングNginx』を献本頂ました & レビュー

nginxと私 僕がnginxを初めて使ったのは2009年の夏頃で、当時在籍していた会社の技術ブログでちょっとした記事を書いたりもしました。バージョンは確か0.6.xか0.8.xだった気がします。いまや1.4.xなので隔世の感がありますね!*1 今在籍しているピクシブでは…

Hitch Blogにインタビュー記事が掲載されました

月間38億PVを6人でさばくpixivインフラチーム久保氏のパフォーマンス向上術 先月のPHPカンファレンスの懇親会でHitchの方に声をかけていただきまして、pixivでの職務やエンジニアとして個人でやってることについてしゃべりました。

mruby_nginx_module-0.2.1

https://github.com/cubicdaiya/mruby_nginx_module mruby_nginx_module-0.2.1をリリースしました。主な変更点は以下になります。 mruby_requireおよびmruby_initディレクティブでRegexpが使えるように変更 Nginx::Contextをリクエスト処理フェーズ以外で利…

Shibuya.rbでmruby_nginx_moduleの発表をしてきました #shibuyarb

宣伝込みでShibuya.rbでmruby_nginx_moduleの発表をしてきました。 mruby_nginx_module 先月からPHPカンファレンスとYAPC::Asia2013で登壇、1週間休暇取って旅行、ISUCON#3予選とあまりプログラミングの時間が取れてなかったのですが、先日正規表現エンジン…

mruby_nginx_moduleのGithub Pagesを作りました。

mruby_nginx_moduleは元々GithubのWikiページにドキュメントを書いておいたんですが、やっぱりGithubのWikiは目立たないのでngx_mrubyみたいにGithub Pagesを作りました。Octopressでもお世話になってましたがJekyll便利ですね。 http://cubicdaiya.github.i…

mruby_nginx_moduleあるいはngx_mrubyでPCREベースの正規表現を利用する際の注意

前回の記事で 深遠な理由によりmruby_nginx_moduleやngx_mrubyではmrbgemsとして実装されているPCREベースの正規表現エンジンを利用するのは困難と書きましたが、今回はこの理由について解説します。 mrubyと正規表現 このブログの執筆時点ではmrubyにはRege…

mruby_nginx_module-0.2.0

https://github.com/cubicdaiya/mruby_nginx_module mruby_nginx_module-0.2.0をリリースしました。(前回アナウンスしてない0.1.2を含めた)主な変更点は以下になります。 Nginx::Base64をリクエスト処理フェーズ以外でも利用できるように変更 mruby_require…

はてなブログに戻ってきた

長らくOctopressを使ってきたけど、なんだかんだで面倒になってきたのでこっちに戻ってきた。

年齢と抱負の話

去年から続々と30代に突入していき、誕生日を祝われつつも苦笑いを浮かべている同僚達と話しているときまって自分の年齢を聞かれる。そのたびにカミングアウトすると 「bokkoはまだ2○歳か〜、いいなぁ、若いなぁ」 などとどの人からも同じ返答が返ってくる…

TUIプログラミング

去年から自分が開発しているmemcached protocolをしゃべるプロキシサーバがあって、それには特定のポートに繋ぐと現在の状態(接続数や使用しているポート番号等)を出力する機能が付いてる。 ↓みたいにtelnetで指定のポートに接続すると即座に結果を返し、終…

スマートフォンでコードリーディング

外に出ていて手持ち無沙汰な時、かといってゆっくり本を読めるというわけでもない微妙な空き時間にTwitterとかはてブばっかり見てるのもアレなので、ソースコードでも読もうと思っていつくかそのためのアプリを入れてみた。 Gh4a Android用Githubクライアン…

sconsコマンドのzsh補完関数を書いてみた

https://raw.github.com/cubicdaiya/zsh_completions/master/_scons 探したけどなかったので書いてみた。便利な分何かと複雑なzshだけど補完関数あたりは割と単純なのとサンプルが豊富なのでササッと書ける。 やり方がわかれば後はひたすらコマンドのヘルプ…

はてなダイアリーとはてなブログの使い分け

はてなダイアリーからはてなブログに完全に移行しようと思ったけど、以下の点がネックになったので両者を用途別に使い分けることにした。 はてな記法がごく一部しか使えない スーパーpre記法でシンタックスハイライトが使えない はまぞうが使えない 上記の機…

.emacs整理

今回の三連休でしばらく手を加えていなかった.emacsを大幅に改造してみた。新たに加えたelispは以下の通り。 auto-install.el auto-async-byte-compile.el anything.el popwin.el direx.el とまぁ、数だけ見るとそんなに入れてないんだけど、主にanything関…

WEB+DB PRESS Vol.66

発売してから既に結構間が空いてしまっていますが、「きっちりわかるアルゴリズム」というお題でWEB+DB PRESS Vol.66に寄稿しました。 今回は普段からお世話になっている@nishmonと@m0h1canさんにお手伝いいただき、無事書き上げることができました。(重ね重…

はてなブログ始めました

スタート

node-dtlをnpmに登録しました

npmはハマりどころが多すぎて困る。 $ npm search dtl dtl A diff template library binding for node.js =cubicdaiya diff diff3 editdistance unified format plate A javascript templating language =chrisdickinson template dtl $ npm install -g $

dtlのnode.jsバインディング

https://github.com/cubicdaiya/node-dtl最近、久々にJavaScriptを勉強し直してる関係でnode.jsで遊んでみたんだけど、結局C++で書いてしまった。 そんなにほかの言語のバインディング書いた経験はないけど、node.jsのバインディング書くのは結構簡単。 node…

SConsで並列ビルド

今更ながらSConsでもMakeと同じく「-j 」オプションで並列ビルドができること知った。なので、さっそく自分のプロダクト(dtl)で試してみた。CPUのスペックやビルド対象は以下の通り。 CPU Intel Core i5 CPU 660 @ 3.33GHz Dual Core(HTT対応なのでOSからはQ…

Boost.勉強会#4

dtl - diff template library View more presentations from cubicdaiya Boost.勉強会 #4にて発表してきました。アルゴリズムの解説については参考資料へのリンクを紹介するに留めてdtlのライブラリとしての機能の紹介に内容を絞り、若干ネタにも走りました…

ソフトウェアライセンスを選択する自由

Togetter - 「RT hyoshioka: @ yukihiro_matz 実はなんでBSDライセンスにしなければいけないか理解できない。利益より害の方が大きいと思う。 Togetter - 「オープンソースのライセンスとビジネス」 自由なソフトウェアと自由なWeb 近頃、ソフトウェアのライ…

dtl-1.09

http://code.google.com/p/dtl-cpp/ dtl-1.09をリリースしました。今回の主な変更点は以下になります。 specifyConflictionが正常に動作しないケースへの対応およびテストの追加 Diff3クラスのtemplateパラメータにカスタムコンパレータを指定できるように変…

dtl-1.08

http://code.google.com/p/dtl-cpp/ dtl-1.08をリリースしました。今回の主な変更点は以下になります。 Diffクラスのコンストラクタに渡した関数オブジェクト(要素の比較用)が無視されてデフォルトの関数オブジェクトが使用されてしまうバグの修正 GCCの-Wオ…

make -> scons

dtlはヘッダファイルのみから構成されるライブラリなので、単にdtlを使用するユーザはdtl自体を特にビルドする必要はないんだけど、サンプルプログラムとテストプログラムはmakeかsconsを使ってビルドする必要がある。元々はMakefileだけ用意していたんだけ…

モダンなC, C++の開発環境の構築方法

まだC, C++がないようなので書いてみた。主にLinux(DebianとかUbuntu)での環境構築について。 コンパイラ まずはapt-getでコンパイラをインストールする。UbuntuやDebianなら以下のコマンドでgccやg++および標準ライブラリ等がインストールされる。 $ sudo a…

dtl-1.07

http://code.google.com/p/dtl-cpp/ dtl-1.07をリリースしました。今回の変更点は以下になります。 インデントサイズを2文字から4文字に変更 onlyEditDistanceフラグがONの場合にメモリリークが発生するバグの修正 特定のパターンのdiff3の際に衝突箇所の検…

Makefileを書くのに疲れた人のためのSCons

dtlのサンプルプログラムやテストプログラムのビルドをSConsでやってみた。dtlの複数あるサンプルプログラムのMakefileはこんな風になっている。 Makefile CPP = g++ CPPFLAGS = -c -O2 -Wall OBJS_FLAGS = -O2 -o STRDIFF_OBJS = strdiff.o common.o STRDIF…

dtl-1.06

http://code.google.com/p/dtl-cpp/ 昨日のことですが、dtl-1.06をリリースしました。今回は3つの要素列をマージした時に衝突が発生した場合、衝突箇所を(ある程度)明確化するための機能を追加しています。例えば、元の文字列がabcでこれをadcに変更したもの…

dtl-1.05

http://code.google.com/p/dtl-cpp/ dtl-1.05をリリースしました。主な変更ですが、ユーザさんからの指摘で Segmentation Faultになる可能性がある箇所を修正しています。

Cで動的配列

http://github.com/cubicdaiya/stk Cで簡単な動的配列を実装してみました。