2008年8月アーカイブ

LL Futureに行ってきました。以前の現場の大先輩と一緒です。

場所は中野。4駅隣なので楽♪
会場となったなかのZEROの大ホールを貸し切りでした。

チケットが1001枚売れて、来場は800人あまり。
エンジニア800人ってすごw

で、基調講演。2度目の来日、Perlのラリー・ウォール氏。
英語に冗談の日本語少々。Perl6について。

プログラマが文法を追加できたり...まぁ正直、英語わかんないorz
一瞬、Pythonユーザ会の方が通訳してくださるか期待したのですが...

で次がLLの過去、現在、未来について。
Larry Wall氏, Rubyのまつもと氏など、が登場。Schemeはやってるというか、勉強になるらしい。
(SICP本で詰まってるからコメントできないorz)
Larry Wall氏の「I have a dream ...」と聴いて牧師を思い出した...
あと興味あったのはひげぽん氏のもなOS。命令も()らしいが閉じ括弧は補完されるそうです。

次は昼の後。
フレームワークについてのセッション。
Seasarの比嘉氏をはじめやんわりとした進行。
フレームワークを使ってない方が会場で結構居たのだけど、昼後だから挙手しなかっただけなのか、それとも本当に使った事がないのか。

というかウェブフレームワーク中心に話が進んでて気がするのだけど、ウェブ系以外のフレームワークの話を聴きたかった...
Gauch on Railsが興味深かったが、さすがにそこだけに話題を注力する事はなかった。

LLアートのセッションでは、すいません。半分寝てしまいました。
私が直接お世話になることはないかなぁっと思ったのが正直なコメント。
ただ興味深い。Processingでしたっけ?一度使ってみたい。

で、どう書く?セッション。
爆笑の嵐。というか、ネタ合わせまでしたのかな?って思った。
ソースコードも西尾氏のコードは楽しいし、すごい発想力。
(ラストの抽選会では西尾氏は2階席で大はしゃぎしながらボールを投げてました♪)

プロゴルファーの方もすごい。ビビった(ビビッと来た)
世の中に天性を持った方が居るとともに、現場で使われたら、「それって難読化wというか勘弁してください」って突っ込んじゃう。

で最大の山場は「古い言語、新しい言語」のセッション。
JSRubyはとっても興味あるし、FlashをiPhone上で動かすって発想に驚いた。
Javaをバイトコードで実行ってなるほどと思うけど、そんな簡単に実装できないよとか思いつつ聴いてました。
そっちの話をもっと聴こうと思う。...にしてもレベル高い。

ライトニングトークはネタの集まり。
java-jaのYohsiori氏も参加してました。
興味あるのは、Grass。あれって発想変えると数字0〜9でも作れるだろうな。そしたら、ほぼ暗号w
あとは、クライアントDBの話。
残りは爆笑系のNario,自走式Webサーバーあたり。

以上です。去年のLL魂はチケット購入したのにいけなかったので今回は参加できてよかった♪
それと、知人と会場で会えたのが嬉しかった。
来年も参加するぞ!!

帰り、居酒屋で大先輩と吞んでました。
そしたらラリーさんとLLのスタッフの皆さんが入ってきたので記念撮影。
Larry Wall
くっ...英語がもっとできればコミュニケーション取れたのにorz
(我ながらミーハーだ...)

LL Future関連:
[misc]LL ひゅーちゃー
AptanaがPythonに対応したそうな。
Pydevベースだけど。
Aptana Pydev

ひとまず私は、exlipse3.4+Pydev+...で十分だから乗り換えない。

以下、参考:
aptana python:http://aptana.com/python
codezine:http://codezine.jp/article/detail/2989
Lepardでmod_pythonの際に自分が引っかかった点を備忘録として。

まずは参考にした記事の紹介。
Leopardでmod_python

で手順は、

mod_pythonの設定

