2012-01-01から1年間の記事一覧

2012年ふりかえり

今年最初のエントリで目標を掲げたわけだけど 謹賀新年 - present 採点するなら50点だな。大学の成績なら不可。追試を懇願するレベルだ。 仕事では相変わらず C# 一本だったけど、、プライベートでは Python、JavaScript、Objective-C、Ruby と手を広げまく…

ふきや

福岡ビル地下1階にある、お好み焼き『ふきや』天神店に行ってきた。お昼どきはいつも賑わってるんだけど、この時はたまたまカウンターが空いていたので、これ幸いと席に滑り込んだ。その後すぐ満席になったので、ギリギリセーフ。注文したのは定番の『肉玉(6…

外部に HTTP アクセスする機能の単体テストで WebMock 使ってみた

ブログの Feed をダウンロードする機能の単体テストで、いちいち本物の Feed にアクセスしたくない。テスト遅くなるし、Feed 更新されたらテスト結果変わっちゃうし。こういうときはスタブやモックの出番。WebMock という gem を使うことにした。 bblimke/we…

Johan

福岡三越地下2階にある Johan でパンを買ってみた。三越に行くには天神地下街をかなり南下しないといけないから、昼休みに気安く行けないのが難点。 今回のお目当てはチョコブレッド。Johan の横を通るたびに目に入るから気になっていたんだけど、売上4位の…

Evergreen を導入したばかりだけど Konacha に移行した

先日 Evergreen を導入したけど Evergreen は今メンテされてないってコメントで教えてもらった。確かに、README よく見たら書いてあるし…。完全に見落としてた。不覚。README のリンク先、Google グループのスレッドでは Konacha っていう Rails エンジンが…

Evergreen で Rails アプリの JavaScript を単体テストする

はじめに Rails アプリの JavaScript のテストは capybara(+capybara-webkit) を使えば一応できるけど、統合テストなのがね…。統合テストもちゃんと書くけど、やりたいのは JavaScript の単体テストなのに。 そこで Evergreen そんな中で最近知ったのが Ever…

ActiveRecordでテーブルの情報を取得する方法

Railsエンジンを作ってるとテーブル名や列情報を取得したいときがある。Railsアプリを作ってるときはあんまり無いけど。そんなとき用に、ActiveRecord にはテーブルの情報を取得するためのクラスメソッドが用意されている。テーブル名なら table_name、列情…

ドンキホー亭

ここのところ食べてばかりな気もするけど、福岡市中央区港、地下鉄大堀公園から徒歩10分弱のところにある『ドンキホー亭』で、元祖手捏ねハンバーグ(880円)を食べてきた。ド・ド・ド・ドンキー、じゃないよ。ブログコメントで教えてもらった店なんだけど、よ…

Webサービスのつく​り方

Web サービスのつくり方って聞くと、Web アプリケーションフレームワークを使った開発の部分に焦点をあてた内容を想像しがち だけど、本書はそうじゃない。サンプルコードは載ってるけど少々。そもそも技術書じゃなくて、エッセイだし。 本書では開発だけで…

NSString のプロパティに NSNull が入っていてハマった

オブジェクトのプロパティの値を UITextField の text に設定しようとしたら 'NSInvalidArgumentException', reason: '-[NSNull length]: unrecognized selector sent to instance 0x2264678'っていうエラーが出てアプリが落ちた。nil が入っているなら例外…

うどんの杵むら

薬院にある『うどんの杵むら』で、『カレー南蛮うどん(卵入り)800円』を食べて来た。博多うどんのように柔らか過ぎず、讃岐うどんのように非常にコシのある麺でもない。どちらかというと、もっちりとした食感の麺だった。時間がたってものびずにもっちりが持…

SSKeychain を使って Keychain Service にパスワードを保存したみた

例えば、Web サービスの iPhone クライアントの場合、ユーザーに Web サービスのアカウント名とパスワードを入力してもらう必要がある。で、入力してもらったパスワードを安全に保存しなきゃいけないんだけど、嬉しいことに iOS は Keychain Service という…

Amazon Web Services クラウドデザインパターン設計ガイド

本書は Cloud Design Pattern(以下CDP)の定義と適用シナリオの、2つの章で構成されている。1章では48の CDP を紹介していて、Scale Up・Scale Outといった AWS に限らない従来のパターンもあれば、Scheduled Scale Out・Stack Deployment といった AWS だか…

入力時にキーボードで隠れないように UITextField を UIToolbar に配置する方法

iPhone 画面下のツールバーにテキストボックスとボタンを配置して、コメント投稿バーみたいなやつを作ってみた。Storyboard からはツールバーにテキストボックスを直接配置できないけど、テキストボックスを UIBarButtonItem でくるんでツールバーに追加する…

UIActivityIndicatorView を使って画面中央にインジケーターを表示してみた

Web API を呼び出している間、画面に何のデータも表示しないってのはユーザーを不安にさせるので、画面中央にインジケーターを表示することにした。標準で UIActivityIndicatorViwe というシンプルなインジケーターが提供されているので、こいつを使ってみる…

一膳めし青木堂

大名にある『一膳めし青木堂』に行ってみた。ここは創業52年の老舗。福岡の、しかも激戦区大名で52年営業出来ているのには理由があるに違いないと、ちょっと期待。ショーケースにおかずが並んでたけど、温かいものが食べたかったので、ソースカツ丼を注文し…

NSURLConnection を使って非同期に Web API を呼び出してみた

Objective-C で Web API を非同期に呼び出すのに使えるライブラリを探していて、ASIHttpRequest や AFNetworking あたりが使えそうだったけど、標準の NSURLConnection にも非同期メソッドがあったのでこちらを使ってみる。練習に、GitHub のリポジトリ一覧…

しらすくじら

福岡ビル地下1階にある『しらすくじら』は福岡で有名な『磯貝』の系列店。磯貝よりもリーズナブルなんでいつか行こうと思っていたところ、お昼にたまたま店の前を通ったら、オープン当初はやってなかったランチ営業をいつの間にか開始していた。これは入らね…

NSJSONSerialization で JSON 文字列をパースしてみた

Web API が返す JSON をパースするライブラリの定番は JSONKit みたいだけど、iOS5 から標準で NSJSONSerialization っていうクラスが提供されているので、こちらを使うことにする。まずは練習として JSON 文字列をパースして NSArray に変換してみた。 // J…

『夢をかなえるゾウ』読書メモ

2007年のベストセラーを今更だけど図書館で借りて読んでみた。借りた理由は何となく。以前話題になったけど読んだことなかったな、ってくらい。「小説っぽい」っていう評判だけは耳にしたことがあるので、『ユダヤ人大富豪の教え』みたいな感じの会話調を想…

内部で使っているクラスを無理やりモックと差し替え可能にする方法

C#

素人が購入することは考えにくい Visual Studio 2010*1で、クラス内部で使っている他のクラスを無理やりモックに差し替え可能にする C# サンプルコードを書いてみた。 public class Foo { public Foo() { // デフォルトを設定 CreateBar = () => { return ne…

ポール・ボキューズ

大丸の地下2階の入口に入ってすぐ、メゾンカイザーの向いにある『ポール・ボーキューズ』。ここの店頭に置いてあった『チョコリング~極み~』が以前から気になっていて、会社帰りに買おうと思ってたんだけどいつも売り切れてるんで、昼休みに買いに行ってみ…

UITableViewで行を削除しようとして躓いたメモ

UITableView の編集モードを使って // UITableView に表示するデータの件数を返す -(NSInteger)tableView:(UITableView*)tableView numberOfRowsInSection:(NSInteger)section { return [self.model dataCount]; } // 行はすべて編集可能にする -(BOOL)table…

iPhone アプリ設計の極意

今まで、レイアウトや UI 部品の配置は適当に決めていた。適当というと語弊があるな。ユーザーがすぐ操作を習得できるように、既存のアプリを参考に決めてはいた。だけど、それ以外の理由はなかった。本書を読んでからというもの、「なぜそのレイアウトにす…

井出ちゃんぽん

佐賀の有名なちゃんぽん店『井出ちゃんぽん』が福岡に出店したらしいので行ってみた。佐賀に住んでた頃は存在自体知らなかったけどね。福岡に来て初めて食べるなんて皮肉だ。注文したのは、ちゃんぽん・並(670円)。 ウソみたいだろ。並なんだぜ、これで…。す…

CocoaPods を使って TapkuLibrary を導入

はじめに CocoaPods 導入したことだし、プロジェクトで使っているライブラリをすべて CocoaPods でインストールし直そうかな。ってことで手始めに TapkuLibrary をインストールしてみる。 devinross/tapkulibrary · GitHub TapkuLibrary は iOS 用 UI 部品を…

iPhone5を買ったけどメールを送受信できない問題の対処法

最強の IT 系かあちゃん*1風に。 たかしへあなたが購入したiPhone5を見ました。メールの送受信とiCloudの連絡帳との同期が出来ていません。解決方法をネットで調べましたか?設定を出荷状態にリセットして再アクティベートし、au のプロファイルをダウンロー…

Objective-Cのライブラリ管理ツールCocoaPodsを導入してみた

CocoaPodsって何? CocoaPods/CocoaPods · GitHub CocoaPods は Objective-C のライブラリ管理ツール。Ruby の Bundler みたいなもの。開発中の iPhone アプリでカレンダーが使いたくなって TapkuLibrary を README を見ながら導入したんだけど、プロジェク…

Subversion リポジトリを更新してビルドを実行する Rakefile 書いてみた

Ruby を Rails アプリ開発だけに使うのはもったいない。刺身タンポポ作業は Ruby でスクリプト書いてどんどん自動化しないと。というわけで、Ruby で Subversion のリポジトリを更新して、プロジェクトをビルドする作業を自動化してみた。Rake ファイルだけ…

焼肉どらごん

だんだん涼しくなってきて、ついに食欲の秋到来かも。ってことで、警固にある『焼肉どらごん』に行ってみた。前からずーっと行きたかったんだけど、予算の都合や、地理的な都合でなかなか機会に恵まれなくて…。3年越しの願いがようやく成就した。色んな種類…