スキップしてメイン コンテンツに移動

投稿

2月, 2009の投稿を表示しています

第7回北海道開発オフ、大盛況でした。

さて、今日は第7回北海道開発オフの日でした。当初13名の予定が、あれよあれよと増員され、最終的には以下のメンバー。17人!すごい。お忙しい中お越し頂いた皆さん、お疲れ様でした。今日も楽しかったです。 @smokeymonkey @irasally -> Sapporo Weather @hadzimme @webbingstudio @makies @iyoupapa @h_hiro @maimuzo @sak @snoozer05 @darashi -> SAPICAの利用履歴を可視化する @ketaiorg @shuji_w6e -> pilika @osabou -> @CTSInfo @lncr_ct9a @nakayoshix @n24bass 相変わらずのまったりゆるゆるな感じで進行しました。お昼ご飯は第6回と同じく スープカレーSuage+ に行きました。 さて、今回僕がやったのは以下の2つ。 ・ [-*煙猴*-]: 第7回北海道開発オフ成果:Yma4rを使ってみる ・ [-*煙猴*-]: 第7回北海道開発オフ成果:Google TrendのHottrendをTwitter投稿する それと、開発サーバをEtchからLennyにUpしてから動かなくなっていたPlaggerスクリプト(JVN、SapporoNews)の対応...してたのですが、結局動かず。Ruby化を目論みましたが失敗。近いうちに完成させます。 ついでに、やたらと増えてしまったTwitter Botたちを記録しておきます。 @JVN @SapporoNews @LastFmRank @dabesa @AngraMainyu @ITWSCAL @825fm 次は3月にプチ開発オフをやる予定ですので、興味のある方はぜひ参加して頂けると嬉しいです。

第7回北海道開発オフ成果:Google TrendのHottrendをTwitter投稿する

Google Trend 急上昇ワード を取得してParseして @dabesa に喋らせる。 #! /usr/bin/ruby -Ku require 'open-uri' require 'rexml/document' require 'net/http' require 'rubygems' gem 'twitter4r' require 'twitter' require 'pit' # Twitter4Rバグ回避 require 'cgi' class Hash def to_http_str self.map{|key,value| "#{key}=#{CGI.escape(value.to_s)}"}.join("&") end end # TinyURL化メソッド def tinyurl(link) url = "http://tinyurl.com/api-create.php?url=" + link open(url) do |http| res = http.read return res end end begin uri="http://www.google.com/trends/hottrends/atom/hourly" xml = open(uri).read eventlist=Array.new REXML::Document.new(xml).root.elements.each("entry") do |elm| eventlist << elm.elements['content'].text.to_s end i = eventlist[0].index("href=") i = i + 6 j = eventlist[0].index("&sa=X") j = j + 4 url = eventlist[0

第7回北海道開発オフ成果:Yma4rを使ってみる

@niku_name さんが開発オフでも作っていた、 yma4r を試してみる。 (1)インストール。cucumberも入れないと動かなかった。 sudo gem source -a http://gems.github.com sudo gem install cucumber sudo gem install niku-yma4r (2)以下ソース。 #!/usr/bin/ruby -Ku # Yahooのテキスト解析は以下を参照 # http://developer.yahoo.co.jp/webapi/jlp/ma/v1/parse.html require 'rubygems' require 'yma4r' puts "###### 形態素解析(ma)" yma4r = Yma4r.new( # YahooアプリケーションID :appid => '自分で取得したYahooアプリケーションID', # 解析対象のテキスト :sentence => '友達の友達は皆友達、俺の友達とお前の友達は皆友達。', # ma->形態素解析結果、uniq->出現頻度情報 :results => :ma, # 戻り値を指定、以下の5種類がある :response => [:surface, :reading, :pos, :baseform, :feature] ) yma4r.parse.ma_result.word_list.each do |e| puts "surface:#{e.surface}, reading:#{e.reading}, pos:#{e.pos}, baseform:#{e.baseform}, feature:#{e.feature}" end puts "###### 出現頻度数(uniq)"

Mechanizeを使ってTwitterのアイコンを変更

@riywo さんの Twitterのアイコンに自動で文字入れたりするPlagger が楽しそうで刺激されたので、Twitterのアイコンを変更するスクリプトを書いてみた。Mechanizeを使って画像ファイルをPOSTしてるだけです。Mechanizeを使うのは初めてだったので苦戦しました。Cronで6:30と20:30に実行して、昼と夜でアイコンに切り替えます。 #! /usr/bin/ruby -Ku require 'rubygems' require 'mechanize' require 'date' begin uname = "USERNAME" upass = "PASSWORD" agent = WWW::Mechanize.new page = agent.get('http://twitter.com/login') f = page.forms.first f.field_with(:name => 'session[username_or_email]').value = uname f.field_with(:name => 'session[password]').value = upass data0 = agent.submit(f) data1 = data0.link_with(:text => 'Settings').click data2 = data1.link_with(:text => 'Picture').click f = data2.forms.first if DateTime.now.hour > 6 and DateTime.now.hour < 20 then f.file_uploads.first.file_name = "twDay.png" else f.file_uploads.first.file_name = "twNight.png" end agent.submit(f)