# cd /usr/local/src/
# curl -O http://ftp.kddilabs.jp/infosystems/apache/httpd/modpython/mod_python-3.3.1.tgz
# tar zxvf mod_python-3.3.1.tgz
# cd mod_python-3.3.1
# ./configure
# cd ./src
# vi Makefile
viでMakefileを開き下記3行を追加する。
INCLUDES+= -Wc,-arch -Wc,ppc -Wc,-arch -Wc,i386 -Wc,-arch -Wc,ppc64 -Wc,-arch -Wc,x86_64
INCLUDES+= -Wl,-arch -Wl,ppc -Wl,-arch -Wl,i386 -Wl,-arch -Wl,ppc64 -Wl,-arch -Wl,x86_64
export ARCHFLAGS='-arch i386 -arch ppc -arch ppc64 -arch x86_64'
追加後のコードは以下の通り。赤字が追加箇所。
# requires flex 2.5.31 for reentrant support
LEX=/usr/bin/flex
INCLUDES=-I/Users/paraches/myTest/modPython/mod_python-3.3.1/src/include -I/usr/include/apache2 -I/System/Library/Frameworks/Python.framework/Versions/2.5/include/python2.5
INCLUDES+= -Wc,-arch -Wc,ppc -Wc,-arch -Wc,i386 -Wc,-arch -Wc,ppc64 -Wc,-arch -Wc,x86_64
INCLUDES+= -Wl,-arch -Wl,ppc -Wl,-arch -Wl,i386 -Wl,-arch -Wl,ppc64 -Wl,-arch -Wl,x86_64
export ARCHFLAGS='-arch i386 -arch ppc -arch ppc64 -arch x86_64'
LIBS=-lm -framework Python -ldl
LDFLAGS= -Wl,-framework,Python -u _PyMac_Error -framework Python -Wl,-F.
OPT=
CFLAGS=$(OPT) $(INCLUDES)
srcdir=.
# cd ./../
# make
# make install

Apacheの設定

# vi /etc/apache2/httpd.conf
下記を追加。
LoadModule python_module libexec/apache2/mod_python.so
同様に下記を追加。

<Directory /mywebdir>
AddHandler mod_python .py
PythonHandler myscript
PythonDebug On
</Directory>
httpd.confを修正したので、apacheサーバーを再起動する。
# apachectl restart

myscriptの作成(試しに)

Python プログラムが /mywebdir/myscript.py
myscrupt.pyの内容は下記の通り。

from mod_python import apache
def handler(req):
req.content_type = "text/plain"
req.write("Hello World!")
return apache.OK

mywebdir/myscript.pyにアクセスし、Hello World!が表示されることを確認する。
(ついでにmywebdir/任意の名前.pyでアクセスすると同じ結果が出る。)

補足:
ソースコードの配布先:Apache HTTP SERVER PROJECT
http://httpd.apache.org/modules/python-download.cgi

マニュアル日本語版:mod_python マニュアル
http://www.python.jp/doc/contrib/modpython/contents.html
ねた:勉強会中にブログみてたらギークめざしてるべにぢょさんがアルカーナで働いていると聴いてびっくり。
ネット上でしか知らんかったので話してみたくて受付のお姉さんに

「アルカーナの方ってどちらですかね?べにぢょさんを探しているのですが。」 

って聴いたら
「私がべにぢょです」

ちょっ...予想はしていたけど驚いた...おかげで話す予定だったことが真っ白になって口ごもってorz

追記:べにぢょさんは美人です!
べにぢょ


以下、本題。
iPhoneのネイティブアプリ、ウェブアプリの勉強会iPhonista Nightに参加してみた。

以下、セクションごとのまとめ。

■iPhoneの可能性対談
株式会社モディファイ代表取締役兼CEO 小川浩
javascript    =>Ajax多用は落ちる。
ブラウザ    =>メモリが少ないため、開きすぎると落ちる。
国内普及は2008年100万台=>2009年300万は厳しいんじゃないか>
iPhoneでの開発はWiMAX, 次世代通信の際に役立つノウハウになるのではないか?

所見:RSSをサーバーサイドで処理して送るサービスは面白そう。

■iPhoneプレイヤーパネルディスカッション
1.株式会社駅探 代表取締役兼CEO 小川浩様
そもそも入手が困難だった。アメリカの友人から先立って入手。
2.mixi
現在のmixiアプリはver.1.1
カメラを使って日記を更新できることがウリ。
3.アシアル株式会社
そろばん。
コントロールプラス株式会社さんと協力し製作。
4.iPhonez
親会社マーズ
iPhoneはやらなかったら社名どうしよう...

