月別アーカイブ: 2013年6月

ものづくり生みの苦しみ

最近、JAVAによる大作ソフトを手がけてめどが立ちました。今まで言語処理系としては大きいものばかり経験し、電源容量、重量、メモリサイズなどに制限のあるモバイル向け言語の利用は初めてです。

JAVAの文法はC、C++に似ていて戸惑いは少ないのですが本格的なオブジェクト指向プログラミングは苦難の連続でした。

JAVA概要

先達者がまとめた教則本をたよりにしましたが、終了処理にてこずりました。Cなどでは関数を呼び出せば非同期でないのものが多く、依頼した処理が完了するまでアプリケーションに制御が戻って来ません。オブジェクト指向プログラミングではこのあたりが大きく異なります。

ベテラン技術者のプログラムコードを参照して、処理の終了時に冗長なことが多いと感じていましたが、謎が解けました。OS・処理系の動きを想定することも必要と感じました。

アプリはグーグルマップを用い、Google Maps Android APIは昨年12月にバージョン2に改訂されたばかりでv1とは互換性がなく、難渋したので解説書を購入するべくネットを検索しましたが希望に副うものは少なく、近いものとして技術評論社発行「Androidアプリ作成入門」を購入して参考にしました。

グーグルマップv2についての記述は少なく、頼るは英文のドキュメントとサンプルコードです。いつも感じるのですが最初は体系付けられたドキュメントは皆無でプログラムコードがそれを代替しています。

他人のプログラムコードを解析・分析する力が要求されると言うことでしょう。プログラマ、システムエンジニアなどの職種区分は意味のないことのようです。

漱石枕流(そうせきちんりゅう)

メール利用を薦めても頑固に受け付けない御仁がいます。今のやり方で私は困っていないから考慮に及ばずと言いますが、困っているのは運営当局者側です。9割がたの会員にはメール同時送信で連絡できますが、1割の会員には郵便での連絡になります。切手代、手紙投函の手間ひまを考えると膨大な経費になります。 負け惜しみの強いことを揶揄する言葉に「石に漱ぎ流れに枕す(いしにくちすすぎ、ながれにまくらす)」があります。「流れに漱ぎ石に枕す」との間違いを指摘されても、石で歯を磨き水の流れで耳を洗うと強弁した中国晋の故事に由来しています。FilePost 前回、写真などのデータ共有でPicasaなどの採用に触れましたが、見るだけにとどまらず情報そのものを届けたい場合には物足りません。大量の原稿を印刷所に送付したいときなどに該当します。この場合も商用サーバーを用いたクラウドシステムとして既に運用されていて、「大容量ファイル転送サービス」と呼ばれています。10指に余るサービスがあるようですが、3つを紹介します。 ①大阪ガスグループ、エルネットによる「宅ファイル便」 ②BIGLOBEのクラウドサービスFilePostによる「大容量ファイル送信、ファイル転送サービス」 100MB,300MB,2GBまでは無料、登録必要、登録不要など様々です。同時送信は必須のサービスです。いずれも当事者間で直接、情報をやり取りせず仲介者(商用サーバー)を介すれば大容量の情報を送受信できると言うことです。自分の利用状況に適したサービスを選択してください。

御鑓拝借~酔いどれ小籐次留書

民放TVによる時代劇はほとんどなくなり、天下のNHKが一気に引き受けている感じです。三匹の侍、水戸黄門など一世を風靡しました。時代考証や撮影に予算がかかり過ぎるからなのだろうか。選択肢が狭まるのは残念です。

佐伯泰英原作の「酔いどれ小藤次留め書き」が光っています。 TV脚本は原作と異なることもありますが、芭蕉の師である北村季吟の分家の女流文人に追いかけられる主人公に惹かれてしまいます。

大酒飲みの初老男は絶世の美女の想われ人です。凡人は生身の美人を闇雲に追いかけることはできません。主人公に代行してもらうべくひたすら読みふけてしまうのです。予備情報は以下にあります。http://www.nhk.or.jp/drama/oyari/

