タグ

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

  • 家族やプライベートを犠牲にして仕事や実績を得ていたことから目を背けられなくなった件

    新型コロナウィルスの影響によって、急激に働き方が変わってきた。コロナ禍の初期、大体1年目においては、まだタイトルのような「家族やプライベートを犠牲にして仕事や実績を得ていた」ことから目をそむけることができていたし、なんとなくモヤモヤしていたけれど、そのような考えにある種至っていないような感覚であった。 コロナ禍の初期は、働き方が一気にオフラインからオンラインになって、出張や勤務など多くの時間的な制約から解き放たれ、随分と様々なオンラインの取り組みやコミュニケーションに参加しやすくなった。また、そのタイミングで僕はInfraStudyと呼んでいる大規模オンライン勉強会を企画し、運営してきた。 そういった様々なオンライン上の取り組みの中で「オフラインだったら夜の勉強会や懇親会に参加できるけれど、オンラインだったら家族もいるし難しい」といったような話を聞くことが増えてきた。その時僕は、正直、なぜ

    家族やプライベートを犠牲にして仕事や実績を得ていたことから目を背けられなくなった件
    fumikony
    fumikony 2021/11/12
  • コロナ禍で自分の能動的行動が失われて気付いたこと - 人間とウェブの未来

    今週は夏休みなのですが、久々にコロナ禍の1年半を通して自分が色々考えたことをつらつらと書いてみようと思います。 コロナ禍になって最初の半年ぐらい、2020年の夏頃まではある程度これまで通り自分の研究を続けたり、毎日研究のコードを書いたりできていました。もちろん、自分は研究者であるので、ある程度裁量がある一方で、自ら能動的に新しい研究を続けることが仕事でもあるからです。その辺りはもう一つのブログを日誌にしているので今見てもよくわかります。 ところがその辺りから、どうもこれまで当たり前にやり続けてきたことに対して手が動かなくなってきました。これまで、研究をしたりコードを書くことは楽しくて、何のためにと考える前に、国際会議が次々ときたり、国内のアカデミアの活動が波のように押し寄せるので、それに乗り続けられるように自然と行動し続けていました。しかし、コロナ禍でその波がそもそも来なくなってしまいまし

    コロナ禍で自分の能動的行動が失われて気付いたこと - 人間とウェブの未来
  • 非厳密計算で確率的に解釈するコンピューティングへの流れ - 人間とウェブの未来

    ここ数ヶ月、沢山の国際会議や自分の専門分野外のトップカンファレンスに採録されるような多種多様な研究発表を聞いていた。そんな中、自分の中で各発表に共通するコンピューティングの流れみたいなものが少し見えてきた気がするのでメモしておく。 機械学習やコンピュータビジョン、ヒューマンインターフェース、コンピュータセキュリティ、計算機アーキテクチャ、量子コンピューティング等のトップカンファレンス発表報告を聞く中で、印象的だったのは、まさに新しい発見という研究もある中で、もはや枯れた技術で確立されたアーキテクチャにおいて、新たな貢献を示す研究があったことだ。例えばデータベースにおけるメモリ管理の話やCPUのパイプライン処理の効率化、スパコンの文脈におけるネットワーク通信の高速化の話など、いずれも登壇者が冒頭で随分と研究されてきた確立されたテーマであることを述べていた。 そういった確立された領域の中で、ど

    非厳密計算で確率的に解釈するコンピューティングへの流れ - 人間とウェブの未来
  • ハッカーの労働倫理と技術者教育 - 人間とウェブの未来

    今から6年程前に「The Hacker Ethic」というを読みました。それを今振り返って思う事を書き綴ってみようと思います。 最初にことわっておきますが、このエントリで言及する問題提起は最後まで読んでも解決しない上に、理想はこうだけど現実は?とか、あっちいったりこっちいったりの思考をそのまま書いていたりするので、問題提起のみについて言及した単なる思考実験の文章(ポエム)だと思って読んで頂けると良いのではないかと思います。その上で、自分ならこう考えるなぁなどと思考実験を楽しんで頂くのが良いと思います。 ハッカーの労働倫理 この「The Hacker Ethic」というでは、ハッカー達の労働倫理は金銭自体を価値のあるものだとせずに、自分の活動自体が社会に及ぼす影響、また、自分達が持つ情熱を共有し、共有したもの同士から認められたいと思う、そこに価値があるとする事だと述べています。今やこの考

    ハッカーの労働倫理と技術者教育 - 人間とウェブの未来
  • 現場の技術を知らずに研究するコンプレックスについて - 人間とウェブの未来

    僕は大学時代に研究を続けたかったのだけど、当時アルバイトとして働いていたレンタルサーバー会社の中の取り組みがとても高度に思えて、こういう状況を知らずに研究を続けるのは怖いと思って、大学院に行かずに就職した。そして、3年後になんとか大学院に再び入り直すことができたし、博士課程での研究では随分と会社で学んだ運用技術をネタにした研究をすることができた。 これまで、僕は運用技術をネタに研究をやってきたのだが、研究に専念すればするほど、その経過時間だけ新たな運用技術の時代背景や細部も変化していき、それを個人としてうまくキャッチアップして研究につなげていくことが非常に困難であることに数年前から気づき始めた。でも、自分自身はそれを素直に受け入れることができず、どうにか自分の現場の経験があることを武器に研究をすることにこだわっていた。しかし、それも誤魔化しきれない程に、少しずつ少しずつ限界が来ていたし、自

    現場の技術を知らずに研究するコンプレックスについて - 人間とウェブの未来
  • なぜエンジニアの僕は論文を読み論文を書くのか - 人間とウェブの未来

    という話を新卒エンジニア研修座学の最終回で発表しました。 昨日ちょうど、ペパボ研究所の2017年の実績をまとめており、まだまだ国際化は足りていないものの、だいぶ論文を書いたりしているなぁと改めて思いました。 rand.pepabo.com 実績はサマリーは以下の通りになります。博士学位論文を書きながらも、所長を含めて研究員4名でできたばかりの研究所で、雑誌や書籍やエンジニア技術カンファレンスもこなしながらよくここまで書けたなと振り返って思います。 博士学位論文 1 ジャーナル論文集招待論文 1 ジャーナル論文 1(予定) 査読付き論文 1 査読なしの研究報告 6 口頭発表 20(後2追加予定) 学会誌・商業誌解説等 4 助成金・研究費等 2 論文を読んだり書いたりするペパボ研究所において、大企業が持つ研究所とは違い、なぜWebサービスに関わる企業がなぜ研究所を持ち、論文

    なぜエンジニアの僕は論文を読み論文を書くのか - 人間とウェブの未来
    fumikony
    fumikony 2017/10/26
  • エンジニアリングや研究開発について思うこと - 人間とウェブの未来

    エンジニアリングや研究開発について思うことをこれまで色々とツイートしたりしてきたが、それを改めて短編エッセイ集のようにまとめて整理し、自分の行動原理や思考を言語化して振り返っていた。以下目次。 基礎を学び古典を知る サーベイと評価の重要性 論文という学習と貢献を両立する手法 企業でのスペシャリストに求められるさらなるスキル 技術への深入りの効能 インフラエンジニアのキャリア再び 技術という真にフェアな領域 エンジニアへの動機付けと教育 知識をコードで表現する専門職としてのエンジニア 技術に対する思考 技術力の醸成による先行報酬 エンジニアアウトプットと個人の実績 アカデミアか企業か家族か 楽しいことと貢献とその評価を重ねる 技術と自由 技術が目的 基礎を学び古典を知る 技術力を高めたい、成長したいという前提において、基礎を学ばずに発想で勝負などと、勉強もせずに過去の天才達とに渡り合うほど

    エンジニアリングや研究開発について思うこと - 人間とウェブの未来
  • Apache httpd 2.4系をバックエンドに置く場合のクライアントIPアドレスの扱いとハマりどころ - 人間とウェブの未来

    nginxやその他のリバースプロキシをフロントにおいて、バックエンドにApache httpdを置くという構成をとることがあります。 その場合に何も対処しないと、アクセスログやアプリが認識するクライアントIPアドレスがリバースプロキシのIPアドレスになってしまうので、モジュールを入れることでそれを対処していると思います。 バックエンドに置くApacheを2.4系でクライアントIPアドレスの変換を試していたのですが、どうもハマりどころが幾つかあったので、今回のエントリではそれを共有しておこうと思います。 クライアントIPアドレス変換モジュール バックエンドのApacheで受け取るクライアントIPアドレスを、リバースプロキシのIPアドレスから実際のクライアントIPアドレスへと適切に変換するモジュールで代表的なものを以下に列挙します。 モジュール名 Apache対応バージョン 特徴 mod_rp

    Apache httpd 2.4系をバックエンドに置く場合のクライアントIPアドレスの扱いとハマりどころ - 人間とウェブの未来
  • Webサーバのベンチマーク結果をレスポンスタイムの時系列データとして計測する簡単な方法 - 人間とウェブの未来

    単純に特定のURLに対してミドルウェアの性能を計測したい場合などには、今でもabやwrk、h2loadのようなシナリオベースではないシンプルなベンチマークはとても有用です。 一方で、最近ではgatlingやtsungといった、豊富な機能やリッチな計測結果を取得できるベンチマークソフトウェアも豊富になってきました。 ただ、例えば、単に「Webサーバのベンチマーク結果をレスポンスタイムの時系列データとして計測したい」時に、僕のようなめんどくさがりの人間はcliで適当にオプションを渡して1回の実行でシュシュシュっと取りたいものですが、それができるツールが見当たらず、うーむ、gatlingやtsuningでやるかなぁとおもっていたところ、なんとApache Bench(ab)で簡単にシュシュシュっとできてしまうことに気づいたのでした。 ということでその方法を紹介します。例えば以下のような要件の時に

    Webサーバのベンチマーク結果をレスポンスタイムの時系列データとして計測する簡単な方法 - 人間とウェブの未来
  • ngx_mrubyで最初のHTTPSアクセス時に自動で証明書を設定可能にするFastCertificateの提案とPoC - 人間とウェブの未来

    Let’s EncryptやACMEプロトコルによるDV証明書取得の自動化に伴い、証明書の取得と設定が簡単になってきました。 一方で、ACMEをツール化したものが増えるに従って、ACMEってそもそもどういう動きになっているのか、とか、自分たちの用途でどういう使い方がありえるのかとかが余計にわかりにくくなってきており、どこまで自動化できるかもよくわからない場合が多いのではないでしょうか。 そこで、 ドメインとAレコードの紐付けさえしていれば、最初のアクセス時に自動で証明書をとってきて、HTTPS通信にできないか というような、いわゆる FastCertificate 的な動きを実現したいと考え、ACMEの通信の中で各種処理を別のスクリプトでhookできるdehydratedとngx_mrubyを応用して実現可否も含めてPoCを実装してみました。 ※ FastContainerという考え方につ

    ngx_mrubyで最初のHTTPSアクセス時に自動で証明書を設定可能にするFastCertificateの提案とPoC - 人間とウェブの未来
  • エンジニア個人が自主的に成長するように促す - エンジニア組織の自律的成長 - 人間とウェブの未来

    この記事は、Pepabo Managers Advent Calendar 2016の3日目の記事です。2日目は、弊社チーフエンジニアhsbtさんの「マネージャが仕事の仕組みを作る」でした。 僕自身は、エンジニア専門職の主席研究員兼シニア・プリンシパルエンジニアではありますが、特にペパボ福岡のエンジニア組織を現場でまとめる人間として、エンジニア組織を成長させる中で個々のエンジニアの成長をサポートしているという意味では、マネージメントに関する活動も兼ねております。 しばしば、インターネットサービスの高度化と複雑化の速度が早過ぎるため、グランドデザインができない、人が多過ぎても成立しない、少な過ぎても難しい、とういうような類のサービスを作り上げないといけない状況があります。その際に、厳密過ぎない役割を持たせ、それぞれが横断的にそれぞれのスタイルで、まるで、攻殻機動隊の世界におけるスタンドプレー

    エンジニア個人が自主的に成長するように促す - エンジニア組織の自律的成長 - 人間とウェブの未来
  • FastContainerアーキテクチャ構想 - 人間とウェブの未来

    追記:この記事へのコメントとして、この記事以上に内容の趣旨を端的かつ完璧に表しているコメントがありましたので、まずはそれを紹介しつつ、引き続き呼んで頂けると幸いです。 FaaS的だけど「アプリ側の構成も基盤側に合わせて変えるべき」路線なFaaSに対し「アプリは従来のままでもちゃんと動くよう基盤側が頑張るべき」という基盤側の矜持を感じる by takahashim FastContainerアーキテクチャ構想 - 人間とウェブの未来 FaaS的だけど「アプリ側の構成も基盤側に合わせて変えるべき」路線なFaaSに対し「アプリは従来のままでもちゃんと動くよう基盤側が頑張るべき」という基盤側の矜持を感じる2016/11/13 18:25 b.hatena.ne.jp 素晴らしいまとめの一言です。それがまさに構想に至った意図でございます。僕もこんな趣旨をかけるようになりたいです。上記の的確なコメン

    FastContainerアーキテクチャ構想 - 人間とウェブの未来
  • PHPが動くApacheのコンテナ環境をhaconiwaで1万個動かそうとしてみた - 人間とウェブの未来

    RubyKaigiに行くとにサインを求められるすごいエンジニアが書いたhaconiwaというmruby製のコンテナエンジン(コンテナ環境構築の基盤ツール)があるのですが、少し試してみようと思って、とりあえず1サーバ上に1万コンテナぐらい動かそうとしてみました。久々に今回は自分の作ったOSSではなく、OSSの検証レポート的な記事になります。 haconiwaは僕の好きなOSSの一つで、それはなぜかと言うと、 haconiwaでコンテナを作る際に、haconiwa実行環境にはコンテナの要素機能が全て入っている必要はない 必要なコンテナの要素機能を簡単に組み合わせて、自分が実現したいコンテナ、あるいは、それに準ずる環境を作れる haconiwaによるコンテナ定義をRubyのDSLで表現でき、動的な設定や組み合わせの設定を簡単にかける ということができるからです。その特性から、CentOS6のよ

    PHPが動くApacheのコンテナ環境をhaconiwaで1万個動かそうとしてみた - 人間とウェブの未来
  • Pmilter: Programmable Mail Filter Serverを作った - 人間とウェブの未来

    Pmilterというサーバソフトウェアを作りました。 github.com PmilterはProgrammable Mail Filterの略で、SMTPサーバ(送信や受信)とmilterプロトコルで通信し、SMTPサーバの送受信の振る舞いをRubyでコントロールできるサーバソフトウェアです。 これまでにも、milter managerやRubyのgemを使ってmilterサーバを作るといった素晴らしいソフトウェアがありました。ですが、今回僕がフルスクラッチで作りたかった理由としては、 とにかくインストールや設定がシンプルで運用しやすいサーバソフトウェアにしたい ミドルウェアとして振る舞いを設定する感覚でRubyで制御する事に専念したい 依存ライブラリを減らしワンバイナリでサーバに配置できるようにしたい 設定変更に再起動することなくRubyを変更するだけで振る舞いを変えられるようにしたい

    Pmilter: Programmable Mail Filter Serverを作った - 人間とウェブの未来
  • インターネットを作りたい - 人間とウェブの未来

    インターネットを作り上げることができる、そんなコミュニティを作りたいとずっと思っている。 インターネットの創成期において、産学両方向の技術と知見を同時に兼ね備え、両方向からのアプローチができるとにかくすごい人達によってインターネットは作り上げられ整備されてきた。それらを新しい世代で引き継ぎ、あの時のように、インターネットの未来に必要な価値を圧倒的速度で作り上げていく若い世代に僕はなりたいと思っているし、そういうコミュニティを作りたいと思っている。 社会活動的観点では、僕が企業だけでなくアカデミアにおいても活動を行い、産学両方向から得られる知識や考え方を学んでいるのはそのためであるし、新規性が重要視される世界での研究開発のアプローチ、実効性が重要視され自らが提供する価値を最大化するためのアプローチ、などなど、各領域における考え方や取り組み方はとても勉強になる。また、昨今では、企業はアカデミア

    インターネットを作りたい - 人間とウェブの未来
  • 特定条件下のclone(2)を4倍速くする - 人間とウェブの未来

    とあるサーバで妙にシステムCPUの使用率が高い現象が置きておりました。 そこで、まずはざっくりとperf topでプロファイルをとってみると、以下のようになっていました。 22.38% [kernel] [k] copy_pte_range 18.44% [kernel] [k] zap_pte_range 11.13% [kernel] [k] change_pte_range 3.58% [kernel] [k] page_fault 3.32% [kernel] [k] page_remove_rmap また、各プロセスのstraceを眺めていると、cloneで0.05秒とかなり時間がかかっているようです。これだと単純計算で1コアで秒間20回のcloneでコア100%占有してしまう程度の非常に低速な処理しかできないことになります。 sudo strace -T -o/dev/stdo

    特定条件下のclone(2)を4倍速くする - 人間とウェブの未来
  • エンジニアが技術力を高めるもう一つの理由 - はてな・ペパボ技術大会を経て - 人間とウェブの未来

    はてなさんと共催で行った「はてな・ペパボ技術大会@京都」と「ペパボ・はてな技術大会@福岡」が無事終わりました。 http://developer.hatenastaff.com/entry/2016/06/21/131302 ペパボ社内では、はてなサービスとその技術力の高さのファンが多く、はてなさんと一緒にこんな技術イベントできるなんて!!と喜んでいる人たちも沢山いましたし、僕自身もご一緒できてとても嬉しかったです。技術大会後の打ち上げも含めて、すごく盛り上がったしとにかく最高でめちゃくちゃ楽しかったです。 id:y_uukiさんをはじめ、はてなさんの若手エンジニアのスキルは圧倒的に高く、id:ichirin2501さん、id:masayoshiさん、id:taketo957さん、そして、技術大会で諸々沢山調整してくださった、id:wtatsuruさんとid:tomomiiさん、座談会をモ

    エンジニアが技術力を高めるもう一つの理由 - はてな・ペパボ技術大会を経て - 人間とウェブの未来
  • PHPカンファレンス福岡2016に初参加しひとつの確信を得た #phpconfuk - 人間とウェブの未来

    先日PHPカンファレンス福岡2016に参加してきました。 一つ前の記事でここ半年の登壇についてまとめており、その中でPHPカンファレンスにも触れる程度にとどめていたのですが、PHPカンファレンス福岡の振り返り記事やツイートまとめの中で多くの方に僕の発表について言及して頂けており、僕も初参加なのでちゃんと書こうと思って、今出張先のホテルで書いております。 カンファレンスとしてのレベルの高さがすごい 僕はそれなりに登壇もしていますし、技術カンファレンスにも沢山参加しておりますが、今回初参加したPHPカンファレンス福岡はその中でもトップクラスにレベルが高かったように思います。 ここで言うカンファレンスのレベルの高さとは、 登壇者の発表内容の充実度 聴衆としての姿勢の良さ 懇親会などでのコミュニケーションのとりやすさ が挙げられます。では、上記について1つずつ思ったことを書いていきます。 登壇者の

    PHPカンファレンス福岡2016に初参加しひとつの確信を得た #phpconfuk - 人間とウェブの未来
  • 1月から5月の技術関連の登壇資料まとめと振り返り - 人間とウェブの未来

    1月から上期がはじまり、昨年は出産関連などで9月を最後にあまり登壇できていなかったので、今年は頑張るぞ〜と意気込んでいたわけですが、怒涛のように登壇依頼がやってきて、やばいこれはきついぞ!と思いながらもなんとか一段落するところまでやり切れたのでちょっとどこかに旅にでたいです。 その前に、結構登壇して色々喋ったり資料作ったりしたので、時系列でまとめておきます。 今期は技術カンファレンスだけでなく、学術研究方面でも発表できたので、自分の立ち位置としてはわりと網羅的に発表できたかなと思います。 全体 まずは以下に1月から5月までの全体の発表実績をリスト化しました。 松亮介, ロリポップ!で目指すPHPのためのセキュリティと性能要件を同時に満たすサーバホスティング技術, PHPカンファレンス福岡2016, 2016年5月. 松亮介, なめらかなシステムのアイデアと概要設計: 生命の観点からWe

    1月から5月の技術関連の登壇資料まとめと振り返り - 人間とウェブの未来
  • カーネルスレッドのループと停止をカーネルモジュールで実装 - 人間とウェブの未来

    以前Linuxのカーネルスレッドがループして暴走したときに、カーネルスレッドの扱いを調べていた時期があって、それの簡単な動きを再現するべくカーネルモジュールを作りました。まずは、自力で試したい人は以下を見ずに試すと良いでしょう。 まずはカーネルスレッドをループさせる カーネルスレッドは、所謂ps上で[kthread_dayo]みたいな感じで見えるプロセスの事です。厳密にはユーザランドのプロセスも定期的にカーネル側の処理が走るときは[]付けになったりするのですが、簡単には上記のような状態とします。これをユーザランドのプログラミングで作ることは難しいのですが、カーネルモジュールを使えばすごく簡単につくれます。 まずは以下のようにカーネルスレッドをループさせるコードを書きます。 #include <linux/module.h> #include <linux/sched.h> #include

    カーネルスレッドのループと停止をカーネルモジュールで実装 - 人間とウェブの未来