フルスタックスタートアップとは何ぞや?

約3年前 | 3 points

1年程前に「フルスタックエンジニア」という言葉をはじめて目にして意味を調べましたが、今回は「フルスタックスタートアップ」とのこと。新しい造語を使い回すのは好きではないのですが、A16ZのChris Dixonのブログで語られているその内容は興味深いものでした。

最近の注目を集めるスタートアップは、過去に挑戦された市場に対して違ったアプローチで仕掛けているとして、Tesla / Warby Parker / Uber / Harry's / Nest / Buzzfeed / Netflixを例にとり、それらを「フルスタックスタートアップ」と名付けています。この場合のフルでないというのは、既存の会社がライセンス販売形式などで、産業バリューチェーンの一部だけを担う存在であった状態を指しています。フルスタックのスタートアップは、...

GitHub: ストレスをうまく減らしているのがキモなんだと思った

約3年前 | 3 comments | 2 points

ほうれんそう(報告/相談/連絡)って正直面倒ですよね?

もちろん自分も大人ですから、仕事におけるタイミングよい細かなコミュニケーションの大切さは理解してます。だから職場では頑張ってやりました。折をみてメンバ全員を集めて話しもしました。1 on 1のミーティングもやりました。そしてメンバにもまわりとのコミュニケーションを積極的にとるように期待しました。

けど、子供のときに朝8時半に学校に行かなくてはいけなかったときと本音では変わってないと思います。やらざるを得ないからやるということ。やはりストレスです。


GitHubのコミュニケーション伝導師のZach Holmanが、よいブログのエントリーをあげています。

2月4日時点での社内のチャットによるコミュニケーションは、

  • 185 ルーム
  • 同日で29,168行のテキスト
  • Hubotを利用した自動配信が内13,462行
  • イメージファイルが468個添付
  • ...

Trelloを使ってTrelloをつくる

約3年前 | 1 point

Fog CreekのBobby Graceが、Trelloを使いながらTrelloの開発を進めるプロセスを紹介してくれてます。

パブリックAPIとクライアントアプリ(web / iOS / Android / Kindle / Windows 8)という構成。

Using Trello for Trello

Trello Internalという名称のTrelloのボードでは、タスクが掲載されたカードが、“Doing”, “Waiting for test/review”, “Ready for merge”, 直近のリリース, “Incoming Bugs”に分類されている。(サンプル画面)

例えば、

  • Incoming Bugsから選んだカードに自分をアサインし、Doingにカードを移動。
  • 自分のレポジトリに新しいブランチを切り、バージョンコントロール & コードレビューシステムの...

データサイエンスで世の中をよくする

約3年前 | 1 point

CRMツールのRelateIQのVP of ProductであるDJ Patilが、データサイエンスで世の中をよくする取り組みを紹介してます。エンタープライズITにおける"ビッグデータ"の切り口での銭っぽい話しが多いこの頃ですが、こういうかたちで世界をよくすることに役立っているという話しを聞くのは、嬉しいことです。

Crisis Text Lineでは、悩みを抱えたティーンエイジャーをテキストメッセージ (SMS) でサポートするサービス。「開封率ほぼ100%、かつリアルタイムのテキストメッセージとデータを活用して若者を救いたい。」というNancy Lubinの5分24秒のTED Talk: "Texting that saves lives"は大きな反響を呼びました。

テキストボリュームの増える時間帯を把握し、カウンセラーごとの処理効率も考慮して...

コンテンツが増え続ける世の中で英語を学ぶこと

約3年前 | 6 comments | 3 points

英語をマスターする最短方法は英語で生活するということにあまり異論はないと思います。大人をまねることで幼児が成長していくように、英語で生活せざるをえない状況に身を置く以上の体で覚える的自然な強制力はないからかと。

それが何らかの事情でできない人はどうするか。自分も「英語で仕事できるようになりたいけど、留学するカネもないな。」とドメスティックな環境で長い間苦闘しました。どうにか英語を使う機会のある仕事についた時、海外のクライアントとのミーティングに同席して、ほとんど内容わからなかったのですが、そのクライアントの日本法人の方(日本人)に、「あなたの英語は何を言ってるのかわからない。」と全員の前でコメントされたことが、唯一よく聞き取れた英語で、まあ当然そのままこの世から消えてしまいたい気持ちになったのをよく覚えてます。

英語は学ぶ努力と能力の伸びが正比例しないところがつらいところかと。...

Go TimeとLinuxカーネルの関係

約3年前 | 1 point

CloudFlareは、こちらのブログ によると、DDoS攻撃のトラフィックに対応できるように、PowerDNSからGo言語で書いた内製のRRDNSに昨年移行しているようです。

今回は、その内製DNSサーバでも重要な役割を果たしている、Go言語におけるタイムスタンプ取得とLinuxカーネルの関係について解説しています。

Time in Go