酔いどれ

原作は長編であり、テレビでの展開は如何に。成り行きを注目しています。

起業と企業買収

わが国では企業買収という言葉に良いイメージを抱く人は少ないでしょう。米国には、『買収されるような企業を目指そう』という社是を掲げて起業される会社も多くあるようです。

企業買収

アメリカでは企業買収はよく行われます。経営に行き詰って買収されることもありますが、優れた会社は買収対象になりやすいです。GoogleによるYoutubeやMotorola Mobilityの買収には1300億円、1兆円近くの金額が動きました。

昨年、パリに拠点をおく従業員5人の非公開企業がグーグルによって買収されましたが、関係者の多くは喜んでいることでしょう。

職業に貴賎はありませんが、ストックオプションを所有する掃除のおばさん、受付嬢が一夜にして億万長者ということもありえます。

新しいことをする人を山師などと好奇な目で見ていると後塵を拝します。内向きもそろそろさよならか。挑戦せざる者には一発屋を笑う資格はありません。

クラウドの利用2

インターネットのメールでやり取りされる情報で、連絡のための情報よりも自動的に送信される営業用の情報がはるかに多いものと推測されます。Internet traffic jamsとなって渋滞を誘発します。共有しくみメールに添付するファイルが巨大になると同様のことが起きます。そこで個人間で直接、情報をやり取りせず商用サーバーを仲介することにより、渋滞が緩和されます。ピカサ、ピンタレストなどの「デジタル写真管理システム」は、グループや家族間でのアルバム作りを援助してくれます。商用サーバーへの送信はファイルサイズを気にする必要はありません。写真の管理に特化したピカサ、ピンタレストは本格的なクラウドシステムの簡易版と言えます。 Windows7や8にはSkyDriveが常設されています。大容量を必要とする商用サービスでなければ無料で利用可能です。趣味の小グループ利用ではおつりがきそうです。その他にも以下のようなデータ共有システムのオンラインストレージがあります。OnlineStorage 趣味で利用する場合は無料版で十分です。導入を始める際は、「デジタル写真管理システム」、「Picasa」、「Webアルバム」などのキーワードで検索し、やり方を理解してください。

クラウドの利用

クラウドというと難しいという表情をするかも知れませんが、目立たないところで平易に使われています。アレルギーを取り去るためにメールなどもクラウドのひとつと言ってもよいでしょう。クラウド(Cloud)は雲を意味し、クラウドコンピューティングシステムはインターネット上に配置されたネットワーク、サーバー、ストレージ、アプリケーション、サービスなどを共有する仕組みを指します。CLOUD-1 クラウドは当初、アプリケーションをグループ内で共同利用する利便性で発展しましたが、いまでは大量データの共有化に利用されています。クラウドの採用で営業マンが顧客情報やプレゼンテーション資料を持ち歩くことなく外出先で参照することができます。 ある市では、議会で使う資料を紙で配布せずスマート端末を議員などの関係者に持たせ、閲覧する方式を採用しています。ものづくり筆耕は大規模組織より身近な人々を対象にしています。クラウドは既に、好むと好まざるに関わらず日常生活に入り込んでいます。まずは小グループや家族内で共有する写真の閲覧から始めてはいかがでしょう。mail-1デジタルカメラの画素数の向上できれいな映像を知人や離れた家族に送ることができるようになりましたが、送信データが大きすぎて送信エラーが多発しています。添付ファイルサイズに制限がありやむを得ないことです。これらを改善するにはクラウドの利用が効果的です。 20人のグループ会員にスナップ写真を送る場合、メールと添付ファイル容量をnとすれば、20*nの情報が移動しますが、20人全員が必ずしもそれを必要としていません。この場合、会員が閲覧可能な共有領域に送付して、その閲覧方法を20人全員に送るようにすれば全体としての情報量が極端に少なくなります。クラウドは時代の要諦です。送信者はクラウド運営先(ピカサ、ピンタレスト、Youtubeなど)の会員になることが条件になりますが、受け取り者には会員になることもなく写真をみてもらえます。進行する時代に合わせることは義務でもあり権利なのです。