IT勉強会カレンダーの内容を1ヶ月分と1週間分にまとめてBlog投稿

前回の北海道開発オフで @ITWSCAL を作ったのだけど、当日分の勉強会開催情報しか配信されないので、事前に数日後の勉強会をチェックするのには使えない。そこで、IT勉強会カレンダーの内容を1ヶ月分及び1週間分としてBlogに投稿するスクリプトを作った。基本的には、自分でRSSで読めたら便利かなぁ、というだけです。 IT勉強会カレンダーの二次利用については、運営されているはなずきん♪さんの こちら を参照。大変な運用をされている、はなずきん♪さんに感謝と賛辞を。 投稿されるBlogは http://itwscal.smokeymonkey.net/ 。ソースは以下。 #! /usr/bin/ruby -Ku require 'open-uri' require 'date' require 'rexml/document' require 'kconv' require 'net/smtp' begin fday = Date.today.to_s array = Date.today.to_s.split("-") day = Date.new(array[0].to_i,array[1].to_i+1,1) lday = day.to_s uri="http://www.google.com/calendar/feeds/fvijvohm91uifvd9hratehf65k%40group.calendar.google.com/public/basic?orderby=starttime&max-results=10000&start-min=" + fday + "&start-max=" + lday xml = open(uri).read eventlist=Array.new cntlist=Array.new REXML::Document.new(xml).root.elements.each("entry") do |elm| cnt = elm.elements['content'].text.to_s

社内勉強用資料「超・ネットワーク入門」を作った

最近月1回の社内勉強会を開催しています。方式としてはほぼ 北海道開発オフ 方式をとっているのですが、やはりテーマが無いと食らいつきが悪い。そこでまず、あまりネットワークに詳しくない社員を対象にネットワークアナライザを使ったハンズオンをしてみようと思い、勉強用資料として、以下のスライドを作成してみました。 Slide View more presentations from Smokey Monkey . 実は SlideShare を使うのは初めてです。内容も初歩的なものですが、まずはこれで経験の浅い社員に勉強してもらおうと思います。ツッコミも募集します:-) 他にも「こんなのやったらいいんじゃない」とかネタがあったらぜひ教えて下さい。

僕の残り短い20代をカウントするスクリプト

待って!まだ逃げていかないで、僕の20代! #! /usr/bin/ruby require 'time' require 'rubygems' gem 'twitter4r' require 'twitter' require 'pit' require 'open-uri' require 'kconv' # Twitter4R バグ回避 require 'cgi' class Hash def to_http_str self.map{|key,value| "#{key}=#{CGI.escape(value.to_s)}"}.join("&") end end begin tday = Date.today bday = Date.new(2009,3,8) zday = bday - tday mess = "The one's twenties of smokeymonkey is " + zday.to_s + " another." # Ej9F config = Pit.get("Twitter") cl = Twitter::Client.new(config) cl.status(:post,mess) rescue print "RuntimeError: ", $!, "\n"; end

北海道情報セキュリティ勉強会のロゴが変わりました

事の経緯:せきゅぽろでもスタッフ用のネームカードが欲しいね→可愛いロゴがあると良いね→ まっちゃだいふくさん が無茶振り→ toshizou さんが 北海道情報セキュリティ勉強会(せきゅぽろ) のロゴを作ってくださいました! すげぇ!かわいい!札幌っぽい! なんとデザイン違いのネームカード用ミニロゴまで! 僕の長女はこっちのほうが好きと言ってました。どっちも素敵です。 toshizouさん、ありがとうございました! 2009年4月11日(土)に第2回の北海道情報セキュリティ勉強会を予定しています。近日アナウンス予定、皆さんのご参加をお待ちしております!その際には新ロゴのネームカードをお渡しできるように準備したいと思います(笑)

スノーゴーグルを購入した

