ひげろぐ

技術者として仕事人としての思うところや覚え書きやらです
Home      Profile      Works     
2009-06-07

『iPhone SDKの教科書』はかなりいい入門書だった

iPhone SDKの教科書―Cocoa Touchプログラミング、最初の一歩
赤松 正行
秀和システム
売り上げランキング: 3792
おすすめ度の平均: 4.0

4 アプリケーションの開発に初めて取り組む人に。
4 やっといい本がでた。

iPhoneアプリ開発の最初のステップとしては現在最良の入門書だと思う。
分かりやすくていい本。

とにかく自分の作ったアプリがiPhoneやiPod Touch上で動く楽しさを手軽に味わえる点がとても良い。
画像や効果音の素材がサポートページからダウンロードできるので、それらを使うと見栄えの点でもいいかんじのものができあがるのもうれしい。
楽しさ重要。

他の初心者本がまずは座学で理屈から教える先生なら、この本は実技でお手本を見せてくれる先生といったかんじがする。

内容はiPhone SDKのインストールの説明からはじまるので、完全初心者でも安心。
そういった部分が読み飛ばせるくらいの人はすっとばしてサンプルアプリ作成から行くもよし。

アプリの作成はアイデアを形にするまでの制作の流れなども説明されていて、かなり実践的内容。
また作成の手順説明が操作のスクリーンショットを交えて丁寧でかなり分かりやすい内容になっている。
レシピ通りに進めていけばほとんど迷わず読み進めていくことができるだろう。

この本に従って進んで行くと最終的にサンプルアプリを6つ作ることになる。
数作ることで、操作を反復することになり開発の要領を体で覚えることができるのもいいんじゃないだろうか。

一方でサンプルコードに含まれるクラスやメソッドの説明は最小限にとどめられている。
ただそのおかげでサンプルアプリの作成がテンポ良く進められるようになっているような気がするので、それはむしろプラス評価。

足りない点へのフォローとしてはレシピ通りにサンプルアプリを作って終わり、とならないように、そこから先のステップに進む道筋として改良アイデアを提示して促したり、補足資料としてドキュメントやコミュニティへのポインタを設けたりもしている。

ということでこの本を読み終わったら、提示されたアイデアや自分のアイデアを形にする過程で別の本とかAppleの公式リファレンスで調べていけばいいだろう。
そしたら脱初心者。

で、別の本に関しては何冊か本屋でパラパラ立ち読みしてみたけど、入門の部分がすめばあとはリファレンスで足りるような気がした。
とりあえず自分はこの本で入門はすんだので、あとはしばらく公式のリファレンスでがんばってみようかと思っている。
(翻訳が変と評判の『iPhone デベロッパーズ クックブック』だけちょっと気になっているけど)

もうちょい本で基礎を勉強したいよという人は『基礎からのiPhone SDK』あたりが二冊目によさげな気がする。

2009-05-24

More Joel on Software

個人的に大好きな『Joel on Software』の続編。

More Joel on Software
More Joel on Software
posted with amazlet at 09.05.24
Joel Spolsky
翔泳社
売り上げランキング: 4363

特にこの本から何かを得ようとしなくても語り口自体が軽妙なので単純に読み物として面白い。
開発者としてだけでなくソフトウェア会社の経営者としての視点からの記事もあるので、いろんな人にオススメできる本。

エビデンスベースのスケジューリング

今回の『More Joel on Software』ではエビデンスベーススケジューリングという考え方が興味深かった。

これは開発者の見積もりに対して過去の時間記録から求めた補正を加えてより正確なスケジュールを見積もる仕組み。
エビデンスは辞書によると形跡とか物証とかそう言う意味だそうだ。

簡単に言うといつも見積もりよりも二倍の時間がかかる開発者がいれば、その開発者の見積もりを二倍にすれば正しいスケジュールが求められるという考え方だ。

