github page+ Octopress

XCode4.3にアップデートしたら、gcc,configureなどがインストールされてないので、
XCodeのPreferenceのDownloadから、Command Line Toolsをインストル。

rvmインストールする。(ruby 1.9.3を使うため)
url -L https://get.rvm.io | bash -s stable --ruby
rvm install 1.9.3
rvm use 1.9.3
rvm rubygems latest

Octopressインストールする。
git clone git://github.com/imathis/octopress.git octopress
cd octopress # If you use RVM, You'll be asked if you trust the .rvmrc file (say yes).
ruby --version # Should report Ruby 1.9.3
bundle install

失敗する

creating Makefile

make
Configuring libffi
Launch of "gawk" failed: the PowerPC architecture is no longer supported.
config.status: error: could not create include/Makefile
make: *** ["/Users/adachic/.rvm/gems/ruby-1.9.3-p194/gems/ffi-1.0.11/ext/ffi_c/libffi"/.libs/libffi_convenience.a] Error 1


gawkが古い。入れなおす。
sudo port install gawk

再トライ
bundle install

OK.

rake install

アカウント対応付け
rake setup_github_pages
(git@github.com:adachic/IJT3.git)

記事を書く
rake new_post["title"]
source/_post以下にエントリが作成されるので、markdownで書く

デプロイ
rake gen_deploy

簡単にできた
http://adachic.github.com/

まぁ、アクセス解析とかはこっちが充実してるんで、ミラーリング的に使うかも。

参考にしたサイト:
http://www.sankitch.me/blog/2012/05/05/build-octopress-on-github-dropbox/

マークダウン:
http://tokkono.cute.coocan.jp/blog/slow/index.php/programming/markdown-skills-for-github-beginners/

人狼/Android、C81、C82展望1

かなり前だけど、イケメン人狼Android版をリリースした。
https://market.android.com/details?id=com.regaria.ijt
そのあたりの話と、あとAndroidシステムで高速にプロセス間通信をどうやるか、を書いた40ページくらいの薄い本をC81で出した。全体的な人口がもとにもどりつつあるんで、ノーマナーな人なんかも増えたみたいだが、村がかなり復興して、これはこれでよかったかなと。

次のC82にも一応応募はしていて、内容としてはAndroid/iOSシステムのメモリ管理、あとは、iOS同士でいい感じに(高速に)通信する具体的なことについて調べていて、このあたりはあまりやってる人がいなさそうで、簡単なものでもいいから一つでも作りたいと思っている。

なんでそういうのやりたいかというと、イケメン人狼ではサーバが必要で、サーバ側、Androidの両方を開発して、かつ、サーバの運用といってもcronが動くだけだけども、サーバがあるというだけで、運用コストまでがかかるのが趣味でやるにはだるい。一度公開してしまうと、こちらが手仕舞するとなにも残らない。

今どきのゲームってのは、もうサーバなんて用意する必要なくて、端末間で通信して、すれ違いとか、そういうカジュアルなつながりでも、皆十分に楽しんでいるように見える。人人を繋げるコストが低くなってて、親しくなりたい人のプロフィールをソーシャルグラフとかで後から追えるし、だからこそ、ずっとログインしっぱなしでいる必要もない。あと、サーバ持ってないからシンプルでいい。モンハンとか、ダークソウルはそうなってる。

僕が知っている、昔のMMORPGとかだと、ずっとたまり場にいないと親しくできないとか、親しくした人がある日、ふっと消えて追いかけようがないとか、そういう不便すら、もう時代遅れなんだろうな。

Android開発環境セットアップ(Mac OS X 10.6.7)

Mac OS X 10.6.7(家)


Eclipse 3.5.2(Galileo)
Eclipse IDE for Java EE Developers
Eclipse Galileo SR2 Packages (v 3.5.2)
http://www.eclipse.org/downloads/packages/release/galileo/sr2


・日本語化
ヘルプから、追加インストールを選択し、
Locationのところに、
http://download.eclipse.org/technology/babel/update-site/R0.8.0/galileo


Android SDK r10
android-sdk_r10-mac_x86.zip
http://developer.android.com/sdk/ndk/index.html
/optにインストールする。


Android NDK r5(ネイティブコード書かないなら不要)
android-ndk-r5b-darwin-x86.tar.bz2
http://developer.android.com/sdk/ndk/index.html
/optにインストールする。


Android標準APIAPIレベル設定
ヘルプから追加インストールを選択し、以下を追加。
https://dl-ssl.google.com/android/eclipse/
1.6... API Lv4
2.0... API Lv5
2.1... API Lv6,7
2.2... API Lv8


Android platform
SDK and AVDマネージャからインストールする。


設定から、Android SDKのパスを通す。
Android 2.2を使う。(好きなやつを使うといい)


プロジェクト作成。実機をUSBでつなぐ。実行構成をmanualにする。ビルド、実行。動作確認完了。

以上。

before_fileter 非login時の定義は、routes.rbに書かない

before_filter :login_required
で、ログインされてないときのページは、routes.rbではない。

lib配下に関数があるので、そっちを変更する。
http://rubist.blog77.fc2.com/blog-entry-95.html

char*からNSString*への変換

char* cp = "test";
NSString* str = [NSString stringWithCString: cp
encoding:NSUTF8StringEncoding];



ここで、testが終端文字で終わっていなければ、
strにはnilがはいるので注意。


ついでだから書いておくと、
IBOutletを使用している場合、Static TextがEnableになっていると、
いくらアクセサを設定しても、上書きできないので注意。


さらにもう一点、
IBOutletのlabelを書き換えるときは、必ずaddSubviewした後で書き換えましょう。
labelに限った話ではないが。
addSubviewの前だとこれも、どれだけ頑張っても上書きできませんので注意。


アホみたいな話ですが、普通にハマります。上の3つは最初にチェックしたい。