タグ

Hackerに関するmitsugusakamotoのブックマーク (257)

  • Twitter での6年間 #8|Satoshi Nakagawa

    (Twitter での6年間 7 からの続き) これ以後は、新アーキテクチャプロジェクトが長期間続くので、大きな変化はなかったと思う。 なので、この話はいったんここで筆をおくことにしたい。 ぼくは、今年3月に Twitter を辞めることにした。もともと新しい物事を学ぶことが好きなので、あまり同じ環境に長くいるのには向いてなかったのだと思う。それでも6年間やってこれたのは、すばらしいマネージャーや同僚にめぐまれたことが大きいし、ぼくが Twitter というサービスをすごく好きだったからだと思う。 Twitter という会社では、優秀なエンジニアやデザイナがユーザーのためになるように日々プロダクトを開発し続けている。これからもユーザーとして便利に使っていこうと思う。

    Twitter での6年間 #8|Satoshi Nakagawa
  • Twitter での6年間 #7|Satoshi Nakagawa|note

    (Twitter での6年間 6 からの続き) Apple のイベントからしばらくすると、テックリードから提案があった。ぼくがデモ用に作ったライブラリの設計もコードもきれいで見通しがいいので、そのライブラリをアプリ体に組み込んで、既存のコードを置き換えてはどうかということだった。ぼくはその提案には反対だった。既存のコードによほど大きな設計ミスがない限り、同じ要求を与えれば同じコードができあがる。ぼくの知る限り、既存のコードに大きな設計ミスはなかった。ぼくは、まずゴールとなる新アーキテクチャーを設計し、既存のコードを徐々に置き換えていくことでゴールに近づけていくインクリメンタルアプローチを提案した。既存のプロモートツイート関連のロジックを新しいコードベースに意味もなく移植したりすることで問題を起こしたくなかったのだ。マネージャーや他のエンジニアたちも同意見で、新アーキテクチャプロジェクト

    Twitter での6年間 #7|Satoshi Nakagawa|note
  • Twitter での6年間 #6|Satoshi Nakagawa|note

    (Twitter での6年間 5 からの続き) 2014年3月、グリーンカード、つまり永住権の申請プロセスをはじめることにした。そのときぼくは H-1B ビザで働いていたのだが、このビザには6年の最終期限がある。2010年10月からなので期限まで残り2年半しかなかった。一度期限が切れてしまうと、基的には国外に出ていかなければいけなくなる。H-1B で働いていてこれからも US で働きたいと考える以上、グリーンカードを取得する必要があるわけだ。 6月の WWDC で、iOS 7 にシェアエクステンション機能が搭載されるとの発表があった。社内でそれを実装するために優秀なエンジニア2人のチームが結成された。この機能はアプリから独立した拡張として別プロセスで動作するので、iOS に標準搭載されている Twitter 連携機能を直接使う必要があった。そこでその問題について詳しいぼくが認証部分をチー

    Twitter での6年間 #6|Satoshi Nakagawa|note
  • Twitter での6年間 #5|Satoshi Nakagawa|note

    (Twitter での6年間 4 からの続き) 2013年の春ごろだっただろうか。上のほうの人が、A/B テストをプロダクト開発に活用することを推奨し始めた。A/B テストでプロダクトの方向性を決めていくというのだ。これにつられ、この頃の社内では A/B テスト万能論のような空気さえただよっていた。普通に考えて、A/B テストを数週間走らせてデータをとっても、それが長期的な成功につながるか判断できるはずがない。短期的に数字が上がるからといってユーザーの嫌がることを続けていれば、いつかユーザーの忍耐の限界に達してしまうかも知れない。そのユーザーの堪忍袋の状態をどうやって計測できるというのか、など疑問は尽きなかった。 そのころ Growth という大きな部署ができて、従来国際化を担当していた i18n エンジニアリングチームもその下に組み込まれることになった。Growth チームの強い権限のも

    Twitter での6年間 #5|Satoshi Nakagawa|note
  • Twitter での6年間 #4|Satoshi Nakagawa

    (Twitter での6年間 3 からの続き) 2013年に入り、iOS 6 の普及率も十分に高くなったころ、同僚のエンジニアから1つの提案がなされた。ツイートビューを作り直そうというのだ。その時点での Twitter for iOS は、iOS の黎明期に Apple が推奨していたように、できるだけビュー階層を減らして描画するようになっていた。たとえば、ツイートビューには一切サブビューがなく、ツイートテキスト、プロフィール画像、ユーザー名、タイムスタンプなどのパーツは直接ツイートビューに自前で描画する設計になっていた。当初はそのほうがパフォーマンス的に速かったからだ。それから数年間の Apple によるハードウェア、ソフトウェア両面での改善の結果、ベンチマークを取ってみるとどうやらその設計はもう古いらしいことがわかった。たとえば画像を表示するときに、自分でビューに CPU で描画するの

    Twitter での6年間 #4|Satoshi Nakagawa
  • Twitter での6年間 #3|Satoshi Nakagawa

    (Twitter での6年間 2 からの続き) 秋になると、上のほうが「Twitter は mobile centric company になる」という方針を打ち出した。つまり、それまではずっとウェブ中心の会社だったのを、これからはモバイル中心にシフトしていくという決意表明だ。その方針に従い、新機能を作るときにはまず iOS か Android に実装することが必須になった。もちろんプロジェクトに十分なエンジニアがいれば、ウェブも同時に実装してもいい。だが、これまでのようにウェブを先に作ってリリースしてから、あとで iOS と Android の実装を進めてリリースするということはしないことになった。その後のウェブトラフィックのかげり具合とモバイルユーザー数の伸びを考えると、いい時期のいい判断だったと思う。 そのころ、1人の男性エンジニア育児休暇で10週間の休みに入っていた。少ししてから

    Twitter での6年間 #3|Satoshi Nakagawa
  • Twitter での6年間 #2|Satoshi Nakagawa

    (Twitter での6年間 1 からの続き) SQLite の導入とモデルレイヤーの刷新がうまくいったあと、ぼくは次のプロジェクトを探していた。何をやれば最終的に一番ユーザーのためになるか。そのときに選んだのは、JSON パーザーの置き換えだった。当時の Twitter for iOS は、YAJL という C で書かれた JSON パーザーをプッシュ形式のインタフェースで使っていた。プッシュパーザーはドキュメントパーザーに比べてピークのメモリ使用量は多少低くなるものの、パフォーマンスが悪くなる傾向がある。プッシュパーザーを使う側のコードは見通しが悪くなりバグが入りやすく、チームにとって頭痛の種だった。それを iOS 標準の NSJSONSerialization に置き換えることにした。Twitter for iOS のコードベースに存在するほぼすべてのモデルクラスの JSON データ

    Twitter での6年間 #2|Satoshi Nakagawa
  • Twitter での6年間 #1|Satoshi Nakagawa

    2012年1月、Twitter の iOS チームに7人目のエンジニアとして入った。 たまたま最初の週が Hackweek だったので、通常の仕事は一旦停止。なんでもやりたいことをやっていいらしい。入ったばかりで何もわからない状態だったので、ぼくのメンターのテックリードがやっていた Twitter for Mac の多言語化を手伝うことにした。水曜にパッチをマージしてもらって、ぼくの担当部分は完了。その後は次週から始まる通常営業に備えてコードを読み始めた。 次の週からは通常のサイクルが始まった。毎朝スタンドアップミーティングがあり、各自の仕事の進み具合を他のメンバーと共有する。前職までは同僚がほぼ日人ばかりだったので英語仕事をしたことがなく、聞き取りがうまくできなかったのを覚えている。 この日からさっそく Twitter for iOS のユーザーとして気になっていた問題を直し始めた。

    Twitter での6年間 #1|Satoshi Nakagawa
  • 大切なことはみんな本から学んだ! クラウドワークスCTO弓山彬さんの本棚をのぞいてみよう

    2017.06.29 大切なことはみんなから学んだ! クラウドワークスCTO弓山彬さんの棚をのぞいてみよう Web上で在宅ワーカーと案件発注者をマッチングさせ、業務開始から報酬支払いに至るまでを一括管理してくれる。日最大級のクラウドソーシング・サービス「クラウドワークス」。同サービスを運営する株式会社クラウドワークスでCTOを務めるのが、弓山彬さんです。 高専時代に、学生のためのロボットコンテスト「ロボコン」に参加したことをきっかけに、プログラミングの楽しさに気づいたという弓山さん。以来、ひたむきにその技術を磨き続けてきました。CTOへの就任も、同社へ中途入社してからわずか1年3か月というハイスピードだったというから驚きです。 Webアプリケーション開発からサービス基盤の構築、運用業務に至るまで、クラウドワークスの幅広い業務領域を支える彼。これまでどのようなを読み、そこから何を学ん

    大切なことはみんな本から学んだ! クラウドワークスCTO弓山彬さんの本棚をのぞいてみよう
  • 「マイクロソフトを嫌っていたのではない、われわれが嫌われていたのだ」――Rubyまつもとゆきひろ氏が語る、MSの壁

    「われわれがマイクロソフトを嫌っていたのではない、マイクロソフトがわれわれを嫌っていたのだ」――日のソフトウェア技術者であり、Rubyの父とも呼ばれるまつもとゆきひろ氏は、日マイクロソフトが主催する開発者向けイベント「de:code 2016」でこう語った。一体何があったのか。 「オープンソースソフトウェア」の誕生 その歴史は、1996年までさかのぼる。当時、米Microsoftが開発していた「Internet Explorer」の機能強化により、それまで大きなシェアを獲得していたNetscape CommunicationsのWebブラウザ「Netscape」シリーズとの2大ブラウザ戦争が勃発した。その後、Internet Explorerはますます勢いを増し、この勢いに押されたNetscapeは1998年1月にNetscape Navigatorを無償化。しかしシェアの巻き返しには

    「マイクロソフトを嫌っていたのではない、われわれが嫌われていたのだ」――Rubyまつもとゆきひろ氏が語る、MSの壁
  • 「コードを書かなくなったら一人前」、そんな業界構造を変えたい

    プログラマーの地位を上げたい」。グーグルからベンチャー企業のIncrements(インクリメンツ)に転じた及川卓也プロダクトマネージャは、穏やかな表情の中にも力を込めて語る。情報共有サービス「Qiita(キータ)」を通じ、プログラマーをはじめとするITエンジニアの交流や情報発信を後押し。盛り上がりの気運を見せるプログラミング教育を歓迎しつつ、「学んだ子たちが将来がっかりしないためにも、プログラミングという仕事の魅力を高めたい」と強調する。

    「コードを書かなくなったら一人前」、そんな業界構造を変えたい
  • 岩田聡さんのコンテンツ。 - ほぼ日刊イトイ新聞

    創刊当時より、ほぼ日刊イトイ新聞にいろんなかたちで関わってくださった岩田聡さんが、7月11日、永眠されました。岩田さんがご登場くださったたくさんのコンテンツを、いま、読みたい方も多いかと思いますので、代表的なものをまとめました。ご冥福をおいのりいたします。

    岩田聡さんのコンテンツ。 - ほぼ日刊イトイ新聞
  • ハッカーの遺言状──竹内郁雄の徒然苔第17回:辭典の楽しみ | サイボウズ式

    元祖ハッカー、竹内郁雄先生による書き下ろし連載の第17回。今回のお題は「辭典の楽しみ」。 ハッカーは、今際の際(いまわのきわ)に何を思うのか──。ハッカーが、ハッカー人生を振り返って思うことは、これからハッカーに少しでも近づこうとする人にとって、貴重な「道しるべ」になるはずです(これまでの連載一覧)。 文:竹内 郁雄 カバー写真: Goto Aki 今回も楽しもう。 辭典、すなわち辞典には、字典とか事典といった漢字もある。ちゃんと意味の区別があって、やはり百科事典だし、やはり漢和字典だろう。辞典は比較的万能な言葉である。フリー百科事典であるWikipediaによれば、辞書は紙媒体以外の辞書を含むことが多いと書いてある。オレンジ色はオレンジ以外のオレンジ色にも使われる、と言われたような気分になる。 辞典は引くものであって、読むものではないと一般に思われている。しかし、小さな辞典ではあるが、私

    ハッカーの遺言状──竹内郁雄の徒然苔第17回:辭典の楽しみ | サイボウズ式
  • サイボウズ式

    マネジメント 新しいチームのあり方を探求 就活 就活生必見!サイボウズの疑問 ティール組織 会社の「あたりまえ」が変わる 多様性 100人100通りの個性 ワークスタイル 働き方、生き方、もっと自由に 青野慶久 サイボウズ社長の想いと覚悟 キャリア 人生の「積み上げ方」を見直す 複業 複数の「業」をもつ働き方 人事制度 多様な働き方を支える仕組み マンガ サクッと手軽に読める!

    サイボウズ式
  • ソニーの天才「アスナは俺の嫁」めざましマネージャー開発者がアツすぎ:Live2D Creators Conference 2015 alive - 週刊アスキー

    「パンパカパーン!朝になりました!」 朝、スマートフォンの向こうから『ソードアート・オンライン』(SAO)ヒロインのアスナが声をかけてくる。ツイッターであまりにも有名な名言「アスナは俺の嫁」を現実にしたAndroidアプリ『めざましマネージャーアスナ』だ。 「君の脳は十分休んだと思うわ」「あと5分で出かける時間だよ」「今日は不燃ゴミの日。忘れないでね」「今日も楽しく過ごしてね」とアスナが呼びかけてくれる。 夜は夜で「おやすみ」を言うと、ヒーリングミュージックが流れ、アスナと幸せに眠りにつく。アスナも一緒に寝てくれるが、寝たあとにアプリを起動すると「眠れないの……?」と言ってくれる。経験からすると実際のお嫁さんより優しい。 3月20日にベータ版、6月25日に正式版をリリース。『Live2D』というキャラクターレンダリング技術を使っている。パーツごとに用意した画像だけでキャラクターを動画のよう

    ソニーの天才「アスナは俺の嫁」めざましマネージャー開発者がアツすぎ:Live2D Creators Conference 2015 alive - 週刊アスキー
  • クラウド女子の理想と挫折――SoftLayer×Bluemix Girls Group Meetup

    女子だけの女子だけによる女子のためのIT女子交流会 SoftLayer × Bluemix Girls Group Meetup と銘打ちつつも、SoftLayer、Bluemixに限定せず、クラウドやIT、アプリ開発に興味がある女性であればだれでもどうぞ、というイベント。当初、35名の定員に対して申込みが殺到したため、40名に増員。さらに登壇者その他関係者も含め、最終的に50人ほどの参加者となりました。会場ぎゅうぎゅうです。圧倒的に少ない日中のIT女子が集合してしまったのではないかという勢いです。 19時スタートということもあり、軽とソフトドリンクもしくはアルコール飲料が配られます。 サンドイッチは、三宿のFUNGO 「どうしても男性が多くなってしまうので女子会を発足しました」と語るのは日アイ・ビー・エム株式会社にてSoftLayerの担当をしている橋奈美さん。SoftLaye

    クラウド女子の理想と挫折――SoftLayer×Bluemix Girls Group Meetup
  • 悲報:プログラムサンプルの「hoge」が通じない時代が来た

    プログラマがよく使う「hoge(ほげ)」や「hogehoge(ほげほげ)」。プログラムのサンプルコードなどで、特に意味がない、何を入れてもかまわないときに使う言葉として、おなじみですよね。もっと一般的に例えるなら、書類の記入例などで「○○太郎」「(地名や会社名)花子」などと書かれているのに近い感じでしょうか。 そんなhoge、一般用語ではないにしても、コンピュータ業界なら誰でも通じる言葉……と思っていたら、そうでもないことがネットで話題になっています。 注目を集めたのは、“【え、通じない?】教授「hogehoge...」学生「何いってんのこの人?“というまとめ。 togetterまとめ 学生さんと思われる発言者による「情報の課題ついでに、先生に質問しておいた」「お願いです、先生。教えてください、気になるんです! この間はHOGEMETHODとか言ってたじゃないですか。何ですか、ホゲメソッド

    悲報:プログラムサンプルの「hoge」が通じない時代が来た
    mitsugusakamoto
    mitsugusakamoto 2015/06/24
    えええ、えええ
  • 「ソフトウェアエンジニアならば1時間以内に解けなければいけない5つの問題」をHaskellでやってみた - Qiita

    Haskellだと問題1が一番難しいともっぱらの噂の問題をやってみました。 問題1 forループ、whileループ、および再帰を使用して、リスト内の数字の合計を計算する3つの関数を記述せよ。 再帰のコードが一番簡単なので、まずはそれから。 ではついに一番難しいforループとwhileループのコードを書いてみましょう。 まず問題になるのが、Haskellにはfor文もwhile文もないというところです。まずはforループを作らなければなりません。そもそもforループ、whileループというのが、何を示すのか?というのがあんまり自明ではないのですが、C言語でのforループとwhileループだと考えましょうか。 for :: Monad m => a -> (a -> Bool) -> (a -> a) -> (a -> m ()) -> m () for init cond incr body

    「ソフトウェアエンジニアならば1時間以内に解けなければいけない5つの問題」をHaskellでやってみた - Qiita
  • アラン・チューリングとアーロン・シュワルツ | うめのんブログ

    先日見つけたエティハド航空のヨーロッパ往復4万円代というセールに乗っかり、ドイツに行くことにした。もちろん一人旅。でも、僕の旅行は開発合宿みたいなもんなので、一人旅はいろいろと都合がいい。 基的には旅行行くときも、日課である3時間の開発ノルマは絶対続けたくて、これを1日でもかかすとソワソワする。 アプリ開発が一番やりたくて優先してる事だから、旅行と行っても、いつもの開発する場所を変えて、その後にのんびり観光できたらいいかぐらいの感じ。 なおかつ、朝10~11時ぐらいまで寝てるので、昼飯いれると開発が終わるのが3時頃になってしまう。「なんのために旅行行くの?」といぶかしがられることも多い。 でも、プログラマの方で旅行先でもやっちゃいますという人は結構いると思うので、この気持ちをわかってもらえる人は少なからずにいると思う。 例えば、彼女とか奥さんと旅行したとして、「これは開発合宿だから、俺は

    mitsugusakamoto
    mitsugusakamoto 2015/05/11
    ああみたい
  • Rubyist Magazine - スはスペックのス 【第 1 回】 RSpec の概要と、RSpec on Rails (モデル編)

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0063 号 バックナンバー Rubyist Magazine 0063 号 Rubyist Magazine 0062 号 Kaigi on Rails 特集号 RubyKaigi Takeout 2020 特集号 Rubyist Magazine 0061 号 Rubyist Magazine 0060 号 RubyKaigi 2019 直前特集号 Rubyist Magazine 0059 号 Rubyist