ブックマーク / shokai.org (15)

  • 橋本商会 » 色々なPromiseライブラリで1つずつ順番に処理する

    最初、Qでなぜかcatchでエラーが捕まえられないぞ?と書いていたけど、require(‘q’).Promiseを使うんだと教えてもらった。ありがとうございます。 — 色々なNodeのライブラリがそれぞれで好きなPromiseライブラリ使ってるけど、それらのライブラリ達をいっしょにアプリ内で混ぜてつなげても大丈夫なのか?ちゃんと相互にthenでチェインしたりエラー捕まえたりできるのか? という事と、async.eachSeriesのようにURLのリストを1つずつ順番に処理完了するのを待ちながら処理していくのはPromiseでどうやって書くのかな? というのが気になっていたのでちょっと調べた。 勉強用リポジトリ https://github.com/shokai/promise-study 環境 node v0.10.29 + coffee-script v1.8.0 なのでまだPromis

    橋本商会 » 色々なPromiseライブラリで1つずつ順番に処理する
  • 橋本商会 » express+socket.io+mongooseのテンプレ作った

    作った https://github.com/shokai/express-template 簡単なチャット。チャットログはMongoDBに保存する。 https://express-chat-template.herokuapp.com/ ガチwebサービスではなくゆるふわプロトタイピング用のテンプレになっている。expressあんまりよくわかってないから変な所あったらissueとか建てて盛大にdisって欲しい。 基的にgeta6/coahを参考にしてるんだけど、ブラウザの為にcoffeeをコンパイルしてjsにするとか諸々の強烈なasset pipelineを取り外した。 構成はこんな感じ express 4.4 socket.io 1.0 mongoose 3.8 coffee-script ブラウザもcoffee-script.js herokuにデプロイ mocha + supe

    橋本商会 » express+socket.io+mongooseのテンプレ作った
  • 橋本商会 » Node.jsで実世界UI

    先週のReal.UIで発表してきたスライドです。ハードウェアとかNode.jsでやったほうが安定するしいいよという話をした。 会場のスマートニュース社は勉強会とかできる場所とオフィスとその真ん中にビールとか置いてあるカウンターがあってフロアがスコーンと抜けるように全部見えてて広々していた。ビール何種類もあってよかった。おいしかったです。

  • 橋本商会 » ターミナルで使うtwitterクライアント作った

    1年以上前に作ってずっと使ってた奴を、少し直してrubygemにした。 くわしい使い方はhttp://shokai.github.com/twに書いた。 何か要望あればtwittergithubのissueかblogのコメントでください。 ※活用方法をTwのレシピに書きました インストール 特別なライブラリは使っていないのでMacならすぐインストールできるはず gem install tw tw --help 機能 すぐ使えるように名前が短い、インストール・セットアップが楽 表示がカラフル 複数のユーザやリストをマージして表示できる DM読み書き public timelineの検索 user stream、filter stream読める。なんかよく切断されるので自動再接続するようにしといた 複数アカウント使える UNIX pipeからもtweetできる 作った経緯 フルスクリーンのタ

    橋本商会 » ターミナルで使うtwitterクライアント作った
  • http://shokai.org/blog/archives/6407

  • 橋本商会 » HerokuでSinatra+Memcached使う

    Memcached使ってみたかった。なんかキャッシュしなきゃならんので ブラウザ <---> Heroku <---(cache)---> Twitter なものを作った。 できたもの http://twiticon.herokuapp.com/ twitterのユーザーアイコンをHTMLに簡単に貼れるやつ。ソースコードはここ こういうHTMLでアイコンがでる。 <img src="http://twiticon.herokuapp.com/shokai"> 小さいのや大きいのも貼れる。 テキストや http://twiticon.herokuapp.com/shokai.txt JSONでも取得できる http://twiticon.herokuapp.com/shokai.json 使い方は http://twiticon.herokuapp.com に詳しく書いてある。 Twitte

  • 橋本商会 » HTML+JavaScriptをArduinoに直結できるシリアルポートサーバーを作った

    SerialPort Serverを使うと、HTMLとJSをArduinoに直結できる。JavaScriptを少し書くだけでArduinoに「カーテン開けろ」とか「部屋の明るさよこせ」とか命令を送れるわけだ。 Web系の技術とハードウェアの技術を同時に使うには、間に「つなぎ」が必要なので、必要な機能を全部入れたサーバーを作ってみた感じです。 (github pagesでプロジェクトページ作ってみたんだけど楽でいいですね) こういうこと。 シリアルポートサーバーはrubygemsでインストールできる。 gem install serialport-server which serialport-server serialport-server --help serialport-server /dev/tty.デバイス名 –helpでヘルプが出る。デバイス名を引数にして起動できる。 Mac

  • 橋本商会 » SFCにVPSがやってきた

    大学で仮想サーバーが無料で借りれる時代が来てしまった。 電源とか配線とか置き場所の問題をクリアして、グローバルIPありport全開root権限ありのサーバーが手に入る。 最近はすごい重い計算をさせるとかはあんまり無くて、単にどこからでも参照できるwebサーバーが必要だったり、node.js使うのにportがたくさん必要だったり、webサイトをクロールするためにずっと起動しているマシンが必要だったりするわけで実に研究設備として有益ですばらしい。ERNSの人ありがとう。 SFCの大学院生はVPS (個人用仮想サーバ)サービスの試験運用開始について — Erns web siteの要項を埋めてメールで申し込める。学内からしか見れないページだけど。 ちょうどサーバーが2台必要だったので申し込んだ。 スペックはこれ。 CPU : 2.67GHz 1コア メインメモリ:512MB ネットワーク:動的I

    橋本商会 » SFCにVPSがやってきた
  • 橋本商会 » Sinatra+Haml+jQuery入門

    研究室の後輩にSinatraとhamlとjQueryを教えるために作ったテンプレートについて、ここにも書いておく ソースコード https://github.com/shokai/sinatra-template 実際動いているもの http://masui.sfc.keio.ac.jp/sinatra-template/ git clone git://github.com/shokai/sinatra-template.git ■Sinatraを何に使うか Sinatra+haml+jQueryが便利。 Railsと似てるけど、ちょっと違う。 個人的には RailsHTMLのページをいっぱい作るのに便利 Sinatra → 画面遷移あまりしなくて、同じURLのままjsonのAPIをjQueryのajaxで取得して動的に表示を変えるwebページを作るのには便利 に感じる。 でもSi

  • 橋本商会 » Google Latitudeから自分の位置情報を取得する

    以前自分でAndroid用のGPSロガーアプリを作っていたんだけど、収集した位置情報をAndroid内に持っていても特に面白いことが出来なくて悩んでた。 Android版のgoogle latitudeはもちろんサーバーに位置情報が溜まっているので、これを別の自分のサーバーから取得したほうが使い勝手がよい。 作ったもの https://github.com/shokai/google-latitude-logger ■google latitudeから位置情報を取る方法 GData APIからGoogle Latitude APIが使えるが、なんかわけがわからなかったのでgoogle latitude badgeからデータを取ることにした。 Google Latitude公開ロケーションバッジのページにgoogleアカウントにログインした状態で行き、「有効にして最新の現在地情報を表示する」

    橋本商会 » Google Latitudeから自分の位置情報を取得する
  • 橋本商会 » Mac OSXにおける近代的なAVRマイコン開発環境

    久しぶりにAtmel AVRマイコンを直に使うプロジェクトをやるので、環境を整えてみた。@rain_yukizoraと@qt_fbが色々教えてくれた。 これが最強の組み合わせだ!! Mac OSX Snow Leopard Cross Pack for AVRに入っているavr-gcc macportsでインストールしたavrdude aitendoで売ってるusbasp 秋月やマルツで売っているATMega168か168pか328p この記事では、MacでのAVRマイコン開発環境の構築と、ATMega168pでLEDを1秒間隔で点滅させるプログラムを作成して、マイコンに書き込んで動作させる所までを解説します。 Macbook Air + usbasp + ATMega168pで開発しているところ ■Cross Pack for AVRをインストールする CrossPack – A Dev

    橋本商会 » Mac OSXにおける近代的なAVRマイコン開発環境
  • 橋本商会 » SFCが使えるか確かめる

    SFCが計画停電グループ1なのでしょっちゅう停電している。 ほぼ1日1回停電するし、停電するとサーバーで長い処理をしている人や3Dプリンタを使っている人はレジュームができなくて大変らしいので簡単にSFCの状況を調べられるツール作った。 gem install sfc_ikiteru して(適宜sudoつける) sfc_ikiteru すると というふうにどれぐらい生きてるかわかる。 物理的に離れてそうなサーバーがいくつか入っているので、これでどの建物が停電しているかもなんとなく察しがつくはず。 もちろん、gemなのでmoduleとしても使える。返り値はtupleで受け取る require 'rubygems' require 'sfc_ikiteru' per, details = SfcIkiteru.ikiteru p per p details perは1.0〜0.0の少数が返ってく

    橋本商会 » SFCが使えるか確かめる
  • 橋本商会 » Android SDKのlogcat

    Log.v("button1", "押した"); などするとAndroid実機からEclipseにテキストが流れてくるlogcatだけど 17インチMacbookProでは文字が超小さい。なのにフォント設定ができなかったり、日語が文字化けしたりする。 terminalで adb logcat で起動する方のlogcatならちゃんと日語出る。 少なくともソースコードUTF-8で、iTermもUTF-8で使ってるので文字化けしない。 adbは複数同時に起動できるので、screenで画面分割して2つ起動。 左側は adb logcat | grep "^V\/" でLog.vでの出力だけを表示するようにしてみたりとかすると、Eclipseよりこっちの方が便利な気がしてくる。

    橋本商会 » Android SDKのlogcat
  • 橋本商会 » Twitterの地名なうbotを全blockするOAuthアプリ

    http://shokai.mag.keio.ac.jp/block_nowbots/から使える。 (8月15日:URL変更しました) とりあえずSinatraとOAuthの組み合わせを試してみたかったので、DBは使わないものを作りたかった。取得したOAuthのtokenなどはその場で捨てている。blockコマンドを送る権限だけを一時的に委譲してもらう。 以下技術的なことのメモ。 ■OAuthアプリの登録 まずhttp://twitter.com/oauth_clientsでアプリを登録し、consumer keyとconsumer secretを取得する。 で、下のコード中のCONSUMER_KEY, CONSUMER_SECRETを書き換える。 ■必要なライブラリ 必要なgemをインストールする。最新版にした。 sudo gem install oauth twitter sinatr

  • 橋本商会 » 『ルーマン理論の可能性』①

    先週金曜に15分、今週水曜に15分、今日スタバで1時間半ほどで点検読書した。でもまだ最後まで点検できてない。 ①としているのは、そのうち続きを書くから。 ■読む前に考えていたこと 俺は社会をシステムと捉えた二クラス・ルーマンが気になっていたんだけど、著書が多すぎるしwikipediaGoogleとかで見てもいまいち特殊な用語が多くて掴めなかったので、どのから手をつければいいのか数ヶ月迷っていた。(他にも色々やる事あるし) なぜ気になっていたかというと、SocialComputingというユビキタスコンピューティング(ubicomp)のHCIの一分野があって、俺はそれをやっているから。SocialComputingは、いわゆる社会的なものにユビキタスコンピューティングをシステムとして実装(埋め込む)事で、社会とそこに生きる人の経験をデザインする。 その方法として、例えばDourishの『

  • 1