今月の Software Design : 2013/04 (その4)

 「今月の Software Design 」の4月号の投稿の4回目です。

 さてもう5月号が発売されてから久しいですが、いまだに4月号についての要約と感想です。

 次回辺りでようやく4月号の全ての記事について書き終えます。続いて5月号の記事の要約と感想を書いてゆきます。

 フォーマットはいつもどおり以下のとおりです。

 

・記事のタイトル
( 1 行目 ) 記事の要約
( 2 行目以降 ) 感想

 

○ iOS アプリ開発者の知恵袋

  スマフォアプリのアイコンとインターフェイスデザインについてのお話です。具体的には、デザインを創りあげる上で重要視するポイントと、デザインによってどのような結果や効果が得られるかについて解説しています。

 後半のインターフェイスの話はおもしろいです。これを意識して開発をするとしないとでは結果も変わってくるかもしれません。またインターフェイスデザインを日常のおもてなしで例えているのも面白いです。

 また、記事の構成や文章は構造的でいい感じにまとまっていて読み易いんですけど、前半部分の内容がちょっと酷いです。根拠がほとんどないのに推測に推測を重ねてそれっぽい数字をでっち上げて『デザインによってユーザの90%を獲得できる』という結論を出すのはちょっと無いです。あとアプリアイコンの件もちょっとよくわからないです。

 ちなみにこの連載は今月が最終回みたいです。普段からこの連載については、エンジニアリングについてあんまり書いてくれないので必ずしも好意的ではありませんでしたが、いざ終わってしまうとちょっと寂しいです。

 

○ Android エンジニアからの招待状

 EclipseAndroid SDK プロジェクト作成ウィザードを使ってアクティビティを作るお話です。具体的には、デフォルトで用意されているアクティビティテンプレートのうち BlankActivity を使って、これに追加・編集することで5画面遷移のアクティビティを作成しています。

 個人的にはこの程度の処理であれば手作業で一瞬で済ませてしまえるのですが、それでもビューの xml の自動生成はちょっとありがたいです。また、自分のそれと比較するとこっちの方がコードの再利用をうまいことやっているみたいなので、自分の型に固まってしまっている僕のようなユーザにとっては新しい発見があって面白いです。

 

○  Debian Hot Topics

 Debian プロジェクトの近況がまとめられています。さくらインターネットの協力で設置されたリポジトリサーバ debian-mirror.sakura.ne.jp についてや、clang についての対応状況について、Debian プロジェクトリーダー (DPL) を選出する選挙について、そして国内でのカンファレンスレポートと最後に安定版リリースまでのコミュニティ内部の動きについて紹介してくれています。

 

○ レッドハット恵比寿通信

 日常業務における「OSS ならでは」についての紹介記事と言っていますが、実際にはレッドハット社員から見た JBoss あるあると筆者が執筆中の JBoss 本の宣伝記事です。中身は、JBoss は OSS で誰でもソースコードが見れるので安心だよねという話から、勉強会等で JBoss に詳しい社外の人間に会った時に嬉しさとこっちよりも詳しい場合のヒヤヒヤ感がたまらない的な話。そしてそんな彼らとは仲良くなれるよ、という文脈から JBoss 本の紹介をしています。

 面白いです。その上、話の流れが上手いです。

 

○ Ubuntu Monthly Report

  "ASUS EeeBox PC eb 1020" を例にストレージ容量の小さい環境に Ubuntu を入れる方法を紹介しています。具体的には Ubuntu Minimal CD で ubuntu 12.04 と 12.10 のインストールから X の設定、Gnome の設定、そして Wifi 設定方法について解説しています。

 

Trema Day #2 で発表してきました。

今更ですが 4/20 に開催された TremaDay #2 に参加してきました。

写真はありませんが、発表もしてきました(写真は千葉さんの発表の様子)。

f:id:user_localhost:20130428200952p:plain

 

また発表者特典ということで、Trema Tシャツをもらいました。

f:id:user_localhost:20130428200957p:plain

 

前回の TremaDay #1 では Trema チームが執筆した『OpenFlow 実践入門』を著者の直筆サイン入りでもらい、今回は Trema Tシャツと Trema グッズをゲットする為に毎度参加しているみたいです。

 

さて前回は autofixer とかいう中途半端な発表ですが、今回は2ヶ月も前からちゃんと準備していきました。

 

今回のネタはアプリから透過的に使える Trema の GUI ツールです。