ソフトウェア開発の見積もりを正確に行うのは難しい。
同じ内容のタスクをこなすのでも開発者の技量によってかかる時間は違うし、各々の開発者が開発以外に取られる時間の考慮も必要になる。
性格的な差もあり、楽観的な開発者は実際よりも少ない時間に見積もるし、慎重な開発者は多く見積もる傾向がある。

ただこうした傾向はあっても多くの開発者は相対的には正しい見積もりをする。
多くの開発者の見積もりと実際にかかる時間が異なるのは見積もり能力が欠如しているからというわけではないのだ。(ただし中には本当にまったく参考にならないまずい見積もりをする開発者もいる)

エビデンスベースのスケジューリングはそういった「開発者は相対的には正しい見積もりをする」という考え方に基づいている。

最初に開発者が立てた見積もりに対して、あとは坦々と実際かかった時間を記録していく。
この時開発のために使った時間だけではなく、開発以外に取られた時間も込みで記録する。

例えば突発的な打ち合わせとか不意のサーバダウンによる復旧作業に取られた時間も込みで。
そうすることで作業開始から完了までの全て込みの正確な時間が得られるというわけだ。

それで得られた見積もりと実際かかった時間の差から、次回の見積もりに加える補正が求められ、見積もりからより実際に近いスケジュールが得られる。
そしてこの精度は記録を蓄積するに従って高まっていき、スケジューリングのための強力なツールになる。

自分も勘で似たようなことをしているし(直感的な見積もりを2倍か3倍したらだいたい正しい見積もり)、経験的に同じことをやっている開発者はけっこういると思うけど、このようにきちんと計測してやる考え方は初めて知った。
第20章にもっと詳しくわかりやすく書いてあるので興味を持った人は是非どうぞ。

ジョエルさんの会社(Fog Creek社)が出してるFog Bugzにはこのエビデンスベースのスケジューリングの機能があるそうだ。
Redmineでもこういうプラグインとかないのかな。

ほかにも面白いと思った話がたくさん

盛りだくさんだった。

第1章 はじめてのBillGレビューのこと

なんか笑えるw

第15章 ユーザビリティがすべてではない

確かにひどいUIでも多くの人に使われてるソフトウェアとかサイトとかあるよね。

第23章 間違ったコードは間違ってみるようにする

良いハンガリアン記法と悪いハンガリアン記法の話とか。

第26章 ソフトウェアにおける高音域

凡庸な歌手は最高の歌手がいつでも出している高音域を決して出すことができない。100人集まっても。

第29章 シンプルさ

シンプルさへの的外れな信仰について。

第32章 心に残るカスタマサービスへの7ステップ

ホコリを払うように勧める。責めを負う。強欲ではどこにもたどり着けない。とかとか。

2009-04-03

iPhone対応サイト作成のお供に『iPhone Web Style』

iPhone対応のウェブサイトを作り始めるにあたって基本的な情報がまとまっていてよかった。
予備知識とかほどんどないけれどもiPhone対応ウェブサイトをこれから作ってみたいという人、急に作る必要にかられた人などに激しくオススメ。

  • 基本的なできることできないこと
  • コンテンツ制作上の注意項目(容量制限、Flash不可など)
  • iPhoneサイトのCSS
  • 定番デザインとサンプルコード(ボタン型、リスト型)
  • iPhoneサイトの機能について(電話、地図、動画、できないことの回避策など)
  • 簡単にサイトを構築できるライブラリの紹介(iui,UiUIKit)
  • 開発とデバッグのやり方
  • 実例紹介

HTMLとCSSが理解できれば簡単に作れるんですな。
Macがないとシミュレータが使えないので開発がちょっと大変ということくらいか。

iPhone Web Style
iPhone Web Style
posted with amazlet at 09.04.03
株式会社FEYNMAN 正 健太朗 川畑 佑介
ソフトバンククリエイティブ
売り上げランキング: 31014
2009-03-29

『Railsデプロイ』は良い本

読んだ。

