タグ

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

  • Rustを学びシステムレベル言語を理解すること - ワザノバ | wazanova

    https://www.youtube.com/watch?v=ySW6Yk_DerY Rustについては「Rustのあれこれ」で少し触れましたが、Yehuda Katzが、Skylightの一連のブログとGoGaRuCo2014の講演で、「ハイレベル言語のプログラマーがシステムレベルの言語を学ぶチャンス」という観点で紹介しています。 主なポイントとしては、 プログラミング言語の特性は変わることがないとか、プログラミング言語のパフォーマンスと生産性は常にトレードオフであるという考え方は、JavaScriptにおいて、生産性が少し改善されつつ同時にパフォーマンスが大きく向上してきたという事実から、必ずしも正しくはない。 Rustは、セグメンテーション違反が起きないという意味での安全性と、どこにメモリを置くか直接コントロールできる仕様を両方兼ね備える。 Rustを学ぶということは、ハイレベル言

    unarist
    unarist 2015/04/10
    オブジェクトを誰が所有してるのか静的にチェックするのか
  • Rustのあれこれ - ワザノバ | wazanova

    https://air.mozilla.org/bay-area-rust-meetup-august-2014/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約3時間前 Bjorn Tiplingが各プログラミング言語を武器に例えた、"If programming languages were weapons" というエントリーが秀逸ですね。公平に、どの言語も褒めていないところがよいです。どれも面白いので全部眺めていただければと思いますが、その中でRustは、 "Rust is a 3D printed gun. It may work some day." と紹介されています。 とはいえ最近、 Rustに関する発信をよく見かけるようになったと思ったら、バージョン 1.0が近いのですね。"work some

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

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

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

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

  • npmとクライアント側でのパッケージ管理の議論 - ワザノバ | wazanova

    npmに登録されているパッケージ数は10万、月間ダウンロード数も5億を超えました。7月の段階で月間3億程度ですから、こちらのグラフで見てもわかるように、かなり成長が加速してきていますね。 EdgeConf4において、パッケージ管理をテーマにしたディスカッションに、npmのCTOであるLaurie Vossと、npmのpeer dependencyをつくったGoogle Chrome TeamのDomenic Denicola(ES6のPromiseの取組みでも知られた人ですね。)が参加しています。この二人と、BowerのJosh Peekを中心に議論が進んでいます。ちなみにJoshはGitHubの社員で、最近では、左右に並べてdiffを比較できる便利な機能をつくった人でもあります。 「サーバサイドのパッケージマネジャとしては、CPANやRubygem、npmのように開発言語ごとにプレーヤー

  • 安全に失敗すること - ワザノバ | wazanova

    http://leanuxnyc.co/nyc/safe-fail-not-fail-safe-dr-alicia-juarrero/ 1 comment | 1 point | by WazanovaNews ■ comment by Jshiike | 約3時間前 NYで開催されたThe LeanUX15 Conferenceに招待された哲学者のAlicia Juarrero教授の講演。原題は "Safe-Fail, NOT Fail-Safe" ですので、「失敗しないように安全にするのではなく、安全に失敗すること。」という内容です。 まずは、カヌーと急流下り用のラフトを例えに比較しています。 カヌーは細身のすっきりしたデザインで、穏やかな海や川面を快適進めるように設計されているが、そもそも急流や波が高いときは舟をださないというのがベストな戦略。つまり、失敗しないように安全にする前提

    unarist
    unarist 2014/05/30
    "「失敗しないように安全にする。」という考え方は、安全のために障害が起きないようにすることに努め、完璧でなければいけないという考えを生み"
  • Google Developers: データ圧縮アルゴリズムの基礎 - ワザノバ | wazanova

    「webサイトの平均サイズが2メガに近づき、Androidゲームが125メガになってきて、コンテンツと送信コストのトレードオフが深刻な問題になってきている。開発者にとって次の10年は、圧縮アルゴリズムを理解して、うまく使いこなすことが重要になる。」という紹介文に惹かれて、3回 (20分/10分/20分) のビデオシリーズを見ました。概要は下記の通りですが、図示が中心でわかりやすく説明してくれてますので、是非チェックしてみてください。(3回目の後半はちょっと素人には難解でした。。) Episode 1: Variable Length Codes モールス信号からバイナリコードに進化してきたが、共通しているのは、出現率の高い文字から順番に短い記号列 ("."もしくは"-") /数列 ("0"もしくは"1") をあてはめることで、記号列/数列全体の平均の長さを短くしようとする考え方。 この場合

  • なりたい自分になること - ワザノバ | wazanova

    Seth Godinがブログで、信頼を得る環境づくりについて触れてます。 自分のアウトプットだけで純粋に評価されたいと思うもので、 医者が、正しいタイミングで最適な治療を施すことにより患者を治癒し、弁護士が、最も説得力のある理にかなった弁論をしたことにより裁判に勝つ。 と常になればよいですが、現実はそれだけで結果が決まるのではなく、 聴衆はお目当てのシンガーの歌を聞くのが好きなのであって、よく知らないオープニングアクトのバンドを聞きに来るわけではない。 処方してくれる医者を信頼しているから、薬が効くと感じる。 返金不可の大金を既に払っているから、顧客は貴方の仕事を褒めてくれている可能性が高い。 アウトプットの価値をあげているのは、信頼を勝ち取ることができる環境。それをつくりあげることは、少なくともアウトプットをだすのと同程度に重要である場合が多い。 "Benefit of doubt"とい

  • 動的に価格を変えるアルゴリズム - ワザノバ | wazanova

    https://www.youtube.com/watch?v=-KFe5pGMFbo 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 Uberは、配下のタクシーの乗車率を最大化して、かつ顧客の不満「タクシーがつかまらない!」「呼んだタクシーがくるのが遅い!」を下げるために、タクシーがつかまりづらい時間帯は動的に価格が上がる仕組みにして、需給バランスの最適化を計ってます。 最初はしばらく手動で値上がり率を入力して、データを蓄積。それからアルゴリズム化した。 都市ごとに係数は変えている。大きな都市では、空きタクシーの検索範囲は市全体でなく時間帯で適切なエリアだけをカバーするかたちに変えた。 最初はその時間に適用される値上がり率を、へりくだったお詫び的なテキストの中で表示していたが、請求されてから気づく酔

    unarist
    unarist 2014/05/21
    混み具合に応じたタクシーの料金設定と、値付けに慣れていない人への価格提案
  • イラっとさせないUIの工夫 - ワザノバ | wazanova

    http://uxmovement.com/navigation/why-users-arent-clicking-your-home-page-carousel/ 1 comment | 1 point | by WazanovaNews ■ comment by Jshiike | 約4時間前 カルーセルでスライドを順に見せるサイトがどうしても好きになれないのですが、この記事をみてはっきり自分がそう思う理由がわかりました。コンテンツに価値があるかどうかはっきりしないのに、待たなくてはいけないというシチュエーションにイラっとさせられるのだと思います。隠れているスライドが興味をそそるものであるかどうか判断つかないのに、それが表示されるまで待たなくてはいけない。ですので、ほとんど待たない。あと何枚スライドがあるかのインジケータがあっても、そもそも興味があるものかどうかわからないのでクリック

    unarist
    unarist 2014/05/21
    待つ甲斐があるのかわからないまま砂時計やグルグルを見せられる件
  • エンジニアチームでブランドを築く - ワザノバ | wazanova

    https://medium.com/on-startups/1feed0155749 2 comments | 1 point | by WazanovaNews ■ comment by Jshiike | 約5時間前 Nis Fromeのこのブログは示唆に富むものでした。 NisのチームがNew Yorkでハッカソンに参加したときのこと。慣れないテクノロジーに苦闘して、進捗が見えなくなってきた深夜3時、メール配信サービスのSendGridのエンジニア達が会場にやってきて、参加者に声をかけながら部屋をまわりはじめる。SendGridのDeveloper EvangelistであるMike Swiftから、「何か手伝える?」と言われた際に、SendGridのAPIを使ってるわけではなかったので、一旦は断る。しかし、彼は矢継ぎ早に質問を重ねてきて、Nisのチームがどのようなテクノロジー

    unarist
    unarist 2014/05/21
    "深夜にエンジニアをハッカソン会場に送り込んで参加者を助けるというSendGridのようなアクションは、能動的にブランディングできるというチャンス"
  • ブロックチェーンをもう一段深く理解する - ワザノバ | wazanova

    http://www.igvita.com/2014/05/05/minimum-viable-block-chain/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 39分前 このブログでGoogleのIlya Grigorikが言及している、 (ビットコインの)デジタル貨幣という側面より、もっと興味深く大きな意味をもつイノベーションは、その土台となっているブロックチェーンのテクノロジー。 という考え方は、いまやベイエリアの中心的な論調。ですので、ビットコインの貨幣的側面の規制を当局が検討したり、それがメディアで報じられても、まったくひるまずに、昨年後半あたりはブロックチェーン周辺のスタートアップにかなり投資がされています。 それらのスタートアップのサービスがこれから世の中に順次でてくるので、ブロックチェーン

    ブロックチェーンをもう一段深く理解する - ワザノバ | wazanova
  • 積み重ねと目的意識 - ワザノバ | wazanova

    https://www.youtube.com/watch?v=9naDS3r4MbY 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約3時間前 Railsの10年の取り組みを振返った、RailsConf 2014のYehuda Katzのキーノートスピーチは、 高い生産性をもたらすのは、特別優れた人のために特別なツールを用意するのではなく、共通の問題に対処する共通のソリューションを積み重ねること。そうすることで、次に挑戦する人たちは、地上から山頂を目指すのではなく、超高層ビルの高さからはじめることができる。 一般的には、「ソフトウェアの抽象化は意図したほど役には立たないことが多い」( The Law of Leaky Abstraction ) という傾向があれど、共通のソリューションづくりにおいては、すぐに

    unarist
    unarist 2014/05/21
    "Ego Depletion"と"Yak Shaving"
  • 他人頼りのアイデア - ワザノバ | wazanova

    https://medium.com/@jack/80ad140f990b 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約2時間前 「xxさんがそう言ってたから。」と権威のある人の名前を借りて自分の案を推すのは、当に言ってたとしても確かにイケてないですが、「xxさんもいつもそう言ってるから。」と勝手に援軍に使ったことは、過去に自分もやったかもしれないと反省させられました。 こういうメールを社内に送るところが、Jack Dorseyはすごいですね。 誰かの名前を使ってアイデアを売り込むことは、 あなたの信頼度(権威)が下がる。 そのアイデアのメリットが損なわれる。 その理由はシンプル。他人の名前や権限を借りてものごとを進めなくてはいけないのであれば、そのアイデアにメリットは存在しなくなる。(あなた自身は実はそ

  • Netflix: 結果整合性の許容範囲は広がってしかるべき - ワザノバ | wazanova

    https://www.youtube.com/watch?v=6R1WhWkh6pg 2 comments | 0 points | by WazanovaNews ■ comment by Jshiike | 約1時間前 Cassandra Day Silicon Valley 2014でのChristos Kalantzis (Cloud DB Engineering Manager, Netflix) の講演。 10年前を思い出してほしい、データの書込みは1台のマスターに、読込みは複数のスレーブで担いスケールさせていた。ウェブサービスでよく使われていた手法だが、レプリが完全に行われないケースはありえた。 Cassandraの場合は、大量のデータ処理でも結果整合性の遅延は極短く、信頼性高く、かつデータ修復機能もある。チューニングできるシステム。 Netflixでの実験: - 二箇

  • Stripe: 支払フローのアニメーションの工夫 - ワザノバ | wazanova

    https://medium.com/p/3d1b0a9b810e 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約5時間前 StripeUI DeveloperのMichael Villarが、同社のサービスの生命線である支払フローにおけるデザイン上の工夫を紹介しています。支払フローはユーザの離脱の可能性が高い箇所なので、ストレスを減らす工夫は効果が期待できそうですね。 1) アニメーションで文脈を補完する gif version | MP4 version 支払のために入力した個人情報を再利用したいときのために「Remeber Me」のチェックボックスが用意されてます。それをチェックするとはじめて、Helpページへのアイコン、「安全のために携帯番号を入力ください。」という入力ボックスがアニメーションで表示

  • モバイルAPIデザインのまとめ - ワザノバ | wazanova

    Natasha Murashevがブログで、API Strategy and Practice Conferenceにおける、Michele Titolo (先月、「 Ruby RoguesメンバとiOSエンジニアAPI議論」で紹介しました。)とEtsyのPaul Wrightの講演のポイントをまとめてくれています。 1) スピード ユーザは待ってくれない。300msで、リクエスト / レスポンスの処理 / ユーザに結果の表示をする。 2) RESTが常にベストとは限らない 以前のEtsyのAPIリソースはDBスキーマのミラーになっていた。クライアントがリスティングのリストを受け取ったら、ユーザがFavoritedに指定しているリスティングIDを取得するために、再度APIコールする必要があった。クライアントのAPIコールが増えると、クライアントのスピードが落ちる。また障害の可能性となるポ

    unarist
    unarist 2014/04/18
    APIを呼ぶときに必要なリソースを指定して、サーバはそれらを全て用意してまとめて送り返す
  • Carousel by Dropbox: 遅延のない動きを実現する工夫 - ワザノバ | wazanova

    Dropboxは先週iOS、Android向けに発表した写真管理アプリCarouselを発表しました。Carouselの開発にあたり、がまずチャレンジすべき目標は、デバイスのローカルに保存された写真を閲覧するギャラリーアプリにパフォーマンスが劣らないようにすること。その取り組みを同社のエンジニアブログで紹介しています。ポイントとしては、ユーザのアクションを邪魔しないこと。 1) 解決すべき問題点 クラウドに保存された写真を閲覧するCarouselにおいて、まず問題になったのは、 写真タブにおいて、ユーザのアクションをサーバと同期させる際に、HTTPSリクエストが待機した状態が起きる。例えば、写真をシェアする場合、このような画面になる。写真を削除する場合も同様。ネットワークの接続がよくなければ、後でユーザは再トライする必要がでる。 Dropboxにアップしてない写真、つまりデバイスのローカル

  • 責任であることと、そうでないことの境界線 - ワザノバ | wazanova

    http://www.webstock.org.nz/talks/how-designers-destroyed-the-world/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 1日前 net awards 2014のConference Talk of the YearにノミネートされているMike Monteiro (Mule Design Studio) のWebstock 2013での講演 "How designers destroyed the world." です。デザイナーの責任というテーマなのですが、どの仕事をする上にも共通するちょっと重たい話しです。 まず取り上げているのは、2012年10月にWall Street Journalに掲載された記事。 ある大学生が、Facebookのプライバ

    unarist
    unarist 2014/04/14
    "デザイナーは、注文を取る人ではなく、ゲートキーパーであるべき"
  • Iconfinder: 画像データの重複チェックのアルゴリズム - ワザノバ | wazanova

    http://blog.iconfinder.com/detecting-duplicate-images-using-python/ 1 comment | 0 points | by WazanovaNews ■ comment by Jshiike | 約5時間前 Iconfinderは以前、500 Startup Fundのデモdayでプレゼンするのを見た記憶があります。それから資金調達もできたようで、無事生き残ってますね。 アイコン等の画像ファイルの検索 & 販売をするサイトですが、悪いユーザがIconfinderから画像をダウンロードした後に、そのまま、もしくは多少改変して、Iconfinderにアップして販売しようとする不正行為があるようです。その対策のための検知アルゴリズムについてブログで紹介しています。 一般的な画像データをハッシュ化するアルゴリズムでは、画像のごく一部