素敵ワードの続き。

個人Webサービスが何で気になるのかというと、エンジニアとして習得していくべきスキルに今までのレイヤーという考え方以外の見方ができるんじゃないかと思ったから。

前提として、俺はこの地上でおこなわれる、ありとあらゆるプログラミング行為が好きだし、その人間がプログラマーだというだけで足の爪をヤスリできれいに整え、ペディキュアを塗って回りたいぐらい無条件で好感を持つ。できることならばアセンブラからActionScriptまで、回路設計からネットワーク構築まで全てやりたい。しかし、どんなに頑張っても512歳まで生きられそうにないので泣く泣くある程度スキルを取捨選択しなければいけないという事情があります。(あたりまえ)

システムを作るということをレイヤーという考え方で見るとスキルのレイヤーは、上は「SI会社の電話番号を知っている」で下はバイナリよりも下がって「物理学」ということになる。要は「好きなレイヤーを勝手にやんなさい」ということなんですが、いまいち自分がどのレイヤーが好きだというのがわからず、しっくりこなかった。

しかし、個人Webサービス(2人ですが)を作ったときに、上から下まで全部自分で作る楽しさと、個人としてフィードバックをもらえる嬉しさ、レイヤーという考え方ではともすれば、”広く浅い”とか、”中途半端”などと言われそうなスキルが別の軸で新しい価値を持って結合していくのを感じました。

そして個人Webサービス作成者という視点で見ると技術の選択とか勉強すべきこととか今まで悩みがちだったことが簡単に決断できることに気付きました。そういった視点で情報共有していくために何か(仲間という意味での)コミュニティ的なものが欲しいなと思いました。

何を用意すればいいのかな。何か個人Webサービスを作ってる人が何人か集まって持ち回りでTipsとか新しい個人Webサービス情報を書いていくEngadgetとかTechCrunchみたいのを作ればいいのかな?

記事のイメージ的には「いいレンタルサーバー情報」とか「便利なRailsプラグイン」とか「簡単に良さげに見えるデザイン方法」とか「便利な死活監視ツール」とかそんな感じです。

OPML2Twitterをつくってみた – よくきたblog

まずplnet.最近で言うとaboutmeっぽいやつですけどずいぶん前からあります. ようするに自分のいろんなCGM系コンテンツがある人がそれらのRSSなどのフィードを用いて1箇所にまとめちゃいなYO!!ってサービスです.

(中略)

- OPMLを取得する - simplexmlで解析し,フィードURL群を束ねる - XML_Feed_Parserでエントリ群の題名,URL,日付を取得する - エントリをTwitterに送る,とりあえず複数エントリある場合の送信は2分間隔でおこなう.

よくきたblogで上鍵さんがPlnetを利用して最新エントリをTwitterに送るスクリプトを公開してくださってます。

OPMLのアイコンがかわいいという理由だけでOPML出力してたんですが(言い過ぎですが)初めて使われた気がして感動しました。それと同時にバグも見付かって上鍵さんには直でPlnetのTracにわざわざTicketを入れて貰いました。

なんでRSSじゃなくてOPMLなのかというとエントリのURLが元の記事じゃなくてPlnetのパーマリンクになるからなんですな。RSSにそれっぽい語彙があったらそのURLも忍ばせたいもんです。

それとさり気なくPHP5を使ってるのがショック。PlnetはPHP4なのでUbuntuでの開発が面倒になりつつあります。(家のDebianで開発してる)simplexmlとかXML_Feed_Parserとか便利そうですね・・・。

何度か使っちゃってる言葉だけど、「個人Webサービス」が気になる。

個人Webサービスを作る人の何らかのコミュニティが欲しいし、なんだったら作りたい。でも多分、それを表す素敵ワードが開発されないと駄目だな・・・。

Martin Albisetti » Blog Archive » PHP4 not available in Feisty

PHP4 is not in Feisty Fawn’s repositories at all and has been completely replaces by PHP5.

Ubuntu 7.04で遂にPHP4が消えたーーーっっっ!!

まいったなこりゃ。

意識とはなにか―「私」を生成する脳

クオリアの問題に対してド真正面からぶつかる本。30過ぎてからいきなりこんな、一生かかっても引っかき傷一つ付けられないかもしれない問題に挑むなんで凄いというか何というか、いったい何があったんですかと思った。

本書では、「やさしい問題」とか「お気楽な」なんて表現されてる脳科学の方では最近読んだ進化しすぎた脳が面白かった。進化しすぎた脳の中でもクオリアの話は出てくるけど、ほぼ諦め気味というかホント困ったなって感じ。それだけにこの分野で何か進展があったらえらいことですな。

