Home > Latest topics

Latest topics 近況報告

たまに18歳未満の人や心臓の弱い人にはお勧めできない情報が含まれることもあるかもしれない、甘くなくて酸っぱくてしょっぱいチラシの裏。RSSによる簡単な更新情報を利用したりすると、ハッピーになるかも知れませんしそうでないかも知れません。

萌えるふぉくす子さんだば子本制作プロジェクトの動向はもえじら組ブログで。

宣伝。日経LinuxにてLinuxの基礎?を紹介する漫画「シス管系女子」を連載させていただいています。 以下の特設サイトにて、単行本まんがでわかるLinux シス管系女子の試し読みが可能! シス管系女子って何!? - 「シス管系女子」特設サイト

Page 4/248: « 1 2 3 4 5 6 7 8 »

UxUの使い方の簡単な解説を書きました - Jun 13, 2008

会社のサイトのコンテンツが一新され、コンテンツにブログが加わりました。何をやってる会社なのか(何ができるのか)分からんと言われがちなようなので、みんながちまちまやってる内容をここに書いていって、「当社ではこういうことができます」的な宣伝材料にする、というのが一応の目的のようです。

で、自分もアドオン開発者向けの自動テストツールであるUxUの使い方の解説なんかを書いてみました。ツールの使い方というよりは、「はじめての自動テスト」みたいな感じになってしまってますが。自分自身がまだ自動テストのことをよく分かってなくて須藤さんとかにしょっちゅう「何考えてんだ(全然分かってねえな)……」的な指摘を受けてばかりなので、自分の理解レベルに合わせるとこんな感じになってしまいました。技術力とか実績とかのアピールの場のはずなのに、こんな低レベルな記事を載せてしまうと却って会社の印象に泥を塗ってしまうんじゃなかろうか、ということをamachangのエントリとか見て思いもしましたが、もう後の祭りです。

UxUのマニュアルのつもりで、またそのうちXUL/Migemoのテストでの利用例の解説の続きを書くかもしれません。

あと、サービスMozillaサポート 実績紹介Thunderbird用アドオンと辿ったページでThunderbird用の地味なパッチもいくつか公開しています。中にはもしかしたら同種のアドオンがすでに世の中にある車輪の再発明な物もあるのかもしれませんが、探すより作った方が早かったんで……

コーディング規約を定める動機 - Apr 13, 2008

コーディング規約をいちいち気にするより、いろんなコードがあっていいじゃん、という話。

完全に趣味のプログラミングだったらそれでいいだろうし、コードを読むことが苦にならない、コードを読むのに無限の時間を使える、そういう状況なんだったらそれでもいいかもとは思う。

でも「仕事」でそれやられちゃたまんない。複数人での共同作業で、メンバーの一人が書いた変態的なコードを読んで理解して修正箇所を見つける、ということのために無駄に時間を使わされて納期に間に合わなくなるんじゃあ、迷惑以外の何物でもない。

「共同作業」というのも、複数人でチーム組んで一気にやるだけとは限らない。誰かの作業が終わった後に他の誰かがそれを引き継いで進める、そういうのだって「共同作業」だ。今は自分一人だけが担当していても、他の人に引き継ぐかも知れないし、自分自身がずっと後になって忘れた頃にもう一度担当するかも知れない。そういう時に作業に支障が出ては困る。

「仕事」の目的は「コーディングを楽しむこと」じゃあなくて「求められた要件を満たす成果物を、求められた期限内にアウトプットすること」だ。その目的に差し支えない事なら大抵の事はしていいと思うけど、その目的と相容れない事は持ち込むべきではない。

ということだと思う、糸柳さんが言いたかったのは。

資料が無い時はソース見るしかない - Feb 09, 2008

NSISは調べてみると結構色んな事ができそうではあるんだけど、日本語で解説された資料ってのが全然見つからないし、機能の詳しい使い方の説明も不足してたりして、マジ困る。仕方ないからFirefoxのインストーラで実際に使われてる物のソースを見たりなんかして。

