仮想環境での MacOS導入予定

 最近は、ipod touch と ipad2 をよくつかうように
 なってきました
 主な使用用途としては ipad は電子書籍や資料
 自炊したものを読むのと、サーバー管理などに使います
 ipod touch は持ち運びしやすいため
 モバイルルーターを使って GPS 機能を使うこと
 音楽関連に使うことが多くなりました
 Android 携帯でもいいのですが
 電池の減りが早いのと、あとフリーズ率高めなので
 通信のよさ以外はまだまだなかんじがします
 もうすぐ、機体 Android 4.0 以降に対応してくれば
 マシンスペックも上がり、安定しそうなので
 それまで機種変は我慢します
 
 現在、充電が micro USB なため
 今後搭載されると思われる充電形式 Qi が搭載されるのを待ちます
 さて、思いっきり脱線しましたが、今回の目的は
 仮想環境に MacOS X を入れるための情報収集をしていて
 参考サイトなどを見つけたので、今後の復習や忘れたときの対策として
 メモしてみました
 仮想環境に windows でもいいのですが
 最近の windows 7 とかだとスペックは要求されるし
 価格が一番の問題です
 ちなみに、比較してみました
 まず MAC OS X 10.6.3 SNOW LEOPARD

まぁ5000円近くですが、頑張ればなんとかなります
 次に Windows7 32bit のほうですが
 パッケージで購入と、DSP 、OEM などの購入方法があります
 これらの解説は
 Windows のパッケージ版、OEM 版、DSP 版の選び方
に載っています
 単純に言ってしまえば、セット販売で買うの DSP と OEM になります
 そのぶん安くはなりますが、ライセンスの問題でパーツの縛りがついてきます
 ちなみに、価格ですが 
 Microsoft Windows7 Home Premium 32bit 日本語 DSP版 + メモリ
 
 
 Windows 7 Home Premium 通常版 Service Pack 1 適用済み
 
となります
すでに倍以上になってしまうため、今回仮想環境の導入には
Mac OS X にする予定です
ちなみに、導入方法については
Windows上のVMWare PlayerでMac OS Xを動かす
に詳しく載っていたので
商品が届いて時間ができたら仮想環境へインストール予定です
もっとも、私の場合ホストOSが ubuntu なので、うまくいくかは微妙ですが….

Java Script ゲームエンジンの入手

週刊アスキーにも掲載されていましたが
Javascirpt を使い、ゲームを作成できるようです
今回は、そのゲームエンジンをダウンロードしてみました
http://enchantjs.com/ja/?s=ja
よりダウンロードが可能です
この enchant.js は UEIで開発された HTML5 + javascript ベース
の開発エンジンです
書籍関連でもしらべてみたのですが
Amazon では
残念ながら売り切れで中古まちの状態でした
HTML5とJavaScriptでスマートフォンゲーム作成! ゼロからはじめるenchant.js入門【公式ガイド】

実際にゲームを作成するには javascript と HTML5
の知識、CSSなども必要になりますが
どんなものかを見てみたい場合には
enchant.js 入門 と検索してみると
サンプルや解説などがでてきます
PHP や Android 開発などについても
大抵は
入門 とか のキーワードを入れることでかなり検索しやすくなります
今回、この
enchant.js 入門で検索してみた結果
「enchant.js」でゲームを作ろう! HTML5とJavaScriptによるアクションゲーム制作入門
という解説サイトがヒットしました
また、
http://9leap.net/

ゲーム開発コンテストが行われていて
2011年には
優秀者には最新型の PC/Mac や図書カード5000円分などが贈呈され
最優秀者3名はアメリカのシリコンバレー視察ツアー、
および世界最大のゲーム開発者会議
Game Developers Conference 2011への参加権を
得ることができたようです
今後もいろいろとありそうなので、スキルアップしたら
こういったものに参加してみるとおもしろいし自信もつくと思います

CakePHP DB接続情報の設定

DBを phpMyAdmin で作成したので
次に、DBへの接続情報の設定を行います
(本来は、SQLコマンドで作成できれば、のちのちsqlファイルから
コマンドで作成できるので、とても役立つのですが、これは今後の課題です)
とりあえず、それは置いておいて
必要なファイルを作成します
DBへの接続情報を設定するには
database.php に記述するのですが
初期の状態ではこのファイルは存在しません
そこで、database.php.default をコピーし
このファイルを作成する必要があります
cd /var/www/cakephp/app/Config/
で移動して
cp database.php.default database.php
でファイルを作成します
次に。vim database.php でファイルを開き

class DATABASE_CONFIG {
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'user',
'password' => 'password',
'database' => 'database_name',
'prefix' => '',
//'encoding' => 'utf8',
);
public $test = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'user',
'password' => 'password',
'database' => 'test_database_name',
'prefix' => '',
//'encoding' => 'utf8',