前回はアイデアとも言えないアイデアをそれっぽく形にしたものでしたが、今回はキチンとアーキテクチャから考えて、結構頑張ってつくりました。

発表については、今回喋りたい内容が盛りだくさんだったので、今回は困りませんでした。残念ながら諸般の事情でスライドの全てはお見せできませんが、一応当日発表資料を slideshare に上げました。

 

http://www.slideshare.net/Hiroyasu-OHYAMA/trema-day-2

 

そんなわけで、今回は高宮隊長から「いい (Good) です」というコメントを貰った上に、色々とインプレッシブな意見をもらえ、非常に意義深い勉強会でした。

 

今月の Software Design : 2013/04 (その3)

 「今月の Software Design 」の4月号の投稿の3回です。

 遂にやってしまいました。 SD 5月号が発売されたのに4月号の全ての記事について要約を書ききれませんでした。

 最初に課した約束 に則り、罰として来月号(6月号)を余計に買おうと思います。が、5冊余計に買って数ヶ月後に捨てるのはエコじゃないので、希望者に買ってあげるという形式に使用と思います。来月号の SD を買って欲しい人は Amazon の欲しいものリストに来月号の SD を入れて僕に連絡をくれれば、購入して進呈します(先着5人まで)。

 それと、先月の記事の要約についても、今月号が間に合う範囲で書いてゆきます。

 形式はいつもと同じ、以下のフォーマットになります。

 

・記事のタイトル
( 1 行目 ) 記事の要約
( 2 行目以降 ) 感想

 

○ 第二特集

 Small Object Programming (S-OP) と筆者が呼んでいるオブジェクト指向のプログラミングスタイルについて小説風に解説しています。記事では、実装をコンパクトにするためのコーディングに関する9つのルールについてと、ショッピングサイトを例にしたオブジェクトのモデリングについて分析し、最後に S-OP に関する書籍をいくつか紹介しています。

 

○  特別企画① :ゲームエンジン Luminous Studio が変えるゲーム開発の舞台裏

 スクウェア・エニックスが開発しているゲームエンジンの音声や画像といった素材ファイル(ここでは「アセット」と呼んでいるモノ)の管理を行うコンポーネントの ContentServer について紹介しています。記事では、ContentServer の分散アーキテクチャについてと、障害対策と自立性について解説しています。

 正直読んでいてあまり面白くない内容です。どんな凄いモノかもわかりませんが、個人的にもエンジニアとしても、こんな availavle でも無いモノを紹介されても興味が湧きません。そういった意味で、こんなモノよりも Unity の記事の方が読みたいです。こういうふうに書くと「じゃあお前、Google ファイルシステムにも興味が無いんだな!?」というツッコミを頂戴するかもしれません。なので少し補足をすると HDFS みたいなモノが登場しない限り興味がありません。

 

○ 特別企画② :ゲーム開発の舞台裏座談会

 ContentServer の開発を行った Skeed 社の金子さんと柳沢さん、そしてスクウェア・エニックスの開発者との座談会の記事です。Skeed 社がどういった経緯でジョインしたかや、開発エピソード、P2P システムの所感等について話し合いについて書いています。

 どこかで見た人がいると思ったら Winny の金子さんでした。ContentServer には金子さんが携わっていたんですね、ちょっと興味が湧きました。

 

○ ハイパーバイザの作り方

 前回その概要を紹介してくれた BHyVe について、今回はゲスト OS の起動処理のユーザプログラム側の処理について解説しています。具体的には VM イメージを読み込んでロードするユーザプログラムの一連の処理について、ソースコードを見ながら解説しています。

 

○ 開眼シェルスクリプト

 前回に引き続き ImageMagick を使ってシェルスクリプトから画像処理をする話です。今回は awk で画像に対していくつかのフィルタ処理を行う方法を紹介しています。記事の前半では awk の使い方について解説し、前半部分の最後で ImageMagick を使って画像を awk の配列に流しこむ処理を紹介しています。後半部分では、awk 配列に対して、光線が出ているように見えるフィルタ処理や、エンボス加工と呼ばれる着色部分が彫り込んでいるように見えるフィルタ処理、そして sobel フィルタ処理を行なっています。

 面白いです。awk がコレほどパワフルだということを(恥ずかしながら)初めて知りました。これまで awk 自体で凝ったロジックを記述するという事はほとんど無く、凝った処理をする場合には print で一旦パイプに吐き出して、シェルスクリプトに渡すといったことをしてきました。

 また ppm 形式に変換したデータを awk 配列に流し込む辺りの処理は胸熱です。

 

