<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>MetaLoop &#187; Programming</title>
	<atom:link href="http://blog.tpop.jp/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.tpop.jp</link>
	<description>ブログ、です。</description>
	<lastBuildDate>Sun, 04 Apr 2010 01:46:13 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>GAEでpython-twitterを使う</title>
		<link>http://blog.tpop.jp/2010/03/20/gae%e3%81%a7python-twitter%e3%82%92%e4%bd%bf%e3%81%86/</link>
		<comments>http://blog.tpop.jp/2010/03/20/gae%e3%81%a7python-twitter%e3%82%92%e4%bd%bf%e3%81%86/#comments</comments>
		<pubDate>Sat, 20 Mar 2010 09:35:15 +0000</pubDate>
		<dc:creator>so-me-e-da</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[post]]></category>
		<category><![CDATA[GAE]]></category>
		<category><![CDATA[Mac]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://blog.tpop.jp/2010/03/20/gae%e3%81%a7python-twitter%e3%82%92%e4%bd%bf%e3%81%86/</guid>
		<description><![CDATA[Google App Engineでpython-twitterライブラリを使ってみました。
Mac OS X の GoogleAppEngineLauncher.app を利用しています。
1. python-twitter をダウンロード
2. main.py のあるディレクトリに、解凍した中にある twitter.py, simplejson を置く。
3. main.py にこちらのパッチを含める。
4. GoogleAppEngineLauncher.app の preferences (コマンド+,) にある python path に /usr/bin/python2.5 を設定する。他の環境で問題が起こる時は python2.5 を使う様にてみると良いかもしれません。
5. GoogleAppEngineLauncher.app を再起動。
以上で使える様になりました。
最初は 3. にあるパッチを使ってみたのですが、以下のエラーが。
ImportError: No module named _ctypes
検索したら、これはローカルサーバだけで起こる現象らしく、python2.5 を使う事で解決です。
参考：
* Google App Engineでpython-twitterが動かない件について
* Issue 985: Import Error: Failed to import ctypes to load dll on windows
修正履歴：
*  [...]]]></description>
			<content:encoded><![CDATA[<p>Google App Engineでpython-twitterライブラリを使ってみました。<br />
Mac OS X の GoogleAppEngineLauncher.app を利用しています。</p>
<p>1. <a href="http://python-twitter.googlecode.com/files/python-twitter-0.6.tar.gz">python-twitter</a> をダウンロード<br />
2. main.py のあるディレクトリに、解凍した中にある twitter.py, simplejson を置く。<br />
3. main.py に<a href="http://d.hatena.ne.jp/plasticscafe/20091122/1258871852">こちらのパッチ</a>を含める。<br />
4. GoogleAppEngineLauncher.app の preferences (コマンド+,) にある python path に /usr/bin/python2.5 を設定する。他の環境で問題が起こる時は python2.5 を使う様にてみると良いかもしれません。<br />
5. GoogleAppEngineLauncher.app を再起動。</p>
<p>以上で使える様になりました。</p>
<p>最初は 3. にあるパッチを使ってみたのですが、以下のエラーが。<br />
ImportError: No module named _ctypes<br />
検索したら、これはローカルサーバだけで起こる現象らしく、python2.5 を使う事で解決です。</p>
<p>参考：<br />
* <a href="http://d.hatena.ne.jp/plasticscafe/20091122/1258871852">Google App Engineでpython-twitterが動かない件について</a><br />
* <a href="http://code.google.com/p/googleappengine/issues/detail?id=985">Issue 985: Import Error: Failed to import ctypes to load dll on windows</a></p>
<p>修正履歴：<br />
*  2010/03/20 手順 5. を追加。</p>]]></content:encoded>
			<wfw:commentRss>http://blog.tpop.jp/2010/03/20/gae%e3%81%a7python-twitter%e3%82%92%e4%bd%bf%e3%81%86/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>久しぶりのPython</title>
		<link>http://blog.tpop.jp/2010/01/22/python_2010/</link>
		<comments>http://blog.tpop.jp/2010/01/22/python_2010/#comments</comments>
		<pubDate>Fri, 22 Jan 2010 10:15:54 +0000</pubDate>
		<dc:creator>so-me-e-da</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.tpop.jp/?p=143</guid>
		<description><![CDATA[Python2.3.4で動いていたCGIスクリプトを修正する必要に迫られました。どうせならという事で、新しめのPython 2.6.4で動かしてみます。
しかしエンコーディングのエラーが・・・。
ちなみにソースはShift-JIS。クライアントはWindows XP。
エンコーディングの扱いが変わっていそうな感じです。
調べてみると、最近は日本語バージョンというのは無いそうで、本家に統一されたっぽいですね。
エンコーディングについては、ここのサイトが参考になりました。
http://python.matrix.jp/tips/string/encoding.html
仕組みを完全には理解していないのですが、ファイルを1つ設置したら何事も無く動作しました。Python 本体のデフォルトエンコーディングを ascii から mbcs に変更しています。
(Python directory)\Lib\site-packages\sitecustomize.py
import sys
sys.setdefaultencoding(&#8216;mbcs&#8217;)
こんな事をするとUTF-8を使ったスクリプトを扱う場合に問題出そうですが、それはそんな機会が訪れたら考える事にします。猿真似はおすすめできません。
その他にodbcドライバも使いたかったので mark hammond 氏のサイトを見たのですが、古いバージョンしかありません・・・ええーっと思いながらも良く見ると、SourceForgeにありました。各バージョン毎に用意するの大変ですね。いま時は自動可しているかな？
さすがにしばらく見ないと、いろいろと変わっていますね。]]></description>
			<content:encoded><![CDATA[<p>Python2.3.4で動いていたCGIスクリプトを修正する必要に迫られました。どうせならという事で、新しめのPython 2.6.4で動かしてみます。</p>
<p>しかしエンコーディングのエラーが・・・。<br />
ちなみにソースはShift-JIS。クライアントはWindows XP。<br />
エンコーディングの扱いが変わっていそうな感じです。</p>
<p>調べてみると、最近は日本語バージョンというのは無いそうで、本家に統一されたっぽいですね。<br />
エンコーディングについては、ここのサイトが参考になりました。</p>
<p><a href="http://python.matrix.jp/tips/string/encoding.html" rel="nofollow">http://python.matrix.jp/tips/string/encoding.html</a></p>
<p>仕組みを完全には理解していないのですが、ファイルを1つ設置したら何事も無く動作しました。Python 本体のデフォルトエンコーディングを ascii から mbcs に変更しています。</p>
<p>(Python directory)\Lib\site-packages\sitecustomize.py</p>
<blockquote><p>import sys<br />
sys.setdefaultencoding(&#8216;mbcs&#8217;)</p></blockquote>
<p>こんな事をするとUTF-8を使ったスクリプトを扱う場合に問題出そうですが、それはそんな機会が訪れたら考える事にします。猿真似はおすすめできません。</p>
<p>その他にodbcドライバも使いたかったので mark hammond 氏のサイトを見たのですが、古いバージョンしかありません・・・ええーっと思いながらも良く見ると、<a href="http://sourceforge.net/projects/pywin32/files/">SourceForge</a>にありました。各バージョン毎に用意するの大変ですね。いま時は自動可しているかな？</p>
<p>さすがにしばらく見ないと、いろいろと変わっていますね。</p>]]></content:encoded>
			<wfw:commentRss>http://blog.tpop.jp/2010/01/22/python_2010/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>アドビ、「Flash Player 10」のスマートフォン対応予定を明らかに&#8211;2010年をめど:モバイルチャンネル &#8211; CNET Japan</title>
		<link>http://blog.tpop.jp/2009/02/17/%e3%82%a2%e3%83%89%e3%83%93%e3%80%81%e3%80%8cflash-player-10%e3%80%8d%e3%81%ae%e3%82%b9%e3%83%9e%e3%83%bc%e3%83%88%e3%83%95%e3%82%a9%e3%83%b3%e5%af%be%e5%bf%9c%e4%ba%88%e5%ae%9a%e3%82%92%e6%98%8e/</link>
		<comments>http://blog.tpop.jp/2009/02/17/%e3%82%a2%e3%83%89%e3%83%93%e3%80%81%e3%80%8cflash-player-10%e3%80%8d%e3%81%ae%e3%82%b9%e3%83%9e%e3%83%bc%e3%83%88%e3%83%95%e3%82%a9%e3%83%b3%e5%af%be%e5%bf%9c%e4%ba%88%e5%ae%9a%e3%82%92%e6%98%8e/#comments</comments>
		<pubDate>Mon, 16 Feb 2009 15:57:38 +0000</pubDate>
		<dc:creator>so-me-e-da</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[ソフトウェア]]></category>
		<category><![CDATA[iPhone]]></category>

		<guid isPermaLink="false">http://blog.tpop.jp/?p=130</guid>
		<description><![CDATA[今後は、スマートフォンでもFlashのフル機能が使える様になります。しかしiPhoneに関しては、まだ待つ必用ありだそうです。
Adobe Flash Player 10は2010年の早い時期にほとんどのスマートフォンで利用できるようになるが、iPhoneユーザーは待たねばならない。しかし、Adobe幹部はiPhoneでも利用できるようになると述べている。
via アドビ、「Flash Player 10」のスマートフォン対応予定を明らかに&#8211;2010年をめど:モバイルチャンネル &#8211; CNET Japan.
時期iPhoneのスペック次第という事もあるのでしょうか。現行機種でも対応してくれればありがたいのですが。]]></description>
			<content:encoded><![CDATA[<p>今後は、スマートフォンでもFlashのフル機能が使える様になります。しかしiPhoneに関しては、まだ待つ必用ありだそうです。</p>
<blockquote><p>Adobe Flash Player 10は2010年の早い時期にほとんどのスマートフォンで利用できるようになるが、iPhoneユーザーは待たねばならない。しかし、Adobe幹部はiPhoneでも利用できるようになると述べている。</p>
<p>via <a href="http://japan.cnet.com/mobile/story/0,3800078151,20388271,00.htm">アドビ、「Flash Player 10」のスマートフォン対応予定を明らかに&#8211;2010年をめど:モバイルチャンネル &#8211; CNET Japan</a>.</p></blockquote>
<p>時期iPhoneのスペック次第という事もあるのでしょうか。現行機種でも対応してくれればありがたいのですが。</p>]]></content:encoded>
			<wfw:commentRss>http://blog.tpop.jp/2009/02/17/%e3%82%a2%e3%83%89%e3%83%93%e3%80%81%e3%80%8cflash-player-10%e3%80%8d%e3%81%ae%e3%82%b9%e3%83%9e%e3%83%bc%e3%83%88%e3%83%95%e3%82%a9%e3%83%b3%e5%af%be%e5%bf%9c%e4%ba%88%e5%ae%9a%e3%82%92%e6%98%8e/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>EC2のConsole</title>
		<link>http://blog.tpop.jp/2009/01/12/aws-console-ec2/</link>
		<comments>http://blog.tpop.jp/2009/01/12/aws-console-ec2/#comments</comments>
		<pubDate>Mon, 12 Jan 2009 08:03:13 +0000</pubDate>
		<dc:creator>so-me-e-da</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[amazon]]></category>
		<category><![CDATA[ec2]]></category>

		<guid isPermaLink="false">http://blog.tpop.jp/?p=113</guid>
		<description><![CDATA[アマゾンがEC2をWebで直感的にコントロールできる、コンソールを提供開始したので。少し触ってみました。
まずはQuickStartにある、このインスタンスを作ります。

Ruby on Rails Web Starter (AMI ID: ami-b44bafdd)
Fedora Core 8, 32-bit architecture, Ruby 1.8.6, Rails 2.2.2, RubyGems 1.3.1, Mongrel 1.1.5, and MySQL 5.0.45



sshでのアクセス用URLが表示されるので、ログインしてみます。
RubyとRailsのバージョンはこんな状態です。
[root@ ~]# gem -v
1.3.1
[root@ ~]# gem list
*** LOCAL GEMS ***
actionmailer (2.2.2)
actionpack (2.2.2)
activerecord (2.2.2)
activeresource (2.2.2)
activesupport (2.2.2)
cgi_multipart_eof_fix (2.5.0)
daemons (1.0.10)
fastthread (1.0.1)
gem_plugin (0.2.3)
mongrel (1.1.5)
open4 (0.9.6)
rails (2.2.2)
rake (0.8.3)
[root@ ~]# ruby -v
ruby 1.8.6 (2008-08-11 patchlevel 287) [i386-linux]
[root@ ~]# which [...]]]></description>
			<content:encoded><![CDATA[<p>アマゾンがEC2を<a href="https://console.aws.amazon.com/">Webで直感的にコントロールできる、コンソールを提供開始</a>したので。少し触ってみました。<br />
まずはQuickStartにある、このインスタンスを作ります。</p>
<blockquote>
<div class="cell_liner"><strong>Ruby on Rails Web Starter</strong> (AMI ID: ami-b44bafdd)<br />
<span class="ami_description">Fedora Core 8, 32-bit architecture, Ruby 1.8.6, Rails 2.2.2, RubyGems 1.3.1, Mongrel 1.1.5, and MySQL 5.0.45</span></div>
<div class="cell_liner"><span class="ami_description"><br />
</span></div>
</blockquote>
<p>sshでのアクセス用URLが表示されるので、ログインしてみます。<br />
RubyとRailsのバージョンはこんな状態です。</p>
<blockquote><p>[root@ ~]# gem -v<br />
1.3.1<br />
[root@ ~]# gem list</p>
<p>*** LOCAL GEMS ***</p>
<p>actionmailer (2.2.2)<br />
actionpack (2.2.2)<br />
activerecord (2.2.2)<br />
activeresource (2.2.2)<br />
activesupport (2.2.2)<br />
cgi_multipart_eof_fix (2.5.0)<br />
daemons (1.0.10)<br />
fastthread (1.0.1)<br />
gem_plugin (0.2.3)<br />
mongrel (1.1.5)<br />
open4 (0.9.6)<br />
rails (2.2.2)<br />
rake (0.8.3)<br />
[root@ ~]# ruby -v<br />
ruby 1.8.6 (2008-08-11 patchlevel 287) [i386-linux]<br />
[root@ ~]# which ruby<br />
/usr/bin/ruby<br />
[root@ ~]#</p></blockquote>
<p>こういうインターフェイスはサードパーティーの物がありましたが。今回アマゾン自身が提供する事になったわけです。無料で使えるのもありがたい事です。これでEC2を利用するのに、大分敷居が下がった感じがします。</p>
<p>/proc/meminfo と /proc/cpuinfo の出力はこんな感じです。</p>
<blockquote><p># cat /proc/meminfo<br />
MemTotal:      1747764 kB<br />
MemFree:       1615412 kB<br />
Buffers:          5368 kB<br />
Cached:          48384 kB<br />
SwapCached:          0 kB<br />
Active:          51096 kB<br />
Inactive:        40248 kB<br />
HighTotal:     1003528 kB<br />
HighFree:       907368 kB<br />
LowTotal:       744236 kB<br />
LowFree:        708044 kB<br />
SwapTotal:      917496 kB<br />
SwapFree:       917496 kB<br />
Dirty:              12 kB<br />
Writeback:           0 kB<br />
AnonPages:       37612 kB<br />
Mapped:           8472 kB<br />
Slab:             5972 kB<br />
SReclaimable:     2432 kB<br />
SUnreclaim:       3540 kB<br />
PageTables:        792 kB<br />
NFS_Unstable:        0 kB<br />
Bounce:              0 kB<br />
CommitLimit:   1791376 kB<br />
Committed_AS:   178332 kB<br />
VmallocTotal:   114680 kB<br />
VmallocUsed:      1360 kB<br />
VmallocChunk:   112936 kB</p>
<p># cat /proc/cpuinfo<br />
processor    : 0<br />
vendor_id    : AuthenticAMD<br />
cpu family    : 15<br />
model        : 65<br />
model name    : Dual-Core AMD Opteron(tm) Processor 2218 HE<br />
stepping    : 3<br />
cpu MHz        : 2599.998<br />
cache size    : 1024 KB<br />
fdiv_bug    : no<br />
hlt_bug        : no<br />
f00f_bug    : no<br />
coma_bug    : no<br />
fpu        : yes<br />
fpu_exception    : yes<br />
cpuid level    : 1<br />
wp        : yes<br />
flags        : fpu tsc msr pae mce cx8 apic mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow up pni cx16 lahf_lm cmp_legacy svm extapic cr8legacy ts fid vid ttp tm stc<br />
bogomips    : 6502.41<br />
clflush size    : 64</p></blockquote>
<p>ps ax。最初からmongrelが起動しています。</p>
<blockquote><p># ps ax<br />
PID TTY      STAT   TIME COMMAND<br />
1 ?        Ss     0:00 init [4]<br />
2 ?        S      0:00 [migration/0]<br />
3 ?        SN     0:00 [ksoftirqd/0]<br />
4 ?        S      0:00 [watchdog/0]<br />
5 ?        S&lt;     0:00 [events/0]<br />
6 ?        S&lt;     0:00 [khelper]<br />
7 ?        S&lt;     0:00 [kthread]<br />
9 ?        S&lt;     0:00 [xenwatch]<br />
10 ?        S&lt;     0:00 [xenbus]<br />
48 ?        S&lt;     0:00 [kblockd/0]<br />
49 ?        S&lt;     0:00 [cqueue/0]<br />
54 ?        S&lt;     0:00 [khubd]<br />
56 ?        S&lt;     0:00 [kseriod]<br />
76 ?        S      0:00 [pdflush]<br />
77 ?        S      0:00 [pdflush]<br />
78 ?        S&lt;     0:00 [kswapd0]<br />
79 ?        S&lt;     0:00 [aio/0]<br />
201 ?        S&lt;     0:00 [kpsmoused]<br />
220 ?        S&lt;     0:00 [kjournald]<br />
242 ?        S&lt;     0:00 [kauditd]<br />
267 ?        S&lt;s    0:00 /sbin/udevd -d<br />
498 ?        S&lt;     0:00 [kmpathd/0]<br />
504 ?        S&lt;     0:00 [kmirrord]<br />
522 ?        S&lt;     0:00 [kjournald]<br />
786 ?        Ss     0:00 /sbin/dhclient -1 -q -lf /var/lib/dhclient/dhclient-eth0.leases -pf /var/run/dhclie<br />
851 ?        Sl     0:00 rsyslogd -m 0<br />
855 ?        Ss     0:00 rklogd -x<br />
864 ?        Ss     0:00 dbus-daemon &#8211;system<br />
874 ?        Ss     0:00 /usr/sbin/sshd<br />
882 ?        Ssl    0:00 console-kit-daemon<br />
932 ?        Ss     0:00 crond<br />
965 ?        SNs    0:00 anacron -s<br />
999 ?        S      0:00 /bin/sh /usr/bin/mysqld_safe &#8211;datadir=/var/lib/mysql &#8211;socket=/var/lib/mysql/mysql<br />
1057 ?        Sl     0:00 /usr/libexec/mysqld &#8211;basedir=/usr &#8211;datadir=/var/lib/mysql &#8211;user=mysql &#8211;pid-file<br />
1092 ?        Sl     0:01 /usr/bin/ruby /usr/bin/mongrel_rails start -e development -p 80 -d<br />
1104 xvc0     Ss+    0:00 /sbin/agetty xvc0 9600 vt100-nav<br />
1110 ?        Ss     0:00 sshd: root@pts/0<br />
1112 pts/0    Ss     0:00 -bash<br />
1149 pts/0    R+     0:00 ps ax</p></blockquote>]]></content:encoded>
			<wfw:commentRss>http://blog.tpop.jp/2009/01/12/aws-console-ec2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>オライリーのJava本を貰いました</title>
		<link>http://blog.tpop.jp/2008/07/15/java-books/</link>
		<comments>http://blog.tpop.jp/2008/07/15/java-books/#comments</comments>
		<pubDate>Tue, 15 Jul 2008 11:55:27 +0000</pubDate>
		<dc:creator>so-me-e-da</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[book]]></category>
		<category><![CDATA[Java]]></category>

		<guid isPermaLink="false">http://blog.tpop.jp/?p=89</guid>
		<description><![CDATA[友人がいらないというので、くれました。紙袋２つ分。無料では何なので、メシおごりました。ありがとう！
今読もうとは思わないけど、暇を見つけてちょこちょこ眺めてみようと思います。
それにしてももう本棚が一杯なので床にとりあえず積み上げ状態に・・・なってます。]]></description>
			<content:encoded><![CDATA[<p>友人がいらないというので、くれました。紙袋２つ分。無料では何なので、メシおごりました。ありがとう！</p>
<p>今読もうとは思わないけど、暇を見つけてちょこちょこ眺めてみようと思います。</p>
<p>それにしてももう本棚が一杯なので床にとりあえず積み上げ状態に・・・なってます。</p>]]></content:encoded>
			<wfw:commentRss>http://blog.tpop.jp/2008/07/15/java-books/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>詳細 Objective-C 2.0 を読んでみる</title>
		<link>http://blog.tpop.jp/2008/07/15/lerning-objective-c/</link>
		<comments>http://blog.tpop.jp/2008/07/15/lerning-objective-c/#comments</comments>
		<pubDate>Tue, 15 Jul 2008 11:44:17 +0000</pubDate>
		<dc:creator>so-me-e-da</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Objective-C]]></category>

		<guid isPermaLink="false">http://blog.tpop.jp/?p=86</guid>
		<description><![CDATA[前にアップルの無料セミナーでXcodeを使ったチュートリアルはやった事があるものの。Objective-Cはまだまだ良くわからないので。本を買って勉強中です。
詳解 Objective-C 2.0は実際に開発していく上での注意点などが書かれていて、非常に参考になります。しかしC言語やその他何かオブジェクト指向での経験を前提に書かれているので、その点は注意が必要です。今の所はiPhone開発関連の情報は、ADCと数少ない書籍を頼りにするしかないのですよね。ノウハウを学べるという点でこの本は押さえておきたいところです。後で自分でハマる所を減らせるかもしれません。
うーん、Objective-C。鍵括弧が多いですね。
詳解 Objective-C 2.0]]></description>
			<content:encoded><![CDATA[<p>前にアップルの無料セミナーでXcodeを使ったチュートリアルはやった事があるものの。Objective-Cはまだまだ良くわからないので。本を買って勉強中です。</p>
<p><a href="http://www.amazon.co.jp/%E8%A9%B3%E8%A7%A3-Objective-C-2-0-%E8%8D%BB%E5%8E%9F-%E5%89%9B%E5%BF%97/dp/4797346809%3FSubscriptionId%3D1N9AHEAQ2F6SVD97BE02%26tag%3Dmetaloop-22%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D4797346809" target="_blank">詳解 Objective-C 2.0</a>は実際に開発していく上での注意点などが書かれていて、非常に参考になります。しかしC言語やその他何かオブジェクト指向での経験を前提に書かれているので、その点は注意が必要です。今の所はiPhone開発関連の情報は、ADCと数少ない書籍を頼りにするしかないのですよね。ノウハウを学べるという点でこの本は押さえておきたいところです。後で自分でハマる所を減らせるかもしれません。</p>
<p>うーん、Objective-C。鍵括弧が多いですね。</p>
<p><a href="http://www.amazon.co.jp/%E8%A9%B3%E8%A7%A3-Objective-C-2-0-%E8%8D%BB%E5%8E%9F-%E5%89%9B%E5%BF%97/dp/4797346809%3FSubscriptionId%3D1N9AHEAQ2F6SVD97BE02%26tag%3Dmetaloop-22%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D4797346809" target="_blank"><img src="http://ecx.images-amazon.com/images/I/41DMQIxWH0L._SL75_.jpg" alt="詳解 Objective-C 2.0" height="75" /></a><a href="http://www.amazon.co.jp/%E8%A9%B3%E8%A7%A3-Objective-C-2-0-%E8%8D%BB%E5%8E%9F-%E5%89%9B%E5%BF%97/dp/4797346809%3FSubscriptionId%3D1N9AHEAQ2F6SVD97BE02%26tag%3Dmetaloop-22%26linkCode%3Dxm2%26camp%3D2025%26creative%3D165953%26creativeASIN%3D4797346809" target="_blank">詳解 Objective-C 2.0</a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.tpop.jp/2008/07/15/lerning-objective-c/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>GAEでのバックグランドプロセス</title>
		<link>http://blog.tpop.jp/2008/05/31/gae-background-process/</link>
		<comments>http://blog.tpop.jp/2008/05/31/gae-background-process/#comments</comments>
		<pubDate>Sat, 31 May 2008 14:42:37 +0000</pubDate>
		<dc:creator>so-me-e-da</dc:creator>
				<category><![CDATA[Programming]]></category>

		<guid isPermaLink="false">http://blog.tpop.jp/2008/05/31/gae-background-process/</guid>
		<description><![CDATA[GAEではバックグランドで動かしたままのプロセスとか、cronのような機能も無いのが今ひとつですが。こんな事を言ってる人がいました。
Well, the GAE team was pretty upfront about it in the Fireside Chat.
Their top three priorities currently are (in any order &#8211; these are
different team members working concurrently):
* Getting the billing to work better
* Supporting more languages
* Background processing
 Request: cron-like functionalit
GAEのチームがChatで言っていたという話なので、信用できるかどうかわからないですが。事実だといいなぁ。
Supporting more languagesって、日本語とかそういう事・・・じゃなくて。RubyとかPerlも早期にサポートされる事を期待します。]]></description>
			<content:encoded><![CDATA[<p>GAEではバックグランドで動かしたままのプロセスとか、cronのような機能も無いのが今ひとつですが。こんな事を言ってる人がいました。</p>
<blockquote><p>Well, the GAE team was pretty upfront about it in the Fireside Chat.<br />
Their top three priorities currently are (in any order &#8211; these are<br />
different team members working concurrently):<br />
* Getting the billing to work better<br />
* Supporting more languages<br />
* Background processing</p>
<p><a href="http://groups.google.com/group/google-appengine/browse_thread/thread/8455a00b0f71545b?hl=en"><span id="thread_subject_site"> Request: cron-like functionalit</span></a></p></blockquote>
<p>GAEのチームがChatで言っていたという話なので、信用できるかどうかわからないですが。事実だといいなぁ。</p>
<p>Supporting more languagesって、日本語とかそういう事・・・じゃなくて。RubyとかPerlも早期にサポートされる事を期待します。</p>]]></content:encoded>
			<wfw:commentRss>http://blog.tpop.jp/2008/05/31/gae-background-process/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>DjangoアプリをGAE化（でハマった)</title>
		<link>http://blog.tpop.jp/2008/05/20/gae_on_django/</link>
		<comments>http://blog.tpop.jp/2008/05/20/gae_on_django/#comments</comments>
		<pubDate>Tue, 20 May 2008 11:57:38 +0000</pubDate>
		<dc:creator>so-me-e-da</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[AppEngine]]></category>
		<category><![CDATA[Django]]></category>

		<guid isPermaLink="false">http://blog.tpop.jp/?p=82</guid>
		<description><![CDATA[DJangoのアプリをGoogle App Engine(GAE)で動かしてみたのですが、ハマったのでメモ。
GAEでDjangoを使う記事を参考に、サンプルで作ったDjangoアプリをGAE化してみました。が、勘違いしてハマりました。
ハマったのはディレクトリ構造で、GAEのアプリケーションディレクトリとDjangoディレクトリを同一レベルにしてしまったのが敗因。つまりはDjangoアプリの一番上にGAEに必要なmain.pyとapp.yamlを置いてしまった事が悪かったのでした。
誤ったディレクトリ配置
myapp/
  app.yaml
  main.py
  manage.py    - django用
  setting.py   - django用
  ...

正しいディレクトリ配置
myapp/
    app.yaml
    main.py
    myapp/        &#60;--- Djangoアプリをもう一階層下に作る。
        manage.py    - [...]]]></description>
			<content:encoded><![CDATA[<p>DJangoのアプリをGoogle App Engine(GAE)で動かしてみたのですが、ハマったのでメモ。</p>
<p><a href="http://thomas.broxrost.com/2008/04/08/django-on-google-app-engine/">GAEでDjangoを使う記事</a>を参考に、サンプルで作ったDjangoアプリをGAE化してみました。が、勘違いしてハマりました。</p>
<p>ハマったのはディレクトリ構造で、GAEのアプリケーションディレクトリとDjangoディレクトリを同一レベルにしてしまったのが敗因。つまりはDjangoアプリの一番上にGAEに必要なmain.pyとapp.yamlを置いてしまった事が悪かったのでした。</p>
<p>誤ったディレクトリ配置</p>
<pre>myapp/
  app.yaml
  main.py
  manage.py    - django用
  setting.py   - django用
  ...
</pre>
<p>正しいディレクトリ配置</p>
<pre>myapp/
    app.yaml
    main.py
    myapp/        &lt;--- Djangoアプリをもう一階層下に作る。
        manage.py    - django用
        setting.py   - django用
        ...
</pre>
<p>説明記事をちゃんと読めばわかる事ですが。まさか myapp/myapp という、同じ名前が続くとは思わなかった・・・。</p>]]></content:encoded>
			<wfw:commentRss>http://blog.tpop.jp/2008/05/20/gae_on_django/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Djangoを使って思った事</title>
		<link>http://blog.tpop.jp/2008/05/20/using_django/</link>
		<comments>http://blog.tpop.jp/2008/05/20/using_django/#comments</comments>
		<pubDate>Tue, 20 May 2008 11:49:31 +0000</pubDate>
		<dc:creator>so-me-e-da</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Django]]></category>
		<category><![CDATA[Python]]></category>

		<guid isPermaLink="false">http://blog.tpop.jp/2008/05/20/using_django/</guid>
		<description><![CDATA[Google App Engineで使えるという事で、最近Djangoで遊んでいます。
まず管理画面がいいですね、RailsのActiveScaffoldと比べるのは何ですが。洗練された感じがします。ユーザ管理もフレームワークでサポートしているのは、お気軽に何か作りたい時には助かります。
あと、プロジェクトの中にアプリケーションを複数持てて、そのアプリケーションの独立性が高いので、他に持っていきやすいのも面白いです。RailsではRailsEngineでこいう事が実現できるのですが、Dangoではフレームワークでサポートです。
逆に気になる点はというと。
アプリケーション名等を変更した時に設定が何カ所かにハードコーディングされている事。そんな機会はそんなに無いとはいえ、少々美しくないです。
あとテンプレートエンジンではパイプの記号を使って、フィルタの感覚でいろいろな変換を実現しているんだけど。このフィルタの記述でスペースを許容していない事。これは少々読みにくいです。
Ruby系ならRailsはErbが使えるので、Rubyの文法そのまま使えるのですが。独自テンプレートエンジンの場合は制限が多くなりがちです。Pythonは言語の仕様上Erbの様なテンプレートエンジンは無理がありそなので、仕方無い事ですね。]]></description>
			<content:encoded><![CDATA[<p>Google App Engineで使えるという事で、最近Djangoで遊んでいます。</p>
<p>まず管理画面がいいですね、RailsのActiveScaffoldと比べるのは何ですが。洗練された感じがします。ユーザ管理もフレームワークでサポートしているのは、お気軽に何か作りたい時には助かります。</p>
<p>あと、プロジェクトの中にアプリケーションを複数持てて、そのアプリケーションの独立性が高いので、他に持っていきやすいのも面白いです。RailsではRailsEngineでこいう事が実現できるのですが、Dangoではフレームワークでサポートです。</p>
<p>逆に気になる点はというと。<br />
アプリケーション名等を変更した時に設定が何カ所かにハードコーディングされている事。そんな機会はそんなに無いとはいえ、少々美しくないです。</p>
<p>あとテンプレートエンジンではパイプの記号を使って、フィルタの感覚でいろいろな変換を実現しているんだけど。このフィルタの記述でスペースを許容していない事。これは少々読みにくいです。</p>
<p>Ruby系ならRailsはErbが使えるので、Rubyの文法そのまま使えるのですが。独自テンプレートエンジンの場合は制限が多くなりがちです。Pythonは言語の仕様上Erbの様なテンプレートエンジンは無理がありそなので、仕方無い事ですね。</p>]]></content:encoded>
			<wfw:commentRss>http://blog.tpop.jp/2008/05/20/using_django/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Merbってエラー画面が面白いね</title>
		<link>http://blog.tpop.jp/2008/03/12/neat_merb_exception_view/</link>
		<comments>http://blog.tpop.jp/2008/03/12/neat_merb_exception_view/#comments</comments>
		<pubDate>Tue, 11 Mar 2008 15:20:42 +0000</pubDate>
		<dc:creator>so-me-e-da</dc:creator>
				<category><![CDATA[Programming]]></category>
		<category><![CDATA[Rails]]></category>
		<category><![CDATA[merb]]></category>

		<guid isPermaLink="false">http://blog.tpop.jp/2008/03/12/neat_merb_exception_view/</guid>
		<description><![CDATA[Ruby on Railsに似たフレームワーク、Merbをちょっと使ってみた。

$ sudo gem install merb --include-dependenciesmerb [app name]
$ cd [app name]
$ merb
これでhttp://localhost:4000/にアクセスすると、早速エラーメッセージが発生するのだが。

トレースバックの先頭の矢印をクリックすれば、その部分のソースコードが表示されるし。更に行番号をクリックすると、その部分をエディタで起動もしてくれた。これは随分親切でありがたい。
フレームワークを使い始めの時は特に、フレームワークのソースコードを見たい物だけど。Gemでインストールしているライブラリをエディタで開くのは結構面倒。ショートカットやリンクを張っていればこれはストレス軽減できるけど、沢山あるフレームワークのファイルの中から適切な物を探して選ぶのも結構面倒だったりするので。クリック一発で開くのはかなりいいです。]]></description>
			<content:encoded><![CDATA[<p>Ruby on Railsに似たフレームワーク、<a href="http://www.merbivore.com/">Merb</a>をちょっと使ってみた。</p>
<pre>
$ sudo gem install merb --include-dependenciesmerb [app name]
$ cd [app name]
$ merb</pre>
<p>これでhttp://localhost:4000/にアクセスすると、早速エラーメッセージが発生するのだが。<br />
<a href="http://blog.tpop.jp/wp-content/uploads/2008/03/merb_err.png" title="Merb エラー画面"><img src="http://blog.tpop.jp/wp-content/uploads/2008/03/merb_err.thumbnail.png" alt="Merb エラー画面" /></a></p>
<p>トレースバックの先頭の矢印をクリックすれば、その部分のソースコードが表示されるし。更に行番号をクリックすると、その部分をエディタで起動もしてくれた。これは随分親切でありがたい。</p>
<p>フレームワークを使い始めの時は特に、フレームワークのソースコードを見たい物だけど。Gemでインストールしているライブラリをエディタで開くのは結構面倒。ショートカットやリンクを張っていればこれはストレス軽減できるけど、沢山あるフレームワークのファイルの中から適切な物を探して選ぶのも結構面倒だったりするので。クリック一発で開くのはかなりいいです。</p>]]></content:encoded>
			<wfw:commentRss>http://blog.tpop.jp/2008/03/12/neat_merb_exception_view/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
