スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書く事で広告が消せます。
電子書籍端末Kindleが届きました。
■□─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─□■
┃■ The cloud REPORT http://littel.co.jp ■┃
■□─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─□■
├ 2011年1月25日 クラウドレポート 東大産学連携企業株式会社リッテル
─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─

リッテル愛宕です。

今回は、今年に入ってさらに注目されつつある電子書籍端末がテーマです。
私の手元には、先日注文していたKindleが届きました。
Kindleを使ってみての感想についてはまだ出回っている情報が少ないので、
こちらも今後紹介していければと思います。

今回は「購入者の使用用途、及び電子書籍端末の販路、
閲覧できるコンテンツの量といった観点からどの端末を購入するのが望ましいか?」
を考えます。各端末の値段、スペックについてはそれらをまとめた記事など
数多く存在するのでこちらは割愛します。たとえば、
以下のサイトを見て頂ければ各電子書籍端末の値段、
スペックについては大体把握できます。

「雑誌ニュース: 電子書籍・雑誌向け端末比較」
http://www.digital-zasshi.jp/digital-book/

電子書籍端末の利用状況として身近なところでいえば、
ここ最近電車の中でもiPadを使っている人はちらほらみかけるのですが、
Kindleを使っている方はまだ日本ではほとんど見かけません。

しかし世界的な電子書籍端末のシェアでみると、
Kindleは2010年11月時点で47%の高い市場シェアを占めています。
「TechCrunch JAPAN:
eリーダーの分野でiPadがKindleに迫る-やや'統計のウソ'もありそうだが」

http://jp.techcrunch.com/archives/20101130report-shows-iPad-gaining-on-Kindle-in-e-reader-category/

ではなぜ日本国内ではiPadを電子書籍端末として購入している人が多く、
Kindleを購入する人は少ないのでしょうか?Kindleは以下の記事にあるように、
すでに日本語表示に対応しているにもかかわらずです。少し考えてみましょう。

「ASCII.jp: 日本語表示&高速/小型/低価格の新Kindle 3Gを即買い!」
http://ascii.jp/elem/000/000/551/551888/