今シーズンは長女の付き添いでスキーに行ったり、同僚とスノーボードに(デビュー戦で)行ったり、ウィンタースポーツをする機会が増えました。というか、実際のところ10年ぶりです。高校卒業以来一回も滑ったことが無かったので、体力的に不安だったのですが、まぁ何とかついていけてます。 道具については高校時代に使っていた板・ポール・ブーツ、そしてウェアを流用。10年経ってもウェアが着れるというのは喜ばしいことですが、さて後何年体型維持できるか...グローブも10年前のものをそのまま使っていますが、帽子はさすがにデザインがキツく、ゴーグルは傷だらけで使い物にならず。どうしようかと困っていたのですが、やっとゴーグルと帽子を購入しました。帽子は普通のニットのもので、まぁセールで\500のもの。ゴーグルは↓これです。 スワンズ(SWANS) DREAD-DH BK(ブラック) DRD-DH posted with amazlet at 09.02.22 スワンズ(SWANS) Amazon.co.jp で詳細を見る 僕は眼鏡をつけたまま滑るので、眼鏡着用可タイプであるDRED-DHを選択しました。展示品箱無しで\9,450→\4,480でした。どうせ年間4,5回しか使わないので、このレベルで十分です。 さっそく来週、長女を連れてスキーに行きたいと思います。

すもけ Presents Now Playing by Youtube

Naturally 7:[Feel it (in the air tonight)] Bobby V feat Yung Joc:[Beep] INDIA.ARIE:[Beautiful Flower] Plies:[Put it On Ya] Soulja boy tellem:[Kiss Me Thru The Phone] Haystak:[Hard 2 Love By] Savage:[Swing] サイプレス上野とロベルト吉野:[WONDER WHEEL] GrandMaster Flash Feat. V.A.:[We Speak Hip Hop]

LOCAL定例会見学ツアー

2008/02/19(木)、 北海道開発オフ のメンバーで、 LOCAL の2009年2月度定例会を見学してきました。事の経緯は こちら 。雰囲気だけレビューします。 20:00、札幌駅西口にて待ち合わせ。参加者は@smokeymonkey、 @irasally 、 @hadzimme 、 @webbingstudio 、 @h_hiro の5人(敬称略)参加予定だった @iyoupapa さんは風邪により急遽欠席。お大事にして下さい。 引率係の @makies さんに引き連れられて札幌駅北口の 札幌ビズカフェ へ。実はビズカフェは初めて行きました。入場\500でフリードリンク、カウンタとテーブル2席、奥に会議室という構成でした。テーブルには打ち合わせをされている若い方がいらっしゃったり、結構活気あるんだな、という印象。待っていると徐々にLOCALメンバーが集まってきて、最終的には14,5名が参加されていました。僕ら見学者は後ろのほうに固まって傍聴。 定例会の議事内容自体は、後日LOCALのWebサイトにアップされると思うので割愛。会議自体は、@irasallyさんが「こんなに熱い討論を見たのは高校生以来」とぽろっと呟いたくらい活発でした。最初に議題のアジェンダをWikiにアップしておき、プロジェクタで映しながら進めていたので、スムーズに議事が進行していました。またUstreamでも定例会風景が配信されていました。僕も以前Ustreamで定例会を見ていたことがあったんだけど、活動を広く知らしめるという点では良いことだと思います。UstreamのURLが分からなかったけど...Webサイトに書いてあったのかな?多岐にわたる活動について、皆で議論しながら進めていくスタイルである、ということがよく分かりました。 22:00に閉会、その後軽く食事にでも、ということで僕も混ぜてもらい、ちょっと呑んで帰宅しました。和気藹々としていて楽しかったです。アマチュア無線の話はさっぱりわかんなかったけど(笑)お土産に手作りパンまで頂きました。美味かったです。 LOCALはメタコミュニティというスタンスで、道内でコミュニティを開催する際に後援してくれる、というイメージしか無く、なかなか実際の活動を把握していなかったのですが、この定例会の見学で大分見えてきたと思います。LOCALとしても多く

Youtubeで20syl本人ぽい人発見

何気なくYoutubeをDiggしてたら、 20syl というユーザを発見。この人リアルに、フランスのHip Hop Band Hocus Pocus のリーダーの20syl本人ぽいですね。MPCでビートメイクしている映像なんかもあります。 Hocus Pocusは超ファンキーでカッコいいです。 Place 54 posted with amazlet at 09.02.18 Hocus Pocus Motown 売り上げランキング: 437187 Amazon.co.jp で詳細を見る

昨晩から今日にかけていろいろ大変だった件

