This document discusses collecting photos from Twitter streams in real-time using Node.js on Heroku. It describes tracking hashtags and photo URLs to filter tweets containing images, and extracting the photo URLs. The architecture involves using the Twitter Streaming API and socket.io for real-time streaming to browsers, with fallbacks for Heroku which does not yet support WebSockets. The goal is
「M&Aを実施すると発表し株価が上昇しました」というニュースを目にしたことがある人も多いのではないでしょうか? M&Aは企業の規模や業態を大きく変えるので、株価と密接に関係しています。 M&Aによって株価が上昇するケースや、下落するケー...
世間から周回遅れですが事情によりWebSocketのことを調べてみました。 WebSocketの一次情報のリンクを挙げておきます。 WebSocketプロトコル http://www.whatwg.org/specs/web-socket-protocol/ WebSocket API http://dev.w3.org/html5/websockets/ まだプロトコルとして枯れていません。プロトコル仕様の日本語訳もありますが情報が古いので最新版と互換性がありません。この文書は2010年5月23日版の仕様を元にしています。情報がいつまで有効かは不明なので読むときは気をつけてください。 昔、なんでもHTTPという風潮が嫌いでした。通信プロトコルは適材適所であるべきだと思ったからです。HTTPに向いていない用途にまで無理矢理HTTPでラップするのが嫌いでした。いつしか、まあいいかHTTPで、
Node におけるスケールアーキテクチャ考察(Scale 編)というエントリーを読んで、RedisはPub/Sub型通信をサポートしているという事を知りました。エントリーでも言及されているように、Pub/Subを使えば Node.js + WebSocket サーバをスケールする際に、中継サーバの役割を果たす事が出来るはずです。 そんな訳で実際に Node.js と Redis を使って Pub/Sub の実験を行なってみました。ユーザが別々のNode.jsサーバに接続していてもWebSocketを通してメッセージのやり取りを出来るようにします。 イメージとしてはこんな感じです。 下準備# Ubuntuの場合は apt-get で1発でインストールする事が出来ます。 $ sudo apt-get install redis npmでredisモジュールをインストールします。 $ npm i
「HerokuでWebアプリ開発を始めるなら知っておきたいこと」シリーズの第1回では、無料の範囲で使えるHerokuの基本スペックについて書きます。このシリーズのまとめページはこちら。 Herokuとは まず本題に入る前に、さらっとHerokuについてご紹介します。 Herokuは、ヘロクと読みます。HeroとHaikuを掛け合わせた造語だそうです。私は「ヘ↑ロ→ク↓」と発音してしまいがちですが、他の人の発音を聞いていると「ヘ→ロ→ク→」が多いような気がします。 2011年7月7日に行われた「Heroku-ja meetup #1」というイベントでは「ヘ↑ロ→ク↓」と発音する人が多かったです。 Herokuを誤解を恐れずにものすごく大雑把かつ極端に説明するといまどきのレンタルサーバーやいまどきのホームページスペースです。2010年代のジオシティーズです。年齢がバレますね。 もう少し技術者向
# vim Vimを起動して <?xml version="1.0"?> <?mso-application progid="Excel.Sheet"?> <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"> <Worksheet ss:Name="Sheet1"> </Worksheet> </Workbook> XMLを書いて <?xml version="1.0"?> <?mso-application progid="Excel.Sheet"?> <Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet" xmlns:ss="urn:
Well, here is some really good news for the PHP Development community. Till now (as of PHP 5.3) all developers had to set up a web-server environment such as Apache in order to test all their PHP codes. Not only this, apart from installing the server environment developers also have to configure the necessary modules that come with Apache web server. And after all this setup is done, all the codes
Hello Therereveal.js enables you to create beautiful interactive slide decks using HTML. This presentation will show you examples of what it can do. Vertical SlidesSlides can be nested inside of each other. Use the Space key to navigate through all slides. Basement Level 1Nested slides are useful for adding additional detail underneath a high level horizontal slide. Basement Level 2That's it, time
こんにちは、EDGE担当の櫛井です。 以前 livedoorブログなど、ユーザーがコンテンツを投稿するWebサービスでは年間で千万円単位のコストがかかるストレージシステムを使っていました。増え続けるデータに今後どう向き合っていくのかという課題に、ライブドアのエンジニアが出した答えは「ストレージシステムの自社開発」でした。 まず最初に作ったのは、ユーザーごとに分散するタイプのストレージシステム。これは DAVStorage という名前で、5年ほど前から本番環境へ投入し稼働していました。 DAVStorage はコスト的にメリットがありましたが、当初問題なかったものの大規模化するに従って機能面での不足が明らかになり、次世代型のシステムを開発する必要性がありました。 そこで作られたのが、今回オープンソースで公開する分散オブジェクトストレージシステム「STF」です。STFではファイル単位の分散が可
lestrratです。本日めでたく正式にSTFがオープンソースとしてlivedoor ラボ EDGE上でリリースされました! プレスリリースはこちら。 いままでちょこちょこと先出し先出しで情報をだしていましたが、これで本当に本当の正式公開です。一応上記のサイト以外に「公式」サイト的なものも用意しました。ソースコードはgithub上に公開されています。ということで使って欲しいので紹介記事です。 STFは分散オブジェクトストレージです。Perlメインの似たようなシステムとしてはMogileFSが有名ですが、STFは後発のメリットを生かしてPSGI互換にしたり、使用するプロトコルを基本的にHTTPというオープンで枯れた技術を採用したりとメンテナンス・運用の利便性があがっていると考えています。 歴史 STFは元々ApacheモジュールといくつかのPerlワーカーで書かれていましたが、ひょんなことか
この度、文部科学省では、20代から30代の男女を対象とした新しい形態の科学技術雑誌「サイエンスウォーカー」を平成18年に製作・配布しました。 このページでは、本誌をできるだけ多くの方に見てもらいたいと思い、全文を掲載しました。 TVで彼女とスポーツ観戦(ページ2、3) (PDF:511KB) ちょっと違ったスポーツの見方、アウェーで光る日本の技術 デートに使える映画のうんちく(ページ4、5) (PDF:1,410KB) 話題になったあの映画「博士の愛した数式」でみる数学の美しさとは? 女の子が喜ぶ空間づくり(ページ6) (PDF:909KB) 天井に1万個の星が輝く!プライベートプラネタリウム 彼と楽しむ癒しの時間(ページ7) (PDF:422KB) 香りがもたらす影響とは?気分に合わせてアロマを調合 彼女もびっくり!!ファッションアイテム(ページ8) (PDF:236KB) オシャレは足
Distributed Object Storage Made Easy! Use commodity hardware/software to build your own scalable object storage! Learn more » What is STF? STF is a simple, yet very scalable distribute storage system. STF powers sites like livedoor Blog, loctouch and many more, serving gigabytes after gigabytes of data. On one such system, it's serving 400Mbps of image at peak hours without a hitch. GET STF! STF i
開発基盤グループ 森田です 以前、クックパッドで取り組んでいるExtensionの仕組みを紹介させて頂きました。 今現在もクックパッドでは、プロトタイプやβ開発は全てこの仕組みの上で進めています。 http://techlife.cookpad.com/2011/07/15/extension-framework/ この仕組みを「chanko」と命名し、本日MITライセンスで公開しました。 https://github.com/cookpad/chanko また、簡単ながらサンプルアプリケーションも用意しました。 記事の削除機能、写真のアップロード機能をchankoで実装しています。 https://github.com/cookpad/chanko/tree/master/spec/dummy 是非使ってみてください。
tmuxの設定をいじってたらこんな感じに 昨日はInconsolata使いたくてiTerm使ってみたが、重すぎて諦めた。今はデフォルトのTerminalにTakaoフォントを使っている。 Macのターミナルも日本語フォントと英フォントを分離できたらいいんだけどなぁ 混ぜ物を作るのも面倒だ .tmux.conf 基本はMANで読んで、ソースコード検索で引っかかったページからコピペコピペ # Prefix set-option -g prefix C-t # View set -g status-interval 5 set -g status-left-length 16 set -g status-right-length 50 set -g status-bg black set -g status-fg white set -g status-left '#[fg=cyan,bold]
このドキュメントの内容は、以下の通りです。 セッションの作成 セッションのデタッチ セッションの確認 セッションをアタッチする アタッチしているセッションを調べる セッション名のリネーム セッションの削除 すべてのセッションを終了させる tmux入門 関連ページ GNU Screenやtmux は、Unixで複数のターミナルを扱うためのアプリケーションです。 GNU Screenのセッションを管理する screenie [2009-06-14-1] で紹介しましたが、 screen は、 screen -ls, screen -rd sessionname などで、セッションの確認や Screen のアタッチができます。 セッションの作成 セッションは、 tmux コマンドを実行するだけで作成されます。 自動的にセッション名として、数字が割り当てられます。 tmux セッション名をつけるに
GNU screenはもう古いので皆さんtmuxへ移行しましょう、という話。Gentooならemerge tmux。 スクリーンショット 手元のtmuxを撮ってみた。縦分割モード。ウィンドウマネージャはawesome。左のircクライアントはweechat。 本家にもいくつかスクリーンショットがある。 tmuxへ移行する理由(メリット) 標準設定のままでもそれなりに使えるステータスバー 各ショートカットがコマンドベース(コマンドで操作ができる) 標準で縦分割機能搭載 GNU screenがたまに固まる問題(が発生するのは私だけ?)が発生しないかも ビュー専用のスクロールモード 柔軟なペイン制御 コピー&ペースト用のバッファを複数保持できる terminfo的にscreen互換 メモリ消費量が少ない(GNU screenの約1/5) 一部機能でマウスが使用できる(mode-mouse, mo
これはRuby Advent Calendarの21日目の記事です*1。20日目は@sasata299さんのHerokuって便利だし利用までたった3ステップですお!!でした。 はじめに 本当は「Pure Rubyで動くかっこいい形態素解析エンジンができた!!!」みたいな記事を書く予定でしたが、目標のクオリティに達しなかったのでリリースは延期されました。 クリスマスごろにリリースされるといいですね。 さて、この記事では、Haskellのような純粋関数型言語がどのように副作用を伴う処理を実現しているかについて、Rubyによる実装を使って解説します。モナドという言葉が全く出てこないのでアレルギーのかたも安心ですね。 純粋関数とは 同じ引数を渡す限り、どのような順番で何度呼んでも同じ結果が返るような関数のことです。 何が問題なのか puts 'hello!' res1=gets puts 'hel
開発者やデザイナーが集まるイベントや彼らが所属する企業/組織などで良く行われている仕掛けの中で、そういったギークだけに閉じていてはもったいないと思うものがいくつかある。ここで言う「仕掛け」とは、オープンで活発な議論やユニークなアイデアを引き出すためのイベントの進め方や時間の使い方などだ。 ここではそのうち7つを紹介してみたい。 ライトニングトーク 5分程度のある限られた短い時間で行うプレゼンテーションのこと。時間が来たら強制的に終了させられる。これはもう一般にもかなり定着したと考えて良いだろう。 時間を制限することで、本当に伝えたいことだけにそぎ落とされた説明ができるし、多くの人に話してもらうことが可能となる。 Wikipedia ライトニングトーク イグナイト ライトニングトークの発展形。限られた時間でプレゼンテーションを行うのは同じだが、1枚スライドあたりに費やす時間も制限されている。
どうもおつかれさまでございます。大形尚弘でございます。先日、 tumblr developer meetup 2011 に参加させていただき、「リブログのこの快感をどのようにサービスに取り入れるか」についてご参加の皆様と熱い議論を交わしたのですが、20時を過ぎた辺りで全員「そろそろ早く帰ってリブログしたいな...」という気持ちになりましたためスッと解散になったのが印象的でした。 ちなみに、「たんぽぽグループ」は実在いたします。みなさんの心の中に...。 というわけで、 Dmitry 先生の ECMA-262-3 シリーズもいよいよ中盤、スコープチェーンについてご一緒に勉強させてください。 詳細 ECMA-262-3 シリーズ 第1章 実行コンテキスト 第2章 変数オブジェクト 第3章 this 第4章 スコープチェーン 第5章 関数 第6章 クロージャ 第7章1節 OOP: 概説 第7章2
なんとかカレンダー 21日目 id:miya2000 です。こんばんは! 低級テキストエディタでせっせとコーディングしているあなた!そろそろ手がが疲れてきていませんか? そんなあなたは、この記事で紹介する Excel コーディングをぜひ覚えてください。 わずか数秒で世界が変わります! 元ネタ めんどうな作業がわずか数秒に!新人デザイナーが 知らないと一生後悔するExcelを使ったHTML生成 | Webロケッツマガジン http://webrocketsmagazine.com/entry/20111209/html-code-generation-using-excel.html Excelを使った高級コーディング とにかく Excel でコーディングを行った画面を見てみましょう。今回は Java のコーディングをやってみます。 どうでしょう? 画面を見るだけでどれだけ恩恵があるかお分か
アジャイル開発でプロジェクトを進めている現場では、やるべき作業を表す付箋や、進行状況を示すチャートをプロジェクトルームの壁に貼って状況を見える化し、共有している光景をよく見かける。 本稿では、昨今のアジャイル開発プロジェクトで広く浸透している見える化の手法を見ていく。その中で、チーム全体がプロジェクトの今の状況を把握し、開発者の自律的な作業を可能にし、協調作業を促進する、三つの視点(とき、こと、ひと)をうまく使うかんばんボードの利用法を提案する。そして最後に、三つの視点によるプロジェクトの見える化を実現している、かんばんボードのソフトウェアによる実装 “TRICHORD” を紹介する。 アジャイル開発プロジェクトにおける見える化 XP(eXtreme Programming)の中に、“情報発信する作業場所”というプラクティスが紹介されている。これはプロジェクトの進行状況を、一目で把握できる
サービス終了のお知らせ NAVERまとめは2020年9月30日をもちましてサービス終了いたしました。 約11年間、NAVERまとめをご利用・ご愛顧いただき誠にありがとうございました。
静的な情報の送受信から始まったWebはAJAXという技術革新を経て、今アプリケーションとしてのプラットフォームとなり、その中で動的な対話性が重視されるようになっている。 これが、私なども良く言う、現在のWebの状況だ。HTML5が出てきた背景もこれにある。 だが、すべてのWebはアプリケーション化する とまで言うのは行き過ぎだ。私も口がすべってこう言ってしまったこともあるかもしれない。ウソではないが、誤解を招く可能性がある。 情報の受発信というのは今でも重要なWebの役割の1つだが、その役割だけとってみても、目に見えるものがすべてのものであるという体験は必要だ。たとえば、新聞を考えてみよう。新聞は古い技術の象徴のように思われているが、俯瞰して見た時に全体の記事をスキャニングできるなど、実は非常に汎用性の高いフォーマットである。 マウスをホバーしたり、クリックして、現れるコンテンツ。そのよう
お問い合わせ お問い合わせ先メール配信者(発行者)宛システム提供会社(=メール配信&ASPシステム提供会社)宛お名前メールアドレス件名本文(質問、要望等)確認する ページの 先頭へ ページの 末尾へ お問い合わせ | 利用規約 | プライバシーポリシー | システム提供会社 Copyright © 株式会社ツールラボ All Rights Reserved.
2011年12月21日 Node.jsのテスティングフレームワーク「Mocha」(後編) 前回に引き続き、Mochaのチュートリアルに沿ってMocha(バージョン0.3.6)を使ってみます。 なお、このエントリーはJavaScript Advent Calendar 2011(Node.js/WebSocketsコース)の参加エントリーです。 前回のあらすじアサーションは好きなライブラリを組み込んで使えるよ!同期・非同期どちらのコードでもテストできるよ!テスト実行の前後に呼ばれるコードを書いて、前準備や後始末ができるよ!「あとで書く」用途のテストを書けるよ!便利なオプションがたくさんあるよ!テスト結果の表示形式がすごく見やすいよ!テストの書き方を色々選べるよ!ざっとこんな感じの内容を書きました。 では、前回からの続きです。 Reportersテスト結果の出力形式は以下のとおりです(スクリー
2011年12月19日 Node.jsのテスティングフレームワーク「Mocha」(前編) Mochaのチュートリアルに沿ってMocha(読み:もか)を使ってみました。 長いので前編・後編の二部構成にします。 使用するMochaのバージョンは0.3.6です。 はじめにこのエントリーのために書いたサンプルコードは以下に置いておきます。 https://github.com/ryu22e/mocha-example FeaturesGoogle翻訳と辞書を頼りに翻訳しました。もっと適切な訳があればご指摘お願いします。 browser support(ブラウザサポート) simple async support(シンプルな非同期サポート) proper exit status for CI support etc(CIサポート等のための適切な終了ステータス) auto-detects and di
Node.jsでエラー発生時に適当に console.log とかを埋めて、しかもそれが複数箇所になってくると、エラーメッセージは分かるがそれがどこで発生したエラーなのかが分からなくて困ったりする。キャッチしたエラーオブジェクトが普通にthrowされたErrorオブジェクトならerr.stackでコールスタックが取得できるからまだしも、只の文字列や独自Errorをcallback(new Error("オレオレメッセージ"))とかで渡されるとコールスタックが取れないのでどうしようとした足跡。 試行錯誤 で、以下の様な関数を作ってみた。仕組みは簡単で、throwしないと行番号取得できないならダミーで例外発生させちゃえば良いじゃないって感じ。*1 function getCallStack() { try { throw new Error("DUMMY"); } catch(e) { ret
SuperAgent SuperAgent is light-weight progressive ajax API crafted for flexibility, readability, and a low learning curve after being frustrated with many of the existing request APIs. It also works with Node.js! request .post('/api/pet') .send({ name: 'Manny', species: 'cat' }) .set('X-API-Key', 'foobar') .set('Accept', 'application/json') .then(res => { alert('yay got ' + JSON.stringify(res.body
11月25日、「mobidec 2011」においてコナミデジタルエンタテインメントのスタジオITセンター長である正延光弘氏によるセッション「大ヒットSNSゲーム『ドラゴンコレクション』を支えるコナミのクラウド技術の活用」が行われました。 ドラゴンコレクションは、GREEで提供されている携帯電話向けのカードゲームタイプのRPG。プレイヤーは、エリアごとにある複数のクエストをクリアしていき、モンスターカードや「秘宝」を手に入れ、さらに「ドラゴンカード」を集めていきます。また、ほかのプレイヤーとバトルすることでも秘宝を入手できるというSNS要素も取り入れられていました。2010年9月のサービス開始後、順調にプレイヤー数を伸ばし、現在では登録人数が500万人を超えています。 サービス開始当初は社内でサーバを構築し、フロントエンドに6台のサーバ、バックエンドに3台のデータベースサーバ、そしてロードバ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く