WebSocketから、これからのWebを予想してみるを読んで思うところがあったので、年末年始にHTML5 APIガイドブック コミュニケーション系API編を読み直してみたら、色々再発見があったり、一周目で理解が曖昧だった部分がきちんと理解できたりして、有意義な正月を過ごせた。
最終日をダラダラと過ごしつつ、Socket.IOのサンプルをCoffeeScriptで書きなおしてみた。
handler = (req, res) ->
fs.readFile(__dirname + '/index.html',
(err, data) ->
if err
res.writeHead(500)
res.end('Error loading index.html')
res.writeHead(200)
res.end(data))
app = require('http').createServer(handler)
io = require('socket.io').listen(app)
fs = require('fs')
io.sockets.on('connection',
(socket) ->
socket.emit('news', { hello: 'world' })
socket.on('my other event', (data) -> console.log(data)))
app.listen(5000)
やっぱブラウザがデスクトップみたいな位置付けになってwebsocketを使ったプログラミングが主流になるんだったら、結局以前のようなソケットプログラミングに回帰してしまって何も変わらない気がするんだが、抽象度が上がるとなんか変わるんだろうか?そこがいまいちイメージできない。
デスクトップという概念が変わるのかなぁ(あれはデバイス依存な概念な気がするし)。そういえばMetro UIは(従来の)デスクトップぽくなかったしなぁ。
デバイスといえばNode.jsでArduinoにアクセスできることを知ったのでなかなか面白いことができそう。
Arduinoとリアルタイムなウェブって相性良さそうですな。
ところで、三連休の最終日に静岡デベロッパーズつくる会#4をやるので、正月休みでなまった身体のリハビリに黙々となんか作るのはどうですかね?暇人お待ちしています。