今月の Software Design : 2013/04 (その2)

 「今月の Software Design 」の4月号の投稿の2回です。

 今回も、感想は特に気になったもの以外は省略して書かせてもらいます。

 それでは、第一特集の残り4つのパートについて、要約と感想を以下のフォーマットで書いてゆきます。

 

・記事のタイトル
( 1 行目 ) 記事の要約
( 2 行目以降 ) 感想

 

○ 第一特集④ :文系書店員→ スタートアップエンジニアへの180度転回

 大学や研究所に本を売り歩くお仕事をしていた方がエンジニアに転向した事例の紹介です。バックグラウンドが文系で且つ、プログラミング経験が無い中でソフトウェアエンジニアに転向し、RoomClip という iPhone アプリの開発で会社を立ち上げた話を苦労話と共に紹介しています。

 

○ 第一特集⑤ :今すぐはじめよう!脱超初心者からのベストプラクティス

 プログラミング歴10年の筆者が、これからプログラミングを始める人に対して、自分の経験を振り返りながらアドバイスをするという内容の記事です。具体的には、使う言語を決めてその言語に関する入門書をキッチリ読み、コードをひたすら書く。そして尊敬できるプログラマを見つけ、自分が作りたいモノを作り、キッチリ成果(プロダクトやブログなどのドキュメント、そしてカンファレンス発表)を出すことが重要だと言っています。

 

○ 第一特集⑥ :これからエンジニアになるあなたへ

 新人から3年目くらいまでのエンジニアを対象とした、"文献の読み方"、"プログラミング能力向上の方法"、そして "モチベーションの保ち方" の3つについて、それぞれ心構えや効果的な方法について紹介しています。まず "文献の読み方" では一時配布元のオジリナルソースを見ましょうという内容の話をしています。また "プログラミング能力向上" については、キレイに書かれたコードを読むことの重要性と他人に理解してもらう事を意識しながらコードを記述することの重要性を説いています。そして "モチベーションの保ち方" では、コミュニティへの参加、学習内容の発信、そして仲間づくりの3つの具体的な方法を紹介しています。

 本特集の他の人も、中身の詳細は違えどほとんど、皆「ソフトウェアエンジニアとしてどういった心構えや方法を採るべきか」という点で一致しています。その中でも、個人的には本パートの中原さんの意見にかなり同意です。

 

○ 第一特集⑦ :プログラミング言語への理解を深めようーオススメの学習ステップ

 それぞれのプログラミング言語の特性を理解するためにはどうすべきかというテーマについて、言語の特性を理解することの重要性と、言語の特性を理解するための方法論について紹介しています。言語特性を理解するための方法論としては "言語開発者の苦悩を追体験すること" を紹介しており、アセンブラなどの高級「でない」言語から、徐々に C や C++ といった高級な言語について学習し、最終的に LL を触るといった方法を紹介しています。

 非常に面白いテーマです。また言語の特性を理解する重要性にも非常に共感できますし、筆者の言う「あるプログラミング言語を使ってプログラムを書けることと、プログラミング言語を理解している事は別次元の話」といった内容についても非常によくわかります。個人的な経験からも、かつて Common Lisp を使ってオセロの AI を作って @m2ym さんに見せた際「これは CommonLisp で書かれた C プログラムですね」と言われた事がいまだに忘れられません。また 4,5 年前に Java っぽい JavaScript のコードをガシガシ書いていましたが、JavaScript のプロトタイプベースのオブジェクト指向がどんなものかという事はここ最近になって理解しました。こんな風に、プログラミング言語の特性を理解しないでも「動く」プログラムは書けちゃいますが、とても他人に見せられたものではありません。

 では具体的にどういう方法でそれが理解できるかについて。ここで書かれている内容も良さそうですが、個人的には別の意見です。それは、他人に見られても恥ずかしくないコードを意識する事。そしてそれに必要なものはエンジニアのプロとしてのプライドです(これは一個前のパートで中原さんが捨てろといったプライドではない方のプライドだと思っています)。自分がこの業界の一流のプロフェッショナルかどうかはこの際置いておいて、『曲がりなりにも自分はこれでメシを食っているんだから、これが現時点での自分が書ける最高傑作だ!』という意気込みでコードを書こうとすると、なかなか書けません。そしてどうやったらキレイに書けるかを真剣に調べるようになります。そしてコードを書いても、もっとキレイに書けるんじゃないかと真剣に見直すはずです。こうした過程でプログラミング言語の特製を理解するようになるんじゃないかと思っています。

 

