iPadからMBAへ

MacBook Air13を導入してからiPadを使わなくなってしまいました。ゲームのために2、3度手にしただけ。机を離れるとiPadばかり使っていた時期には「このままパーソナルコンピュータを使わなくなっていくのかな、これが新しいPCなのかな」みたいなことをたびたび考えたのですが、そういうわけではなかったようです。
iPadの場合、参照している「ページ」が増えてきたときに切り替えが面倒なのと、テキストの入力とカット&ペーストの操作性が不自由です。いっぽうLion搭載のMBAは、タッチ操作の充実、SSDによる高速性、画面の広さ、キーボードの扱いやすさといった特徴を組み合わせて、快適なユーザーインタフェイスを必要最小限のパッケージで提供しているように思います。
外出先でもMBAです。デフォルトの持ち歩きマシンになりました。バッテリの持ちが良くACアダプタ無しでもiPadと同程度に安心して使えます。鞄に入れて運ぶときはiPadよりも重さを感じますけど、薄いおかげで、かさばる印象はありません。ただ、なかなか慣れないのが、鞄から取り出すときの掴みにくさです。薄さと表面のスベスベ性のせいですべりがち。iPadは液晶面が指にくっつく感覚があって、掴みやすいですな。出し入れしやすい鞄があればいいんじゃない? という気はするので、目下物色中です。

Processing for Android

ProcessingでAndroidのプログラムを作ることができます。Eclipse+SDKで弱まったワタクシでも、サクッと動かすことができました。実機でもサクッ! ここ数日、そのあたりを調べていたんですが、ドキュメントはprocessing.orgの Processing for Android が基本でした。日本語だといいよなー、と思ったのでざっくり訳して公開しました。

Processing for Android 日本語訳

完訳ではなくて、冗談やJava的に込み入った話はところどころ飛ばしました。すいません。間違いがあったらお知らせください。

ここ数日、TLではWiringの話題もよく流れてました。サイトがかっこよくなって、良さそうな新しいボードが出て、IDEが1.0RC3になってます。Arduinoボードを含むAVRベースのマイコンのユーザーにはかなりおいしい仕様になってる気がします。楽しいなー。

Arduino 1.0 Beta

ついに、Arduino1.0のBeta版がリリースされました(ダウンロードはこちらから)。大きな節目の一歩手前という感じでしょうか。変更点は次のとおり。

開発環境(IDE)
・新しい拡張子(.ino)
・新しいツールバーのアイコン: チェックマーク(verify)、右矢印(upload)
・プログラマを使ったスケッチのアップロード: シフトキー+Uploadボタンを押すか、Fileメニューの”Upload Using Programmer”を選択
・Preferenceを設定することで、コンパイル時とアップロード時により詳しいメッセージが表示される

言語(API)
・シリアル通信の送信バッファのノンブロッキング化
・Serial.flush()は受信データを捨てるのではなく送信処理のほうを保留
・SoftwareSerialライブラリを再実装し、複数ポートをサポート(NewSoftSerial by Mikal Hart)
・Matrix、Spriteの両ライブラリを廃止
・Serial.print(byte)は数値を文字として出力(そのままバイナリを出力したいときはwrite()を使用)
・Stringクラスの再実装
・Flashメモリを使用するF(“string”)記法の文字列処理を追加
・Ethernetライブラリの”client == NULL”や”client != NULL”といった書き方を廃止。代わりに”if (client)”や”if (!client)”を使用
・EthernetライブラリにDHCPとDNSのサポートを追加
・UDP APIを修正
・IPAddressクラスを追加
・Wireライブラリを修正し、Sreamを継承
・SD cardライブラリで複数のファイル/ディレクトリのopenに対応
・シリアル通信時にデータを受け取ると自動的に呼ばれるserialEvent()の導入

内部処理
・WProgram.hをArduino.hに改名
・ピン定義をcoreからpin/サブディレクトリへ移動(その位置はboards.txtのBOARD.build.pinsで指定)

 以上です(原文)。まだすべての新機能は確認していなくて、文字面だけで判断してる部分もあるので、変なところがあったら教えてください。

スマフォとわたし

3197.jpgGalaxy Sにはいろいろ不満もありますが、使っているうちに愛着を感じるようになってきました。たとえば、夜中に自分の日誌に埋め込まれた小さなYouTubeの動画をこの端末で見ると胸がキュンとなります。

11日の夜は、携帯電話がまったくつながらない状況のなか、Galaxy SをWiFiモードにして、閉店したスタバから漏れ出てくるmzoneの電波を捉まえメールをやりとりしました。バッテリーがどんどん減っていって「もうちょっとがんばってくれ!」と思いましたが、全般的にガラケーより活躍してくれた1日でした。その日から、自分にとって理想的なAndroid端末ってどういうものかな、と考えてます。

楽しい開発

Androidアプリケーション開発ガイド ―HTML+CSS+JavaScriptによる開発手法』を読みおえたところです。監訳者・増井俊之さんのまえがきがモチベーションをあげてくれました。曰く……、携帯端末のプログラムを開発することはとても楽しい。とくに近年はiPhone、Androidによって、多くの人に使ってもらうことができるようになった。開発環境も使いやすく、アマチュアでも参加が可能。とくにAndroidは手間がかからない。ただし、Javaによる開発はそれなりに難しい。代わりに本書のようなHTMLとJavaScriptを使ったアプリ開発がおすすめ。携帯端末のプログラムがこれほど簡単に作れるようになったのは「前代未聞の出来事」。面白いアプリをどんどん作っていこう! とのこと。読みながら、なるほどこれでイケそうなアプリ(サービス)はいろいろありそうだゾ、と思いました。

Androidアプリケーション開発ガイド ―HTML+CSS+JavaScriptによる開発手法

と言いつつ、今日いじっていたのは別のツール。App Inventor for AndroidはGoogleが提供しているクラウド型のビジュアルプログラミング環境。使い始めてから、完成したパッケージを実機にダウンロードするまでの間に16回くらい衝撃が走りました。ついにHyper Cardを超えるツールが登場してしまったのか!? これ以上語るのはもう少し研究してからにしておきましょう。

appinv1.jpg

Androidアプリ開発

Androidアプリ開発特集ということで、ひさしぶりにSoftware Design誌を買ってみました。「はじめよう!」という見出しですが、どちらかというとすでに始めちゃった人の効率アップや状況整理に重きが置かれた内容であるという印象で、拙者にはまだちょっと早かったかも。まずは読みかけの『初めてのAndroid(第3版)』を消化してから、改めて目を通したほうがいいのかも。他の記事では、安藤さんのCESレポートが気になるアイテム満載。とくにsifteoはヌヌヌ!という感じ。アプリ開発用の言語はPythonかな。

Software Design (ソフトウェア デザイン) 2011年 03月号 [雑誌]初めてのAndroid 第3版