・ Geekなぺーじ : 今朝、インターネットが壊れました ・ yebo blog: インターネットでルーティング障害発生 ・ Daily Kos: State of the Nation (1)AS47868を繰り返す異常な長さのAS Pathが発生。 (2)一部のルータは相手を不正なpeerと見なしセッション切断。 (3)一部のルータはAS Pathを受信しちゃってさらに広報。 (4)経路大混乱。 どうも(3)についてはIOSのバグであったらしく、Version Upによって解消される問題だったらしい。僕も詳しく追えていないんだけど、備忘録として記録しておく。ネットワーク管理者の皆さん、お疲れ様でした。まだ終息していないところもあるだろうけど(汗)

吉四六漬けが美味い

皆さん、吉四六漬けを知っていますか。僕は知りませんでした。大分県玖珠町の名物の漬物だとか。長女が仲良くしている女の子のお母さんの実家が大分県だということで、貰い物したものです。 頂いたのは大根・人参・胡瓜の3種がセットになったもの。独特のもろみで漬けたものだそうですが、なんとなく味噌っぽい風味がします。結構塩ッ気が強いのですが、小さく刻んで炊き立ての白米と一緒に食べると極楽。すげぇ美味いです。これなら日本酒や焼酎のツマミとしても良いと思われます。お茶請けにしたらバクバク食べちゃいました。 地方名物の漬物としてはいぶりがっこも好きなのですが、また一つ美味しい漬物に出会えました。

読了:神林長平:[魂の駆動体]&僕のクルマの話

魂の駆動体 (ハヤカワ文庫JA) posted with amazlet at 09.02.16 神林 長平 早川書房 売り上げランキング: 176555 Amazon.co.jp で詳細を見る 全人類を精神体シェルターに格納する、というのは「小指の先の天使」でもあったモチーフでしたが(あれ、そーいやゼーガペインもそうだっけ)、今回はそのモチーフを背骨に、クルマや「物を作る」ということの魅力を肉付けした物語です。すごく面白かったんだけど、ここで僕が伝えたいのはその感想では無くて、この小説を読んで思い出した、僕の乗っていた車の話です。 免許を取得した当初は親の車(日産・サニー→トヨタ・スターレット)に乗っていて、その後初めて自分で購入したのは中古のはダイハツ・ミラ・パルコでした。込み込みで10万という、値段も破格ならボロさも超絶。しかしぶつけてもこすっても頑丈に走ってくれました。 その後正社員として就職し、初めて買ったのが、昔からどうしてもどうしても欲しかった夢の車、VW TYPE-1。1947年製、色はベージュ、オーバルウィンドウで、ブレーキランプがウィンカーも兼ねたタイプです。エンジンを新品に乗せ変えてレストアされた、素晴らしいヒストリック・カーでした。 もちろん、レストアカーらしく、さまざまなトラブルに見舞われました。購入当初はマフラーから直接ガソリンが噴出し、エンジンの調整が甘くて回転数が低くすぐにエンスト。フロントガラスから雨漏りするわ、クラクションを鳴らしたらクラクションボタンが飛んでくわ、走行中にワイパー吹っ飛ぶわ、夏は暑いわ、暖房用のジェットヒーターを別付けしたからガソリンスタンドではエンジン用のハイオクとジェットヒーター用の軽油を給油してもらう必要があるわ、真冬にエンジンが動かなくなり薄野交番前でおまわりさんに怒られながら友達に牽引してもらうわ、シートベルト付いてないから走行中に検問で引っかかって「すみません、最初から付いてないんです」って言ったらおまわりさんに苦笑いされるわ、ガソリンタンクがフロントに設置されているため彼女には「車内がガソリン臭い」ってブースカ言われるわ、もう散々です。 しかし、だからこそ面白い。なかなか回転数が安定しないエンジンを、少しずつ回しながら安定させる。安定走行したときの水平4気筒の音は最高でした。ラジオが壊れていたけど

LOCAL DEVELOPER DAY '09/Winterが開催されました

関連: 【告知】LOCAL DEVELOPER DAY '09/Winter 2009/02/14、LOCAL DEVELOPER DAY '09/Winterが開催されました。僕は せきゅぽろ のスタッフとして、お手伝いさせて頂きました。参加者の皆様、お忙しい中わざわざお越し頂き、ありがとうございました。講師の皆様、遠地からご足労頂き、ありがとうございました。 さて、参加者としての感想。正直なところ、PHPやPostgreSQLの深い話は、僕には難しいところもいっぱいあったのですが、原さんのMogileFSの話や中津川さんのMOONGIFTの運営話はすごく面白かったです。またせきゅぽろ枠としてお越し頂いた大垣さんのセキュリティ対策のセッションは、トータル的なセキュリティについての話だったのでとっつきやすく、好評だったように思います。クラッキングビデオとか面白かったなぁ。内容のボリュームを考えれば、もっと時間確保しておいたほうが良かったなと思いました。次は2コマでお聞きしたいですね(笑) 懇親会では、大垣さんとセキュリティのお話をしたり、中津川さんにPythonについてお聞きしたり、原さんとZABBIXのお話をしたり、小岩さんに「DoLUCはいつ復活するんですか」って聞いたり、すごく楽しかったです。残念ながら終電の関係があり、僕は0時前に撤収したのですが、もっともっと色々お話させて頂きたかったですね。割合としてスタッフや関係者が多かったのは残念なところ。もっと参加者の皆さんとお話できる環境を作るにはどうしたらいいか、今後の反省点ですね。 個人的には、昔の会社の先輩の旦那さんにお会いしてお話が出来た、というのもとても良かったです。こういう風に、思いがけないところで人のつながりを感じるのっていいですよねー。 参加者の皆さん、本当にありがとうございました。皆さんが楽しめたのなら、一スタッフとして嬉しい限りです。またせきゅぽろの勉強会を開催しますので、ぜひ来てください!