Google Maps Android API v2に

地図/位置情報/GPSを使うAndroidアプリを作るための基本的なシステムであるGoogle Maps Android APIが2012年12月、グーグルからv2に改訂・発表され、2013年3月にはv1仕様のAPI Key取得も打ち切られてしまったので、地図アプリを新規に開発するにはv2を利用するほかありません。

無償で他のシステムに乗る危うさが図らずも浮き彫りになりましたが、自力で地図システムを構築することはできないので、長いものに巻かれる以外はないのです。ここで大きく躓いてしまいました。

バージョン間に互換性がないので古いプログラムコードが利用できなくなり全面的な改訂は大きな負担になりました。そのため、新しい仕様による簡単なテストサンプルが動作するまで10日間ほどかかりました。その顛末を以下に示します。

GoogleMaps2

解説書を購入しようとしてWebを検索しましたがまだありません。サンプルコードが本家本元のグーグルからリリースされていて編集することなく動作するはずですが、それを可能にするためのハードルは高いです。

それはなぜかというと、同様の開発や動作条件を設定するのが容易でないのです。新しい用語、v1とv2の差などを理解しなければならず、大きな機能を持つサンプルコードは不向きです。この点、篤志家が発表している技術情報が役立ちました。目を通したWebサイトを掲げます。

①Google Maps Android API v2のサンプルを動作させるまでの解説, http://9ensan.com/blog/smartphone/android/google-maps-android-api-v2-sample/

②Google Maps Android API V2を使ってみる, http://foonyan.sakura.ne.jp/wisteriahill/gmap_androidapiv2/index.html

③ぐだぐだAndroid開発, http://bloominfeeling.blogspot.jp/

④Google Maps Android API v2 その1, http://sos.hatenablog.jp/entry/2013/04/07/015042

⑤Google Maps Android API v2 を利用するための API キーの取得方法, http://android.keicode.com/basics/mapview-v2-how-to-get-apikey.php

⑥Google Maps Android API v2 を利用して地図を表示する, http://www.ipentec.com/document/document.aspx?page=android-google-maps-android-api-v2&culture=ja-jp

⑦Google Maps Android API v2を使ってみた, http://www.adamrocker.com/blog/334/google-maps-android-api-v2.html

⑧Google Maps Android API v2 を利用する簡単な例, http://android.keicode.com/basics/mapview-v2-code.php

⑨Android1.6からFragmentを使う, http://dev.classmethod.jp/smartphone/android/android-tips-28-support-fragment/

⑩Google Maps Android API V2を使ってみる, http://foonyan.sakura.ne.jp/wisteriahill/gmap_androidapiv2/index.html

⑪Google Maps Android API V2を使ってみる2, http://foonyan.sakura.ne.jp/wisteriahill/gmap_androidapiv2II/index.html

⑫Google Maps Android API公式ページ, https://developers.google.com/maps/documentation/android/

上に示した資料がたいへん参考になりました。動作環境がそれぞれ異なるため、正常に動作を確認できたのは⑨、⑩、⑪の解説記事です。小さなサンプルコードのコンパイルエラーを取り払うことにもかなりの時間が取られ、その後、実行させても実行時エラーに悩まされます。

それらが解決されても、グーグルマーケットが古く更新を促すメッセージに往生しました。グーグルマーケットからGoogle Play Storeに変わってしばらく経ち、改訂方法が有効期限を過ぎたりして難渋の末、ようやく地図が描画されたときはほっとしました。

新バージョンは新しい機能が追加され大きな希望を膨らますには十分のようです。 Google Maps APIというまぎらわし規格があり、Androidを省略するとえらい目にあいます。ただで使わせていただくことはありがたいことですが、そのうち課金されるのではと恐れているのは私だけでしょうか。