Go言語のtimeパッケージで最もよく使う time.Now については、Sourcegraph に6,000ケースの利用事例がある。

System calls

まずは、Linuxでクロック値を取得するために利用できるシステムコールを理解する必要がある。SVr4, 4.3BSDにあり、POSIX.1-2001に記述されているtimegettimeofdayを取り上げる。timeはUnix epoch、つまり1970-01-01 00:00:00...

手をつくしたと本当に言えるのかと自問すべき

約3年前 | 4 points

A16ZのFounderであるBen Horowitzの "The Hard Thing About Hard Things" を読みました。

今週頭に米国で発売されて、そのうち読もうかと最初は思ってたのですが、発売翌日から大絶賛するレビュー記事がどんどんでているのに気づき、本書を読む前にレビュー記事に目を通してしまうともったいないと思って、すぐにkindleにダウンロードしました。一気に読もうかと考えて朝4時まで頑張ったのですが、思いのほかボリュームがあって挫折して、3晩に分けて完読。

Marc Andreessenの長年のビジネスパートナーですが、Netscapeでの激闘以来Marcがあまりにも表舞台で目立っているので、彼の参謀的な位置づけの人なのかと以前は思ってました。風貌もちょっと地味な総務のオジさん系ではあるので。

...

Steve Klabnikが語るBalancedのアーキテクチャ

約3年前 | 2 points

昨年の11月にBalancedに移ったSteve Klabnikが同社のアーキテクチャについて解説しています。(ちなみに、彼がどうしてBalancedを選んだのかについては、こちらのブログで語ってます。) マーケトプレースプレース向けの課金サービスを提供する同社は、先日Coinbaseとのインテグレーションも発表していますが、Mt. Goxの脆弱なシステムが話題になっていることもあり、決済サービス会社としてきっちり説明しておきたいという背景があるようです。

基本アーキテクチャ

最もシンプルなアーキテクチャ図はこちら

  • 1. マーチャント (You) のサイトの決済ページにある<script>タグが、balanced.jsと紐づいており、エンドユーザのブラウザに https://.jsbalancedpayments.com/balanced.js が読込まれる。
  • 2....

Amazonの社風とSOA

約3年前 | 3 points

Steve Yegge (Amazon - Google)が、Googleのプラットフォーム戦略が遅れていることを指摘した、2年前のかなり長いエントリーですが、その中で触れているAmazon時代のエピソードが興味深かったです。

Jeff Bezosは2002年の当時からプラットフォーム戦略の重要性をよく理解していたが、とにかくマイクロマネッジメントで強制力のある経営者だったとして、サービス指向アーキテクチャ(SOA)の採用を指示したときのエピソードを取り上げてます。

そこでJeffは命令をだした。もちろんこれはいつものことだが、これが起きると人々は鎚でたたかれたかのように、アリのごとくスクランブルする。…Anyone who doesn't do this will be fired….という指示は文字通りで、本当にクビになることがわかってるので皆は仕事に取りかかる。...

Facebookページをつくりました

約3年前 | 1 point

Facebook経由で読んでくださるユーザの方が増えてきたので、FBページを用意しました。

https://www.facebook.com/pages/Wazanovanews/704689089576133

「いいね」をお願いします!

RailsでInteractorをうまく利用する

約3年前 | 3 comments | 2 points

飲み会アレンジサイトGrouperが、同社のエンジニアブログで、規模の大きなRailsアプリをパフォーマンスよくつくるときの工夫を提案をしてますが、それに対してRailsのクリエーターのDHH (Basecamp / 37 Signals) が厳しいコメントを残しています。

1) Grouperの提案

問題意識

Railsは、コードベースが千行を超えると、テストスイートが遅くなりがちで、フレームワークのロードタイムが増える。

よくあるのは、ビジネスロジックのほとんどがActiveRecord /modelsディレクトリの大きなクラスに置かれていること。この場合、各クラスの役割が多すぎるとか、巨大なAPIとか、関連する複雑なオブジェクト群がうまくワークしないと成り立たないようなメソッドがあるというケースがありえる。

失敗する原因はActiveRecordのコールバックにある。...

NetflixのAPIプラットフォーム

約3年前 | 1 point

Netflixはストリーミンングを配信するデバイスが800種に及ぶため、各デバイスを担当するクライアントチームのために社内向けAPIを用意しています。パブリックAPIのように全員一律の仕様を強要するかたちでは、デバイスごとの最適化が図れないため、各クライアントチームがエンドポイントをカスタマイズできるかたちになっています。こちらの図のように、サーバ側にあるクライアントアダプタのコードをクライアントチームが扱います。

今回は同社のAPIチームが、クライアントチームのために用意した開発環境について、詳しく紹介されています。

Architecture

NetflixのAPI全体の概要は、「Netflix: APIの改善と継続的デリバリー」の、その1その2を参照願います。

APIサーバのアーキテクチャ図

  • [1] Endpoint Controllerは、...