[?]iPhoneの存在をどうとらえるか
1.ビジネスとしてのボリュームがある。技術的には新しい可能性をもつ。
2.様々なデバイスからのアクセスは好ましい。ボリーム感あり。ユーザーの動向が異なる=>PC&モバイル両立ユーザー
3.(聞き漏らし。)
4.デバイスとしてのiPhoneとしては今後の10年は似たようなものが埋める。アプリとしては日本のモバイル市場がグローバル化された。

[?]iPhoneアプリケーションの開発で苦労した点、困難だったこと、気を遣ったこと。
1.現場への要望としては携帯でもPCでもないものを作れ。機能は2,3個。良い開発会社がついていた。
2.iPhoneの実機入手が困難であった。日記を書く機能を優先。読む機能は後。カメラは実機でないと...
3.独自の加速度センサーなどをいかに使うか。開発者が少ない。
4.NDAがらみの苦労。iPhonedevを運営してるが、投稿を書けない...iPhone自体のバグ...?GPSの軽度が逆になる...

[?]アプリケーションの開発に参考にしているドキュメント
SDKはドキュメントが整備されている。200~300pageをがんばれ。google先生が当てにならないMacOSXと似通っている。

[?]今後ネイティブアプイははやるか日本におけるiPhoneの今後。
1.課金のプラットフォームが良い。
2.使いやすく。順位付けはウェブ=>アプリケーション。
3.月額課金制がないためアプリは...ウェブアプリとしては成立しそう。
4.iPhoneははやってほしい希望。日本でははやんないんじゃないか...なので海外を向けて。7万台...?今のモバイルが一太郎。iPhoneはワードというイメージ。

■最新iPhone対応webサービス紹介
モバキッズからのウェブアプリケーションのオススメ。
ハドソン:ワンクリックでアプリをダウンロード。
クイズ研:javascriptにより滑らかな動き。
ホットペッパー:iPhone-Devの講演資料がある。
 ■ライトニングトーク
iPhoneアプリ「30min.ランチ検索」
株式会社サンゼロミニッツ 代表取締役 谷郷元昭
ブログからお店を拾いだしてくる。都内が対応済み。近々近隣も対応予定。
iPhoneを使った3D空間の規格を考える時に把握しておきたいこと
株式会社オクターバ代表取締役 古川剛
所見:CSS3とかJavaScript2とかの特性生かすとよさそう。タップなどの独自イベントを生かす。

ソフトウェア/サービス開発プランコンテスト「i*deal Competition」
三井ベンチャーズ 原田惇
アプリ、ウェブサービスの開発案、サービス案を募集中。
三井物産の完全子会社。ベンチャーキャピタル?


所見:もっとSDKや開発ノウハウなどの話を聴きたかった...


にこにこで「python」って検索したら、見つけた。



正方形ってw
これは楽しめた。

いや、でも休憩中にpythonって検索しちゃうところがなんともw
基本愚痴のある意味ネタです。


ひさびさにPHPを触りました。
他人が作ったコードがお客様に納品されたもの。それを保守開発で私が担当。

何に驚いたって、class使わないのはよくお目にかかるけど...
functionを一つも使わないのは初めてだった...


いや、間違ってはないよ。処理を上から追えばいいから楽だよね。うん。
だけど、もっと 開発しやすく出来たでしょうに...


作った人と電話で何度となく話したけど、このひとサイバーなんたらってブログで有名な会社の元ウェブ系デザイナーさん。

デザイナさんでめちゃくちゃコードかける人も入れば、プログラマでデザイン出来ちゃう人がいる訳だし。
でもね。もうちょっとうまく設計とともに実装してくれ、お願いだ...

追記:「ひとまず納品のために動くものを作りました。」って感じのコードでした..
追追記:納品が完全に終わる前だったのでクレーム出そうと思って実際に話してたらあまりのいい訳に呆然としてしまった。=>期間がなかったとか、設計ってそんなの必要ないですよとか。
=>メモ書き程度の設計もしないのか!
=>セキュリティのせの字もでてこないのかお前は!

