タグ

ブックマーク / blog.8-p.info (12)

  • モックは必要悪で、しないにこしたことはない - blog.8-p.info

    Mockitogomock が使いやすいせいか、単体テストというのはモックするものである、という思い込みがあるのか、人々がモックしすぎているのを時折みかける。 モックは必要悪で、しないにこしたことはない。外部の API サーバーとかはガンガン叩くわけにもいかないけれど、ファイル読み書きくらいは、実際にファイルを作ったり消したりしてしまっていい。/etc/passwd を消すとか、1GB のファイルを作るとかだと難しいかもしれないけれど、その場合でも、パスのプレフィックスを指定できるようにして、一時ディレクトリの中の etc/passwd を使うとか、ファイルサイズを指定できるようにするとか、逃げ道はいくつもある。そこを飛ばして「ファイル操作は一律モックしましょう」とか頑張りだすと辛いことになりがちだ。 モックの一番の問題は、番とテストで違うコードが走ることで、これは自動テストの価値

  • プログラミングが楽しいとき - blog.8-p.info

    たまに Rust の勉強もかねて何かを再実装しようと思うんだけど、大抵は途中で飽きてしまう。一方で、最近に仕事で使っている雑なスクリプトをきれいに書き直して、これはなかなか楽しかった。というわけで、自分の中での楽しさを書き出してみようという試みです。 自分の生活が便利になった 仕事で書くスクリプトとか、個人的な便利コマンドとかはここの楽しさが大きい。 仕事で関わって製品としてリリースされるものが、自分の生活を便利にするかは、まあ半々くらい。「確かにこれあるといいですね。自分でも使います。」というものもあるし、正直いって自分は使わなそうなものもある。 コンシューマ向け製品だと、自分の好みはだんだんメインストリームとずれてきていて、それは将来に不安を感じる。携帯電話のプッシュ通知とか、なるべく来ないで欲しい。 無理そうなことが出来てかっこいい 昔に作っていた、SIMBLMac のアプリを

  • "Keeping Master Green at Scale" を読んだ - blog.8-p.info

    Keeping Master Green at Scale (2019) Cindy Sridharan さんが Twitter で紹介していた、Uber の分散ビルドシステムに関する論文を読んだ。 Giant monolithic source-code repositories are one of the fundamental pillars of the back end infrastructure in large and fast-paced software companies. という力強い宣言からはじまっていて身構えるけど、ほとんどは iOS と Android むけのビルドの話です。 コミットされてからテストを走らせるんじゃなくて、テストが通ったものだけコミットする、というのはそこまで新規性のある話ではないけれど、Uber のシステム — SubmitQueue の

    kyo_ago
    kyo_ago 2019/03/26
  • 「アメリカの働き方は最高!」本当かどうか書いてみた - blog.8-p.info

    アメリカの働き方は最高! それに比べて日は……」当かどうか聞いてみた というのが面白かった一方、自分の実感とは違う部分もあったので書いてみる。 国単位で働き方を語る難しさについて 国、という大きな単位で働き方を語るのは難しい。会社の規模や業種によっても違いがあるし、その当時の景気や、その人の立場、住んでいる場所によっても見てきた景色は違うだろうと思う。 元の記事の最後に ※今回の記事はあくまでお二人が経験した範囲内のお話です とあるのと同様に、これも自分が経験・見聞きした範囲の話です。 解雇 いまのところ、同僚が突然消えたりといった憂き目にあっているのをみたことはない。一方で、これは会社の景気の良い時期を体験しているだけ、という自覚はある。テック業界だと、例えば Twitter の2015年のレイオフはよく知られている。 Twitterでレイオフも体験したNY在住エンジニアが語る「波

  • "Machine Learning at Facebook: Understanding Inference at the Edge" を読んだ - blog.8-p.info

    Machine Learning at Facebook: Understanding Inference at the Edge (2019) 機械学習というとサーバー側でやるイメージが (少なくとも私には) あったけれど、Facebook は推論なら端末側でもやるんですよ、という話。分量としては Android が辛い話が7割、Oculus のような自分たちで制御できる環境が2割、iOS が1割くらいの感じです。 However while most Android devices ship with OpenCL drivers, OpenCL is not officially a part of the Android system, and they do not go through the same conformance tests as OpenGL ES and Vu

    kyo_ago
    kyo_ago 2019/03/22
  • エンジニアを育てる環境と、コミュニティのありかたについて - blog.8-p.info

    エンジニアを育てるはなしが、たぶん以下の Takuto Kihira さんの tweet をきっかけに盛り上がっていた。 昨日の飲みで、某CTOが「エンジニアを育てるって言うけど、紀平さん誰かに育てられました?自分で育ったでしょ?だからエンジニアに対しては、頑張れ、としか言いようがないと思うんですよね」って話をしていて、まあ確かにそうだと思った。自分はしかし親に環境を用意してもらったな。とかPCとか。 私の立場は、Dai MIKURUBE さんの tweet に近い。 エンジニアの成長について「自分は自力で育った」「今まで見てきた人は誰かに育てられたというより自力で育ってきてた」は観察としてたぶん真なんだけど、「だからこれからもそれでいい」は明確に偽だと思うんだよなー。それって各種の職人業が次々廃れてるのと同じことを再現するだけのような気がする 私自身も大学で情報工学を学ぶまえに多少はプ

  • アメリカの技術系出版社 Manning の企画提案書が面白い - blog.8-p.info

    すこし前に、Manning Publications から「こういう企画の持ち込みがあったんだけど、どう思う?」というメールをもらって、アンケートに答えるという機会があった。 Manning はアメリカ技術系出版社で、日で翻訳書が出るときには、オライリージャパンをはじめ色々な出版社からでること、その際に表紙も変えられてしまうことも相まっていまひとつ存在感がないかもしれないけれど、jQuery の John Resig 自らが著者に名を連ねる Secrets of the JavaScript Ninja や、Keras の François Chollet が書いた Deep Learning with Python、ちょっと毛色が変わったところでは、higepon さんオススメの Soft Skills まで、手広くやっている。 技術系書籍の編集者の k16 さんは、英語圏のIT系技

    kyo_ago
    kyo_ago 2018/08/10
  • ディープワークの源流を探る『今いる場所で突き抜けろ!』を読んだ - 滞舎路日記

    『大事なことに集中する』(原題 “Deek Work”) の著者である Cal Newport は、いままでに何作か自己啓発を書いている。 “How to Win at College” “How to Become a Straight-A Student” “How to Be a High-School Suparstar” “So Good They Can’t Ignore You” “Deep Work: Rules for Focused Success in a Distracted World” このうちで、4作めにあたる “So Good They Can’t Ignore You” だけは『今いる場所で突き抜けろ!』として邦訳が出ていたので、読んでみた。 『好きなことを仕事にしよう』は間違ったアドバイスである 書では「『好きなことを仕事にしよう』は間違ったアドバイ

  • 集中とオフラインのすすめ『大事なことに集中する』を読んだ - blog.8-p.info

    Cal Newport “Deek Work” の邦訳である『大事なことに集中する』を読んだ。ソーシャルメディアとかやっていないで、ちゃんと集中して「深い」仕事をしないといけませんよ、というだというのは、まわりの人々の感想から知っていたけれど 1、読んでみたら想像以上にオフラインになることを推奨していいてびっくりした。 たとえば、5章で著者はこんな提案をする。 ネットを使うときを前もって予定に入れ、それ以外では使わない。コンピュータのそばにメモ用紙を置いておくといい。それに “次に” ネットを使う時間を書いておき、それまでには絶対に使わない。 こういったオフライン生活には、自分もちょっと馴染みがあって、2009年ごろにちょっと試したり、2010年には自宅のインターネットを解約したりしていた。こういった行動は、友達のプチ断線 (2008) に影響されていて、そこで紹介されている「遅延 HT

    kyo_ago
    kyo_ago 2018/06/04
  • 定期的なブログ更新の良さについて - blog.8-p.info

    ながらく「ブログなんて、書きたいときに好きなだけ書けばいい」と思っていたんだけど、去年の12月に「週に3回、月曜日と水曜日と金曜日に書く」というのを決めたら結構よかったので、今年もしばらくは「英語のブログは、毎週の月曜日に更新する」というスケジュールで書こうと思っている。日語は隔週にしようと思っていたけど、先週に忘れてしまったので、3週間ごとになりそう。 定期的ブログ更新の良さの、半分は時間割を決めることの良さだと思う。higepon さんの 勉強方法を勉強して分かった僕に足りなかった3つのこと (2008) にある通り、 勉強をコンスタントに長期的に続けるならば時間割は大変有用。 時間割を作り実践してみて分かったが「次に何をやるべきか」に迷う時間は振り返ればとてももったいなかった。 私はまだ道半ばで徹底できてはいないけれど「次に何をやるべきか」は事前に決めてしまったほうがいい。 ふと時

  • TOEIC 605点のエンジニアがアメリカで働くようになるまでには10年かからない - blog.8-p.info

    まわりの、ひらたくいうと元同僚の人々が英語の話を書いていて、 エンジニア英語力 週一回の英会話レッスンで学んだこと 触発されたのと、自分の TOEIC スコアをすぐには探し出せなかったので、ここ10年くらいのまとめを書いてみた。振り返ってみると色々やっている。 書いてみて改めて思ったけれど、アメリカ引越してからの勉強はちょっと停滞している。TOEIC のように、英語能力を数値で測るのをやめてしまったのも良くない。来年は iKnow, Duolingo 以外のなにかを見つけたい。 2007 プログラミングが好きな大学生でした。当時に書いていたブログを読みかえすと、日語でブログを書きつつも、タイトルだけは英語でつけるというこだわりがあったみたいだけど、全く理由が思い出せない。 この時点でも、公式のリファレンスは英語、エラーメッセージは英語、みたいな状態にはある程度の慣れはあって、なんとか

  • jBrowserDriver で JavaScript つきスクレイピング - blog.8-p.info

    iKnow をスクレイピングしようとしたら https://iknow.jp/login が派手に JavaScript を使っていた。 仕方がないので Ghost Driver 経由で PhantomJS を呼ぼうと思ったら、最近 Ghost Driver はあまりメンテナンスされていないらしく If you need a better maintained WebDriver implementation, and write your code in Java, why not checkout Machine Publishers’ jBrowserDriver? Tell Dan Hollingsworth I sent you. 代わりに、jBrowserDriver がすすめられていた。jBrowserDriver は A programmable, embedded web

    kyo_ago
    kyo_ago 2016/10/06
  • 1