Railsを本番環境で運用していく方法についてかなり丁寧に書いてある。
単にこうすればうまくいくというだけではなく、なぜそうなるのか、そうしなかったらどうなるのかというところまで掘り下げて書かれている。
しかも読みやすい。さくさく読める。
これはかなりいい本だ。

原書は出た時期がちょっと昔なので情報がちょっと古い面もある。
対象とするRailsのバージョンが2.0.2であったりPassengerに関する言及がなかったり。
けれども全般的に今でも通じるしこれからも通じるだろうということがたくさん書かれている。
決して陳腐化していない。

序盤の章は、運用環境でアプリをちゃんと動かすための諸々の準備やマイグレーションの解説、運用環境にするホストの選び方と設定方法などに割かれている。
このあたりはそれなりに経験を積んだ人なら飛ばしてもいいような内容。
だがたしかに悩んだ覚えのあることがつぶさに書かれている。
これらの章はRails初心者にはかなり得るところが多いだろう。
経験者もざっと目を通してみるとふたつみっつためになることがあるかもしれない。

序盤以降のCapistranoやスケールアウト、パフォーマンスに関する章は初心者でないRails開発者にも興味深いはず。
特にパフォーマンスチューニングの具体的な方法やよくあるボトルネック、キャッシュは実は難しいといったところの内容は面白かった。

Mongrelの章はもうMongrel使ってないからスルーでいいやと思いきや、番犬(Moint)の設定やエラーの通知など面白いトピックがあった。
油断がならない。
Windows環境で運用する手順なんかもまとまっている。
この章は今のところほんとにパラパラとしかめくってないけれど、そのうち読んでみるつもり。

こいつは必読書だと思う。

Railsデプロイ
Railsデプロイ
posted with amazlet at 09.03.29
Ezra Zygmuntowicz Bruce A. Tate Clinton Begin
オライリージャパン
売り上げランキング: 9887

# ところでデプロイって言葉はもう普通に使っても通じるのかな?

2009-01-19

集合知プログラミング

昨年読んだ本の中で特に面白かった物のひとつ。

集合知プログラミング
集合知プログラミング
posted with amazlet at 09.01.19
Toby Segaran
オライリージャパン
売り上げランキング: 1943
おすすめ度の平均: 4.5

5 機械学習の現実世界での応用
3 私には敷居が高かったかも・・・
5 応用しやすいアルゴリズム

集合知という言葉は昔からあるもので、コンピュータ分野に限定されない意味を持つが、
この本の中で扱うのはたくさんのデータの中から集合知を見つけ出すためのプログラミングのアイデアや具体的な方法などだ。

プログラマではなく企画を考えるような人が読んでも面白いかもしれない。
アルゴリズムやコード例(Pythonで書かれている)は飛ばして読んでも、集合知プログラミングによってどんなことができるのかは理解できる。

集合知の例

集合知とは何かという言葉の定義を語るよりも、集合知によって何が出来るかということを実際に示した方が多分わかりやすいだろう。
以下のようなものができる。

  • レコメンドエンジン
  • データのグループ分け
  • 検索ランキング
  • ルート(コスト)最適化
  • スパムフィルタリング
  • ドキュメントのカテゴライズ

この本の各章には上記のような例に対してプログラミングする上での考え方、アルゴリズム、サンプルコードなどが具体的に載っている。
これらを自分のアイデアに適用するためには応用が必要になるが、よく説明されているので応用する際の手がかりにも困らないだろう。

マッシュアップアプリの差別化に

昨年のMashupAwardなどを見てもわかることだが、昨今マッシュアップアプリのレベルもずいぶん高くなって来ており、単にマッシュアップしてみましたというだけでは見向きもされないような時代になってきている。

そんな中ですぐれたマッシュアップとそうでないマッシュアップを差別化している要素として顕著なのはUIだ。
使いやすく見栄えの良いUIが作れるというのはかなりの強みだろう。

