2011-08-30

eXtreme HAGO 2 LT 大会アレコレ



先週末に eXtreme HAGO 2 LT 大会 ( #xHago2 )に参加したので、そのときにやったことや得た情報、感想などのアレコレを忘れないうちにまとめておきます。

やったこと:

  1. xHagoのロゴを作成しました。
  2. 発表しました。というかOkinawa.rbの宣伝を思う存分やってきました。
    今週末の土曜日(9/3)はOJAG + Okinawa.rbの勉強会があります。是非!
  3. タイムキープ用のWebサービスを作りました。わりと好評だった模様。
    ただ、MacBook以外のディスプレイだとレイアウトが壊れるかも。
知ったこと:

  1. 琉球大学ではMacを強制的に買わされ&Emacs+tcshを使わされるらしい。
  2. 次回沖縄iPhone勉強会でjQuery Mobileの話をするんだとか。面白そう!
    ABC2011sのデザイントラックでも耳にしましたが、まだまだ不具合が多いっぽい。
  3. 学生さん達がやる気一杯!ASAPで海外留学or就労して欲しいなー。

気になること:
  1. Tythonの行く末。
  2. 自作PCの行く末。
  3. ショートコーダーの末路。
次回は2月頃にあるそうです。参加出来るかどうかは分からないけれども、またフラっと寄れたらいいなーって考えています。

2011-08-28

Android Bazaar and Conference 2011 Survey: 10年に1度の変革期を遊びたおすために



先日、琉球大学で開催された eXtreme HAGO 2 LT 大会 ( #xhago2 )に参加し、表題の内容を発表してきました。内容は、以前登壇したABC2011sというカンファレンスで見聞きしたことに、僕個人の意見を加えたものとなっています。

発表動画:Xhago2nd, Ustream

※始めの部分は録画出来てないようです。ネタを仕込んだのに...残念(´・ω・`) スライドと当日の反応からネタの雰囲気を感じ取って下さい。

スライド:

当日の反応:eXtreme HAGO 2 LT 大会 第2セッション, togetter

おまけ:もしもエンジニアが本気でダイエットしたら

※夜の部でネタ発表をしてきました。反応が良かったようなので、後日、目標まで到達したらブログ記事でまとめるつもりです。

2011-08-25

Dropbox as a Git




GitHub.comはとても便利なサービスで、僕もしょっちゅうお世話になっていますが、Private Repositoryを作る時は課金しないとダメなので、ちょっと面倒ですよね。最低でも7$/month支払う必要があるし、Collaboratorの数も制限されてしまいます。

そこで、DropboxをGitとして使えないかなーって思って調べてみたら、なんか普通に使えそうです。
Using Dropbox as a Git
http://tumblr.intranation.com/post/766290743/using-dropbox-git-repository
早速試してみましょう。Mac OS Xでしか試してないので、他のOSでは多分ディレクトリを指定する部分をちょっと修正する必要があるかもです。

0. DropboxとGitをインストール
※Dropboxのディレクトリは"~/Dropbox"に置いてあることとします。

1. レポジトリ用のフォルダを作成

mkdir -p ~/Dropbox/repos/test.git

2. Gitレポジトリを作成

cd ~/Dropbox/repos/test.git
git --bare init

3. テストプロジェクトと.gitを作成

mkdir ~/hoge
cd ~/hoge
echo "hogehoge" > README
git init
git add .
git commit -m "Dropbox as a Git test"

※Gitの性質上、"touch README"だとダメな気がする。

4. Git remoteでDropbox内のレポジトリを登録してpush

git remote add dropbox file://$HOME/Dropbox/repos/test.git
git push dropbox master

5. git clone をしてみる。

mkdir ~/foo
cd ~/foo
git clone -o dropbox file://$HOME/Dropbox/repos/test.git

6. READMEが入ってる"test"フォルダがちゃんとcloneできてたら成功。

とまぁ、こんな感じでDropboxをレポジトリとして使うことができそうです。あとは"repos"フォルダを他の人と共有すれば良いのかな?もしかしたら色々と問題が出てくるかもしれないけれど、問題を発見したら随時追記していこうと思います。




2011-08-24

書評:大震災の後で人生について語るということ






国家のリスクと個人のリスクを切り離すための生き方について説かれた本です。「面白いよ」と友人に勧められたので、初めて橘玲さんの本を手にし、読み始めたのですが、とてもタメになりそうな内容が多く書かれていました。今後の生き方の参考になりそうです。

経済学の用語がちりばめられているので、経済学に慣れていない方にはちょっと取っ付きにくい部分もありますが、できれば、エンジニアやデザイナーなどの手に職を持っている方々に読んでもらいたい一品です。


2011-08-20

Far Beyond The Computers






早稲田大学情報理工学科 オリエンテーション2011
Department of Computer Science, Waseda University
(情報理工学科プロモーションビデオ:CSPV)

Credit
   - Camera Crew: Akihiro Shimoda
   - Music: Akihiro Hayashi
   - Director: Yoichi Matsuyama
   - Produce: Waseda CS Assistants

中の人曰く、
CSPVは基本的にポストプロダクションはPremiere+After Effectsであっさり塩味です.もっとも,ツールというよりは,Tシャツのデザインや教授の説得作戦,照明や音声など,プレプロダクションと撮影時の素材に割とこだわったものでした.
だそうです。

# あれ、僕の知ってるPremiereと違う...

航空券検索エンジンなどのプロジェクトでデザイナの人達と一緒に仕事するようになってから、僕はデザインにこだわる人がとても好きになりましたし、僕自身そういう人間になろうと日々精進に励んでます。留学中にデザインの授業取ったのは、腕のあるデザイナの人達に感化されたからです。彼らと一緒に何かモノを作っていなければ、きっと留学中にデザインの勉強なんてしなかったでしょう。

複雑で難しい問題を解ければ残りはどうでもいい、という考え方は間違っていると思っています。良いモノを作るためには、考え抜かれた「見せ方」もとても大事な要素だと考えています。

2011-08-19

OJAG workshop@Naha Vol.10



明日はAndroidの会@沖縄のworkshop( #ojagnaha0820 )の日ですよ。今回はARカメラとか #abc2011s のSurveyとかBlenderな話が聞けるそうですよ。詳細はコチラから。

ちなみに、今回は僕が代理で会を運営することになってます。もし何か分からないことがあれば yasulab@gmail.com か @yasulab までご連絡下さい。ではでは、皆さんの参加をお待ちしています。

# ところで、上記の写真はOISTで撮ったやつです。OISTってリゾート地にあるんですね。近くに運動場とかゴルフ場とかあるし、見ての通り景観も良い感じ。OISTに所属している研究者の7割は海外から来た人で、しかもアジア系ではなく、ヨーロッパ系の人がいっぱい集まっている模様。最初に話した台湾人の研究者の方も中々気さくでナイスな方だったし、なんというか、かなり面白そうな研究機関の匂いがしました。来年から開学して、大学院生(博士課程のみ)を募集するそうです。

2011-08-18

Okinawa.rbを立ち上げました。



沖縄に来てから早くも3ヶ月弱経ってしまいましたが、沖縄って中々住み良いところですよね。海を見ながらプログラミング出来るし、風も心地良いし。でもRubyとかRailsとかが流行ると、もっと住み良いところになりそうですよね。

ということで、Okinawa.rbを立ち上げました。

「沖縄でRuby/RailsといったらOkinawa.rb」と言われるぐらい有名になって、いずれはMatzさんとか召喚出来たら面白そうですね。あるいは、Ruby/Railsを使って沖縄でちょっとしたノマド生活を送りたい人達の足がかりになったらいいなー、と妄想しています。

以下、Okinawa.rbの生息地域です。ご興味あれば是非覗いてみてください。

公式サイト: Okinawa.rb
Google Group(ML): Okinawa.rb
Facebook Group: Okinawa.rb
Twitter Tag: #okinawarb

IRCnet:
   Channel: #Okinawa.rb
   Server: chat.freenode.net or irc.freenode.net
   Port No.: 6665, 6666, 6667
   Char Code: UTF-8

また、暫定ではありますが、9月3日、沖縄のIT津梁パークにて初回勉強会を開く予定です。詳細はMLで後日投稿します。もしご都合が合う方は、是非ご参加して頂けると嬉しいです。

よろしくお願いします。



追記:
沖縄に移住するRuby/Railsユーザはそこまでいないかもしれませんが、沖縄に観光などで訪れるRuby/Railsユーザは結構いるんじゃないかと思います。もし沖縄に訪れる機会がありましたら、Okinawa.rbにちょっと顔を出して頂けたら幸いです。

2011-08-16

書評:Agile Web Development with Rails (4e)




三部構成になっていて、始めにインストールやMVCの概念を軽く説明し、次に、Depotというオンラインストアを作りながらRailsの使い方を丁寧に解説している。最後に、Depotを例にしながらRailsの仕組み(e.g. MVCの内部の振る舞い、Caching)と、Pluginsの紹介をして終わる。

RoR3 Tutorialという本では、Herokuやrspecなどの有名どころのツールを使った開発方法を説明しているが、本書では、FixtureやScaffoldなどのデフォルトで備わっている機能を使った開発方法の説明に専念している。

個人的には、洋書ではこのようなサンプルを使った解説が流行っていて、和書では、レシピブック系(e.g. Rails 3 レシピブック、 Ruby on Rails 3 アプリケーションプログラミング)が流行っているような気がするので、うまく組み合わせて勉強すると効率的にRails 3を学べるような気がします。

2011-08-15

OAuth on Simple Twitter Bot (2)




ちょっと @yasulabot というネタbotをつくるためだけに、SimpleTwitterBotを弄り直しました。基本的にはREADMEに書かれている通りにregister_pin.pyを実行すれば、OAuth周りの設定は勝手にやってくれるはずですが、個人的につまずいたポイントをちょろっとリストにしてみます。


- 1. botのtwitterアカウントでログインしたブラウザで、OAuthに登録する事。ChromeならCtrl+Shift+Nで開いたブラウザでbotアカウントにログインして、OAuthに登録すると楽。

- 2. デフォルトのAPIのpermissionは"Read only"なので、APIを通してtweetとかdeleteとかしたいならOAuthの設定画面から、Permissionを"Read & Write"に変更すること。

- 3. たぶん、Windowsだとうまく動かない(Issue 1)。Windows非対応。

基本的にこれらの点に注意して、あとはREADME通りにやれば、自作BotがGAE上で動くような気がします。




README(引用):

This bot runs in the following ways.
1. Search tweets using 'search_term' in Twitter.
2. Re-tweet the tweets.
In this example, 'search_term' is 'Cafe Miyama',
and you can see how it behaves by checking the following account.
HOW TO SETUP:
1. Register your OAuth client on Twitter
NOTE: You MUST change permission settings to "Read & Write" if you wanna update via API.
      The default is "Read Only".
2. Run 'python register_pin.py' and
   use CONSUMER_KEY and CONSUMER_SECRET you got from the registeration.
NOTE: Make sure you are now signing in Twitter as your Bot account when visiting a given URL.
3. Change setting variables (CONSUMER_KEY and CONSUMER_SECRET) in main.py to the given ones.
4. Run Google App Engine dev_server and visit the following URL
* If you finish all of your setting, set 'debug_flag' in main.py off.
5. Done!
Enjoy developing your own twitter bot!
YasuLab
yasulab@gmail.com


参考:OAuth on Simple Twitter Bot

2011-08-12

SimpleTimeKeeper



I created a simple time keeper that helps you timekeeping. It can be used for presentations and lightning talks. No software needs to be installed; just visit the website below :)

http://timekeeper.fluxflex.com/

諸事情で今月の #ojag Workshopの仕切りをやる事になったので、当日必要になるであろうタイムキーパーをサクッと作ってみました。よければ使ってあげてください。

2011-08-09

Django Tutorial's app (poll) on DjangoZoom





Railsに夢中で最近Djangoを放置プレイしていましたが、諸事情でちょっと投票Appを作りたかったので、ずっとpending状態だったDjangoZoomに、Django Tutorialの投票Appを乗っけてみました。以下、その手順。

0. 難癖付けて、DjangoZoomのInvitation Codeを催促&ゲット。
e.g. "俺いま面白いウェブサービス作ってるんだけど、是非DjangoZoomに乗っけたいです!"

1. Django Tutorialを読んで、投票App (Poll)を作成。

2. GitHubに作った投票Appを乗っける。
e.g. https://github.com/yasulab/poll

3. DjangoZoomのDashboardから"Add a new project"を選択。

4. "Repo"の項目にGit Repoを入力。
e.g. git@github.com:yasulab/poll.git

5. Djangoのversion(1.2.5 or 1.3)を指定。他はそのままでok。そしてdeploy開始。

6. deploy後、左ペインから"Create Superuser"をクリックし、ユーザ登録。

7. Djangoのadminページから登録したユーザでログイン。

8. 無事ログイン出来たら成功!あとはお好きなように。
e.g. サンプルサイト

Railsのherokuもそうですが、あるWeb Frameworkに特化したPaaSは、かなりの完成度ですね。汎用的に使えるDotcloudFluxflexも十分使いやすいですが、deployまでのステップ数と分かりやすさの点から言うと、制約がある分、特化型のPaaSの方がより使いやすいというのが、個人的な感想です。といっても、最初の一歩が大きいか小さいか程度の問題ですので、将来的には、どこまでログを取れるのかとか、ホストの安定性とかが決め手になるのかもしれないですね。

とにかく、今年はPaaSの時代っぽいですね。個人や小規模のチームにとっては、とても良い年になるんじゃないかと思います。

The power of less - 減らす技術 -




あなたの時間は、何よりもかけがいの無いモノだ。けれどそれは、仕事や家事、通勤、他者との関わり合いなどで、どんどんと少なくなってしまう。

自分にとって、本当に大切なモノを見極めよう。そして、それ以外のモノを減らしていこう。そうすれば、シンプルで、しかし、充実した暮らしが待っている。

では、どうやって大切なモノを見極め、それ以外のモノを減らしていくのか?それが本書の内容です。

Zen信者の僕にとって、とても参考になる事例が一杯書いてありました。興味があれば是非。

黒歴史




Getclickyを見ていたら、結構昔の記事にもアクセスされているみたいだったので、ちょっと久しぶりに自分のブログの初期(2007年)の記事を見返してみ​た。当時まだ大学2年生で、全く英語なんてできなかったけれど、というかむしろ苦手教科だったけれど、出来な​いなりに色々試行錯誤してたんだなー、とか振り返ってみる。

2007年の記事一覧
http://yasulab.blogspot.com/se​arch?updated-min=2007-01-01T00​%3A00%3A00%2B09%3A00&updated-m​ax=2008-01-01T00%3A00%3A00%2B0​9%3A00&max-results=31

とりわけ、僕のブログの最初の記事は、僕から見たら黒歴史以外の​何ものでもないけれど、でもmiscellanea、当時考えていたことは、なかなか本​質を捉えていたんじゃないかなーと、今でも思う。今でも、自分の本当にやりたい事は何なのかぼんやりしていてわからないし、これかな?あれかな?って色々考えては試してみている感じ。

first diary
http://yasulab.blogspot.com/20​07/12/blog-post.html



いつからか、多分、実名でブログやらtwitterやらをやるようになった時ぐらいから、自分の思考を記事にする事はほとんど無くなったんだけれど、時々は色々ぼやいてみるのもいいかもしれない。

2011-08-04

裸のプレゼンターを読みました。




「プレゼンテーション Zen」で、従来と異なった、これからの時代で必要となる、デザイン性と禅の精神を兼ね備えた新しいプレゼンテーションスタイルを説き、「プレゼンテーション Zen Design」で、そのスタイルを確立させるために必要な、デザインの基本について説いた。そして、本書では、実際のプレゼンテーションの各段階(e.g. 準備、イントロ、エンディング)で、必要となる考え方と、具体的なステップを説いている。始めは、記されたステップ通りにスライドを準備・発表し、その後は、プレゼンの反省点を踏まえ、自分の持つ「自然さ」に最適化させていくと良いかもしれません。

今後、プレゼンテーションを1回以上する予定がある人にとっては、読む価値がある本だと思います。




2011-08-01

10日でおぼえるjQuery入門教室を読みました。




10日でおぼえるjQuery入門教室という本を読んだので、下記にそのレビューを記します。

僕のjQuery歴は、Web制作の現場で使う jQueryデザイン入門を読んだり、実際にjQueryを使ったウェブサイトを作ってみたりした程度です。そのレベルの人間から見た所感ですが、本書は、

- 1. よく使うselectorが網羅されている。
- 2. html/cssを変換するために使用されるメソッドも網羅されている。
- 3. 要素の行き来で使用するメソッド(e.g. next, parent)が網羅されている。
- 4. よく使うパーツ(e.g. tab, panel)が丁寧に説明されているので、参考にしやすい。

といった特徴があると思います。

また、既にjQueryについてある程度知識を持っている場合は、次のような手順で読むとサクサクjQueryについて勉強出来ると思います。

- 1. ソースコードを読んで、どう動くのか想定する。
- 2. 実行画面を見て、想定通りかどうかチェックする。
- 3.1. 想定どうりであれば、その項をスキップする。
- 3.2. そうでなければ、分からなかったor間違えた部分を、文章を読んで補完する。

僕の場合、この方法で効率的にjQueryを勉強する事ができました。参考になれば幸いです。