2014年6月16日月曜日

カレンダーの同期あれこれ

なんらかのアプリで予定表ができたのなら、それをGoogleカレンダーやiCloudのカレンダーに取り込みたいよね。

●icalの取り込み
メリット:手軽
デメリット:スマホだと、icalファイルの取り込みに対応しておらず、一度GoogleカレンダーのPC版に移動する必要がある。

●招待メールの送信
メリット:招待を受けてからの導線がシンプル(たぶん)
デメリット:一つずつしかできない

●インテントを利用
メリット:導線が最短
デメリット:一件ずつしかできない。スマホしばり。

●GoogleカレンダーAPIを使う
メリット:一括で操作可能、相手に渡した後も修正が可能
デメリット:ユーザに認証してもうらうのがちょっと手間


「シリアライズ」目的のORマッパーがあってもいいじゃない

ORマッパーでやりたいことって、その名の通り、オブジェクトとRDBを対応付けたいだけったりする。拡張性があった方がいいのだけれど、やりたいことしては「シリアライズ」に近い。

そしてシリアライズってデータ構造丸出しで、いわゆる「カプセル化」ってことは優先度が低い。

そんなわけでシリアライザーとしてお手軽につかえて、拡張しようと思えば拡張できるというORマッパーを自作してみた。オブジェクトとRDBというよりも配列とDBという組み合わせ。

2014年6月15日日曜日

UXって何よ?

UXってあれこれ言われているけど、どれもイマイチしっくり来ない。ユーザーインターフェースの改善だけじゃなくて、ユーザエクスペリエンスだよとは言うが、スコープが広くなった分、考える幅が増えている。だから定義しにくい。

ソーシャルな時代のプログラマーって何

SOLアイアーキテクト SEメンバーブログ:ソーシャルな時代におけるプログラマーという職業
http://iaseteam.eshizuoka.jp/e1306132.html

これに影響を受けて書きます。特にこの一節がポイント。

2014年6月11日水曜日

ログイン状態を保持するときの問題点

もうWebのシステムもログインしっぱなしでいいんじゃない?ってシーンは多いよね。

バックドアを作るという開発手法

あんまり開発手法として語られないけど、バックドアって概念があるよね。

サービスって作っていく時には、下から順に作っていくので、単体テストのフレームワークとかが開発手法として充実してる。んでも完成後のシステムのメンテに関しては割りとルーズ。エンジニアから手が離れてしまっているからかも知れない。

2014年6月10日火曜日

本番環境と開発環境の区別をつけるためのあれこれ

ファイルに書き込むという方法

分かりやすいが、リポジトリ管理がしにくい。リポジトリ管理をしないで済むように、リポジトリ上は、ignore設定するという手もあるのだが、リポジトリを全部持ってきてすぐ動くというのができたらやりたい。

環境変数に書き込むという方法

ファイルには存在しないのでいいような気もするが、環境変数に値をセットするというファイルはどこかにあるはずでそれはやっぱりリポジトリ管理をしたい。

ファイルパスで管理するという方法

ファイルのフルパスが
/nfs
で始まっている時には本番環境扱いでその他は開発環境扱いというのも便利。
フォルダ名の命名規則がしっかりしていれば割りといい線いってるかもしれない。
phpとかだと
if(strpos(__FILE__,"/Users/")!==false){
とかだと、Macっぽいパスで管理してるよねーって話。理想的には、

OSの違いで管理するという方法

本番サーバはさすがにUnix系で、開発はMacやWindowsということは多い。大概の開発言語はOSを取得する関数はある。CentOSだったり、Darwinだったり、

ドメイン名で管理するという方法

一見するとこれが一番良さそうだが、コマンドラインやcronから起動するときにはドメイン名という概念がそもそもない。

ローカルホスト名で管理するという方法

hostnameコマンドで帰ってくるホスト名なら、コマンドラインからでも取得できる。
しかしながら、今度はWebサーバが複数台になるとホスト名も複数パターンあり得る。

2014年6月7日土曜日

ブラウザ上で漫画を読むJavaScriptフレームワーク考える

週刊少年ジャンプのコミックスがいよいよ電子書籍に出始めたということで、メジャーどころも電子書籍に出てきた。アプリで読ませたりもしているが、ブラウザ上で試し読みさせるストアも多い。そこで漫画をスマホブラウザ上で読ませる仕組みについて検討してみたい。