« 2010年5月 | トップページ | 2010年7月 »

2010年6月

ユーザーインタフェースの二極化

一つのファイルが分割されていると思われるファイル一式をもらったのだが、Windowsでもとに戻すにはどうすれば良いのか?と尋ねられることがたまにある。

そういう用途のWindowsアプリケーションが見つからないのだと言う。

普段からWindowsを使っていると、何をするにもGUIアプリケーションを使いたくなるようだが、実はそういうことをするのは、コマンドラインからのほうが簡単だ。

例えば、foo.txt.001とfoo.txt.002という二つのテキストファイルを、foo.txtという一つのファイルに結合するには、次のようにする。

copy foo.txt.001+foo.txt.002 foo.txt

バイナリファイルならこうだ。copyコマンドに/bオプションをつける。

copy /b foo.bin.001+foo.bin.002 foo.bin

分割されたファイルの数が多い場合なら、*を使うのが便利だ。

copy foo.txt.* foo.txt
copy /b foo.bin.* foo.bin

GUIアプリケーションが普及して、今は忘れられがちなコマンドラインだが、こんな、ちょっとしたことをするのには相変わらず便利なものだ。

と、ここまで書いてきて思うのだが、コマンドラインはキーボードがあってこそ使えるものだ。
iPadのようなタッチオペレーションのユーザインタフェースをデフォルトとするコンピュータでは非常に使い辛い。

しかし、iPadのコンテンツブラウザとしての機能と品質は非常に優れたものなので、今後、コンテンツの消費者であるだけの多くの人がパーソナルコンピュータと言えば、それはiPadのようなものを指すようになるのは、ほぼ間違いないと思う。
そして、従来型のパーソナルコンピュータは、自分でコンテンツを作りだしたい生産者向けのコンピュータになっていくのだろう。


| | コメント (0) | トラックバック (0)

ArduinoをUbuntuで動かす方法

Arduinoというマイコンが人気だ。

イタリア生まれのこの小さなコンピュータを使うと、ハードウェアの専門的な知識がなくても、ソフトウェアとハードウェアを組み合わせたシステムのプロトタイプが簡単に作れてしまう。

Arduinoは、もともとはメディアアートの世界から広がったという。

作品に使うハードウェアをエンジニアに発注しても欲しいものが出来上がってこないことに困ったメディアアートを専門とする人々が、それなら自分たちで作っ てしまおうと始めたプロジェクトが、Arduinoの始まりだそうだ。

このため、プログラミング言語やハードウェアの扱いが従来より格段に簡単で、サンプルも豊富にある。道具の使い方を習得するのに多くの時間をかけるのではなく、アート作品の創造にこそ集中したいという思想だ。この考え方は、ソフトウェアを工芸品と考える流派のソフトウェアエンジニアにも共感できる。

そのArduino互換マイコンが付録についているというので、大人の科学Vol.27を取り寄せてみた。

付録についてきたのはJapaninoというArduino互換マイコンだ。

Arduinoには、使いやすいソフトウェア開発環境が標準で用意されていて、Windows版だけでなく、MacOSXやLinux版もある。

他の同種のマイコンの多くはWindows版しか開発環境を用意していないが、ArduinoにはMacOXS版やLinux版も用意されていることが強みの一つだという。

ところが、大人の科学本誌では WindowsとMacOSXについての記述はあるが、Linuxに関する記述がない。

そこで、Ubuntu10.04でArduinoを動かす方法を調べてみた。以下がその手順だ。

1. Linux用Arduino開発環境の準備

Arduinoのサイトから開発環境をダウンロードする。 

2. SunのJDKの準備

Ubuntu10.04 で標準のOpenJDKではArduinoIDEのメニュー表示に不具合があり、使えない。このため、SunのJDKをインストールする。

$ sudo add-apt-repository 'deb http://archive.canonical.com/ lucid partner'

$ sudo apt-get update

$ sudo aptitude install sun-java6-jdk 

3. Atmel AVR開発環境の準備

Synapticパッケージマネージャで下記をインストールする。

  • avrdude
  • binutils-avr
  • avr-libc
  • gcc-avr

4. JapaninoをUSB接続して動作確認

サンプルのBlinkが動くことを確認した。

これで、Ubuntu10.04からArduinoを動かせるようになる。

サンプルコードを参考にして、短いスケッチ(Arduinoではソフトウェアをこう呼ぶ)を書いてみると、LEDをつけたり消したり、スピーカーから音を鳴らしたりできる。

Arduinoに各種のセンサを取り付けて、気温や湿度などの環境のログをとったり、そららの環境に反応するソフトウェアを作ることも簡単だそうだ。

こんなに簡単にマイコンを動かせるとは驚いた。

メディアアートの世界の人々だけでなく、ソフトウェアエンジニアにもお勧めのマイコンだ。

大人の科学マガジン Vol.27(8ビットマイコン) (Gakken Mook) Book 大人の科学マガジン Vol.27(8ビットマイコン) (Gakken Mook)

著者:大人の科学マガジン編集部
販売元:学習研究社
Amazon.co.jpで詳細を確認する

| | コメント (0) | トラックバック (0)

情報マネジメントが大切だ

■開発プロジェクトは混沌としがちだ
組み込み機器の製品開発をしていると、どの製品にどんな部品が使われていて、どんなソフトウェアが入っていて、どのバグがどの時期から修正されているのかを気にする必要がある。
そんなこと当たり前じゃないかと思われるかもしれないが、新しい事業を始めたばかりのころは、担当者は初めてのことばかりで、試行錯誤しながら仕事をしているため、そういうことにまで気が回らないことが多い。
その結果、事業を始めて数年経ち、気がついたときには、上に書いたような情報が分からなくなってしまっているということになりがちだ。

■構成管理と変更管理、そしてコミュニケーションが大切だ
そんなことにならないために、日頃から構成管理と変更管理をきちんと行っておきたい。
また、その前提として、関係者間のコミュニケーションが十分に行われていることが必要だ。

関係者が日頃から情報をやりとりする習慣があり、みんなの情報を整合性のあるものにしようという気持ちがあれば、上に書いたような情報を整理して、維持していくことは比較的簡単に行える。
そのためのツールも今では無料で手に入る。
構成管理ならSubversionがよく使われてるし、変更管理ならRedmineやTracが有名だ。

■プロジェクトを混沌から守ろう
Subversionを使えば、進捗管理上のリスクを見つけたり、構成管理上のリスクを見つけ出したりすることができる。
また、RedmineやTracを使えば、プロジェクトマネジメントや開発マネジメントの情報をみんなで共有することができる。

プロジェクトマネジメントでは、いかに情報をマネジメントするかが重要だ。ツールを上手につかいながら、プロジェクトが混沌としていくのを防いでいこう。

| | コメント (0) | トラックバック (0)

« 2010年5月 | トップページ | 2010年7月 »