追追追記:この前、PHPカンファレンスで聴いた事を思い出した。言語自体が悪いんじゃなくて、教育が行き届いてないんだなと。

ソーシャルネットワーキングサービスを展開するGreeがAPIを公開している。

GREE API
http://labs.gree.jp/Top/API.html

これって結構楽しめそうな予感。いまのところ、キーワードのみなのだが、十分すぎる。


ただ、秒間あたりのアクセス数制限とか書いてないけどいいのかなぁって思った...


ちょっと簡単なの作ってみる。
BeautifulSoup
読んでて特にわからなかった単語。

extract
引き出す、得る。
incoming
入来、到来。入ってくるイメージ。
specify
指定する、明記する。
external
外部の

以下、メモ書きリンク:
BeautifulSoup
http://www.crummy.com/software/BeautifulSoup/
以前、バッカス・ナウア記法を使ってたんだけど、ちょっと忘れかけたからたまには書いてみようかなって思った。
ちょうどいいところで、CSVファイルの定義をソースコードにコメントとして書く必要あったし。
で、作成したのが下記の通り。

CSV定義(BNF記法)
<csv> ::= {<csv-line-data>}
<csv-line-data> ::= <h2-value> <¥t> <null> <¥t> <null> <¥t> <null> <¥t> <null> <¥n>
                  | <null> <¥t> <href-attribute-data> <¥t> <src-attribute-data> <¥t> <h3-value-data> <¥t> <p-value-data> <¥n>

これだと、悩みがあって、
<csv> ::= {<csv-line-data>}
の波括弧({})は0回以上の繰り返しを表そうと思っているのだけど、正規表現の*(0回以上繰り返し)を導入して、
 <csv> ::= <csv-line-data>*
にした方がいいのかな...?
もうひとつの悩みは、細分化した意味の説明を付け加えた方が良いのだろうか...

というかそもそもコード内にこんなコメントあるより、視覚的にわかりやすく書いた方がいいかなw

追記:バッカス・ナウアって誰だよ...
fedora9をファイル共有サーバ化したいよね。
という訳で、samba設定備忘録。

ひとまず、パッケージのインストール。パッケージの一覧は以下の通り。
  • samba-common
    =>Sambaの共通パッケージ(サーバとクライアントに必要)
  • samba
    =>Sambaのサーバパッケージ
  • system-config-samba
    =>Fedora独自のSambaの設定ツール。Terminalから出来る人には不要。
  • samba-client
    =>Sambaのクライアントパッケージ
  • samba-swat
    =>Webブラウザを使用したSambaの設定ツール
  • samba-doc
    =>Sambaのドキュメント。
これらのうち必要なものを、

yum install パッケージ名

でインストール。

追記:作業中に作成中のプログラムに着手してしまったので、設定は延期...



Pydevからの実行ではしっかり動くのに、macの通常実行では動かない...なぜ?

Window XP(Python2.5)ではしっかり動く??

 あぁ...2時間ばかしはまってるorz


で作ってるのは、Tkinter使ってメール配信をGUIから。それを、py2appとpy2exeで固める。


あと、備忘録。
py2exeの実行はpython setup.py py2exe。
py2appの実行はpython setup.py py2app。
TkinterのEntryクラス使ったテキスト入力フィールドで、*表示などのパスワード表示にする方法。

下のように、showオプションを与えてあげる。

Entry(frame, show="*")


ドキュメントが少なかったから資料見つけるの大変だったorz
ギークなおねえさんが、とっても面白いサイト作ってた。

しかも詳細すぎ(笑)

geek DataBase - ギークデータベース

これはネタ。


以下、余談。
Python2.5ではSQLite3がビルドされてます。
Python2.4のレンタルサーバーではSQLiteは使えません。

なんとかPython2.5のモジュールをレンタルサーバーに移植できないかな...と思って解析してます。

代替手順として、
開発環境で、Python2.4,pysqliteモジュールを準備し、py2exe,py2appでまとめる。それを解析し必要モジュールを特定する。ってあほな手順。

...すなおにドキュメント逝ってきます。

あわせて読みたい

  • あわせて読みたいブログパーツ

Lingr java-ja

ウェブページ

Powered by Movable Type 4.1