一方で既存のデータを分析したり意味づけすることで集合知を導き出すような手法も武器になるのではないかと思う。
自分はUI作りのセンスはあんまりなさそうなので、戦うならこっちの方を工夫してとか考えている。

まあ戦う気はもうあんまりないんですけどね。

2009-01-03

モバイルサイト作成の参考書

あけましておめでとうございます。
今年もよろしくお願いします。

と、正月早々よい本を読んだので紹介。
モバイルサイトの作成に関するよくまとまった本二冊。

キャリア別の情報は各キャリアのサイトによくまとまっているけれど、こういった包括的にまとまった情報はなかなか見つからないのでかなりためになった。
両方とも昨年末に出たばかりで情報が新しいのも◎

携帯サイト コーディング&デザイン

対象読者が「HTMLとCSSでPCサイトを作ったことがあるが携帯サイトの知識には乏しい人」ということなので、まさに自分のこと。
モバイルサイトを取り巻く現状、PCサイトとの違いに関する解説と、実際のモバイルサイト作成の手順や基礎などに関して解説付きのサンプルコードを交えて書いてある。
HTMLタグとCSSのキャリア別の挙動をまとめたリファレンスも付いていて、モバイルサイト作成手元に置いておくと便利そうな本だ。

携帯サイト コーディング&デザイン
高木 悠介
ソフトバンククリエイティブ
売り上げランキング: 1504
おすすめ度の平均: 5.0

5 デザイナーからプログラマーまで幅広く使える一冊
5 Webデザイナーなら欲しい一冊
5 携帯サイトデザインに必携の書籍

モバイルユーザビリティ・デザイン

モバイルサイトのユーザビリティに関する基本的な考え方やいろいろなアイデアがたくさん載っている。
こちらはモバイルサイトの開発に慣れた人でもひとつやふたつは得るところがあるのではないだろうか。

HowToと同時にその理由がきちんと説明してあるので初心者的にもわかりやすい。
PCサイト作成経験者を意識してモバイルサイト作成のフローやデザイン、レイアウト、コーディングの基本に関しても扱っている。

モバイルユーザビリティ・デザイン Web制作者が身につけておくべき新・100の法則。
株式会社ゆめみ
インプレスジャパン
売り上げランキング: 7639

今年はモバイルサイトいくつか作りたいなあ。

2008-09-18

メンテしやすいCSSを書くための本

8月の頭くらいにちょっと行き詰まっていたことがあった。
それはごちゃごちゃになったCSSのメンテナンスだ。

作って後はノータッチでいいのであれば適当にCSSを書いて行っても特に問題はないのだが、継続的に変更を加えていくような場合には困ったことになる。というか実際困った。
なので後々のメンテナンスのことも考えてCSSを書いて行く必要があるということを痛感したのだけれど、じゃあそれってどうしたらいいのと言われると全く分からなかった。

そんなときにmoongiftの中の人に紹介してもらったのが以下の本。
CSSデザインをする上でのガイドラインやHowTo、Q&Aにトラブルシューティングなどが載っていて、特にガイドラインとHowToの部分はズバリ欲しい情報だった。

Webプロフェッショナルのための黄金則 XHTML+CSS虎の巻 (Web Designing BOOKS)
大藤 幹
毎日コミュニケーションズ
売り上げランキング: 2586
おすすめ度の平均: 5.0

5 さすがの高水準。文句のない信頼性。
5 テーマ毎に無駄なくまとめられた珠玉の一冊
5 要所がまとめられている

すぐに理解できて非常に参考になったのが以下の二つの項目。

  • div要素を使いすぎない
  • id属性とclass属性を適切に使う

HTMLやCSSのソースもできるだけシンプルを保ち、id属性とclass属性の意味や優先順位をちゃんと理解して使うだけでだいぶ違う。
既存の成果物に完全に反映できてはいないが、壁にぶち当たったときに都度適用していくことでだいぶやりやすくなった。