の部分を変更します
なお、パラメータについては
初心者のためのCakePHP2.0 プログラミング入門:
を参考にさせていただきました
ちなみに、変更するのは default 項目のみ

class DATABASE_CONFIG {
public $default = array(
'datasource' => 'Database/Mysql',
'persistent' => false,
'host' => 'localhost',
'login' => 'myapps_user',
'password' => 'phpMyAdminで決めたパスワード',
'database' => 'myapps',
'prefix' => '',
'encoding' => 'utf8',
);

というように変更します
変更したら、保存しファイルを閉じます
この状態でブラウザでアクセスしても
Your tmp directory is NOT writable.
となっているので、
次に
Your tmp directory is NOT writable.
の対処を行います
このメッセージは
tmp ディレクトリに書き込み権限がないことが原因です
試しに ls コマンドでパーミッションを調べてみます

ll ../../app/
合計 64
drwxrwxr-x 14 snowpool snowpool 4096 2012-02-05 16:03 ./
drwxrwxr-x  6 snowpool snowpool 4096 2012-02-05 16:03 ../
-rw-rw-r--  1 snowpool snowpool  141 2012-02-05 16:03 .htaccess
drwxrwxr-x  3 snowpool snowpool 4096 2012-02-24 22:58 Config/
drwxrwxr-x  4 snowpool snowpool 4096 2012-02-05 16:03 Console/
drwxrwxr-x  3 snowpool snowpool 4096 2012-02-05 16:03 Controller/
drwxrwxr-x  2 snowpool snowpool 4096 2012-02-05 16:03 Lib/
drwxrwxr-x  3 snowpool snowpool 4096 2012-02-05 16:03 Locale/
drwxrwxr-x  4 snowpool snowpool 4096 2012-02-05 16:03 Model/
drwxrwxr-x  2 snowpool snowpool 4096 2012-02-05 16:03 Plugin/
drwxrwxr-x  4 snowpool snowpool 4096 2012-02-05 16:03 Test/
drwxrwxr-x  2 snowpool snowpool 4096 2012-02-05 16:03 Vendor/
drwxrwxr-x  9 snowpool snowpool 4096 2012-02-05 16:03 View/
-rw-rw-r--  1 snowpool snowpool  642 2012-02-05 16:03 index.php
drwxrwxr-x  6 snowpool snowpool 4096 2012-02-05 16:03 tmp/
drwxrwxr-x  6 snowpool snowpool 4096 2012-02-05 16:03 webroot/

みてのとおり、wの権限がないため、書き込みできません
このため、この権限を変更します
chmod -R 777 /var/www/cakephp/app/tmp/
これで、権限が変更され、再度
http://localhost/cakephp
へアクセスすると、すべてオールグリーンとなり
使用可能となります

wordpress でソースコード表示プラグインの導入をしました
参考サイトは
SyntaxHighlighter Evolved : ソースコードを美しく表示するプラグイン
http://wordpress.org/extend/plugins/syntaxhighlighter/
へアクセスし
syntaxhighlighter.zip
をダウンロードします
次に
cd ~/ダウンロード
unzip unzip syntaxhighlighter.zip
で解凍
sudo cp -rp syntaxhighlighter /var/www/wordpress/wp-content/plugins/
でディレクトリごとプラグインへコピー
ブラウザを開き、wordpress のダッシュボードへログインし
プラグインの項目で
SyntaxHighlighter Evolved
を有効化にします
ちなみに、これだけではダメで
実際にコードの表示をするときには
SyntaxHighlighter Evolved 導入
にあるように
コード言語の指定をする必要があります