今月の Software Design : 2013/04 (その1)

 「今月の Software Design 」の4月号の投稿の初回です。

 今月の回は諸事情で、感想は特に気になったもの以外は省略して書かせてもらいます。

 それでは「はんだづけカフェなう」と、第一特集の3つのパートについて、要約と感想を以下のフォーマットで書いてゆきます。

 

・記事のタイトル
( 1 行目 ) 記事の要約
( 2 行目以降 ) 感想

 

○ はんだづけカフェなう

 ARM プロセッサを搭載したマイコンボード mbed について概要、価格、開発環境やライブラリについての話から、デバック環境についてをザッと紹介しています。最後に i.MX ファミリのプロセッサを搭載した新機種についての紹介をしています。mbed の売りとしては、手軽に素早く ARM プロセッサプログラムを作って動かせることみたいで、そのためにオンラインの開発環境を提供しているみたいです。

 

○  第一特集① :リビドー駆動プログラミング学習

 プログラミング未経験者を対象としたプログラミングを学習するためのきっかけ作りのお話。ここでは、リビドー駆動プログラミング学習ということで、自分の(動物的な)欲求を糧としてプログラミングをはじめるという話をしています。具体的には、エロサイトからエロ画像やらエロ動画やらをかき集めるスクレイピングツールを作ったお話や、ニコ動や YouTube の動画を引っ張ってくる処理を行うスクリプト。そして、好きなアイドルのブログや SNS のアクティビティをウォッチするスクリプトなんかを通してプログラミングを頑張ったという体験談を紹介しています。

 ちょっと凄い記事です。こんなぶっ飛んだ内容を書こうと考えて、実際に書く著者もそうですが、この内容を通す編集も凄いです。というより読んでいて少し心配になります。

 

○ 第一特集② : 美容師の世界からプログラマ

 美容師出身の女性プログラマ美容師を辞めてからプログラマになって成長してきた話を紹介しています。20歳からプログラマとして生き始めてからは、プログラミングはおろかタイピングすらおぼつかなかったのが、会社の先輩社員の教育もあって、Mashup Awards 6 で特別審査員賞を受賞するなど目覚しく成長し、遂には Shibuya.pmYAPC::Asia で登壇するまでになるとか。

 新人プログラマの成長の遍歴がよくわかる記事です。またわずかのうちにこんなデキる人間になるなんて凄いです。マッシュアップアワードへの投稿もですが、特に YAPC のような公の巨大カンファレンスで発表するのは、なかなか出来ることではありません。

 

○ 第一特集③ : タワレコ店員からエンジニアへ

 タワーレコードの店員からエンジニアに転向した人のエピソードとこれからエンジニアになる人間への心構えや成長するためのアドバイスなんかをいくつか紹介しています。具体的には、勉強会に参加して自分の無力さを体験し、また人とのつながりができたというお話や、OSS でリリースする事による達成感なんかについて紹介しています。

今月の Software Design : 2013/03 (その6)

 「今月の Software Design 」の3月号の投稿の最終回です。

 「レッドハット恵比寿通信」以降に掲載されている9記事について要約と感想をまとめました。

 フォーマットは各記事、以下の通りです。

 

・記事のタイトル
( 1 行目 ) 記事の要約
( 2 行目以降 ) 感想

 

・レッドハット恵比寿通信

 Red Hat が提供するエンタープライズ向けミドルウェア JBoss についての紹介記事になります。JBoss とは一体何で、どんなプロジェクトから構成されているのかという内容になります。

 JBoss については、恥ずかしながら名前だけ知っているという程度の知識しか無かったので、JBoss について知る良いきっかけになりました。それにしても Java の世界は広いです。

 記事を読む限りでは IBM WebSphere が競合になるのでしょうか。IBM WebSphere と言えば、えげつない資格ビシネスをしているという事で印象的ですが、調べてみると Red Hat も同じ事をやってるんですね。Red Hat によって JBoss は「安心」を売り物にした飯の種になりますが、JBoss が使われる事で、これを飯の種とするエンジニアが安心を担保するものとして資格を欲しがり、JBoss 環境が更に盤石となるという連鎖が期待できます。こうして、エンジニアとコミュニティ(Red Hat)においてとても血なまぐさいエコシステムが形成されるわけですね。さすがエンタープライズ向け商品は金になるだけあります(実にえげつないです)。

 