CSSの書き方というと文法や望んだレイアウトを実現するためにはどうするかと言ったことを紹介してる本は多いが、実際的なガイドラインを紹介しているものは少ない。
そう言う意味でCSSを書く全ての人にオススメできる本。簡にして要を得ていてさくさく読み進められる点もよい。

2008-08-04

Flex3.0SDKで学ぶActionScript3.0入門

Flexって名前は聞いたことあるけど何者ぞ?というくらいの知識の人にちょうどいい本はないかなと本屋で探して見つけた本。
内容は浅いけれどもFlexやActionScriptの初心者にとってのとっかかりとしては悪くないかんじ。

Flex3.0SDKで学ぶActionScript3.0入門―プログラミングの基礎からAIRアプリケーションの作り方まで
佐藤 信正
メディア・テック出版
売り上げランキング: 62378
おすすめ度の平均: 4.0

3 超入門の本
5 mxmlがわかる本

mxmlとActionScriptの関係がHTMLとJavaScriptと同じという例えがとても腑に落ちた。
他の言語でのプログラミング経験があれば数時間もあればmxmlで適当に何か作れるようになる。
これからFlexやってみるという人にはオススメできる一冊。

しかしmxmlもActionScriptもやるならコード補完は必須ですな。
フリーのIDEもあるみたいだけどFlex Builderも安い方のバージョンなら手が届くかなぁ。

2008-07-11

Railsの逆引きリファレンス本

EeePC100円につられて町田のヨドバシに出向いたもののドットがスムーズに打てないキーボードに失望し、書籍コーナーに目標チェンジ。
ちょうどRails 2.0で使える逆引きのリファレンス本っぽいのが欲しいと思っていたのでそこら辺を見てきた。

Railsレシピブック 183の技

あらかじめ目星をつけておいたのがRailsレシピブック。

本棚から取り出してパラパラとめくってみるとなかなかいいかんじ。
単なる型通りの説明だけでなく、ハマりやすいケースに関する注意やしっかりしたサンプルコードなどかゆいところに手が届く内容になっていると感じた。

この本はよく練り上げられている。お買い上げ。

Railsレシピブック 183の技
高橋 征義 諸橋 恭介
ソフトバンククリエイティブ
売り上げランキング: 9759
おすすめ度の平均: 5.0

5 買って損はありません

Ruby on Rails 逆引きクイックリファレンス

Railsレシピブックの近くにあったのでこちらも手に取ってみた。

内容は悪くないがRailsレシピブックに比べるとやや素っ気ないかんじ。これは比べる相手が悪いな。
ただRailsレシピブックで扱ってないトピックに関する項目があったりするので余裕があれば両方買うのもいいかもしれない。

自分はあんまり家に本を増やしたくない人なのでこっちは買わなかった。

Ruby on Rails 逆引きクイックリファレンス Rails 2.0対応
大場 寧子 大場 光一郎 久保 優子
毎日コミュニケーションズ
売り上げランキング: 7737
おすすめ度の平均: 4.0

4 Railsコードを読んでいくときに参考になる。

しかしまあ

Ruby関連のコーナーを見るとずいぶんとRails本が増えてる。
Railsを扱った本が一冊出るたびに話題になってた頃とは隔世の感を覚えた。

2008-02-25

BEST SOFTWARE WRITING読んでます

Joel on Softwareも非常に面白かったので、こちらも楽しみにしていた。
先日書店で並んでいるのを早速買ってきて読んでいる。

「ソフトウェア開発に関する珠玉のエッセイ集」と帯のあおりにあるように、この本はジョエル氏の選んだ29編の短編エッセイ(中にはおかしなマンガも含まれている)からなっている。
著者は26人もいる。テーマもいろいろだ。

まだ全部は読んでいないが、それぞれの長さがそれほどないので、ちょっとした空き時間につまみ食いのように読むことができる。
つまみ食いがなかなか止まらなくなって次々と読み進めてしまうのが玉に瑕なのだが。

