netail.net
自作フリーソフトや,ゲームに関する雑記を公開してます.
日記はソフトウェア工学の論文ネタが中心です.
最近のお知らせ (古いものはこちら)
2008-09-07 [長年日記] ▲
_ 新 LOOX U を試してみた ▲
FMV の一番小さい LOOX U シリーズの新型が8月末に発売されていたので,さっそく店頭で試してきました.
キーボードは,ピリオドとスラッシュが微妙な位置にあることを除けば,大きさのわりには打ちやすいという印象でした.読点が打ちにくいので,長文はつらいかもしれませんが,ちょっとしたメモ作成には十分という気がします.
むしろ,1280x800という高い解像度のおかげで,トラックポイントでGUIをポイントしにくいというほうが目立ちました.ただ,このあたりは「拡大」ボタン(本体に付いてる,押すだけで解像度が落ちるボタン)とか,テーマの変更で対応するところかもしれませんが.
XP に入れ替えて使えそうなら買うかな?と思いつつも,現状ではいまいち決定打に欠けます.
2008-08-31 [長年日記] ▲
_ [論文] プログラミングは art である ▲
IEEE Software 7月/8月号に,Diomidis Spinellis による The way we programというコラムが掲載されています.プログラミング好きな人にお勧めの記事なので,誰でも読める本人のブログの記事をリンクしておきます.本人のブログには6月に掲載されていたようなので,既にどこかで紹介されているかもしれませんが…….
この記事では,大きいプログラムも小さいプログラムも,意味のある識別子,コメント,空白がある一定の割合を占めているというデータを示しています.意味のある識別子の量は,まずユニークな識別子数を数えて,それを一意に表現するために必要な最小文字数(符号化したときの最小符号長)を計算しておき,各変数の出現が最小文字数よりも何文字余分に使ってるかの合計で計算しているようです.
それを踏まえて,プログラミングは art であって,やりたい処理を計算機のために翻訳する作業ではないと述べています.ソースコードは,コメントによってコードの意味や書かれた理由(the story behind the code)を記述し,空白によるレイアウトでコードの隠れた構造を明らかにし,意味のある識別子という少ない言葉で物事を表現しており(almost stylized poetry: a type of creative communication through a few words adhering to a specific form),簡潔で曖昧さのないコミュニケーションを行うことを目指したものだと述べています.
これを読んで直接何か役に立つという記事でもないですが,表現とか,データ自体は面白いと思います.
2008-08-29 [長年日記] ▲
_ [論文] IEEE Software のソフトウェア開発ツール特集 ▲
IEEE Software 7月/8月号(紙)が研究室に届いたので,オンラインの9月/10月号の目次もついでにチェックしていたのですが,どうやら 9月/10月号は Software Development Tools の特集のようです.
コード検索エンジンの話であるCode Conjurer: Pulling Reusable Software out of Thin Airの記事に,コード検索エンジンの一覧があり,SPARS-Jも掲載されていました.
_ [Java] エディタのカーソル移動をとらえる ▲
Eclipse において,テキストエディタ上での範囲選択は ITextEditor.getSelectionProvider で得られる ISelectionProvider に対して addSelectionChangedListener を呼び出すことで実現できます.しかし,カーソル移動そのもの(Javaのエディタでカーソル移動して,カーソル位置の要素がハイライト表示されるタイミング)は,範囲選択が起きないため,普通の SelectionChanged イベントは発生しません.
実は ISelectionProvider のサブインタフェースに IPostSelectionProvider というものが存在しており,こちらにダウンキャストしてから,addPostSelectionChangedListener でリスナを登録してやらないと駄目のようです.
日本語ドキュメントを検索しても特に見つからなかったし,忘れそうなのでメモしておきます.
2008-08-05 [長年日記] ▲
_ AOAsia2008 CFP ▲
既にあちこちで(一部は個人的に)案内流してますが,APSEC 2008 併設ワークショップ AOAsia2008 の宣伝です.ワークショップのページはこちら.
発表のネタとしては,AOSD に関連したトピックなら何でもいけます.研究だけでなく,実際の適用事例に関する報告も受け付けています.
投稿は,10ページ以内の Research Paper か,5ページ以内の Position です.文書レイアウトは IEEE あるいは ACM のフォーマットの使用を推奨しています.締め切りは,Research Paper のほうが 9月8日,Position が 10月22日となっており,会議自体は12月2日に開催されます.
個人的な印象ですが,私が参加したことのあるワークショップの中では議論が比較的穏やかに進む(たとえば早口でまくし立てるように喋る人がいない)ので,英語でのワークショップが初めての人でも比較的議論についていきやすいと思います.アスペクト指向関連の研究・開発を進めている/これからやろうとしている人がおられたら,ぜひ投稿をご検討ください.
2008-07-24 [長年日記] ▲
_ [論文] プログラムの読みやすさ ▲
ISSTA 2008 で Ditinguished Paper を取った,A Metric for Software Readability という論文が,かなり面白いです.発表を聞いて,論文をざっと眺めただけですが.
120人の学生に,様々な Java のコード断片を提示し,読みやすさで1〜5の点数をつけてもらって,コードの1行の長さの平均とか,1行あたりの識別子の数の平均とか,ピリオドの数とか,色々な指標のどれが効いているかを調べています.可読性の判断は,人によって分かれるかというとそうでもなく,「読みにくいコードは,誰にとっても読みにくい」ようです.
多数の指標に対して descriptive power を計算していて,1行あたりの識別子の数の平均,行の長さあたりが一番効いてくるらしい,としています.このあたり,今までの経験則の裏づけに近いところでもあります.実際は,複数の指標が1つの性質を反映してるようなので,ここから可読性の自動計測ツールに進むには,実際にどの指標を使えばいいのか,調査が必要なようです.
指標の種類が十分でない可能性とか,評価者の好みに偏りがある可能性とかはありますし,また,コードの可読性が開発者に依存するのか,それとも問題が複雑ならコードも複雑になるのか,といった疑問も多く残りますが,この手の話が好きな人は,とりあえず読んでおいて損がない論文だと思います.
2008-07-23 [長年日記] ▲
_ [近況] WODA 2008 参加メモ ▲
WODA 2008に発表付き添いで参加してきました.このワークショップには初参加だったので,ちょっとしたメモだけ残しておきます.
WODA は,mini-conference 形式というか,発表+質疑応答で,最後にちょっとディスカッション時間があることを除けば普通に発表するだけのタイプのワークショップでした.これまで ICSE 併設だったのが今回から ISSTA 併設になったのは,ワークショップ自体の規模が小さいこと,動的解析とテストまわりの話の相性がいいこと,といった理由があったそうです.
参加人数は最初の時点で24人,数えた中では31人のタイミングがありました.投稿は23本で11本採録でした.発表ネタとしては,プログラム理解,最適化,テスト関係,Specification Mining,Fault Localization など,動的解析でソフトウェア工学寄りな話が多かったように思います.ワークショップの名前の通り,動的解析やってる有名な人が一通り含まれているので,発表する場としては良さそうなワークショップだと思います.