Genesis Lightning Talks #21
http://wiki.somethingnew2.com/lt/index.php?Events%2F2009%2F11
Genesis Lightning Talks #20 でも話していますが、Blogは抜けております。一応念のため。
テーマは「IT禁止」
今回はネタが思いつかず、発表を悩んでいたらあれよという間に6番手でした。
他の発表者についてはここで語るより実際に動画を見たほうがいいと思われます。(モノボケをここでネタバレするのも面白くないので)
発表テーマ「絶滅(危惧種)動物にまつわるすべる話」
歴史ネタしかないじゃないかと思いましたが、せっかくなので家業とも言うべき生物ネタをやってみました。
オオウミガラスとリョコウバトについてはどこかで語りたかったのですが、誰も話す相手がいなかったので思い切ってやってみました。
オーストラリア区の話が少ないのは、それだけで1テーマできるので今回は回避です。
今回の最大の失敗は、他に生物ネタをやっている人がいたことに尽きます。
おまけ
私の発表時の動画ですが、はじめ数分は残っていないそうです。
はじめ数分なんて、ネタが滑ってもOKなように保険をかけているだけなので、残っていなくても問題ないと思われますが。
Genesis Lightning Talks vol.19
Genesis Lightning Talks vol.19に参加してきた
もう、先週の話になってしまいますが、今回もGLTに参加してきました。
http://wiki.somethingnew2.com/lt/index.php?Events%2F2009%2F09
これでGLTへの参加は5回目、発表は4回目となります。
前回の居酒屋含めて、ここ最近は皆勤だったりします。
テーマは「きゅう」
今回は2009/09/09発表ということもあり、テーマは「きゅう」となりました。
kwappaさん「Q 善意と愛と品質と」
- QWAN(QualityWithoutAName)
- 無名の質とはものごとがうまく行っているときのいい感じ
- 善いものをつくろうという気持ち
- 契約・報酬・義務ではうまれてこない
Eric Yap「求9」
- マレーシアからはるばると
- 資料なしトークプレゼン!
- 文化の違いって大変
ヒガシ「9++」
- 自分が髪を切って9++周年
- はぴはぴはっぴ〜
yokatsuki「代替引用符q」
- 文字列のインサート例
- insert into table values('I'm happy')
- =>insert into table values(q'[I'm happy]')
- あまり知られていないけど便利
arihhのプレゼン
今回のテーマは「旧国名"蝦夷"」
2分間ほど好きなだけ歴史について語ったあとは、普通に@hokkaidobotの宣伝。
http://twitter.com/hokkaidobot
本来は「きゅう」ということで野球の変化球についてトークしようかと思ったけどあきらめました。
というわけで私の発表資料
アマゾンEC2ナイトセミナ第2回
ここしばらく更新がなかったので、たまにはセミナ情報をブログにまとめます。
今思うとRubyKaigiを一切まとめなかった自分が不思議で仕方がないです。
藤川真一(えふしん)さん:自宅サーバからEC2へ
モバツイッタ
トラブル
EC2構成
費用
EC2メリット
変われない例
- アプリケーションエンジニアがサーバに関する仕事を放棄している
- インフラが力を持っている
- サーバエンジニアはシステムアーキテクトへのキャリアパスを考える必要がある
- 変化は終焉から起きる
質問
- EC2で異常(フェールオーバ)が起こってもサービスは続く?
- サーバの設定次第
- ただし、商用利用はまだむずかしいらしい。
- 自身は経験なし。
- 費用は?
- PVが増えるとアドセンスが増える。費用はそれ依存
- TLのとり方が辛い。戻る押したときにTLが流れたら戻っていないとか
- 一応、セッションに入れて戻るようにはなっているけど動きは微妙。
横田真俊さん:AWSから見るクラウドコンピューティング
分類
- SaaS…エンドユーザサービス(例:Gmail,WIndowsLive)
- PaaS…Webアプリを提供(例:GAE)
- laaS…システム構築する(例:EC2)
注目される理由
- リソースの切り売りが可能
- 元々はクリスマス商戦のために生まれた
- スケールアップからスケールアウトへ
AWS(AmazonWebService)
利用例
- 料金
- Small1日利用で2.4ドル年間876ドル。年割だと400ドル?
- EC2の例:Animoto
- 3日で3500台増やした
- S3の例
- 192TB使った
- CloudFront
- 東京にあるよ
- S3と連携してコンテンツ提供ができる
- 例:エア焼肉
- VirtualPrivateCloud
- VPNは日本ではまだ(海外にサーバがあるのというのが難)
日本のクラウド
- 定額制
- 支払いは請求書(日本的にクレジットは不利)
- サーバ用意には3日必要(さくらも同様)
- サーバはスケールアップ
- 監視は24×365
- 遅延も少ない
Whitespace
Whitespaceとは?
すべてが空白とタブと改行の世界です。
http://ja.wikipedia.org/wiki/Whitespace
サンプルコード
例えばHelloと出力させる場合はこんな感じのコードになります。
はい、わけがわかりません。
textからWhitespaceコードへ
文字を出力する程度なら簡単にできるので、
今回はプレーンテキストファイルをWhitespaceのprint文に変換するという
大変無駄なコードを書いてみました。
言語はRubyです。
#----------------------------- # 出力方法設定 #----------------------------- # コメントの出力 COMMENT_MODE = false # HTTPヘッダーの出力(trueで"Content-type..."をアタマにつける。) HTTP_MODE = true #----------------------------- # 定義部 #----------------------------- WSC_SPACE = ' ' # 0 WSC_TAB = ' ' # 1 WSC_NEWLINE = "\n" # \n ERR_ARGNIL = "arg error." ERR_FILENOTFIND = "file not found." HTTP_HEADER = "Content-type:text/html\n\n"; WS_STACKPUSH = WSC_SPACE + WSC_SPACE WS_STACKPRINT = WSC_TAB + WSC_NEWLINE + WSC_SPACE + WSC_SPACE #----------------------------- # 関数定義 #----------------------------- # メッセージを出力。exitflg=1で終了 def printmsg(str, exitflg) p str exit if(exitflg==1) end # 文字をWhitespace表示にして戻す def conv_wsc(char) Regexp.quote(char) + char[0].to_s(2).split('').inject(WSC_SPACE) do |ret, bit| ret += (bit == "1" ? WSC_TAB : WSC_SPACE) end + WSC_NEWLINE end # 文字列をWhitespace表示にして戻す def conv_wsc_line(line) line.split('').inject("") do |ret, c| ret += "[S" + WS_STACKPUSH + "]" + conv_wsc(c) + "[P" + WS_STACKPRINT + "]" end end #----------------------------- # 引数チェック #----------------------------- readfile = $*[0] whitefile = $*[1] # 入力チェック printmsg(ERR_ARGNIL, 1) if(readfile.nil? || whitefile.nil?) #存在チェック printmsg(ERR_FILENOTFIND, 1) unless(FileTest.file?(readfile)) #----------------------------- # メイン処理 #----------------------------- # 出力結果初期化 outtext = "" # HTTPヘッダー追加 outtext += "HEADER--" + conv_wsc_line(HTTP_HEADER) + "--HEADER" if(HTTP_MODE) # ファイル読み込み f = open(readfile) f.each do |line| outtext += conv_wsc_line(line) end f.close # 終端文字追加 outtext += WSC_NEWLINE + WSC_NEWLINE + WSC_NEWLINE + "EOF" outtext.gsub!(/\S/, "") unless(COMMENT_MODE) # 結果出力 foo = File.open(whitefile,'w') foo.puts outtext foo.close
第1引数で元ファイル、第2引数で出力先を指定すると変換できます。
Web対応?
今回Rubyでこのようなプログラムを書いたのは、
CGIとして出力できないかなぁと思ったのが理由です。
ソースを見てわかるとおり、"Content-type"といったなぞの記述があります。
wspaceから直接出力できるかと思いましたが、
改行が関わってくるので難しい感じです。
苦肉の策で以下のようになりました。
#!/bin/sh
wspace html.ws
一応できました。
問題点
Done. Stack size 0 Heap size 0
と出力されます。どうしよ。。。
Android Bazaar and Conerence 2009 Spring行ってきた
基本個人的メモ。
とても会社の報告書に書こうと思っていた内容とは思えないw
グーグル:クリス・プルエット「Android in Japan 」
- google側としても日本市場での成功するかどうか気になるところ
- 日本市場成功が無くしてモバイル市場成功は非ず
- 日本市場は成功させるのが大変
- Androidマーケット
- アップしたら数秒後には一般ユーザが落とせる
- しばらくは無料アプリで勝負する
- ADC2に募集してね
- HT-03Aの発売は7月の中旬では?
- Androidはアプリはなく、あらゆる端末に載せられることが強み。
- 会場からの質問
- AndroidマーケットとADC2のどちらにアプリを公開すればよいのか?
- アプリの目的次第。
- ADC2は無料アプリのみなので、有料が目的ならマーケット。
- セキュリティ・ウィルス対策は?
- Androidアプリはセキュリティに自信があるので、そういうソフトは現れない
- 悪意のあるアプリはランキング入りされないので大丈夫
- ユーザから苦情が来るなら消す。->消せば端末からも消える?
※今回唯一HT-03Aの発売日について触れた。また、日本語が上手で驚いた。
KDDI:堀内浩規「Androidに期待すること」
嶋是一「Androidキホン・黒船到来により変わったコト」
日本Androidの会Tシャツ部:矢野りん「アプリデザイン、色使いで差を付けろ!」
アイコンの色使いについていろいろ
- Androidの背景は黒系が多い。
- アイコンは白系が目立つ
- 青系はひっこむ
- キャラモノアイコンは目立つ。
- 暗い枠に明るいアイコンがベスト(ただし、2色とも同系色を使う)
近藤純司:セカイカメラのつくりかた
- セカイカメラ
- 場所に映像やコメントを記憶できる
- その場所に行けば、風景とあわせてコメント・映像をみることができる
- 開発者はこのあたり参考
- Android Developers Blog:http://android-developers.blogspot.com/
- Developer's Guide:http://developer.android.com/guide/index.html
- 加速度センサーで遊ぶと楽しそう
- 細かい動きは「Low Pass Filter」でフィルター
- 位置情報は「AssistedGPS」「PlaceEngine」
- GCは大変
- 通信にはXMLを採用。XmlPulLParserがメモリ消費激しそう
安生真、いちる、小太郎「トークセッション」
Genesis Lightning Talks (vol.17) で話してきた
最近のエントリーがtobe-tobeとGLTばかり……。
それしか活動してないの?といわれても、まあ、OOPJogがありますよ!
とはいえ、それしかありませんけどね!!!
というわけで、オラクルさん行ってきました。
気が付いたら青山オラクルは4回目。
ついに人をトイレに案内できるレベルにまで達していたw
kwappaさん「自己ベストの出し方」
いつもお世話になってますkwappaさん。
継続が大事というお話。
世界記録と比べてもしかたがない。
OOPJogのネタがでてきたので、これは自分もOOPJogの名前を出すしかないと判断。
せんせー「自分のB.e.s.t.」
前回、GLTメンバーが大学で発表した後日談。
教員の反応がよかったとはいいなぁー
wikiの使い方がわからないのが問題というのも意外。
確かに非ITにwikiは難しいのかもなぁ。
別の勉強会・・・tobetobeにふいたwww
自分の閾値を超えることが大切。
chocokanpanさん「最北端」
私の後にスピーカーということで、場の空気をなんとか正常に戻してくれたchocokanpanさん。
実際話しを聞いていても、札幌市の自分と稚内では世界がちがうなぁ〜と、
道内の人から叩かれそうなこと書いてみる。
出汁之介がかわいかった。
yokatsukiさん「講習準備の最短化」
最近、twitterのTLで新人研修の話が出ていたり、勉強会に出回っていることもあったので、個人的には一番聞きたかったyokatsukiさんの発表。
ポイントとして挙げられていた、受講しないにはちょっと驚き。
「ポイントを徹底的に聞く」という人に聞くのが一番というのは同意。
実際、聞ける人がいるという環境がなかなかむずかしかったりするけど。
Ryunosukeさん「コミニティ連動で世界1位になった方法」
前回、全身タイツで場を沸かしてくれたRyunosukeさん。
「りゅうのすけ」で検索してSEO一番。確かにそのとおり!
たまねぎ早食いをインパクトはさすがです。
ちなみにたまねぎ早食いをチョイスした理由は、5分以内でLTで挑戦できそうな世界記録だからということだそうです。
「りゅうのすけ」で検索して一番驚いたのが、wikipediaに名前があったことだったりする。
むたさん「自己ベストなOS環境を目指して」
勉強会カンファレンスでお世話になったむたさん。
windowsアプリ開発者なのにMACminiを買ったというお話。
ここ最近、技術者の間でMacユーザの増え方は脅威的ですから…
懇親会では話を聞けなかったのが結構悔やまれました。
懇親会雑記
基本的には自分の発表が滑ったことによる謝罪"祭り"。
はい・・・ごめんなさい。
あとは学生さんって若くていいなぁ〜とおもったくらいかなw
Ryunosukeさんの話が面白かった。
twitterのメディア価値には一目置いているそうで、まだまだ化ける可能性があるそうです。
Ryunosukeさんのセカンドライフでやったライブの話や、ライブを聞かせるための演出の話は面白かったです。
(ただし、詳細は書かない!!)
自己ベストな謝罪タイム
まずは発表youtube。
そして、謝罪タイム。
自分がはまった理由箇所が、時間節約のため、まるまる削減なのにアジェンダ・まとめに残っていた件について(ぇ
でも結局30秒くらいあまった。語りたい箇所を削る必要なかったなぁ〜。
歴史とサブカルチャーを結びつけるという前回と同様ネタでありながら前回よりカオスな内容にまとめられたのはよかった。
これで、リスナーの方も「これでいいなら自分でも発表できる!」と思ってくれたに違いない。
次回テーマは「まつり」
テーマ「まつりごと」なら得意分野じゃないのか…と真剣に悩んでる。
tobe-tobe vol.5
最近の日記がすっかりtobe-tobe一色なのは気のせい。
というわけで、東京Basic Technology勉強会vol.5。
今回はアルゴリズム宿題発表会2本立て。
- chocokanpanさんの「C言語+バケットソート」
- id:tsuyoshikawaさんの「Java+バブルソート」
chocokanpanさんはアルゴリズムやソートの概念についてもプレゼン。
impressiveについて熱く語ったりと課題以外の部分でも白熱。
id:tsuyoshikawaさんはJava以外にもRubyでコード書いてきた。
Javaでのコーディングはあまり経験がなく、苦労されたようです。
ちなみにOOPJogでもJavaの話題になりました。
というわけで、前回のハノイと同様、自分でも組んでみた。
jqueryリハビリも兼ねて「javascript+バケットソート」
// 作成するバケツ数(0から作成するので数は+1されちゃう) NUMMAX = 2000; // なんとなく2000 // ソート部分 function bucketSort(arys){ var i,j,k; var bucket = new Array(); j = 0; // バケツ作成(無駄に0からスタート) for(i = 0; i <= NUMMAX; i++){ bucket[i] = 0; } // バケツに入れる for(i in arys){ bucket[arys[i]]++; } // バケツから出す var arys = new Array(); for(i in bucket){ for(k=0;k < bucket[i];k++){ arys[j] = i; j++; } } return arys; }
とはいえ、アルゴリズムの箇所ではjquery関係なかった。
インタフェースの部分で使ってみたけど、ブログには書く気がしないや。
そのうちTCLといっしょにコードをgithubにでもあげる気がする。