ソフトウェア開発に携わっているエンジニアはもちろん、マネジメントをしている人が読んでも得るところがあると思う。(逆にマネジメントに関わったことがないとよくわからんトピックもあるかもしれない)
私自身、物作りに携わる開発者としてよい刺激を受けることができた。
単純に読み物として面白い。それだけでも十分に読む価値がある。

それにしてもホワイ・ザ・ラッキースティフの味わいは異常。


BEST SOFTWARE WRITING


BEST SOFTWARE WRITING

posted with
amazlet

on 08.02.25

Joel Spolsky 青木 靖
翔泳社 (2008/02/21)

2007-09-13

ノンデザイナーズ・デザインブック

最近はひとりでサービスを作っているので、デザインとかも自分でぼちぼちやってるわけですが、やっぱりそっち方面のセンスなどはさっぱりなわけです。

そんなデザイン音痴の自分でもすっと腑に落ちてわかりやすかったのが『ノンデザイナーズ・デザインブック』に紹介されている以下の原則。

  • 近接の原則
  • 整列の原則
  • 対比の原則(コントラストの原則)
  • 反復の原則

これらの原則を知らないと何か変だと感じても何が変なのかわからない。
でもこれらの原則を知っていることで変なところがわかって直せるようになる、という話。

たしかに理屈としてわかっていると、イマイチと感じた際にチェックするポイントが見えて来やすい。
気の利いたデザインはできなくても、まあこんな風にしとけば悪くはないだろう、みたいな修正をすることは出来るようになった気がしてます。
気がしてるだけですか、そうですか。

 

ノンデザイナーズ・デザインブック Second Edition

 

ノンデザイナーズ・デザインブック Second Edition

posted with amazlet on 07.09.14

ロビン・ウィリアムズ
毎日コミュニケーションズ (2004/02/28)
売り上げランキング: 3149



この本はいつか薦めるエントリを書きたいなー、と思っていたら最近これに関する勉強会のエントリがあがったので、いい機会と紹介してみます。

以下のページで公開されているPDFの資料もよくまとまっています。

2007-09-02

DBマガジン 2007年 10月号の感想

相当久々にDBマガジンを買った。
軽く立ち読みしたら特集がけっこう興味深く面白げだったので。

以下注目度順。

  • Linux負荷分散 by はてなおや氏
  • テストデータの作り方
  • MySQL関連のオープンソースツール


DB Magazine (マガジン) 2007年 10月号 [雑誌]
DB Magazine (マガジン) 2007年 10月号 [雑誌]

  • 出版社/メーカー: 翔泳社
  • 発売日: 2007/08/24
  • メディア: 雑誌

「はてな」の達人ワザを大公開!Web-DBシステム負荷分散のオキテ

最後のまとめの「負荷分散は一夜にしてならず」という言葉がリアル。

負荷分散に関する考え方から、地道に負荷を計測してボトルネックを解消するための方法と経験に基づいた具体例ががっつり書かれている。

とりあえず負荷分散しているシステムの近くにいる人には一読をオススメ。

限りなくシステムの精度を高めるテストデータの作り方

表題は「テストデータの作り方」になっているけど、その前提になるテストの考え方やテストケースやテストシナリオの話など、ソフトウェアのテストに関する要点が短くまとめられている良い記事。

基本は「すべてのテストケースを消化できる必要最小限のデータがよいテストデータ」

その上で単体テストやシステムテストなど、テストの種類ごとにどういうテストデータを作るべきかということが簡潔に書かれていてわかりやすい。
実際のテストデータを作るやり方の面では、だいたいどこも同じやり方してるんだな、という感じで安心?した。

MySQL&Firebird対応 オープンソースDB便利ツール活用ガイド

実際試してないので「今のところはそんなものがあるのかー」くらいの感想。

mtstatとかinnotopとかは今度試してみたい。
MySQL Network Monitoring and Advisory Services(なげぇ!)は有償な上に多機能っぽいので敷居高そうだな。

copyright brass.to | powered by WordPress ME