いや、ロジックを丸パクリしたかったんじゃなくて、もっとささやかな話で、MUI(Modern User Interface、インストーラのウィザード形式の画面を提供するライブラリ)でMUI_PAGE_CUSTOMFUNCTION_PREを使って特定のページを条件次第でスキップするにあたって、ヘルプには「そういうこともできる」としか書かれてなくて実際のやり方が載ってなかったから、それを調べたかったんですよ。

Railsの案件で、Rails自体の詳細な挙動が分からなくて困ってた時も結局須藤さんには「Railsのソースを読め」と言われてしまったし。ドキュメントが不足してて困るって話と、ソースが読めれば資料になるからオープンソース万歳!って話と、そんなだからドキュメントを敢えて作る気にならなくてドキュメント不足が余計に加速されちゃうんだよって話と、色々混ざっててスッキリしない。

ちなみに調査結果としては、MUI_PAGE_CUSTOMFUNCTION_PREで指定したコールバック関数でAbortすればそのページはスキップされるようになる、ということだった。

NSISで制御構造 - Feb 08, 2008

NSIS(Nullsoft Scriptable Install System)というものがあって、元々はWinampのインストーラを作るために使われてたらしいんだけど、これを使うとCとかVBとかDelphiとか分からなくても(簡単なものなら)Windows用のネイティブアプリケーションを作れる。まあ元々インストーラ作成用に作られたものだから、インストーラじゃないものを作るのは大変なんだけど。有名どころではPortable Firefoxの正体がNSISだったりする(大まかな処理の流れを紐解くと、USBメモリに置いたFirefoxの実行ファイル群とプロファイルをテンポラリフォルダにコピーして、起動オプション付きで起動することで強制的にそのプロファイルで起動し、Firefoxが終了したらプロファイルに行われた変更をUSBメモリに書き戻す、という感じ)。あとFirefoxのWindows版インストーラもNSIS製。

しかし厄介なことに制御構文がGoToっぽいものばっかりで、if/then/elseで複数行のブロックに分岐するといったことすらできないから、とかちょっと凝ったことをしようとすると、いつの時代のプログラムだよ!!と言いたくなるようなワケの分からん読みにくいスクリプトになってしまう。

Var MYVAR
StrCpy $MYVAR "ほげほげ"
; 第1引数が第2引数と等しければ第3引数で示された行へ、異なれば第4引数で示された行へ。
StrCmp "$MYVAR" "" "" NOT_BLANK
StrCpy $MYVAR "空ですよ"
GoTo EXIT
NOT_BLANK:
StrCpy $MYVAR "空じゃないですよ"
EXIT:

これはマジで死ねる。

……と思ってたんだけど、ヘルプをよくよく読むと、LogicLibという標準ライブラリを使えばもーちょっとマシな制御ができるようになるとあったので早速試してみた。

!include 'LogicLib.nsh'
...
StrCpy $MYVAR "ほげほげ"
${If} "$MYVAR" == ""
  StrCpy $MYVAR "空ですよ"
${Else}
  StrCpy $MYVAR "空じゃないですよ"
${EndIf}

うわ、これ超便利。NSISが一気に実用的になった!!! ちなみにswitch/caseとかwhile/for/do系のループとかもあります。

ということに感動して昨日はウッカリ深夜までNSIS漬けになってしまいました。

全ての言語はLispに向かう? - Nov 26, 2006

これは物事をよく分かってない文系人間の戯言ですよ。

続きを表示する ...

全ての言語はLispに向かう? - Jan 01, 1970

これは物事をよく分かってない文系人間の戯言ですよ。

続きを表示する ...

全ての言語はLispに向かう? - Jan 01, 1970

これは物事をよく分かってない文系人間の戯言ですよ。

続きを表示する ...

全ての言語はLispに向かう? - Jan 01, 1970

これは物事をよく分かってない文系人間の戯言ですよ。

続きを表示する ...

全ての言語はLispに向かう? - Jan 01, 1970

これは物事をよく分かってない文系人間の戯言ですよ。

続きを表示する ...

全ての言語はLispに向かう? - Jan 01, 1970

これは物事をよく分かってない文系人間の戯言ですよ。

続きを表示する ...

Page 4/248: « 1 2 3 4 5 6 7 8 »

Powered by blosxom 2.0 + starter kit
Home

カテゴリ一覧

過去の記事

1999.2~2005.8

最近のコメント

最近のつぶやき