タグ

ブックマーク / hb.matsumoto-r.jp (16)

  • GMOペパボ株式会社を退職しました - 人間とウェブの未来

    日、2018年9月28日が最終出社日でした。正式には10月末をもって、チーフエンジニアとして務めたGMOペパボ株式会社、また、主席研究員として務めたペパボ研究所を退職します。 現職には2015年4月に入社後、実際には入社前から関わりがあったため、それも含めると約4年間、当に様々な取り組みを行ってきました。チーフエンジニア兼主席研究員として取り組んできた仕事の中で、社外にアウトプットして伝えてきたこと以外の、より社内業務的な内容はなかなか言語化する機会がなかったので、それらを振り返りつつ、転職に至った経緯をお話ししてみます。 2015年入社当時のペパボ福岡の雰囲気は今でもよく覚えており、良くも悪くも様々なところで血気盛んなメンバーによる争いの絶えない雰囲気がありました。 レンタルサーバ、所謂ホスティングサービスという歴史あるサービスを運営していることもあり「Webサービスに関する知見やア

    GMOペパボ株式会社を退職しました - 人間とウェブの未来
    tuto0621
    tuto0621 2018/09/29
  • GMOペパボ株式会社のチーフエンジニアに就任いたしました - 人間とウェブの未来

    2018年3月18日付でペパボのチーフエンジニアに就任しました。 ペパボのエンジニア職位制度におけるNo.1エンジニアとして、引き続きテクノロジーによってペパボのプロダクトを成長させていきます。 私はペパボ研究所の主席研究員でもありますので、基的には研究開発を通じて事業を差別化する技術を作り上げ、研究開発によって産学に影響を与えながらプロダクトを作り上げていくことになります。 インターネット技術の変化というものは、これまでの常識を簡単に塗り替えていきます。その為、エンジニアの道を選んだ我々は、常にその変化を追い続け、学び続けなくてはなりません。ペパボのエンジニア組織は、mizzyさんをはじめ、あんちぽさんや柴田さんを中心に、多くの方々のご尽力により、インターネット技術の変化・高度化に強い、小回りのきく組織として成長してきました。それに伴い、組織の規模が拡大しようとも、効率的にプロダクトを

    GMOペパボ株式会社のチーフエンジニアに就任いたしました - 人間とウェブの未来
    tuto0621
    tuto0621 2018/03/20
  • 好きなことをして生きていくこと - 人間とウェブの未来

    実はとても難しいことなのである。 hb.matsumoto-r.jp 上記エントリで述べた通り、僕は結局コードを書き、コンピュータサイエンスを学び、フィードバックを頂きながら試行錯誤してOSSを作り続けることが好きで楽しいからずっと続けられているといった。でもそれは決して、好きなことだから楽に人生を過ごしてこれたというわけではない。好きなことだから仕事が楽であるわけでもない。 好きなことをして生きていくために、僕は大学の時から自分のキャリアを明確に定め、企業に就職した後に、そこで得た社内の評価、そして、毎月の給料を全て捨て、大学院の博士課程に飛び込んだ。その上、最初は審査で不合格になっている。なぜそれができたのか。それは、好きなことをして生きていきたいからだ。以前、その人生をキャリア・キーノートとしてまとめた。 技術者と研究者の狭間で得たたったひとつの教訓 2016 / career-ke

    好きなことをして生きていくこと - 人間とウェブの未来
    tuto0621
    tuto0621 2017/01/15
    それは言いかえれば、自分の好きなことによって与える自分以外への影響とその価値を最大化することである
  • 2016年の抱負 - 悔しさの回収 - 人間とウェブの未来

    あけましておめでとうございます。 2016年になり、早速今日から仕事はじめのところも多いと思います。ということで、今年の抱負でも簡単に書きます。 2016年1月付でシニア・プリンシパルエンジニアになった 参照: エンジニアの働き方 | キャリア採用 | 採用情報 | GMOペパボ株式会社 前回の2015年の記事でも簡単にふれたように、ペパボではエンジニア職位制度が刷新され役職名の変更と、新たな上位の役職が追加されました。 hb.matsumoto-r.jp その新たな上位の役職がシニア・プリンシパルエンジニアと呼ばれており、1月付で僕が初めて就任することになりました。ということで現在はシニア・プリンシパルは僕だけとなります。 外での活動は目立っているが、一緒に会社に入ってエンジニアとして仕事をしてみると意外と思ってたより普通…というような印象を与えてしまうのは避けたいという思いがありました

    2016年の抱負 - 悔しさの回収 - 人間とウェブの未来
    tuto0621
    tuto0621 2016/01/05
  • mrubyでHTTP/2の画像変換サーバを作った - 人間とウェブの未来

    この記事は、mruby advent calendar 2015の16日目の記事です。 画像やstaticコンテンツ配信系はHTTP/2が有利な状況が幾つかあるので、ついでにHTTP/2を喋る画像変換サーバのプロトタイプをmrubyで作ってみました。ベースはもちろんtrusterdです。なんていったってmrubyのHTTP/2サーバですからね!! 最近また開発を再開しておりまして、昔はh2oやnghttp2のベンチマークに一緒に比較対象として入れてもらったりしていたのですが、しばらく離れているうちに皆さん先へ先へと行ってしまわれたので、また追いつけるようにセッセと勉強しながら実装しだしております。 github.com その他、trusterdについてはこの辺とか、 qiita.com この辺を見ていただくと良いかと思います。 hb.matsumoto-r.jp trusterdのビルド

    mrubyでHTTP/2の画像変換サーバを作った - 人間とウェブの未来
    tuto0621
    tuto0621 2015/12/16
  • 技術者が研究者のように論文を書くメリットはあるか - 人間とウェブの未来

    一度大学・大学院を修了した後に、研究職以外に就職した技術者は論文を書かなくなる事がほとんどだと思います。 僕は、一度インターネットのウェブサービスに関する企業で技術者をした後に、大学院に入りなおして同様の分野で論文を書き、現在再度技術者をやっているわけですが、技術者でも論文を書くメリットが ある と思っています。 以降でメリットについて述べますが、これらのメリットをまとめて手軽に享受できるツールって他にあんまりないんじゃないか(僕が思いつかないだけかも)と思ったので、この記事を書くに至りました。 というわけで、それを簡単にまとめます。 技術者が論文を書くメリット まずはざっと箇条書きします。 自分の考えた技術や既存の技術の調査、比較の試行錯誤を丁度良い分量でまとめられる 良い文章構成になるような書き方の知見が溜まってるので書きやすい 書き方の知見にのっとって文章にまとめることで、頭の中や提

    技術者が研究者のように論文を書くメリットはあるか - 人間とウェブの未来
    tuto0621
    tuto0621 2015/08/28
    素晴らしいリンク集だ
  • Webオペレーションエンジニアのアウトプットと開発力 - 人間とウェブの未来

    という話を、社内のインフラチーム向けにしました。 Webオペレーションエンジニアの大体のイメージについてはこちらを御覧ください。書評なのですが、とてもイメージしやすいエントリになっていると思います。 blog.riywo.com スライドの中でも一応定義していて、3行にまとめると Webサービスの運用 OS・ミドルウェアの運用 運用技術の調査・開発 を主な業務として行っているエンジニアを指すことにします。 入社して間もないので、僕の人格の好き嫌いや人間関係みたいなものがまだできていない頃の発表ということで、素直に内容を聞くことができる、という意味でいい機会だったと思います。 この内容は、社内だけでなく社外のWebオペレーションエンジニアや、所謂、インフラエンジニアと呼ばれている人でも同じような悩みを抱えている人がいるかもしれないと思っていて、内容的にも公開しても良い話なので公開しようと思い

    Webオペレーションエンジニアのアウトプットと開発力 - 人間とウェブの未来
    tuto0621
    tuto0621 2015/06/27
  • nginxでもapacheでも使えるDoS的アクセスを検知して任意の制御をするWebサーバ拡張をmrubyで作った - 人間とウェブの未来

    github.com 会社の運用メンバーと色々議論していた中で、「カジュアルにWebサーバへのDoSみたいなアクセスが来た時に検知して制御したいよねー」という話が上がったので、http-dos-detectorというnginxでもapacheでも使えるWebサーバ拡張をmrubyで書きました。 もちろんmrubyなので、mod_mrubyとngx_mrubyを使っています。ので、Rubyコードはそのまま同じコードをどちらのミドルウェアでも使えます。mod_mrubyとngx_mrubyを使えば、ちょっとしたWebサーバの拡張は両方で同じ実装に落とし込めるので便利ですね。 使い方 例の如く、GitHubのREADME通りにインストールして下さい。Rubyのコードはmod_mrubyでもngx_mrubyでも有効なので、そのコードを読み込む設定をそれぞれ以下のように記述するだけでよいです。 a

    nginxでもapacheでも使えるDoS的アクセスを検知して任意の制御をするWebサーバ拡張をmrubyで作った - 人間とウェブの未来
    tuto0621
    tuto0621 2015/06/12
  • ngx_mrubyを使った簡単な画像変換サーバを数分で実装してみた - 人間とウェブの未来

    2日前にmrubyの画像変換mrbgem下さいとつぶやいて、その後2日以内にgdとMagick++のmrbgemが開発されるこのスピード感がmruby。 https://t.co/RzTZJsX9vP https://t.co/4YkJ2PwISQ— MATSUMOTO, Ryosuke (@matsumotory) 2015, 4月 25 というように、mrubyで画像変換してみたいなーと呟くとあっというまに画像変換mrbgemが開発されてしまうmrubyですが、そのままでは呟いた当事者としてなんだか申し訳ないので、ngx_mrubyを使ってサクっと画像変換サーバができないか試してみました。 結論としては、簡単なものはサクっとできてしましました。以降では作り方を簡単に紹介します。 こういうのが数分でできてしまうのがmod_mrubyやngx_mruby、さらにはtrusterdの良さです

    ngx_mrubyを使った簡単な画像変換サーバを数分で実装してみた - 人間とウェブの未来
  • MacOSX上でLinuxとWindowsとOSXで動くmrubyバイナリを簡単にクロスコンパイルできるmrbgem作った - 人間とウェブの未来

    ペパボ社内では、mrubyを使う機運が高まってきています。 誰よりも早い学習速度であっというまにmrubyを理解してしまったあんちぽさんや、CRubyだけでなくmrubyもマスターしてまさに真のRubyistになられたしばたさんと共に色々とmrubyの今後について議論しており、その中でこのタイトルのような事が簡単にできるとよいなーという話になったので作ってみました。 ペパボではクライアントマシンとしてMacを使っている事が多いので、Mac上でRubyのコード(あるいはCのコードと組み合わせて)をmrubyを介して簡単にLinuxWindows上で動くバイナリとしてクロスコンパイルできるといいよね~cliやtestにもいいよね~となりました。 github.com 使い方はGitHubのREADMEの通りで、以下のサイトから事前にlinuxやwin32のクロスコンパイラをMacにインストー

    MacOSX上でLinuxとWindowsとOSXで動くmrubyバイナリを簡単にクロスコンパイルできるmrbgem作った - 人間とウェブの未来
    tuto0621
    tuto0621 2015/05/03
  • 特定条件下におけるngx_mrubyのメモリリークを改善してメモリ増加量を半分にした - 人間とウェブの未来

    4月からペパボで働いているわけですが、前々から噂できいていたメモリリークの問題について、ペパボではわりと大規模かつ高負荷な環境でngx_mrubyを使ってくれているのでその環境を見ながらメモリリークを改善してみました。 状況的には、16時間動かしていると導入している環境のngx_mrubyを組み込んだnginxが1GBぐらいメタボっていました。 実装や幾つかの調査情報をみつつ、以下の2点においてメモリリークが発生していました。 mrubyが例外をあげて5xx系のエラーコードを返す時 mruby_set系のディレクティブを使っている時 上記のそれぞれにおいて、C側で生成したオブジェクトをarenaに登録したまま、不要になったにも関わらずarenaからオブジェクトを除外してGCさせるように処理できていなかった事が問題でした。 これらを、ほぼ同等の改修によってmrb_gc_arena_save(

    特定条件下におけるngx_mrubyのメモリリークを改善してメモリ増加量を半分にした - 人間とウェブの未来
    tuto0621
    tuto0621 2015/04/09
  • C言語のアプリにmruby経由でtrusterdのHTTP/2サーバ機能を5分で組み込む方法 - 人間とウェブの未来

    今日は僕が開発しているTrusterd HTTP/2 Webサーバの一つの特徴である、「HTTP/2機能のアプリ組込み」の方法を紹介したいと思います。 Cをちょっと書けるレベルの人でも5分でCアプリにHTTP/2機能を組み込んで、自分のHTTP/2サーバを実装できます。 mrubyGitHubからcloneしてビルド まずはmrubyGitHubからダウンロードしましょう。 git clone https://github.com/mruby/mruby.git cd mruby そして、build_config.rbに必要なmrbgemを書きます。 ・ ・ # include the default GEMs conf.gembox 'full-core' conf.gem :github => 'iij/mruby-socket' conf.gem :github => 'iij/

    C言語のアプリにmruby経由でtrusterdのHTTP/2サーバ機能を5分で組み込む方法 - 人間とウェブの未来
  • Trusterd HTTP/2 WebサーバのTLS接続時の性能を改善 - 人間とウェブの未来

    もはやHTTP/2リファレンス実装であるHTTP/2のCライブラリnghttp2の作者であるtatsuhiro_tさんが素晴らしいベンチマーク結果を公開されました。 その中で以下のように、あまりにもH2Oやnghttpdと比べてtrusterdのTLS利用時の性能が遅かったため改善しました。 server 6 bytes 4K bytes h2o 227865 78333 nghttpd 226716 80673 trusterd 62362 44020 ref: https://gist.github.com/tatsuhiro-t/5f3b170414582ac58091#tls-with-flow-control 主に原因としては以下が考えられます。 TLS record sizeが小さすぎる それに伴いTCP_NODELAYオプションとも相まってパケットサイズも小さすぎる パケット

    Trusterd HTTP/2 WebサーバのTLS接続時の性能を改善 - 人間とウェブの未来
    tuto0621
    tuto0621 2015/02/06
  • 研究者と技術者の狭間で感じた事 - 情熱が自分を変える - 人間とウェブの未来

    吉報は突然届くもので、日、情報処理学会の山下記念研究賞の受賞が決定しました。 まず、情報処理学会の山下記念研究賞(旧研究賞)とは以下のような賞になります。3年前に会社を辞めてまで学術研究に飛び込んだ自分としては、非常に光栄ですし何よりうれしいです。 2014年度詳細-情報処理学会 山下記念研究賞の推薦理由は、 [推薦理由] Webサービスを安定して提供するために,Webサーバソフトウェアの内部機能の拡張が必要となる場合がある.この機能拡張を,生産性や保守性を考慮してスクリプト言語で行う手法の提案がいくつかなされているが,高速性・省メモリ・安全性の面でいくつかの課題があった.著者は,Apache HTTP Serverに組み込みスクリプ卜言語であるmrubyを組み込むことで,Rubyスクリプトにより容易に機能拡張でき,高速・省メモリで動作する機能拡張支援機構を提案している.また,機構の有

    研究者と技術者の狭間で感じた事 - 情熱が自分を変える - 人間とウェブの未来
    tuto0621
    tuto0621 2014/10/07
    昔のやり方に囚われなくて良いです。松本さんが良いと思うやり方で好きなようにやって下さい。今のやり方、良いと思いますよ。
  • ApacheやnginxのMarkdownファイル変換モジュールをmrubyで簡単に書いてみよう - 人間とウェブの未来

    今回は、.mdファイルにMarkdown形式で文章を書いておき、それをApache httpdやnginxホストし、ブラウザからアクセスするとHTMLに変換されて表示されるMarkdownコンバータモジュールをmrubyで書く方法を紹介したいと思います。 Markdownのテキスト形式で保存しているファイルを適当にApache上で配信すれば、ブラウザ上でHTMLで綺麗に閲覧できるといったよくあるアレをWebサーバを拡張して実装してみようという話です。自分の開発環境やローカル環境のメモ置き場にも良いかもしれません。 Apacheモジュールやnginxモジュールで幾つかそういった機能を提供するモジュールはあると思うのですが、もう少し独自で改良したかったり、C言語で実装せずにもっと簡単に自分で書いてみたい、といった要求にエントリを読むと答えられると思います。 もちろんそれらの機能の実装は、僕

    ApacheやnginxのMarkdownファイル変換モジュールをmrubyで簡単に書いてみよう - 人間とウェブの未来
    tuto0621
    tuto0621 2014/08/26
    mruby-discountと組み合わせる
  • RubyKaigi 2014でmod_mrubyを作った経緯やその後の応用について発表します #rubykaigi - 人間とウェブの未来

    RubyKaigi2014に出してみたCFPが無事採択されたので、スピーカーとして30分程喋る予定です。是非聞いて頂けるとうれしいです。RubyKaigi2014のスケジュールも既に公開されており、僕は9月19日のCoffee Break後の15:30からホールAで発表します。 今回話す内容としては、 なぜmod_mrubyを作ろうと思ったか mod_mrubyのアーキテクチャ詳細 mod_mrubyを使ったWebサーバのリソース制御とそのアーキテクチャ mod_mrubyやリソース制御の利用事例 今後の予定 をお話しようかと思います。 mod_mrubyの実装やアーキテクチャは散々ブログやその他の発表機会でお話してきたので、配分的にはmrubyでリソースをコントロールするための仕組みや方法、その利用事例等、mod_mrubyの次のステップについてお話したいと思います。 また、このような技

    RubyKaigi 2014でmod_mrubyを作った経緯やその後の応用について発表します #rubykaigi - 人間とウェブの未来
    tuto0621
    tuto0621 2014/08/25
    9月19日のCoffee Break後の15:30からホールA
  • 1