はなずきん♪さんに感謝状が渡されたそうです

関連: [-*煙猴*-]はなずきん♪さんに感謝状を贈ろうプロジェクト 既に旬が過ぎた話題ではありますが... 上記でご紹介したIT勉強会カレンダーの作成者 「はなずきん♪」 さんに感謝上を贈ろうというプロジェクトが発足していましたが、2月7日のセキュリティ&プログラミングキャンプ・キャラバン京都で、 hyoshiok さんからはなずきん♪さんに感謝状をお渡ししたそうです。素晴らしい! ・ 感謝状をいただきました。 こっそりと左上に僕の名前もあります。 はなずきん♪さん、今後もまたーり続けていってください!応援してます。

FM NORTH WAVEのプレイ曲をTwitterに投稿する@825fmを作った

僕の大好きな北海道のFM局 「FM NORTH WAVE」 のWebサイトでは、ラジオでプレイした曲が確認できる仕組みがあるので、最新のプレイ曲をTwitterに投稿するBotを作って見ました. @825fm 2008/02/18 Update:当初は30分に1回Cronで回してたんだけど、投稿時に再生時間を別ファイルに保存して、3分に1回Cronで回して、前回投稿時より再生時間が新しい場合だけ投稿するように改造。投稿量が増えるだろうけど、大体再生した曲を全てTwitterに流せると思う。 2009/02/21 Update:North Waveでは29時に日を切り替えているので、29時までは前日のURLからデータを取得するように改造。 以下ソース。 #! /usr/bin/ruby require 'time' require 'rubygems' gem 'twitter4r' require 'twitter' require 'pit' require 'open-uri' require 'kconv' # Twitter4Rバグ回避 require 'cgi' class Hash def to_http_str self.map{|key,value| "#{key}=#{CGI.escape(value.to_s)}"}.join("&") end end begin # 前回の最新投稿の楽曲再生時間を取得 btime = nil tfile = open("825.txt",'r') tfile.each do |time| btime = time.chomp end tfile.close # NorthWaveでは29:00で日時変更される if DateTime.now.hour > 4 then # 今日の日付を取得 nday = Date.today.to_s else # 昨日の日付を取得 tday = Date.today.to_s.spl

UbuntuのWebブラウザをOperaにしてみた

Ubuntu上のFirefoxがやたら重い。複数タブを開くとCPU負荷が急激に高まる。LDRでPinを一気に展開したとき等すごいストレスなので、Twitterで代替ブラウザについて聞いてみたところ、 @oquno さんからOperaを勧められたので導入してみた。 インストールは Operaのダウンロードページ からdebパッケージをダウンロードしてきてインストールするだけ。初期状態だとフォントがおかしいので、詳細設定から変更(東風フォント等の日本語フォント)に変更してあげる必要がある。 動作は非常に快適。複数タブを開いてもほぼ問題なくサクサク展開される。Firefoxの時と同じくニコニコ動画ではコマ落ちが激しく見るに耐えないけれど、動画以外で使う分には軽くて良い。greasemonkeyまわりの環境が使えなくなったのは痛い(カスタマイズで使えるみたいだけど面倒臭い)けど、とりあえず実用に耐えうるので、しばらくこれで使ってみる。

「血液型 自分の説明書メーカー」をやってみた。

血液型 自分の説明書メーカー をやってみた。 て、的確過ぎてフイた。

読了:神林長平:[時間蝕]

「永久刑事」とか「PAB」とか、他の作品に繋がる設定や小道具が出てくるので、あぁここが原点なのか、と思いました。「ここにいるよ」が一番分かり辛く、「酸性雨」が一番分かり易いかな。SFとして一番面白かったのは「渇眠」でした。