サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
アメリカ大統領選
web.sfc.keio.ac.jp/~shokai
s.h.log: 最近買った本 - ドレイファスとかStrataとかMySQLとか色々でもよくわからない事を長々と書いたが、インターネットと身体性について書いている本。 1章では、私達は身体的なインタラクションを通してものごとの関連性を認識している。しかしweb上に情報を組織化する時に身体性がなく、また、その情報を検索する時にも身体性が無い。 と言っている。これは「わからない事がわからない」状態の時に、何という言葉でググればいいのか分からないから、調べる事ができないという問題に関係している。 最近は、web2.0的なSocialMediaのお陰で知らなかった情報に触れる機会も増えてはいるが。 2章では、インターネットを使った遠隔学習では、中級者までしか成れないと言っている。身体知や実践知をテキストやビデオ化したり正しく伝送する事が困難である事と、関与と当事者性が学習において重要である
こんにちは。ruby初心者です。 今日はRuby Twitter Gem by John Nunemakerを使ってみた。 まず、rubygemsでhpricotとか入らなくて大変だった。 そのへんは最近書き始めたはてなダイアリー2008-02-20 - shokaiの日記に。 はてダの新投稿画面は、twitterみたいに気軽に書ける+コードに色が付く記法があるという事で、メモつけるのに非常に良いですね。 で、俺もtwitterを使ったアプリを作りたいので(botではない) Rubyでやってみた。詰まったのは日本語まわりで、 Twitter API仕様書日本語訳文字列を引数にとる API を使う場合、その文字列を UTF-8 に変換し、URLエンコードする必要がある。 とあるけどなんかURLエンコードしないでも通った。 コード。Kconvは多分標準で入ってる文字コード変換ライブラ
CPANモジュールのWebService::SyncSBS::D2Hを使って、Deliciousとはてブを同期させた。 I have synced two Social Bookmark Services, Delicious and Hatena by using WebService::SyncSBS::D2H. WebService::SyncSBS::D2H - del.icio.us and hatena bookmark sync - search.cpan.org /home/sho/src/perl/070204_delicious2hateb/d2h.pluse strict; use warnings; use utf8; use WebService::SyncSBS::D2H; my $sbsync = WebService::SyncSBS::D2H->ne
Railsのscaffoldでさくっと作ったインタフェースって、HTTP-POSTからSQLに保存したり取り出したりもできて色々プロトタイプを作るのに便利なのでまとめておく。 ためたデータの管理もできるし。 ■Rails側の準備 まずrailsを入れる。 Macの人は既に入っているはず。Windowsなら、ActiveScriptRubyを入れてパス通すと、gemコマンドが入るのでgem install railsすればrailsコマンドが使えるようになる。DBはSQLiteのdll版をc:\windows\system32に入れればできる様になるはず。 railsでtestbbsというプロジェクトを作って、そこにscaffoldでentry(投稿)というmodelを作る。entryには、name(投稿者)とmessage(本文)が入る。 rails testbbs cd tes
« PSoC - CY8C29466でUART受信割り込み | メイン | C#3.0 - 任意のウィンドウをアクティブにしてキーコードを送る » 2008年03月15日 ■ RailsなしでActiveRecordだけ使って、SQLiteを読み書きする [Programming&Electronics][Technology] Ruby on Railsが巨大すぎてよくわからないので、とりあえずRailsの中で使われているO/RマッパであるActiveRecordだけ使ってみた。 SQLを使ってオブジェクト指向で書くとき、SQL文を発行して受け取った返り値の配列をオブジェクトに突っ込み直してやらなければならないんだけど、O/R mappingを使うとSQLのデータベースとそこに接続しているプログラム上のオブジェクトが同期できる。 もちろん、プログラム側のオブジェクトで save()など
Twittalkというのを作って、ICCマッシュアップアートコンテストに応募しました。「twittalk」というSkypeユーザーを登録するといきなりSkypeで4人同時通話を仕掛けてきてしゃべりまくるという迷惑極まりない?botです。一見するとラジオっぽく聞こえなくもない。 (詳しい説明はtwittalkのサイトで見てね) ・Twittalk ・Twitter + Skype = Twittalk - Cirius Lab. ブログ ※今は停止させています※ ずいぶん前にskypeでbot作るとか言ったけど、その時考えていたものとはずいぶん変わったな。やっぱ作りながら考えるとずいぶん違ってくる。 あと、今回はついついツイッターの灰田さん(@planets)と組んでやったんだけど、自分と違う系統の技術ややり方を持った人と組むのはやっぱ面白い。 このmashup図がカオスさを表してる
トラックバック このエントリーのトラックバックURL: http://web.sfc.keio.ac.jp/~shokai/cgi-bin/mt/mt-tb.cgi/1567 コメント コメントしてください
tumblrクローンとして最初は注目されていたsoup.ioが、最近別の方向でも面白い。 こうなってくると、より小さいアクションのレベルでどんどんRSSができて、soup.ioにきれいに並ぶようになると良い。 Yuichirock Fes. - yk乙soup.ioを使うと、blog・flickr・del.icio.us・YouTube・tumblr・twitter・・・など、自分がWEBに参与した記録が直線的に並ぶんだ。自分のsoup.ioを眺めると、改めてWEBに接する時間の長さが見えてくる。まさしくMODERN LIFE。MacBookにむかってカタカタと、現実的な作業と趣味的な徘徊を行ったり来たり。そんな自身に捧げる言葉は、もう「yk乙」のほかないね。今不満なのははてなスターの自分が☆を付けた記事のリストと、Amazonのwish listがfeedを吐いてくれない事。Pipes
火曜に、imglのうっちーとあらためてラベリング処理ってどうやんのよという話をしていて、あらためてAS3で書き直した。 ただし、ラベルの衝突処理はまだやっていない。 ラベリング処理について→s.h.log: Proce55ing - 2値化画像を4近傍ラベリング処理してパーツ抜き出し 今まで、ラベルそのものを2次元のint配列で管理してたけど、今回はBitmapDataオブジェクトとして保存する様にしてみた。BitmapDataならx,y座標で要素にアクセスできるし、ピクセルはuint型なので都合がいい。 ■できたもの download => fla, as, swf (FlashDevelop3.0.0 Beta5 + FlashCS3) 年末年始作ったカメラから画像処理のサンプルを元に改造した。 webcamから撮影してBitmapDataにして、1ピクセルずつ走査して真っ白(0
前の記事に続き、Flickr.NETを使う。 今度はFlickr Uploaderを作ってみた。Flickr.NETには ・Flickr APIへの認証(read/write/delete権限の取得) ・ファイル名を指定してアップロード などの機能が揃っているのでさくっと作れた。 できたもの => Archive ドラッグアンドドロップした写真1枚をアップロードする tagやtitleなどが適当に付いている ■oAuthでの認証のためのtoken発行 今回はAPI keyに加えて、secretも使ってfrobを作ってtokenの発行を行わないといけない。 まずkeyとsecretを取りに行く→Flickr Services その辺の仕組みは1つ前の記事と、 ・Flickr API の認証 - まちゅダイアリー (2005-11-01) ・s.h.log: Flickr
« C# on Mono でLinux上にFlash用XMLSocketServerを作る | メイン | Pipes: soup.ioからpost/repostのみのフィードを作る » 2008年01月12日 ■ Adobe AIRの開発環境を整えて、カメラで撮影してJPEGで保存するソフトを作った [Programming&Electronics][Technology] AIRを使うと、flash.filesystemやflash.desktopなどのデスクトップアプリ用のクラス群が使えるようになるので、やってみた。 Air beta3で開発する環境を作って、前からやってみたかった ・半透明で変な形をしたウィンドウ ・USBカメラで撮影してJPEGにエンコードしてファイル出力 を作った。 撮影した写真はプログラムと同じフォルダに保存される。 できたもの => CameraSav
« 年末年始作ったもの | メイン | Adobe AIRの開発環境を整えて、カメラで撮影してJPEGで保存するソフトを作った » 2008年01月09日 ■ C# on Mono でLinux上にFlash用XMLSocketServerを作る [Programming&Electronics][Server][Technology] OpenSourceの.NET FrameworkであるMonoをインストールして、C#で作ったXMLSocketServer.exeをcoLinux上のDebian 3.2で動かしてみた。 VisualStudioでコンパイルしてできた.exeのままで、ちゃんとdllも読み込んで動作してくれるのが凄い。 (.NETなので、VB.NETで書いたプログラムも同じようにLinuxで動くはず) Flash Media Serverは高いので、flvのストリ
前に作ったAS2.0用のこれ → s.h.log: C#に埋め込んだFlashと通信するライブラリ のかわりに、最近AS3をメインに使っているので、C#2.0とFlash(AS3.0)間でメッセージをやりとりするための「XMLSocketCommand」というものを作った。 両者からオブジェクトをXMLにして送って、もう片方で受け取ったらまたオブジェクトに戻す事が簡単にできるC#とActionScript用のクラス群と、そのサンプルプロジェクトを用意したので公開しておきます。 ■ソースコード&サンプルプロジェクト ・AS3.0 sample+source code (FlashCS3), archive ・C#2.0 sample+source code (VisualStudio2005), archive ■サンプルプロジェクトの中身 こんなもの。詳しくは中の、それぞれForm
ActionScript3.0から、「ボタンを押した」とか「XMLSocketを受信した」の様なイベントを登録・実行するしくみとしてEventDispatcherというのが使われるようになった。addEventListener(MouseEvent.CLICK, onClick); しておくと、文字通りイベントがDispatch(発行)されるアレの事。 で、今C#用のXMLSocketServerクラスの上で動くFlashとC#を接続するコマンドメッセージ系を実装してて、それのFlash側のラッパーのコマンド受信イベント等をEventDispatcherで実装してaddEventListenerできる様にしたかったので、調べてサンプルを作ってみた。 ■EventDispatcherサンプルのソースコード EventDispatcherTest (AS3 / FlashCS3) ■参考サイ
Org.Shokai.Net.XMLSocket を作ったよ!あとついでにAS3でのXMLSocketクライアントのサンプルものせておく。 ■これは何? FlashのXMLSocketクライアントを受けるためのC#用のサーバークラス。 Threadの事を考えないで、簡単に使えるようにしてある。同時に複数クライアント受け入れ可能。 XML Parserは内蔵していないので、受け取ったデータは s.h.log: C#でRSSリーダを作ってみるテスト を参考にしてParseして欲しい ■XMLSocketって何? FlashはAS3から普通のSocketが使えるようになって、バイナリデータを送ったりするのが簡単になったんだけど 昔からXMLSocketというのがあってよく使われていた。 まあ結局 '\0' を末尾に付けたただの、文字列でXMLを送るSocketなんだけど。 ■サ
10月半ばごろに、適当に飲みながら?話した事を郡山さんがテープ起こししてくれたので コピペしてみる。 ただし、ほんのちょっとだけ(暴言とか)編集した。 あと、俺は普段語尾は「である」調ではないんだけど、郡山さんが文字起こしするとそうなる。 ---------------- 情報世界と物理世界を同じもののように、タコの足のようにくっつけて、ひとつのものとして作る必要がある。そのための考え方であり技術の選び方を考えなければならない。「ウェブのサービス」などのように分けて考えるものではなくて、全てが一つのものである。「ウェブサービスを作りたい」と言うのではなくて、何か作りたいものの中の部品としてウェブサービスがある。 プログラムを書いている時に試行錯誤している。プログラミングは実装ではなくて、プログラムを書くことが設計である。書いてすぐ試して、というスケッチしているような中でデザインをしてい
かなり他にネタが貯まってるんだけど、とりあえず今作ってるのの整理としてpostしておく。 XMLHttpRequest使えばいいんじゃないか、とも思ったがそんなに面倒でも無いので前のを非同期化してみた。 Download => Org.Shokai.Web.AsyncWebRequest.cs VisualStudio2005Pro / C#2.0環境で動作確認。 Thread使ってるのでHTTPリクエスト中もGUIが固まらない。 ■使い方(簡単に) AsyncWebRequestにResponseというクラスを引数に持つcallback関数を登録して、 get(); すればデータ全部受信した時にcallbackが呼ばれる。Response.contentの中にHTML全部入ってる。 ■使い方 using Org.Shokai.Web; AsyncWebRequest asyncR
XML取得してparseは以前やったけど → s.h.log: C#でRSSリーダを作ってみるテスト 生のHTMLを取得するのはこれが初めて こんな感じでgetできる関数 getPage()を作るString pagedata = getPage(new Uri("http://shokai.org")); Console.WriteLine(pagedata); 参考:WebRequest、WebResponseクラスを使ってファイルをダウンロードし表示する: .NET Tips: C#, VB.NET, Visual Studio using System.Net; using System.IO; using System.Text; public String getPage(Uri url) { WebRequest webreq = WebRequest.Crea
« The Knowing Coding Gap | メイン | 最近買った本-メディア論とか複雑系とか流通とか都市とか疎結合 » 2006年05月23日 ■ WindowsXPでユーザプロファイルが読み込めない時 [Tool&Tips] 昨日夜中に家に帰って、さっきまで学校で使ってたThinkpadX31を起動すると 「ローカルに格納されているプロファイルを読み込めません。セキュリティの権限が不足しているか、ローカルプロファイルが壊れている可能性があります。問題が解決しない場合は、ネットワーク管理者に問い合わせてください」 えええ ↓ 「ローカルのプロファイルが見つかりません。一時的なプロファイルでログインしています。ログオフ時にこのプロファイルへの変更は失われます。」 えええ となって、買った時と同じようなアイコンの全然無いデスクトップになってWindowsXP起動。 こんな時は落
« Arduino - ロータリーエンコーダ改 | メイン | AS3 - SocketClient » 2007年10月28日 ■ C# - TCP Socket Bridge, Server, Client [Programming&Electronics][Technology] 今更ながらs.h.log: SocketでC#とProce55ingの通信の続き。学部の頃に徳田先生のネットワークプログラミングの授業で習ったような気がする事を勉強した。 実はTcpClient、TcpListener、Threadまわりを理解してこれを作るのに2ヶ月ぐらいかかった。 Archive(SrouceCode, exe / VisualStudio2005 C#2.0) 3つサンプルを作った。作った順に 1.SocketClient 普通にクライアント。指定したIPのportに接続する。テ
参考:ControlクラスのInvokeメソッドで匿名メソッドを使うには?[2.0のみ、C#] - @IT GUI描画とは別スレッドから、GUI要素を書き換える時 this.Invoke((MethodInvoker) delegate() { /* GUIの操作*/});かMethodInvoker func = delegate() { /*GUIの操作*/ }; this.Invoke(func); でいい。 例えばtry{ this.Invoke((MethodInvoker) delegate() { textBoxMsg.Text += "hogehoge"; }); } catch(Exception ex){ Console.WriteLine(ex.Message); }とか。 GUIと別スレッドからGUI要素を書き換える時は(例えばSocket通信を受信
これはすごく同意。 最近のプロジェクトを見ていると、奥出研で言うコンセプトができ上がって、粘土こねてなんとなーく、作るモノが見えてくると、途端にみんな手を動かすのをやめて(Craftingをやめて)、電子回路とソフトウエアを洗練することに集中します。まるで暗黙の了解があるかのように、モノの形や人々がふれる部分・場所のデザインがスライドの中だけで語られていること、よくあります。なんか、まずいなあ、といつも思います。出展はちょっと前のうちの研究室のメーリングリスト。 さて、同意なんだが、コレ読んでからちょっとモヤモヤしていたんだけど、最近まとまってきたので書く。 結論からいうと、みんなの言う「実装」は実は「設計」の事だ。ソフトウェアやハードウェアの実装を、工場の製造のメタファーで見ているから間違える。 手を動かしながら、時には寸劇をしてみたりして、こんなものが欲しいなあというのを考えて、いき
IRCを使おう Mac編に続いて、Windows編も書いてみる。 IRCって何?とか何が楽しいの?とかはMac編を参照してほしい。 今回も、IRCクライアント「LimeChat」を 1.インストールして 2.接続先をセットアップする。 3.irc.freenode.netの#oklabに来なさい。以上。 と思ったけどMac版より大分簡単だ。 まず、LimeChat 2.18 インストーラ形式をダウンロードしてインストールする。 「初心者向け」を選択 freenodeを選択し #oklabにjoin 終わり。 Windows版のLimeChatは設定がごちゃごちゃしているので、初回起動時の設定で簡単にやってしまうのがオススメ。
右下の「Load」を押して再生。 → Source Code (Flash CS3 / AS3) 土善開発合宿(ゆーすけべー日記: 奥出研'07秋合宿@土善旅館に部外者(OB)の開発合宿も兼ねて参入してきた)で作ってたBitmapMirror.asを公開しておきます。 宴会直前に到着したのであんまり時間がなかったけど、今回やったことは3つ 1.YouTubeのビデオ(flv)をGoogleVideo経由で取得して 2.AS3のBitmapDataとして扱って 3.鏡面反射させる ビデオはこれを読み込んでいます。ひゃあ゛ああああうまい゛いいいいい ■1.YouTubeのビデオをGoogleVideo経由で取得する 数ヶ月前にGoogleに買収されて以来、 http://www.youtube.com/watch?v=YRY0M5cgDG8 のビデオは http://cache
!!Windows編も書きました → s.h.log: IRCを使おう Windows編!! 色々要望があったのでMacでIRCクライアント「LimeChat for Mac」を設定する方法を書いてみる。 今回のミッションは、IRCクライアント「LimeChat for Mac」を 1.インストールして 2.接続先をセットアップする。 3.irc.freenode.netの#oklabに来なさい。以上。 IRC(Internet Rellay Chat)はユーザが自由にいくつでもチャットルームを作成できて、そこにログインしてみんなでお話ができるモノ。かなり古くからあって、たしか俺が中学の頃からあったから8年ぐらい前には既にあったんだと思う。 twitterとかblogとかメールとか色々あるけどどうやってコミュニケーションのチャンネルを使い分けているのか、自分でもよくわからないしそこ
せっかくMacBook買ったので、Macも使ってみていたらいつのまにかXcodeという開発環境を試していた。 まずRubyCocoa 入門を参考に、電卓を作ってみた。 RubyCocoa入門に書いてあるサンプルに、割り算とかけ算とログ出力機能を追加した。 Source Code (Ruby Cocoa 0.12 / Xcode 2.4.1) 開発環境はこんな感じ。 完全にMVCが分かれて実装される。まだModelを作る為の「CoreData」という奴を触った事がないが、 → 【特集】TigerのCocoaにみるMVCの完成 - スマートなデータモデルを実現するCore Data (1) CocoaのMVCモデルの発展 | エンタープライズ | マイコミジャーナル ViewとControllerを作る為の「インタフェースビルダー」と「Xcode」(XcodeはこれらとQuartzC
昨日Flash CS3を買ったので、さっそくAS3でやってみた。 自分で1からBitmapDataクラスを使うのは初めてだったけどprocessingやってたお陰ですぐわかった。 一旦カメラの前からどいて、Save Backgroundボタンを押してみてください うまくいくとこうなってるはず ■SourceCode (Flash CS3 / AS3) 1フレーム目。左の大きなビデオ(camDebug)とは別に、画面に表示していない200x150の小さなVideoオブジェクト(camVideo)がある。そこからBitmapDataを作って、背景差分法で処理する。処理した結果を画面右のBitmapオブジェクトに表示して、ついでにぼかしフィルタ(blur)をかけた。 背景差分法は、単純に1度保存しておいたBitmapData(bgBmd)と現在の表示(nowBmd)を1ピクセルずつ比較し
CPANモジュールのNet::Google::Calendarを使うとGoogleカレンダーの情報に簡単にアクセスできる。 まずcpanでinstall Net::Google::Calendarという風にインストールする。 そしてこんな感じで、イベント一覧を最近更新された順に取得して表示できるuse strict; use warnings; use Net::Google::Calendar; my $ url = "your-google-calendar-api-url"; my $cal = Net::Google::Calendar->new( url => $url ); $cal->login('your-gmail-address@google.com', "your-password"); for ($cal->get_events()) { print $_-
最近いくつか作ったのでまとめ。だいぶtumblrの使い心地が良くなってきた。 GreaseMonkeyとUserStyleSheetがあると、ユーザビリティがどうとかゴチャゴチャ言ってないで自分で直して他人に公開できるようになるのですごく良いですね。 ■Tumblr Big Photos – Userscripts.org AutoPagerize + LDRizeするとdashboardもLivedoorReaderみたいにさくさく読めるんだけど、画像が小さいままなので、最初から写真を大きくしておくスクリプト作った。 これでLDRの様に、視線を動かさないで j, k で適切な量だけスクロールして見ていけるので、 未読30ページぐらいあっても5分ぐらいで見れる。この目の動かし方は縦書きの本を最速で速読してる時と同じだ。 → なんかcssでもできるとのこと。 ■Tumblr - Hid
次のページ
このページを最初にブックマークしてみませんか?
『web.sfc.keio.ac.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く