Web API Design
なんかまー、僕はサーバサイドを主に書いているプログラマーなんだが、 ここ数年は、iPhoneだとかAndroidにjsonを返すようなモノを作るケースがおおい。 たぶん、他のサーバサイド作ってる人も傾向としてはそうだと思うのです。
いいインターフェイスを作るのはなかなか難しいもんで、 特に、初めてWeb API作る人とかは、なんか指針が欲しいと思うんです。
そこで、このebookおすすめっす。登録すればタダだし。
http://pages.apigee.com/web-api-design-ebook.html
英語なんだけど、36Pだから、苦手な人でもなんとか読めると思います。 僕はお風呂でデトックスしながら読み終わりました。
新しいプロジェクト始めるんだよねーなんて人は、ぜひ手に取ってみてください。
gemがインストールできない件
なんか良くわからないが、とりあえず、ずるい感じでインストール出来たので、メモ だれか詳しい人、教えてくれると、嬉しいです。 僕はrbenvをつかっていて、ruby 1.9.3p448 での環境です。
aws-sdkのgemをインストールしようとしていたんですが、下記のようにエラーメッセージが出て来て困りました。
$ gem install aws-sdk SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://s3.amazonaws.com/production.s3.rubygems.org/latest_specs.4.8.gz)
下記のように.gemrcをつくってssl verifyをしないようにしたら、インストールできましたが、 ssl verifyをしていないので、不安です!
echo ':ssl_verify_mode: 0' >> ~/.gemrc
だれか、正しい解決方法をおしえて!
Vagrant入門ガイド
- 作者: 新原雅司
- 出版社/メーカー: 技術評論社
- 発売日: 2013/09/12
- メディア: Kindle版
- この商品を含むブログ (1件) を見る
Chefの一部、みたいな感じでつかっているので、Vagrantは何ができて、何が出来ないのかがいまいちわかってない。 ググったりすると、結局ドキュメントがヒットするんで、よんでみたりしてるんだが、 自分の問題の範囲でしか回答って言うのがだせないので、いまいち、Vagrantの全体感がつかめなかった。
この本をよんで新たにわかったことを羅列すると、
- 複数のvmのたてかた
- vagrant statusで複数のvmの状態がわかること
- vmをエクスポートできること
がわかりました。これは、べんりですね。
かるく、Vagrant: Up and Running も読みたいなぁ
ゾーンに入る技術
ゾーンに入る技術 (Forest2545Shinsyo 34)
- 作者: 辻秀一
- 出版社/メーカー: フォレスト出版
- 発売日: 2011/04/15
- メディア: 新書
- 購入: 7人 クリック: 204回
- この商品を含むブログ (8件) を見る
ゾーンに入るには、体調とか精神面をクリーンにしとく必要があって、 そのためには友達とか、同僚をねたんだりとかするんじゃなくて、 応援してあげたり、仲良くしておくのがいいんだよって話。
まーその方が絶対いいよね。絶対。
Androidのエミュレータのhostsの件
目的
タイトルはいったいなんなんだ、さっぱり意味が分かりません。
僕はAndroidのエミュレータからMac OS X上にあるvm上のwebサーバにアクセスしたい。
問題はAndroidのエミュレータってiOSのエミュレータとちがって、ホストOSにあるhostsファイルを参照してくれない。 だから、エミュレータ上にある、/system/etc/hostsを書き換えてやればいい。
と、単純なことなんですが、エミュレータの設定しくじると、 そもそも/systemのディスクサイズが足りなくて、
adb push ./hosts /system/etc/hosts #=> failed to copy './hosts' to '/system/etc/hosts': Out of memory
とか怒られる。
なので、エミュレータの設定をする時に、storageは念のため大きめにする。 僕の場合は、とりあえず2048MBにしたんだけど、/systemはデフォルトパンパンにするようになってるぽく、/systemをちょっと広げてあげないといけない。
設定
Android Stadioでやります。
エミュレータの設定はどこでやるんだか忘れてしまいましたが、 storageを大きめにしましょう。
次にディスク(storage)のパーティション設定です。
Run -> edit configuration -> Emulatorタブ -> Additional command line options
にチェックをいれつつ、フォームに
-partition-size 256
といれてやる。
ちょっと前後しますが、adbにパスを通す。zshrcでも、なんでもいいんで、下記を追記
export PATH=$PATH:/Applications/Android\ Studio.app/sdk/platform-tools
以下からは、エミュレータを立ち上げた時に、毎回行う必要がある作業です。
エミュレータの/system以下を読み書き可能にする。
adb remount # エミュレータの/system以下を読み書き可能にする。
あらかじめ準備したhostsをエミュレータに入れちゃいます。
adb push ./hosts /system/etc/hosts
さてこれで終了です。
設定したhostsが生きてるか、エミュレータのchromeとかで確認してみましょう。
おまけ
ちなみに、下記のようにすると、エミュレータのディスクサイズを確認できます。今回の場合は、以下のような感じ。
$ adb shell # エミュレータのシェル起動
# df
とやると、
# 中略
/system 248M 198M 49M 4096
# 中略
ってかんじで。
あと、以下で、hostsの内容とか確認できるし。
adb pull /system/etc/hosts ./hosts # 現在入ってるhostsを落としてくる
参考
rails migrationのintの話
基本mysqlでintはunsiginedで使うもんだと思ってる僕としては、 railsのマイグレーション的なアレにえぇっ思っています。
- https://github.com/kamipo/activerecord-unsigned-column
- http://qiita.com/kamipo/items/a971e31b8f910c6930be
ああいい世界ですね。
rubyの新しいのを入れたりしたら、gemでやっておきたいメモ
rbenvでrubyをいれたら、gemでこれくらいはやっておこうと思っている。
rbenv exec gem install rubygems-update;
rbenv rehash;
rbenv exec update_rubygems;
rbenv rehash;
rbenv exec gem install rbenv-rehash;
rbenv rehash;