・システムで必要な事はすべて UNIX から学んだ

  仮想化やらセキュリティやらで生のマシンをいじって遊ぶ機会が減ってしまった現状において、エンジニアがちょこっといじって遊べるおもちゃとして注目されているいくつかの組み込みボートについて紹介しています。具体的には SAKURA ボード、RetroBSD、そして Raspberry Pi を紹介しています。また、Raspberry Pi で FreeBSD を動作させることについて、さらにちょこっと解説しています。

 ここでも Raspberry Pi です。そして BSD です。

 また、かつてルネサンスが提供している H8 プロセッサのマイコンボード H8/3069F で遊んでいた事がありましたが、それと比較すると Raspberry Pi の環境の整いっぷりには驚嘆します。おまけに Linux が動くとか、もう楽しみでしょうがないです(確か H8/3069 では、シグマ・・・じゃなくて TRON を入れていた記憶があります)。

 

Linux カーネル観光ガイド

 Linux 3.8 に組み込まれた機能の紹介をしています。具体的には Hugepage を効率的に利用するための機構 (huge zero page) と、ext4 におけるスパースファイル (sparse file) の対応、そして UEFI 対応についての話になります。

 凄い記事です。まず、LKML は日々膨大な情報がやり取りされていますが、こうした次期バージョンについてのやり取りをキチンと追えているというとこに著者の実力を感じます。またカーネルの新機能なんてものは、往々にしてユーザからみれば枝葉末節なモノに見えると思うのですが、キチンと背景から完結で分かりやすく(それでいて曖昧じゃない)解説をしており、ソレが一体何で何故必要なのかがちゃんと伝わってきます。

 また UEFI の件で ELF の .signature セッションを使って署名するという話が出てきた際には胸が熱くなりました。いい加減(5年くらい止まっていますが)Onix の ELF 対応を済ませてしまいたいです。

 

・Monthly News from jus

 昨年 11 月に開催された Internet Week 2012 (以下、IW2012) のレポートです。記事では IW2012 で開催されたイベントのうち 「OpenFlow チュートリアル&ハンズオン」と「IP Meeting 2012」についてを取り上げています。

 IP Meeting は行けませんでしたが、前日に開催された「OpenFlow チュートリアル&ハンズオン」には参加し、この場に居ました(それも運営側で)。先々月の同記事の Internet Conference 2012 の時 といい奇妙な偶然です。

 IW 2012 の3日目に開催された「OpenFlow チュートリアル&ハンズオン」は、63人収容のそこそこな規模のセミナールームで開催されましたが、着席率100%のギチギチな状態でした。そして脅威のおっsシニア率。後日、参加者の感想を含む所属と年齢分布を何かの形で見せてもらいましたが、圧倒的に 3,40 代が占めていたと記憶しています。世のおっさんがこれほど興味を持つからこそ、これほど話題になるのでしょうか(あるいはその逆か)。

 

Ubuntu Monthly Report

 先月リリースされた LibreOffice 4.0 の新機能についての紹介記事になります。Writer (ワープロソフト) で Logo 言語が利用できるようになった他、Calc (表計算ソフト) で導入された新しい関数についてなどの機能に加え、他のツールとの互換機能の強化についていくつか紹介をしています。

 恥ずかしながら LibreOffice の存在自体をここで初めて知りました。2010 年に OpenOffice からフォークしたんですね。こうしたオフィス環境が多様化するのはいいことに思えます。プロジェクト側にしてみれば、互換に費やすコストが増えてしまいますが、ユーザ視点から見るといろんなソフトの良い部分が見えて、また開発側がそれを意識するようになるという競争原理が働きます。彼らが頑張ってくれることで MS Office がスタンダードだという風潮をぶち壊してくれればと願って止まないです。

 こうした流れからか、最近某社の社内で利用するドキュメントの一部が Google Docs を使っていることに驚きました。Google Docs もフリーソフトでも無ければ、オープンソースでもありませんが、マルチプラットフォームで且つ無料で使えるだけ MS Office よりかはナンボかマシでしょう。

 