 コード 

というようにします
<code> コード </code>
では普通のHTMLとなります

CakePHP DB設定

引き続き、CakePHP の設定となります
CakePHP のDB設定を行います
書籍を見ると、phpMyAdmin を使っているので
ここは同じように行います
ちなみに、参考書籍は基礎から学ぶ facebookアプリ開発

書籍ではWindows での XAMPP ですが
私の環境は ubuntu なので
Ubuntu(11.04)でLAMPP(Linux Apache MySQL PHP PHPMyAdmin)を構築!インストールと設定
を参考に設定します
いくつか必要なものもあるので
apt-get install php5-gd phpmyadmin
でインストールしました
インストールしている途中で MySQL の rootパスワードを聞かれるので
入力します
失敗しても、再度設定するか聞かれるので
とくに問題にはならないと思います
続いて
phpMyAdmin へアクセスします
http://localhost/phpmyadmin
でアクセスし
初期状態なら
ユーザ名 root
パスワード 設定したパスワード
としログインします
ログインしたら、データベースタグをクリックし
新規データーベース作成のところで
myapps と入力し作成をクリックします
次に、特権タブをクリックし。新しいユーザを追加する をクリック
ユーザ名 myapps_user
パスワード 任意のパスワード
で設定
上に sql コマンドがでるけど
たぶんこれは
実行結果だと思う
CREATE USER ‘myapps_user’@’%’ IDENTIFIED BY ‘***’;
GRANT USAGE ON * . * TO ‘myapps_user’@’%’ IDENTIFIED BY ‘***’ WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
GRANT ALL PRIVILEGES ON `myapps` . * TO ‘myapps_user’@’%’;
次は作成したDBを設定ファイルへ書き込みを行います

CakePHP 初期設定

CakePHP を使うため、初期設定を行います
download 完了後、
unzip コマンドで解凍
unzip cakephp-cakephp-2.0.6-0-g5886b25.zip
次にディレクトリの名前が非常に長いため
mv cakephp-cakephp-4ed3d35 cakephp
で名前変更
このままでは使えないため、初期設定を行います
参考サイトは
cakePHPの初期設定【オールグリーンにする方法】

cakePHPの初期設定【オールグリーンにする方法】


そして
CakePHP インストール

CakePHP インストール


設定ファイルを変更し。セキュリティを固めないとダメみたいなので
vim cakephp/app/Config/core.php

/.salt で検索し
187行めの
Configure::write(‘Security.salt’, ‘DYhG93b0qyJfIxfs2guVoUubWwvniR2G0 FgaC9mi’);
の部分で 英数字の部分
DYhG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi
を変更します
どれか1文字変更でもOK
また
Configure::write(‘Security.cipherSeed’, ‘76859309657453542496749683645’);

76859309657453542496749683645
の数字を変更し保存します
ここまで完了したら
この cakephp ディレクトリを
web サーバーのルート直下にアップロードします
とはいっても、ファイルコピーするだけですが
cp -rp cakephp /var/www/
この状態でアクセスすると
URL rewriting is not properly configured on your server.
と真っ赤に表示されている
対策は
Ubuntu11.04のapache2、PHP5、cakePHPのインストールについて(備忘録)
http://tyukudiary.at.webry.info/201109/article_6.html
を参考に
sudo a2enmod rewrite
で rewrite を有効化
次に
sudo vim /etc/apache2/sites-available/default
で開いて

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

へ変更
最後に
sudo /etc/init.d/apache2 restart
で設定反映
次にDB設定が必要
これは、また明日

CakePHP の基礎知識

CakePHP について調べてみました
CakePHP は
OSSのPHPフレームワーク
Ruby on rails の概念を取り入れたMVC」アーキテクチャのFW
CakePHPを使うと
記述するコード格段に減らせるらしい
MVC ATはappの構造を 
model
view
Controller
3つの要素に分割して実装する
というプログラミング技法のこと
model は
データ操作(入手流直や整形加工)
veiw は
データの出力
controller は
model と view の制御を行う
ちなみに、model は データベースと呼ばれる低レベルレイヤーでDBと対話を行う
これにより、どの種類のDBでm、お同じ記述でアクセス可能になるというものです
ダウンロードは
http://cakephp.jp/
からとなります
今回は、最新の安定版になる
2.0.6 安定版をダウンロードしました
もし、不具合がありそうなら
1.3.14 安定版を使ってみます

Ustream API で番組検索

Data API(Ustream Data API ) にアクセスして
データを取得するには
リクエストに応じたパラメータを付加して HTTP GETリクエストを
以下のURLへ送信
http://api.ustream.tv/レスポンスフォーマット
レスポンスフォーマットには
xml
json
php
html
を指定可能
設定できるパラメータは
以下のとおり
subject
検索対象のリソースを指定
uid
subject で指定したID、もしくはscope(範囲)の指定
command
指定したsubject に大して行う操作の指定
params
検索条件など、その他のパラメータ指定
limit
1頁あたりのページ数
page
取得するページ番号を指定
key
APIキーの指定
ちなみに。以下は subject の設定値
channel
番組
user
ユーザ
video
過去のビデオ
stream
ライブ配信
system
システム
番組(Channel)を検索したいなら
subject パラメータに channel
command パラメータに search
というように指定

iPod touchでvim

iOS5からの機能ですが
Vimがアプリで使えるようになりました
ESCキーがないため
\が代わりとなります
変更点については
Vim iPhone 使い方
で検索するとでてきます
iOS5以前の場合、
OSアップデートでアップデートすれば
使えるようになりますが
ネット回線が遅い場合
iCloud へ同期するようにしてしまうと
かなり動きが遅くなるため
注意が必要です
もし、iCloudの設定を変えたいなら
アプリで
設定の 中から変えることができます

サーバーIPアドレス取得

スクリプトを使ってIPアドレスの取得ができないか調べてみました
ipアドレスの取得
に答えが載っていました
vim getip.sh
でファイルを作成
#!/bin/sh
. /etc/sysconfig/network-scripts/ifcfg-eth0
echo $IPADDR
でIPアドレスの表示ができるようになりました
これで、応用で web サーバーの設定やIPアドレスを設定するところが
簡略化できます