iPad(http://www.apple.com/jp/iPad/)
は電子書籍リーダーの機能も持った汎用デバイスで、
一方Kindleは電子書籍専用デバイスです。
これら2つの端末は、英語で読める電子書籍の量で考えると
非常に多くのコンテンツを閲覧することを可能にします。

Kindleは日本の実店舗ではまだ販売されていません。

Amazon.comのサイトまで行って、英語での商品説明や商品購入に関する規約が並んでいる中、
クレジットカードの情報を入力する作業をすることに抵抗を覚える方も少なからずいるかと思います。
しかも海外からの輸送になるため、
今回私がKindleを注文して自宅に届くまでに3週間もの時間を要しました。
対照的に、iPadは日本にもAppleStore(http://www.apple.com/jp/retail/storelist/)
が首都圏を中心にあり、
こういった点が購入者の敷居を下げているように思います。

実店舗があるおかげで、実際の製品に触れることが可能であり、
製品が故障した場合にも気軽に日本語で丁寧な対応してもらうことが可能です。
iPadはこれらの条件を満たしているので、製品そのものの性能もさることながら、
順調に日本でも販売台数を増やしているのでしょう。

海外を主戦場とするiPadやKindleに対して、
日本語で電子書籍を読むという目的に合わせた
電子書籍リーダーの機能も持った汎用デバイスも続々と登場しています。
その代表例が、NTTドコモが販売している
「GALAXY Tab(http://www.nttdocomo.co.jp/product/foma/smart_phone/sc01c/)」や、
電子書籍専用デバイスとしてソニーが販売している
「Reader(http://www.sony.jp/reader/lineup/)」です。

「GALAXY Tab」に至っては、電話機能まで付いています。
これらの製品は日本の実店舗でも購入可能ですし、
Webでも製品に関する日本語の情報が豊富にあるので
国内のユーザーの購入の敷居は低いように思います。

前述したような購入の際の敷居の高さに加えて、
Kindleで販売されている日本語書籍のコンテンツ量が少ないことも
Kindleのデメリットとして存在しますが、
あえて私が今回Kindleを選んだ理由は以下の通りです。

1.Kindleを使用した際に発生するデータ通信料は
Amazonがすべて肩代わりする構造になっているので、
白黒でかまわなければ通信料を一切支払わずにWebを閲覧できること
(ただし、今後変わってくる可能性がないとは言い切れない)

2.英語での書物を積極的に読みたいという理由で購入したため。
海外に出向く際も、Kindleを持っていれば現地の通信環境下で
長時間充電なしでも書籍を読んだり、白黒画面でのブラウジングが可能になる

3.単なるあまのじゃく的な性格から(笑)iPhoneを購入する方が多い中、
まだAndroid端末がそれほど注目を集めていない段階で
Android端末を購入したという前例あり

単に端末のスペックや価格で選択するのではなくて、
データ通信料の支払い形態や端末の購入形態、
自身の使用用途などまで加味して商品を購入するといい買い物ができるかと思います。

次回はKindleを使ってみての感想など紹介できればと思います。ご期待下さい。

┠─────────────────────────────
╋╋…‥・ ・・‥‥…━━━━━━━╋━━━━━━━━━━━
┃クラウドレポート ┃ 株式会社リッテル http://littel.co.jp
━╋…‥・ ・・‥‥…━━━━━━━╋━━━┯━━━━━━━
Androidアプリの開発
新年あけましておめでとうございます。

リッテル愛宕です。本年もよろしくお願い致します。

今年はスマートフォンへの興味・関心も高まってきており、
卯年ですので、その年に相応しくぜひとも「飛躍」の年にできたらと思っております。
メルマガも積極的に書いていくつもりです。

さっそく年末から新年にかけて
ちょっと自分が前々からやりたいと思っていたことを実際に行動に移したいと思い立ち、
今回Android端末で使用できるアプリケーションを作成し、Androidマーケットに公開してみました。

Androidアプリの開発には以前から興味・関心を寄せていました。理由は大きく分けて4つあります。

1.Javaでの開発スキルアップにつながる

2.eclipseを使った開発の学習につながる

3.今後新興国市場におけるマーケットの拡大が期待できる

4.日本のアプリケーション開発の事情に鑑みて、世界に今後発信していける可能性が存在する

4については若干の補足説明が必要です。日本国内のエンジニアで、
iモードのアプリケーション開発をされていた方はJavaでの開発をしてきていました。
そこで培われたスキルはAndroidアプリの制作に転用しやすい側面があります。
『AndroidアプリUIデザイン&プログラミング、
アイデア固めからユーザーフィードバック分析まで』の著者、
渡嘉敷守さんも、もともとiモードというプラットフォームで
アプリケーションを作成されていて、
Androidの可能性を感じ、Androidのプラットフォームでの
アプリケーション開発を行うようになった人のようです。
今後こういう方は一段と増えてくるでしょう。

現在日本の携帯電話は、「ガラパゴス携帯」と揶揄されていますが、
iモードのような仕組みは当時画期的な仕組みでした。
そのような仕組みの中でアプリケーションをつくっていたエンジニアの方は、
今後Androidというプラットフォームを通じて世界に発信していくチャンスがあると思います。
英語でアプリケーションの説明を書き加えるだけで
一気に世界に発信できるチャネルを手に入れることができる価値は計り知れないものがあります。
またAndroidOSを組み込んだ端末は、スマートフォンに限らす、今後5年の間でもっと増えてくるでしょう。
タブレット端末やネットブック、組み込み機器に対してAndroidOSは新興国市場を中心にして、
シェアを拡大していくはずです。


Androidアプリは、iPhoneと比較対象とされ、
ここ最近メディアで取り上げられる機会も増えてきています。
具体的には以下のような記事が個人的に印象に残っています。

「ますます熱いスマートフォン! iPhone vs. Androidを徹底比較」
http://www.lifehacker.jp/2010/06/100610android-v-iphone.html

「使って分かったAndroidとiPhoneの違い」
http://www.atmarkit.co.jp/news/analysis/200906/29/android.html

「Android、米スマートフォン市場でiPhoneを抜いて2位に――米Nielsen調べ」
http://www.itmedia.co.jp/enterprise/articles/1008/03/news015.html


Androidとは何か、Androidでの開発で参考になる情報ソースとしては
以前のメルマガでも書かせて頂きましたので、
興味のある方はhttp://littel.co.jp/info/info58.htmlを参考になさってください。

最後に私が今回作成したアプリケーションの紹介をさせてください。
今回つくったのは「タスクチェックツール」というアプリケーションで、
Android2.2以上の端末でAndroidマーケットから無料でダウンロードできます。
(Android2.1以下の端末では残念ながら使えません)

http://jp.androlib.com/android.application.shota-example-schedule-zzwBx.aspx
タスクチェックツール」は、
その場でやらなければいけないことを思い出した際にメモしておいて、
指定した時刻になるとリマインドしてくれるアプリです。
登録した作業を絶対に忘れることのないように、指定時間にアラームを設定することも可能です。
さっとその場でやらないといけないと思い出したことを、このアプリで登録しておけば、
こなさなければいけないタスクを忘れる心配がなくなります。
銀行への振り込み、書類提出など忘れがちな方にお勧めのアプリです。

興味がある方は無料ですので、ぜひダウンロードしてお使い下さい。

次はデータベースとの連携を必要とするような、
もっと本格的なアプリケーションをつくっていきたいと思います。
今年も最新の技術に触れていくことを怠らず、
その技術をビジネスにつなげていけるように精進していく所存です。

実際のAndroidマーケットに公開したアプリのダウンロード数や、
みなさまも気になる広告収入や有料課金の仕組みについても今後紹介していく予定です。
次回もご期待下さい。
facebookが開発したNoSQLデータベース「Cassandra」
■□─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─□■
┃■ The cloud REPORT http://littel.co.jp ■┃
■□─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─□■
├ 2010年12月28日 クラウドレポート 東大産学連携企業株式会社リッテル
─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─━─

リッテル愛宕です。

今回は現在注目を集めているNoSQLデータベースである
「Cassandra」について紹介したいと思います。
NoSQLデータベースについて詳しく知りたい方は
前回のメルマガをご覧ください。

「NoSQLデータベースについて」
http://littel.co.jp/info/info62.html

Cassandraは、もともとはFacebook社において大規模データの格納のために開発され、
2008年7月にオープンソースソフトウェアとして公開されました。
以下のような言語でCassandraクライアントを動かすことが可能です。

C++,Java,Python,PHP,Ruby,Erlang,Perl,Haskell,C#,Objective-C,Smalltalk,OCaml

Cassandraは、幅広い言語で扱えるNoSQLデータベースであり、
大規模ソーシャルニュースサイトである「Digg」に採用され、
「Twitter」による導入も検討されました。
その最大の理由は、Cassandraの長所であるスケーラビリティ性にあります。
立ち上げたWebサービスが起動に乗り、トラフィックが急増したときのことを考えると、
こういったNoSQLデータベースを使ったサーバ運用が企業の成否を分ける
といっても過言ではないからです。

今回は、Cassandraがどのようなデータベースなのかを実感してもらうために、
実際にダウンロードからインストール、
そして実データの登録作業までを体験していただきたいと思います。

WindowsでもLinuxでもインストールが可能ですので、
お手元のPCで実際にやってみましょう。

1.まずはCassandraのダウンロードページにアクセスし、最新版をダウンロードします。

「Cassandra」ダウンロードページ
http://cassandra.apache.org/download/

apache-cassandra-0.6.8-bin.tar.gzをダウンロードし、
適当な場所(例えばC:\cassandra\apache-cassandra-0.6.8)に展開します。

2.以下のように環境変数を設定しておきます。

JAVA_HOME : Sun JDK6のインストール場所 (例: C:\Program Files\Java\jdk1.6.0_22)
CASSANDRA_HOME: Cassandraのインストール場所 (例: C:\cassandra\apache-cassandra-0.6.8)



3.「${CASSANDRA_HOME}\conf\storage-conf.xml」を編集します

/var/lib/cassandra/commitlog

/var/lib/cassandra/data


の部分を、

C:\cassandra\commitlog

C:\cassandra\data


に変更します

なお、展開したtar ballに含まれる設定ファイルは読み取り専用に設定されているので、
読み取り専用設定を解除する必要があります。
Windowsにおけるファイル属性の設定変更手順は以下のURLを参考になさってください。

「Windowsにおけるファイル属性の変更手順」
http://www.windowsfan.com/xp/tips/contents/file_folder/file_yomitori.htm

Linux上でインストールする場合は、
chownコマンドを使ってファイルにあたえる権限を変更して頂ければよいかと思います。


4.Cassandraには起動用のバッチファイル(cassandra.bat)が最初からついているので、
Windows環境ではcassandra.batでCassandraを起動できます。
しかし、cassandra.batはJMX
(Javaシステムにおけるアプリケーションの管理、監視フレームワークのことです)
が使用するポート番号をTCP 8080番に指定しているため、
Tomcatなどのデフォルトポート番号とかぶってしまいます。
そのため、これを適切なポートに変えておきます。

私もTomcatをインストールしていたので、この問題に直面しました。
そこで、${CASSANDRA_HOME}\bin\cassandra.batを編集し、ポート番号を「9081」に変更しました。

cassandra.batをエディタで開いて、
-Dcom.sun.management.jmxremote.port=8080^
の行を
-Dcom.sun.management.jmxremote.port=9081^
に変更してください。

Linux環境でJMXのポート番号を変更するには、${CASSANDRA_HOME}/bin/cassandra.in.shを編集します。

5.Cassandraを起動します。

Windows環境では、コマンドプロンプトを開き、以下のコマンドを実行します。

cd C:\cassandra\apache-cassandra\bin
cassandra.bat

余談ですが、Windowsコマンドの操作はLinuxコマンドの操作と異なる部分があるので、
Linuxコマンドの操作しか学習していない自分にとって使い勝手がよくありませんでした。

このような悩みを抱えている方には、Windowsのコマンドライン画面において、
Linuxコマンドで操作を行えるようにする「Gow」が便利です。
GitHubにソースコードがあるので、こちらを利用されることをオススメします。
個人的には、Cygwinよりもこちらのほうが使いやすい印象を受けます。

「シンプルなWindows用Linuxコマンド集『Gow』」
https://github.com/bmatzelle/gow/wiki/

6.それでは、Cassandraのデータベースを実際に使ってみましょう。
Cassandraに付属しているコマンドラインツールcassandra-cli.batを使います。

C:\cassandra\apache-cassandra-0.6.8>bin\cassandra-cli.bat
Starting Cassandra Client
Welcome to cassandra CLI.

Type 'help' or '?' for help. Type 'quit' or 'exit' to quit.
cassandra>

上のように、Cassandraのコマンドラインプロンプトが表示されれば成功です。

Linux環境では、${CASSANDRA_HOME}/bin/cassandra-cliを実行します。

7.Cassandraのコマンドラインプロンプトより、

connect localhost/9160

を実行して、先ほど起動したCassandraサーバに接続します。


8.最後に「shot」という行に対して,
「firstname」「lastname」「twitter」というカラムに値を設定してデータを挿入し、
getでカラムの集合を取り出してみました。

cassandra> set Keyspace1.Standard2['shot']['firstname']='Shota'
Value inserted.
cassandra> set Keyspace1.Standard2['shot']['lastname']='Atago'
Value inserted.
cassandra> set Keyspace1.Standard2['shot']['twitter']='http://twitter.com/shotaa
tago'
Value inserted.
cassandra> get Keyspace1.Standard2['shot']
=> (column=twitter, value=http://twitter.com/shotaatago, timestamp=1293245910437
000)
=> (column=lastname, value=Atago, timestamp=1293245900968000)
=> (column=firstname, value=Shota, timestamp=1293245892390000)
Returned 3 results.


Pythonを使って、Cassandraを操作するサンプルコードもあったので興味のある方はこちらもどうぞ。
「PythonでCassandraを扱うサンプルコード」
http://symfoware.blog68.fc2.com/blog-entry-327.html

---

次回は.NET製のドキュメント指向データベースである
RavenDBのセットアップの手順と操作について見ていきたいと思います。

今年のメルマガはこれで最後になります。来年以降の記事もご期待下さい。

〓★PR★〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓

■-----------------------------------------------------------------■
▼ 「Hadoopデータセンター」Presented by Littel & skyarchnetworks ▼
■-----------------------------------------------------------------■

〜大規模データの処理時間の単位を変えるHadoopを、
 カンタン、安価、従量課金で環境提供〜

日本初の従量課金でのHadoopサービス「Hadoopデータセンター」は、
大規模データを分散処理するプラットフォーム「Hadoop」を、
広く一般の企業がカンタンに利用できるサービスです。

「低コスト」「高い操作性」のHadoop 環境を、処理が必要なとき、
必要なだけご利用いただけるクラウドとして、
リッテルと株式会社スカイアーチネットワークス様が協力して
サービスをご提供致します。

・「Hadoopデータセンター」の特徴

(1)低コスト〜サポートコストが最小

Hadoop自体は無償のオープンソースですが、社内でHadoopを導入しようとする場合、
多い場合、数千万、数億円といった見積りが出ることがあります。
オープンソースのソフトウェアでも、ベンダーがサポートするコストがかかるためです。
本サービスは、お試しで、気軽にご利用いただける価格設定を予定しています。

(2)高い操作性〜Hiveを採用

Hiveは、SQLと似たHQLでデータを操作します。
SQL文をHQLとして動かした場合でも基本構文は動くほど親和性が高く、また習得も容易です。
オープンソースの「Hadoop」をそのままインストールした場合、
JavaでMapReduceの開発が必要ですが、本サービスでは、
Hiveを利用したFlexのリッチユーザインターフェイスを備えており、
RDBMSの一般的な開発者であれば容易に操作が可能です。

更に内容について詳しく知りたい方はこちらからどうぞ

↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓

http://www.littel-hadoop.jp/hadoopdatecenter.html

┠─────────────────────────────
╋╋…‥・ ・・‥‥…━━━━━━━╋━━━━━━━━━━━
┃クラウドレポート ┃ 株式会社リッテル http://littel.co.jp
━╋…‥・ ・・‥‥…━━━━━━━╋━━━┯━━━━━━━
「NoSQLデータベース」について
リッテル愛宕です。

今回は、最近話題の「NoSQLデータベース」について紹介します。

「NoSQL」は、「Not Only SQL」の略で、決してSQLを使わないわけではありません。
使用するのがSQLだけではないという部分がポイントです。
SQLで扱うRDBMSが得意な分野にはRDBMSを使い、
RDBMSが不得意な分野にはそれにあった適切なNoSQLデータベースを使う
という考え方のことを指します。
RDBMSとNoSQLデータベースの差異は次の記事に詳しいです。

「NoSQLデータベースを試してみる」
http://gihyo.jp/dev/serial/01/various-nosql/0001

またどのようなNoSQLデータベースが現状存在しているかは以下のサイトで紹介されています。

「NoSQL」
http://nosql-database.org/

NoSQLにはいくつかのタイプがありますが、
数値や文字列といったデータ(value)を1個のキー(key)にひも付けて管理する
「key-value store」はその代表例です。
key-value storeで処理できるのは、
keyで検索を実行してvalueの値を読み書きすることだけです。
「販売単価が100円以上、1000円未満の製品情報だけを抽出」といった、
SQLでは当たり前のように処理できる操作をNoSQLデータベースでは実行できませんし、
RDBMSのようにデータの一貫性を厳密に保持しているわけでもありません。

しかしNoSQLデータベースには、スケールアウトがしやすく、
膨大なデータを高速に処理できる実装が多いというメリットが同時に存在することから、
「NoSQL」の考え方に立ったデータストレージ構築が近年注目を浴びています。
従来のRDBMSでは対応しにくい部分を、
NoSQLデータベースを使うことによって解決するという流れになってきています。
よって、決して従来型のMySQLに代表されるようなRDBMSが使用されなくなるわけではありません。

GoogleやFacebook、AmazonはNoSQLデータベースを巧みに活用することを通じて、
膨大なデータの高速処理を実現しています。本記事では、個人的に今一番注目している
オープンソースのNoSQLデータベースの1つである「Neo4j」を紹介します。

Neo4jとは、Javaベースのグラフデータベースのことです。
データはグラフネットワークに最適なデータ構造でディスクに格納されます。
グラフやグラフに関連したプロジェクトを
広範囲にカバーできるようなクエリ言語である「Gremlin」を使ってデータを扱います。

「Gremlinの記述例」
http://wiki.neo4j.org/content/Gremlin

「Neo4j」のセットアップと実際にサンプルコードを動かしてみるところは
Neo4jのWiki情報が参考になります。

「Neo4jに関するWiki情報」
http://wiki.neo4j.org/content/Main_Page

やはり最新の技術動向を追うのであれば、英語で情報を取得し、
英語で情報を発信していく必要性を感じます。

次回はFacebookも採用している「Cassandra」を紹介します。
次回もご期待下さい。
GUIとCUIの操作について
リッテル愛宕です。

今回は、GUIとCUIの操作について書きたいと思います。

GUIとは、「Graphical User Interface」の略称です。
ユーザに対する情報の表示にグラフィックを多用し、
大半の基礎的な操作をマウスなどのポインティングデバイスによって行うことができる
ユーザインターフェースのことを指します。

一方、CUIは「Character-based User Interface」の略称になります。
ユーザに対する情報の表示を文字によって行い、
すべての操作をキーボードを用いて行うユーザインターフェースのことです。

これだけではピンとこない方もいらっしゃるかと思いますので、
GUI操作の具体例を挙げたいと思います。

1.「phpMyAdmin」http://www.phpmyadmin.net/
MySQLサーバをウェブブラウザで管理するためのデータベース接続クライアントツールです。
phpMyAdminを用いることで、SQL文を記述することなく、
MySQLのデータベースに対して様々な操作を可能にします。

2.「WinSCP」http://winscp.net/eng/docs/lang:jp
WinSCPは、MS-Windows上で動くオープンソースでグラフィカルなFTP・SFTPクライアントプログラムです。
ファイルやフォルダの名前の変更、新しいフォルダやシンボリックリンクの作成を可能にします。

3.「TortoiseSVN」http://tortoisesvn.tigris.org/
TortoiseSVNは、オープンソースのクライアントで、ファイルやディレクトリを時系列で管理できるようにします。
ファイルはリポジトリに格納され、リポジトリにはファイルやディレクトリに加えた変更がすべて記録されます。
これにより、ファイルを古いバージョンに戻したり、
いつ、誰が、どのようにデータに変更を加えたかを履歴から確認ができたりするようになります。

これらのGUIツールは開発の際に非常に便利ですが、CUIの操作ですべて行えることでもあります。
上記のツールで行える処理をCUIで行うとすると、それぞれは次のような手順になります。

1.「phpMyAdmin」→「コマンドライン上でSQL文を書いて操作する」

2.「WinSCP」→「Tera TermやPoderosaからSSHでサーバに接続し、UNIXコマンドで操作する」

3.「TortoiseSVN」→「SVNコマンドを使って操作する(http://jp.layer8.sh/reference/entry/show/id/659 参照)」


ではなぜGUIのツールが存在するのでしょうか?

それはGUIツールを駆使すればどのような操作をしているのかを直感的に把握することができるからです。
いきなりCUIで操作するとなると、かなり敷居が高くなります。

それほど技術に詳しくなくても直感的に操作できることを目的として、GUIツールは存在するわけです。
MySQLをいきなりSQL文を書いて操作しろというのは初心者にとってはかなりハードルが高いですが、
同じRDBMSであるMicrosoft Accessであれば、GUIでデータを扱えるようになっているので
敷居が低いといった例を考えるとわかりやすいかと思います。

ではなぜGUIであれば直感的な操作が可能で、
勉強することも少なくて済むのにわざわざCUIで操作するのでしょうか?

例えばあるオンラインソフトウェアをインストールする場合を考えます。

GUIの代表例であるWindowsでは、ダウンロード用のURLをクリックしてダウンロードして、
ダウンロードしたexeファイルを実行し、
数回から十数回のダイアログボックスでの操作を経てインストールすることになります。

一方CUIの代表例であるUNIXでは、
以下のコマンドを入力するだけでインストールすることができます。

wget http://www.example.com/software/example-0.12.tar.gz
tar zxvf example-0.12.tar.gz
cd example-0.12
./configure
make install

コマンドの入力にある程度習熟していれば、
GUIよりもCUIでの操作の方が、かかる時間はかなり短くなります。
習熟度が上がるほど操作速度の面で優れているという点が、CUIで操作する一つの理由でしょう。

またWindowsでの開発環境では、GUIの開発ツールが豊富にそろっていますが、
Linux環境での開発となるとそうはいきません。
とくに、「LAMP」といわれるソフトウェア群を駆使した開発では、CUIでの操作は必須です。
ちなみに、LAMPとは「Linux・Apache・MySQL・PHPやPython」の頭文字をとったものです。
時勢の変化が早いモバイル/ソーシャルアプリ業界においては、
LAMPなどを使いこなせる「作り手」の採用は急務になっており、
こういった業界の方、もしくはこのような業界に転職を考えている方はLinux環境での開発は必須になります。

次のような記事もあります。

「LAMP人気続く。SIerにも回復の兆し」
http://jibun.atmarkit.co.jp/lcareer01/rensai/front/16/01.html

こういった転職市場の状況から考えてみても、
Linux環境での開発を行うためにCUIでの操作に精通しておくと望ましいと言えるでしょう。

さらにプログラムを書いて処理を自動化するといった観点に立てば、
CUIでの操作に精通する必要があることにも気付きます。
特定の処理を一定時間ごとに行う必要がある場合、まず思いつくのがシェルスクリプトを書いて、
cron設定を行い、一定時間ごとにそのスクリプトを動かす方法です。CUIでの操作ができれば、
シェルスクリプトとcron設定を駆使して1時間ごとにブログを自動更新する、
自動でTweetするといった処理をさせることも可能になります。
また、サーバの管理で必須の作業である一定時間ごとにデータのバックアップ、
サーバのログデータの保存も自由自在です。

時間は1日24時間と決まっており、誰にでも平等です。
しかし、CUIでの操作に精通し、上で挙げたような処理を自動で行ってくれるスクリプトが書けるようになれば、
自分の時間に何倍ものレバレッジをかけることができます。
自分が別の作業をしている間にもプログラムで書いておいた処理を、
その処理の記述さえ間違っていなければ正確にコンピュータがやってくれるわけですから。

人間ならミスしうる処理も最初にしっかりとしたプログラムを書いておきさえすれば、
コンピュータは正確にこなしてくれます。
このような点でプログラムは、非常に優秀な部下と言えるのではないでしょうか?
人間と違って、指示なしで自ら考えて動くことはできない点はありますが(笑)

次回もご期待下さい。