進化しすぎた脳
  • 進化しすぎた脳
  • 講談社(2007-01-19)
  • 講談社
  • (著)池谷 裕二
  • 定価:¥ 1,050
  • 新品価格:¥ 1,050
  • 中古価格:¥ 849
  • ASIN:4062575388

Mixiの日記をRSSにするときにmechanizeを使ってそれぞれの日記ページを取ってくるところでThreadが複数になるとInterrupted system call (Errno::EINTR)というエラーが出てうまくいかない。(1スレッドの場合は大丈夫)

↓こんな感じのコード。

# diary_urls --- MIXI日記のURLの配列
# agent ---Mixiに ログイン済みのmechanizeのインスタンス
diary_urls.each do |url|
  threads << Thread.new(agent, url) do |a, u|
    page = a.get(u)
    res = page.root.seach(...)
    entry = {
      "url" => "...",
       "title" => "...",
       "body" => "..." 
    }
  end
end

entries = []
threads.each {|t| entries << t.value }

Threadを使ったコードをあまり書いたことが無いので良くわからなくて難しい。

JavaからRubyへ ―マネージャのための実践移行ガイド

実務でJavaからRubyへ移行するための実践的な幾つかの作戦。

それとは別に気になったのがRubyを使った継続サーバについて何度か言及してるとこ。Wee、Borges、Iowaなど聞いたこと無いけど気になるなあ。でもIowaはちょっと聞いたことある気がする。ちょっとのぞいてみようかな

hello_world.rb

#!/usr/local/bin/ruby
require 'iowa'
#require 'iowa_webrick' #Uncommment here and comment above to use WEBrick

class MySession < Iowa::Session
  def initialize(*args)
    #####
    #// One can setup special per/session objects or data items here.
    #####
    super
  end
end

class MyApplication < Iowa::Application

  def initialize(*args)
    #####
    #// Initialize any application wide items here.
    #// An example would be a database connection
    #// connection pool.
    #####
    super
  end
end

Iowa.startDaemon('hello_world.cnf')
Iowa.run

hello_world.cnf

socket:
  hostname: localhost
  port: 9988
logging:
  basedir: /var/log/iowa/hello_world
  minlevel: 0
  maxsize: 10000000
  maxage: 86400

だめだぁ、[あとでよむ]

ちょっと暇になるとすぐWindows入れたりUbuntu入れたり意味不明なOSの往復をしてるわけですが、今またUbuntu期です。(会社のパソコン)

以前、MacBookを使ってた方が退社されて、「誰か使いますか?」と募集があったところに、

⊂(゚Д゚⊂`つズザー ⊂(゚Д゚⊂`つズザー(俺)

と二人滑り込みました。そしてジョジョばりの渾身のじゃんけんの末、俺が敗北したわけですが、最近になって勝っただんだnさん

「やっぱり交換してくれないスカ」 「キーボードが打ち辛い」 「ThinkPadにUbuntuが良いんじゃないかと」

などとMacに挫折気味の様子。そこでまず俺がUbuntu試してみることに。とりあえず覚えたばかりのScreencast作成方法でよくあるBeryl動画を作ってみました。

かなり使い易いのでMacと交換するか悩むところです・・・。

最速インターフェース研究会

手間をかけずに日本語表示を試したい人は

Documents and Settings\username\Application Data\Apple Computer\Safari\WebKitPreferences.plist を編集してフォント名を指定している箇所を全て「MS UI Gothic」に変更すると良さげ。

こちらを参考にUbuntuのVMWareのWindowsにSafari3入れて日本語見えるようにしてみました。

safari3_on_windows_on_ubuntu

おおー、結構ちゃんと動いてる!

これでTracにあがってるSafari系のバグが潰せるぞと・・・。(面倒)

「Wikiで昔のデータから戻すのはどうすればいいんですか?」という質問を受けました。何か丁度LinuxでのScreencastの録画方法を探してるところだったのでScreencastで、「↓こんな感じです」と返したら意外と喜ばれました。

LinuxでのScreencast作成用ソフトをいくつか試してみました。

  • Wink
    Linux版もあるおなじみツール、注釈を入れられたりswfだったりしてWebサービスの紹介用には良さそう。ちょっと録画って用途には少し面倒かもしれない。
  • Istanbul
    synapticで入るし、使いかたもGnome標準のスクリーンキャプチャとほとんど同じと、かなり使い易いが出力形式がOgg-Theoraなのがちょっと・・・(Youtubeはogg非対応、Google VideoならOK!)
  • xvidcap
    リポジトリには無いけどdebは提供されてるのでインストールは簡単。気軽にmpeg形式のScreencastができる。おすすめ!

Winkとか結構手間がかかるイメージだったんですが、Youtubeにアップするの前提だからswfよりmpeg吐いてくれた方が都合がいいんですよね。自分サーバーの容量も食わないしブログ貼り付けも楽。もっと活用できないかな。