・Software Designer

 最終回の今回は、これまでの連載で取材をした人たちの印象深い内容をワンセンテンスで振り返る内容になっています。

 この連載は、この連載のライターをやっている Bart Eisenberg さんがかつて、色んなソフトウェア技術やソフトウェアプロジェクトについて記事にする、いわゆるフツーな内容の連載をしていたものを、敢えて人物に焦点を移して改めて開始した企画だったという事を今回初めて知りました。

 この記事をキチンと読みはじめたのは、毎月 SD を読破するというこの活動をはじめた1月からで、この2ヶ月の間漫然と読んでいましたが、そんな面白いコンセプトの連載だったなんて露とも知らず最終回を迎えてしまいました(実にもったいない)。

 

・Hack For Japan

 気象庁が公表しているオープンデータをごにょごにょするハッカソンやったよ、という記事です。記事ではハッカソンの様子や、どんなモノを作ったについて簡単に紹介しています。

 記事で紹介されている、首相官邸が推進している電子行政オープンデータ戦略なる存在を初めて知りました。非常に面白い活動だと思います。

 そう言えば大学の友人が農業環境技術研究所が公表している全国の土壌データを使って、自分の今居る土壌情報を取得して遊ぶアプリ を作って、それを学会のお偉方に見せて褒められた(アワード取った)なんて事を思い出しました。

 個人的には、国税庁のデータが欲しいです。国税庁は各企業が申告した所得税の統計情報を公開していますが、個別の企業の情報は出て来ません。恐らく法律的な壁があるんだと思いますが、すごく知りたいです。それがわかれば、会社がどれだけ流動的で、またどれだけブラックかといった事が一撃で白日の元に曝け出すことができます。またそうしたミクロ的な点だけでなく、マクロ的にどのように人材が流れ、どういった業態が膨れて(また萎んで)いるかが時系列でわかります。恐らく銀行や信金なんかの金融屋さんなんかがそれに近い情報を握っていると思われますが、やはり個人情報的な理由で教えてくれません(いっそ銀行に入行しようか)。

 

・温故知新 IT むかしばなし

 コンピュータ科学、とりわけソフトウェアに関する古典書についての紹介をしています。古典としては、ニクラウス・ヴィルト著の「アルゴリズム+データ構造=プログラム」と「プログラミングの心理学」を紹介しています。また最後に、著者イチオシの書籍として「Code Complete」を紹介しています。

 古典全然読んでいません。最後に読んだ古典は「ピープルウエア」ですが相当昔です。今読んでいる本を読み終えたら、次は古典に手を出したいと思います。

 

・Inside View

 サイバーエージェントのインフラ運用に関するお話です。ポイントとしては、トラブルを誘発させる自前の KVS データベースを RDBMS に変えて、ストレージを SSC にすることで安定性を担保しつつスループットを出すようにしたという話と、従来手動で行なっていた MySQL のマスター/スレーブ切り替えを MySQL-MHA を使って自動化させたというお話、そして信頼性向上のために自作サーバをベンダーサーバに切り替えたという3つです。

 これまでやってきた独自の手法では安定しないし、信頼性が担保できないので、ソフトウェアは OSS を使い、ハードウェアはベンダーに任せるという敗北宣言とも取れる内容の記事です。またフォールバックして採った戦術もフツーといった印象です(SSC の件は先月の SD の後ろの方でも見ましたね)。

 この記事から読み取れる教訓としては「オレオレ手法はスケールしないよ」という事でしょうか。サイバーエージェント程の企業にまともな(むしろ普通以上のクォリティの)エンジニアが居ないわけが無いでしょうが、それでもオレオレ手法では破綻をきたすという事は、並の会社では余計に荷が勝ちすぎるのかもしれません。

今月の Software Design : 2013/03 (その5)

 「今月の Software Design 」の3月号の5回目の投稿です。

 今回は、Emacsシェルスクリプト、そして Android/iOS などお馴染みの4つの記事と今月から連載がスタートした「Debian Hot Topics」の要約と感想を書きます。

 フォーマットは各記事、以下の通りになります。

 

・記事のタイトル
( 1 行目 ) 記事の要約
( 2 行目以降 ) 感想

 

Emacs 64bit 化計画

 C++/CLI を使って .NET フレームワークコンポーネントを呼び出す処理を書いて Emacs 連携させる話です。ここでは、オープンソースのパスワードマネージャー KeePass と連携する処理を C++/CLI を使った記述、及び Emacs 側の実装を解説しています。

 .NET 面白そうですが、個人的には BSD よりも縁遠い存在です。また COM のような複雑な仕組みでしか他のプログラムと通信できない機構のシステムを不憫に思うと共に、UNIX がいかに凄いかを思い知らされます。

 

