ブックマーク / wazanova.jp (82)

  • Quora: 新しい社員の迎え方について - ワザノバ | wazanova.jp

    http://www.quora.com/Quora-company/What-is-the-on-boarding-process-for-new-engineers-at-Quora スタートアップだと新しい社員を採用したときに、面接までで手一杯で、受け入れ態勢を当日までに用意するのが大変だったりします。「xxさんは今週から入社じゃない?」と気づき、大慌てでPCやソフトの準備をすることもままありました。そして間に合わないという失態もしました。。 数年前の話しですが、Quoraはまだ創業間もないのに、新しい社員を迎え入れる体制がしっかりしていて、エンジニアは、ロゴ入りグッズもらって、hardware/softwareは当然揃っていて、ウェルカムランチをへて、必ず初日に番アップまで経験できるような仕組みになってたと記憶してます。事業の成功を担保するためのせっかくの新戦力なので、優先順位は

    daiki_17
    daiki_17 2017/05/31
  • Karma: JavaScriptテスト実行ツール - ワザノバ | wazanova.jp

    http://www.youtube.com/watch?v=MVw8N3hTfCI 「AngularJSの設計思想」の元ネタVideoの中で、GoogleのBrad GreenがJavaScriptのTest実行ツールKarmaを絶賛していたので、調べてみました。 Node.jsで開発されたJavaScriptテスト実行ツール テストの実行スピードが早い。また、ファイルがセーブされたり、変更があったりすれば、Karmaが検知して自動でテストを実行する。テキストエディタとブラウザをいったりきたりする必要がない。 実機ブラウザもしくはヘッドレスブラウザPhantomJSでテストできる。一度に複数のクライアントで実行できる。ブラウザを立上げ、キャプチャをとり、閉じるまで全て自動。結果をまとめて開発者に知らせてくれる。 コマンドラインもしくはIDEで操作 Jasmine, Mocha, QUni

    daiki_17
    daiki_17 2015/02/27
  • React CanvasによるモバイルブラウザのUI改善とそれが起きる必然 - ワザノバ | wazanova

    http://engineering.flipboard.com/2015/02/mobile-web/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約4時間前 ものごとが進化すると、利用するユーザの満足度はあがるので、それを用意する作業量はツールの改善に従って最終的には減っていくのか? スマホが登場して、アプリ上でのスワイプなどの直感的にできる操作や表現の幅が広がり、またディスプレイも改善。では、プロダクトをつくる側がそれに慣れてくると、作業量が減るのか?いや、現実は逆。同じことを実現する作業量は減っても、トータルでは減らない。ブラウザとアプリにまたがって、双方のメリットを取り込もうと、もっとレベルの高いUIを目指した競争が続いています。 David BellonaがTwitter Universityでの

    daiki_17
    daiki_17 2015/02/16
  • マネージャのいない組織に進化する現実と幻想 - ワザノバ | wazanova

    マネージャのいない組織へのチャレンジについては、一昨年から話題になっていますが、ここにきてかなり論点が絞られてきていると思います。 1) 非同期 & 可視化が進む GitHubなどのツールに親しむエンジニアが、進捗が可視化され、非同期で仕事を進めることに先に慣れてきたが、SlackのようなコミュニケーションツールやTrelloなどのタスク管理ツールの浸透で、非エンジニアにもじわじわその理解が進んでいく。 2) マネージャの役割が変わる 上記1) が進むことで、進捗を報告させて情報を集約、また逆に、全社 / 業界の情報をフィルタリングして伝えるという、情報操作ハブとしてのマネージャの役割はかなり減る。情報の透明性があがることで、情報を握っていることがマネージャのパワーの源泉である時代が終わる。 プロジェクトの進捗 / 開発のクオリティ / 売上 / 評価とフィードバック / メンバの士気の向

    daiki_17
    daiki_17 2015/02/05
  • React Nativeがスマホアプリのフロント開発を変えるのか - ワザノバ | wazanova

    Reactは当初、「Huge step backwards(これではメンテできなくて、かえって大きく後退してしまっている。)」「Rethink established best practives(皆が積み上げてきたベストプラクティスを変えようとしている。)」と揶揄されたりもしましたが、最近は他のJavaScriptフレームワークにもその思想の一部が反映されるようになって、メインストリームに近づきつつあるようです。 さて今回Facebookが、React Nativeを発表 & オープンソースとして公開して話題になっていますが、Tom Occhinoは React.js Conf 2015のキーノートスピーチで、「一度書けば、どのプラットフォームでもうまく動作する。」ではなく、「一度覚えれば、どのプラットフォーム向けにも書けるようになる。」ものであることを強調しています。 同社の開発メンバ

    daiki_17
    daiki_17 2015/02/01
  • Prometheus: Go言語で書かれたモニタリングシステム - ワザノバ | wazanova

    https://developers.soundcloud.com/blog/prometheus-monitoring-at-soundcloud 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 Prometheusは、SoundCloudが中心となって開発を進めているオープンソースのプロジェクトDockerの社内でもメインのモニタリングシステムとして利用されているようです。 各社のブログのエントリーから、その特徴をまとめると。 多元データモデルとそれを活かす柔軟なクエリ言語 全てのデータにタイムスタンプのある、OpenTSDBに準じたデータモデル。 http_response_500_totalやhttp_response_403_totalなどHTTPレスポンスのステータスごとに用意しなくても

    daiki_17
    daiki_17 2015/01/30
  • Java: 本番環境でのデバッグスキルを磨く - ワザノバ | wazanova

    https://www.youtube.com/watch?v=7KS4L-mA_-c 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 Takipi のFounderであるTalWeissのSan Francisco Java User Groupミートアップでの講演。番環境で役に立つデバッグテクニックの紹介です。 1. スレッド名の活用 スレッド名はmutable(EJB除く)である。コードのコンテキストにあわせて、Thread.currentThread().setName(Context, TID, Params, Time,...);のようにすれば、トランザクションID、Serveletパラメータ、キューメッセージID、起動時間など、スタックトレースに役に立つ情報を表示できるようになる。 J

    daiki_17
    daiki_17 2015/01/19
  • 分散システム設計のチェックリスト - ワザノバ | wazanova

    http://monkey.org/~marius/checklist.pdf 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 TwitterのMarius Eriksenは分散システムのエキスパートであり、モジュール化され、安全でかつ効率よく機能するサーバソフトの構築のノウハウは、「Your Server as a Function」という論文にまとめられています。 また、分散システム設計における留意点も、下記の内容のチェックリストというかたちで紹介してくれています。 1. 障害耐性 もし依存先が障害を起こしたらどうなるか?その障害がゆっくりと起きたらどうか? システムをどのようにスムーズにデグレードさせることができるか? システムは想定以上の負荷にどう対処するようになっているか? 大きな障害が起き

    daiki_17
    daiki_17 2015/01/16
  • 開発現場における並行処理の留意点 - ワザノバ | wazanova

    https://www.youtube.com/watch?v=RR62KqHEVfM 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 Squareが主催した並行処理システムに関するパネルディスカッション。 まずは、並行処理理論で博士号を取得し、Sqaureで分析システムを担当するGian Perroneがハイレベルでの留意点を挙げています。 システム全体で起きていることを自分の頭で完璧に把握しようという姿勢は、正確な並行処理システムをつくる妨げになる。テクノロジーやツールをうまく利用すべき。 並行処理システムを漏れなくテストするというのは相当難しい。 自分で考えて、注意深く対処するというのでは不十分。うまく抽象化に頼るべき。 続いて同社のTamir Dubersteinが、以前データセンタを移行させ

    daiki_17
    daiki_17 2015/01/15
  • Luaが支えるCloudFlareのWebアプリファイアウォール - ワザノバ | wazanova

    https://www.youtube.com/watch?v=nlt4XKhucS4 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約3時間前 CloudFlareのWAF (Web Application Firewall)は、HTTPリクエストをフィルタリングし、 SQLインジェクション コメントスパム XSS DDoSアタック WordPressなど特定のアプリを狙った攻撃 などの攻撃をネットワークのエッジで、つまりサーバに到達する前に守ってくれます。 適用するフィルタリングルールは、オープンソースのOWASPなどの共通ルール 5,682件 + CloudFlare内製のルール 102件 + 顧客企業がカスタムメイドしたルールの総計で、それが全てのリクエストに当てはめられます。その処理速度は平均1ms以

    daiki_17
    daiki_17 2015/01/04
  • 能動的な姿勢に比例して学びの効果は上がっていく - ワザノバ | wazanova

    http://lemire.me/blog/archives/2014/12/30/how-to-learn-efficiently/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約7時間前 TELUQ(ケベック大)のコンピュータサイエンスの教授であるDaniel Lemireが語る、効果的な学び方の話。 教室に座って教授の講義を聞いていると学んでいる気になる。新しい話題についてのを読むと学んでいる気になる。しかし、相当受け身な学び方ゆえに、それでは非効率。ある意味非効率よりももっと始末が悪い。理解できたような誤った錯覚を覚えるので、非生産的である。… その内、その話題や専門用語などに慣れてくる。(理解してないのに理解しているように感じて)自分を欺いてしまうので、何も学ばないよりももっとよくない状況になる。

    daiki_17
    daiki_17 2015/01/03
  • エンジニアと非エンジニアの境界 - ワザノバ | wazanova

    http://techcrunch.com/2015/01/01/everyone-in-management-is-a-programmer/ 1 comment | 1 point | by WazanovaNews ■ comment by Jshiike | 約1時間前 この先、ソフトウェアの力でビジネスの競争力に格段の差がついてくる産業がどんどん増えてくることに備えて、プログラミング教育の必須化の議論も盛んですが、その必須化の是非はさておき、将来的には社会人になるうえで、ある程度コードを理解できる素養があることがもっと当然のことになってくるのではないかと期待してます。 そうなると、今の世の中の人が漠然と持っている、「エンジニア」と「非エンジニア」という言葉から連想してしまう偏見、両極端なイメージは、いずれの側に属する人々にとっても将来はもっと不利益になるかと。相互理解が必要です

    daiki_17
    daiki_17 2015/01/03
  • iOSのデバッグを極める - ワザノバ | wazanova

    http://www.objc.io/issue-19/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約2時間前 objc.ioはベルリンのメンバを中心に、月替りでiOS関連技術の特定のテーマに絞って発信しているブログ。もう既に知名度はかなり高いかと思いますが、毎月ものすごく力の入った特集ゆえに、その分ボリュームも相当で、読むのも大変というか、時間がないから読めてない人もいるかと。今月は#19としてデバッグの話題です。 Peter Steinbergerの「デバッグ : ケーススタディ」では、UIKit上のバグをLLDBで対処した話を紹介。 「デバッガーでのダンス - LLDBのワルツ」において、Ari GrantはLLDBの使い方を詳説してくれています。 「DTrace」はiOSシミュレータでしかまだ利用で

    daiki_17
    daiki_17 2014/12/28
  • 気づかぬうちに増える仕事を減らす取組み - ワザノバ | wazanova

    https://codeascraft.com/2014/12/22/engineering-rotation/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約2時間前 「このタスク、思ったより時間がかかったな。」となるのはよくあることですが、仲間と仕事をするということは皆で大きなことを成し遂げているということなのだというそもそものメリットは空気のように忘れがちで、ある程度の非効率は避け難く生じるし、それが目につくのでストレスの元。どう解消するか? 元Quoraのリードエンジニアで、現在Quipに勤務するEdmond Lauは、"Hidden costs that engineers ignore”"と題したブログのエントリーにおいて、 コードの修正だけでなく、別のメンバへの説明の時間はかかる。 単純に分量で

    daiki_17
    daiki_17 2014/12/24
  • 大規模分散システムのレスポンスを向上させる工夫 - ワザノバ | wazanova

    https://www.youtube.com/watch?v=1-3Ahy7Fxsc 1 comment | 1 point | by WazanovaNews ■ comment by Jshiike | 約2時間前 GoogleのJeff Dean(Senior Fellow, システム & インフラグループ)による、Velocity Conference 2014のキーノートスピーチです。 Jeffは、オブジェクト指向言語によるプログラムの最適化で博士号を取得。DEC/Compaqの研究所の勤務をへて、1999年にGoogleに入社。以降、BigTable / MapReduce / Spanner / Google Translate / Google Brainなど、同社の大規模分散システムの構築に一貫して携わってきています。 例えば、検索結果のレスポンスを向上させるには、そ

    daiki_17
    daiki_17 2014/11/25
  • Goと大規模分散システムの相性 - ワザノバ | wazanova

    Googleで分散システムの開発をてがけ、現在はソーシャルメディア mttr.toを立上げ中のBen Sigelmanが、Goを分散システムの開発に利用する場合の、メリットおよびチャレンジについて講演しています。 分散システムのあるべき姿 分散システムの勘所は、最上位ビットをパフォーマンス的にも構造的にもうまく扱うことができるかというのがポイント。その効果が一番大きい。スループットの改善のような詳細は、自分もGoogleでそれに取組んだけれども、9ヶ月くらいたつとハードウェアの性能で解決される可能性が高い。また、構造的にというのは、なるべく小さなコンポーネントを組み合わせたシステムにできるかという意味。 Goのよいところは、 両方、とくに後者によい。Railsだとアプリを複数個用意して並列処理するのは大変だったけど、Goだとシンプルにできて、標準ライブラリも読みやすいとかなどなど。パフォー

    daiki_17
    daiki_17 2014/11/25
  • UIは画面サイズと解像度だけで解決できなくなる - ワザノバ | wazanova

    http://wordpress.tv/2014/11/05/luke-wroblewski-from-the-front-lines-of-multi-device-web-design/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約2時間前 WordCamp San Francisco 2014におけるLuke Wronblewskiの講演です。UIデザインで考慮すべきは、画面サイズと解像度だけでなく、視聴距離、ポスチャー(詳細後述)、周囲の明るさという要素も必要になってくるという話。 スマホ端末を両手もしくは片手で持つ場合を合わせて、75%のユーザは親指を使って操作している。 タブレットのランドスケープモードとポートレートモードの利用比率は、6:4とか7:3とか言われるが、要は両方に対応する必要がある

    daiki_17
    daiki_17 2014/11/25
  • GittipにCo-founderは必要なのか - ワザノバ | wazanova.jp

    http://blog.gittip.com/post/64410217673/the-community-is-my-cofounder Gittipについては以前、「話題のGittipがY-combinatorにアプライしたこと。」で取り上げましたが、Githubでの活動に寄付をするマーケットプレースを、給与ゼロ&全てを公開する「オープンカンパニー」として運営してます。極端すぎる手法で自分は真似できませんが、どこまでオープンであることが競争力になるのかを計るうえで、注目してます。 このブログによると、Y-combinatorに申込んだら「共同創業者を探すように。」と言われたとのこと。 一般論として、スタートアップにCo-dounder (共同創業者)が必要だというのは賛成です。2人から3人(それ以上だと逆にまとまらない。)で全員もしくは1人以外が開発者であるべきというのも理にかなってま

    daiki_17
    daiki_17 2014/11/21
  • スケールするサービスでの最新オペレーション事例 - ワザノバ | wazanova

    https://www.youtube.com/watch?v=B1Wt8s4LEfk 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 10/29に開催されたSecurity@Scaleのカンファレンスで、興味深いと思った話題を拾ってみました。 SquareのDiogo Monicaの講演は、障害/脆弱性に対応する社内システムをどのように自動化 / 最適化させてきたかというテーマ。 脆弱性の種別(XSS等) x セキュリティゾーン(システムのどの箇所にとって脅威になるかを3段階に分類。DBに近い方が危険性が高い。)でスコア化することで、対応のために発行されるチケットは自動的に優先付けされる。 SLA(サービスレベルアグリーメント)において、例えば、P0は24時間以内、P1は7日以内、P2は30日以内と

    daiki_17
    daiki_17 2014/11/04
  • Googleのテスト自動化の進化 - ワザノバ | wazanova

    https://www.youtube.com/watch?v=6ZvCU0dht50 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 Google Test Automation Conferenceが今年はSeattleで開催されたようです。その中で興味深いと感じた話題をいくつか拾ってみました。 1) 成長を続けるGoogle 会社の規模が大きくなり、歴史を重ねてくると、何事も非効率になりがちですが、Ankit Mehtaが紹介してくれた数字によると、Googleの開発ペースは依然として右肩あがりのようです。 コードのコミットは、1日3万チェックイン。約3秒に1回。グラフを目測した限りでは昨年から約20%増。 リリース数もこの1年でほぼ倍増。 2) テストクローラーを利用してのモバイル実機テストの

    daiki_17
    daiki_17 2014/10/30