・開眼シェルスクリプト

 ImageMagick を使って画像を ppm 形式に変換して、シェルスクリプトから画像を編集する処理を記述しようという話です。記事では実際に、重ねあわせによる画像合成と近傍画素の平均値をとってモザイク処理するスクリプトを紹介しています。

 テキストファイルで画像変種するとか面白いです。テキストで表現される画像ファイルフォーマットには、記事で紹介されている ppm 形式の他に xpm 形式が有名ですが、かつて xpm 形式の画像を e-lisp から所々の加工を行なって 作ったぷよぷよ を見せてくれたド変態がアリエルに居ました。

 

・iOS アプリ開発者の知恵袋

 iOS アプリのマネタイズの方法と、広告収入モデルで実際どういったやり方でどれだけ儲けたかというお話。

 相変わらず iOS アプリエンジニアさんの知恵は、エンジニアリングよりもマーケティングやマネタイズに使われるみたいですね。この手の話に全然ワクワクしないのは、僕がエンジニアリングの事だけやってればお金がもらえる恵まれた環境にいるからでしょうか。

 SD にこういう記事があるのは良いと思いますし、著者の藤田さんもキチンと売上があるみたいで凄い(多分僕には真似できない)のですが、何だか行き当たりばったり感がぷんぷんします。

 

Android エンジニアからの招待状

 Android アプリのテストツールについての記事になります。まずいくつかのテスト自動化ツールの紹介と、各ツールの開発状況についての紹介をした後、アンドロイド SDK 付属のユニットテストツール JUnit についての紹介と、使用する際の注意点について簡単に解説しています。

 正直あまり良い記事とは思えません。扱っているテーマは面白いですし、記事の前半部分で書かれている各種自動化ツールにどんなものがあって、それぞれが今どんな開発状況なのかという話は非常に参考になるのですが、記事の後半部分の JUnit がどんなもので、何が出来て何が出来ないかという点については、これを読んだ限りではイマイチわかりません。

 いきなり細かい具体的な話が先に来て、後で概要的な話が出てきたり、表で書ける内容をわざわざ文章にしたり、そしてそれが後で出て来なかったりと、構造化されていないため、色々書かれている割に中身が無いと印象付けられるんじゃないかと思います。

 「文句ばっかり言ってるけど、じゃあお前は同じテーマで良い文章を書けるのか!?」と言われると弱ってしまいますが、恐らくここでの問題は、狭い紙面で多くの内容を書こうとしすぎている点じゃないかと思います。また構造的な表現については、僕の 元師匠のブログエントリ が参考になります。

 

Debian Hot Topics

 今月から連載が開始された記事で、Debian の開発ポリシーとメンテナンスの作業プロセスについて紹介しています。開発作業についてはパズルを例にして、依存関係地獄を解く作業について紹介していました。

 ディストリビューションコミュニティでどんなお仕事をしているのかは、どういったソフトウェアと取り込むかを決め、それらの依存関係を解いて、そしてそれらのパッケージを作ってくれる以外にどんなお仕事をしているのか、外からはよくわからないので、今後の内容が楽しみです。

 

・レッドハット恵比寿通信

 Red Hat が提供するエンタープライズ向けミドルウェア JBoss についての紹介記事になります。JBoss とは一体何で、どんなプロジェクトから構成されているのかという内容になります。

 JBoss については、恥ずかしながら名前だけ知っているという程度の知識しか無かったので、JBoss について知る良いきっかけになりました。それにしても Java の世界は広いです。

 記事を読む限りでは IBM WebSphere が競合になるのでしょうか。IBM WebSphere と言えば、えげつない資格ビシネスをしているという事で印象的ですが、調べてみると Red Hat も同じ事をやってるんですね。Red Hat によって JBoss は「安心」を売り物にした飯の種になりますが、JBoss が使われる事で、これを飯の種とするエンジニアが安心を担保するものとして資格を欲しがり、JBoss 環境が更に盤石となるという連鎖が期待できます。こうして、エンジニアとコミュニティ(Red Hat)においてとても金臭いエコシステムが形成されるわけですね。さすがエンタープライズ向け商品は金になるだけあります(実にえげつないです)。