2009年6月29日
#
職場の女性にカピパラに似ていると言われました。
喜んでいいのか、ショックを受けて良いのか、判断に困っているやまだです。
月末です。なので出てきました。<おい
えーと、わんくま勉強会の帰りでこの文章を書き始めてます。
懇親会の帰りに、とりあえず駅まで戻ってきたらまだ終電残ってたので、乗りました。はい、あいも変わらず計画性ないですね。
電車がなくなってたらどーするつもりなんだとw
では、わんくま勉強会の感想など。
落ちものゲーがオチでした。
……も、もう書けん。まともに聞けたセッション少ないものなー。
ま、聞けたって理解度が追いつかなかったりしますけど。
#言い訳言い訳<それで良いわけ?
と、ぐだぐだ感満載だったりしますが、わんくま同盟の末席に加えていただいてから、なんとそろそろ2周年を迎えようとしてします。
#保って3ヶ月だと思った人ー?はーいっ(>_<)//
いーんでしょーか、こんな奴がまだメンバで < とかなり本気で思ってたり
で、この文章ですが、ポメラ使って書いてます。
http://www.kingjim.co.jp/pomera/
某しらがの人から「使ってみるー?」と言って戴きました。
とりあえずテストも兼ねてこの文章書いてたりします。
いやー、こういう割り切った商品ってやっぱ好きかも。
テキストしか書けない、乾電池起動、この割り切り感はある意味最強かも。
で、家に帰って続きを書いてたりするわけですが。
あ、ついでに書いておくと、私 MCA Master とかってのになったはずです。
http://www.microsoft.com/japan/learning/mca/mca_master.mspx
別に資格マニアになる必要はないけど、実力の確認という意味で資格は一つの指標になると思うです。
MCPとかいきなりだとハードルが高いって人はMCAから始めてみるのもありなのかなー、と。
でも、結局そこから次のパスへつなげていくのが難しいから同じかなぁ?
では、縁があったらまた来月、ということで。
#いいかげんまともに技術エントリも書きたいけど、じ、実力が……orz。まーその辺はのんびりやろうかとw
2009年5月31日
#
「ぽぴ王子」と「とき玉子」って何だか似てると思いませんか?
えー、やまだです。何だか浮きまくりです。
で、このハンドル、結構ありふれているようですが、意外と見かけなかったりします。私の活動範囲が狭いから見ないだけなのかな。
でも、「やまだ」だけだと特徴がないので、外から見て私かどうかわかりにくい、というのがありますよね。
なので、他の方のブログとかにコメント入れるときは、たとえ茶々でも(というか大半茶々だな)このブログへのリンクを貼ってたりしてます。
それは別にブログへの誘導のつもりでも何でもなくw、単に「やまだ」というハンドルが一致しただけの別人でなくて私(もしくは騙りw)ですよと。
どちらかというと「情報の正確性に対する責任」とかって話よりは、「冗談のつもりでも人を傷つけるようなコメント」があったらそれは私の責だよって感じですが。
それで嫌われたらそれは私が招いたことで、そのツケが自分に回ってくるのは当然だなと。
#たとえば、今回だと冒頭の一文とか(このエントリ自体って話もある)。……結構、毎回綱渡りかなーという自覚は一応あったりしてw
えー、わんくまの「やまだ」ですが、実名等は公表していません。というか、ここには会社や私生活を持ち込む必要はないかな、と思っています。
別に、このブログや勉強会で技術力を示して「お仕事もらおう」とかってつもりはないですし(つか、このブログで「お仕事あげよう」と思う人がいたらその方が不思議)、職場の人や取引先の人に見てもらおうと思っているわけでもないですし。
単に私はIT関係の技術に取り組んでいる同士として語り合いたいだけで、逆に、そこに会社名とか表に出て妙な縛りがでることが嫌だったりします。
で、ちょっと前の話なのですが、5月の勉強会に顔出しました。
懇親会にて呑んでた最中、そこで某氏に唐突に言われたこと。
「僕、やまださんに名刺もらっていません!」
……えーと、私は会社とは関係なく「個人」として参加しているつもりでしたが……。名刺、必要ですか?
なんか、「ここに『やまだ』本人がいるだけでは不足だ、会社の肩書きがなければ意味がない」と言われているようで、もの凄く淋しい気持ちになりました。
ちょっと、「自分の価値って何だろう……orz」と思い始めて、未だに凹んでたり……。
#4月に職場異動後、いろいろあって精神的にちょっと不安定なせいもあるかもしれないですけど。
いや、別に名刺を配る行為自体を否定する気はないですが、そこに書かれている情報って会社外でも要求されるほど必要なものなのかと。
なんだって同じですが、情報を正しく扱うことも大事ですけど、その情報がそもそも本当に必要なものなのかを考えてみるのも大事なのかも、と思ってみたり。
#と、ちょっと危険な(?)ネタに踏み込んでみました。
来月のエントリ……はあるんだろうか。 < うう、本気でシャレにならん orz
2009年4月30日
#
もー、なにがなんだかわかりません。
なんか公私ともに忙しくて、ブログを書いている暇もない……ん?
↑ちょっと待て、お前はその前からあまり書いとらんかったろーが。
……やまだです。
ということで、今回は「忙しい」ということについて。
えー、この4月で職場を異動になって、業務内容も激しく変わってしまった(?)わけですが、前の職場でも今度の職場でも引っかかった台詞があったりします。
「俺/私は忙しい」
……はい?
正直、この台詞って何を伝えたいのか意味不明だったりするんですよね。
忙しいからこれ以上の仕事はできない?いや、それで受け付けなかった方の優先度が高かったりしたらどうするんですか、と。
それに、そう言う人って決して暇にはならないんですよね。ということは、自分で仕事をコントロールできていないってことかとw
ですけど、そういう人って目先の仕事ばかりを追っていて、何をしているのか全然外からは見えなかったりで。
どうも、「忙しい」という言葉で、そういう自分を正当化しているのではないかという気が。
「忙しい」と言う前に、「計画」と「分担」と「優先度」を考える/考え直すべきではないかと。そう簡単に「忙しい」なんて言うなと。
というわけで、私は会社では「忙しい」という台詞を禁句にしていたりします。
#だからって、締め切り直前になってから「私は忙しいから」って自分がため込んでた仕事を私に丸投げしてくんなー。
ということで、「忙しい」という台詞を口に出す前に、ちょっと自分の仕事のしかたを考えてみませんか、というエントリでした。
#異動時の挨拶ネタを流用する私w
ここが何のブログがわからなくなってきた……あ、前からか。
では、機会があったらまたお会いしましょう。
#いや、最近何かといそがしーのよwww
2009年4月1日
#
だって、そこに書いてあることをうっかり信じてしまったら、大変でしょー。
せめて先頭に*をつけてネタであることを示すぐらいの配慮は必要ではないかと。
#いや、とりあえずイベントだから参加しておこうとか、思ったわけではないですよ
2009年2月28日
#
επιさんのお許しがでたので帰ってきました(早っ)。
#じゃんぬさんの毎月固定数エントリが途絶えたので、その後を継ぐのは私しかいないのでは、と思っていたわけですが (違っ
やまだです。
ちょっとリベンジしてみようかと。相変わらず俺様言語ということでw
元ネタ:'祭り'を仕掛けてみるテスト
お題:「絶対領域」
Class Body {
protected Object part1;
protected Object part2;
protected Object part3;
}Class DressedBody extend Body {
public Object part1;
public Object part3;
}void main() {
DressedBody girl = new DressedBody();
Object ZettaiRyouiki = girl.part2; // ちょ、そこは勝手に触っちゃいけないんじゃないのかっ
}
変数名に具体的な名前を入れたり、へたにコメント入れると画伯下ネタになってしまうので、コードから察してくださいとしか……。
> ちょっとリベンジしてみようかと。
で、返り討ちにあうわけですが orz
やっぱり、旅に出ないといかんかなぁ……。
ではっ。
2009年2月27日
#
元ネタ:'祭り'を仕掛けてみるテスト
売られた祭りは買わにゃーなるまい。
月末までまだ2日あるにもかかわらず(何ソレwww)、やまだです。
とはいえ、いきなりネタふりされても早々にお題が用意できるでもなく、お茶を濁すことになるわけで。
で、「お茶を濁す」のは茶藝部顧問のえぴさんにすごーく失礼だったりするわけですが……どーしよ orz
ええい、ままよっ。
お題:「祭り」
void main() {
for (int i=0; check(i); i++) {
MessageBox.Show("こんなことやってみましたー。");
}
}
……何言語かは気にしない方向で(笑)。
check() 関数で手を挙げる人がいる限り、エントリ(?)が増えていきます。
いやー、たくさん true が返ればよいですねー、とゆーことで。
で、このcheck() でリミッターをはずしてみる(常に true が返る) と、別の意味での’祭り’になって’炎上’しますw
え?全然「ツンデレ」じゃないって?じゃー、これでどーだ。
お題:「ツンデレ」
void main() {
for (int i=0; comment(i); i++) {
MessageBox.Show("VB? ムリー");
}
MessageBox.Show("ソレダ!");
}
どこかでそーゆー「ツンデレ」な人がいたよーな <ヲイ
いーのかしら、こんなんで。……と今から言っても、後の’祭り’なんだよなー。
まー、今回は番外変ということで。ええ、変ですから。
修行が足りないようなので、ちょっと「ツンデレ」を探す旅に出てこようかと思います。
ではっ、またいつかお会いしましょう <マテ
2009年1月31日
#
ほら、やっぱりエントリが月末になったっちゃぢゃん。
#で、間が空く分、無駄に長くなる、と。 < 無駄とか言うなー。
……えーと。
やまだです。
で、タイトルの件なのですが、いや、なに、そんな大層な話ではなかったりします。
良いタイトルが浮かばなかっただけ、というのは、君と僕との秘密さっ < もうええっちゅうに。
スペシャリストの方はいーっぱいいるので、ふかーい方の話はそっちに任せるとして、
今回は、複数の技術を組み合わせたり、比較してみると面白いかもよ、ってな話です。
役にたつかどーかはわからんけど。まぁ、私の書くものって、そんなもんです。
で、いくつか見つけたものをまとめて紹介しておこうかと。
・Ja.NET
http://www.janetdev.org/
#ちなみに、この名前は「じゃんぬねっと」とは読まないようですw
.NET Framework 上で動く Java ですねー。
え?それになんの意味がある?.NET Framework 上で動かすんだったら C# や VB.NET でいーじゃん?
……そんなこと訊かれてもねぇ。いや、なんか面白そうな気がしないですか?
しない?……そーですか……。
・Glasshopper ( Mainsoft for Java EE Developer Edition )
http://dev.mainsoft.com/Default.aspx?tabid=177
Visual Studio で開発するJavaアプリ。Visual Studio で開発したアプリケーションが、Javaのコードになります。
いや、それだったら最初からJavaの方が開発効率は良い?
……まぁ、私もそう思わないでもないんですけどねー(笑)。でも、言語間の違いとかわかって面白いです。
実際の開発でそんなの使えるか、と言われると、確かに厳しそうな気もしますけど。
・eFace
http://www.soyatec.com/eface/
で、こっちは Java で XAML を使ってみよう、という話ですね。
まだまだライブラリが充実しないと、本格的に使えないかなーとも思いますけど、動くだけで面白いです。
ただねー、これ、eclipse用しか用意されてなくて、NetBeans用がないんですよねー。
最近の eclipse はアドインの嵐で、アドイン間のコンフリクトとかものすげーめんどくさい感があるので、自分で遊ぶなら NetBeans の方が好みなんですけど。
あ、そういえば eclipse と NetBeans、それぞれ使ってみると、開発環境としての考え方の違いとか、さらに Visual Studio とかと違いとかもあるので面白いですよー。
で、.NET Framework でプログラム開発とかいうと、C# か VB.NET か、いやいやC++でしょ、とかって話があったりするわけですが……。
もう、なんかね、いっそ MSILでいーんじゃないかと……思わないでもないでもなかったり。 ← どっちなんだ
#厳密には MSIL でなくて CIL (Common Intermediate Language) が正式名称でしたっけ?
・ECMA-335 / Common Language Infrastructure (CLI)
http://www.ecma-international.org/publications/standards/Ecma-335.htm
無償で入手できる CLI 仕様。
ただねー、500頁を超えるようなドキュメントをPC上で見るのはつらいです。かといって、印刷するのも大変だし。
で、最近は MSIL で遊びつつあります。これはこれで面白いですよ。
そのうちまとめてなんとかしようかと思わないでもなかったり。
VB.NETやC#のコードがMSILではこーなってるのかー、とか、あーこの辺は Java VM と同じだー、とか、おーこっちはこーなってるのかー、とか。
ということで、ついでにJava の原典も紹介しておきましょうか、ということで。
・The Java Virtual Machine Specification
http://java.sun.com/docs/books/jvms/second_edition/html/VMSpecTOC.doc.html
大丈夫、十分英語版でも読めますよー。
#私が紹介すると、プログラム言語仕様でないところがミソですねーw
それでシステム開発の役にたつのかー、という疑問もありますけど、それをいっちゃあ、ということで。
でも、知っていることの幅を広げるのは良いことかと。効率は激しく悪いかもしれないですが。
では。次は2月末日ですかね、……ってしゃれにならんな。
2月は日数が少ないから気をつけないと、って、おい。
2008年12月24日
#
やまだです。……えーと、お忘れかもしれませんが、そういう奴もいるんです。
……えー、いるよな……たぶん……。
少なくとも、私は「いる」と信じたい!いーから、だまされたと思って「いる」としてみろ!だまされるから!……あれ?
……はぁ、まぁ、そんなものです。
今回も、しつこく Sandcastle の話です。ほとんど、困ったときの Sandcastle ネタ、って感じになってますが。
困ったもんだ。……あ、困ってるから Sandcastle ネタなのかw
で、.NET Framework で API リファレンスを作成する場合、ほとんど感覚的には JavaDoc 相当箇所に同様のコメントを入れていけば良いだけなのですが、ふと疑問に思うことがあるわけです。
「クラスとメソッドはその直前にXML形式でコメントを追加すれば良い。でも、名前空間に対するコメントはどこに書けば良いのよ?」
で、これまでの対処法としては、私は以下の2つでしのいでいたりしたわけなんですが。
その1.Sandcastle Help File Builder で ShowMissingNamespaces 指定を False にする
はい、へたれですね。名前空間にはコメント付いてなくても良しとしよー、と。
この指定を False にしておくと、作成される API リファレンスで「名前空間にコメント付いてないよー」というエラーが出力されなくなります。
名前空間に対するコメントなんて、さらりとなかったことにしてしまうというw
その2.Sandcastle Help File Builder で Namespaces メニューボタンから個別にコメントを追加する
まぁ、こーすれば名前空間に対するコメントは記述できます。
こんな画面が開くので、中段で対象とする名前空間を選んで、下段の「Edit the summary for the selected namespace」の中にコメントを書けば良いだけなんだけど……。
なんかねー、すっきりしないのよ。他のAPI仕様はソースコード内で、名前空間はツール内で、ってコメント場所が分かれると。
Javaなんかだと、package.html ファイルをパッケージごとに作っておけるので、ソースコードとコメントがまとめて管理できるので便利なんだけどなー、とか思ったりします。
それに、<summary> タグはいいけど <remarks> タグはどうするのよ、ってな話もあったりします。
タグごと書けば、両方書けるんだけどねー。でも、生成されるファイルではどちらも <summary> タグの位置だから変なのよ。やっぱり、<summary> の内容は冒頭に、<remarks> の内容は末尾に出力して欲しいよねー、と。
ところが、この2つ以外にも方法があるってことが、ようやく最近になってわかってきたりして。
それが次に挙げる「その3」、とゆーわけです。
その3.名前空間ごとに NamespaceDoc クラスを作成する。
ということで、この方法があったりします。
つまり、名前空間のコメントを入れるためのクラスを定義してしまうってゆー、まーなんというか、盲点というか、抜け道というかw
C# だとこんな感じですねー。
namespace 対象とする名前空間 {
/// <summary>
/// 名前空間の概要
/// </summary>
/// <remarks>名前空間の補足</remarks>
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
class NamespaceDoc {
}
}
VB.NET だとこんな感じですねー。VB.NET だと明示的に名前空間を書かないのが通常かもしれないですが、このクラスについては明示的に書いておいた方が混乱がないかもです。
Namespace 対象とする名前空間
''' <summary>
''' 名前空間の概要
''' </summary>
''' <remarks>名前空間の補足</remarks>
<System.Runtime.CompilerServices.CompilerGeneratedAttribute()> _
Public Class NamespaceDoc
End Class
End Namespace
で、これらのクラスを定義しておくと、Sandcastle でちゃんと名前空間用のコメントが反映されることとなりますー。
あ、この方法は「その2」とは共存できないようなので注意です。まぁ、当然っちゃ当然のような気もするけど。定義が重複している、とかってエラーが表示されたような……。
↑ここで再検証しないところが、またへたれですね。#もー、そんな気力はとっくになくなっているので。
で、この方法をどこで見つけたかというとですね。えーと、さっきの「その2」で挙げたウィンドウ右下のところに「Help」ってボタンがあるですよ。
ツールの操作方法なんて直感的にわかるし、英語読むなんて面倒だしなぁ、……と放置だったんですが、ある時、なんとなく「Help」ボタンを押して、ヘルプファイルをざっと眺めてみて、……あれ?この「Using a NamespaceDoc Class」って何だ?と思ったという(苦笑)。
やっぱ、ドキュメント読むって大事だわ(笑)。
で、ドキュメントを読むことも大事だけど、空気を読むことも大事ですね、という話でした。……あれ?
えーと、……KY でごめんなさい、ごめんなさい、ごめんなさい。
内容のわりに長いエントリでごめんなさい、ごめんなさい、ごめんなさい。
それでは皆様、良いお年を。また、1月末にお会いしましょう。
……をい。 ← でも、しゃれになってなかったりする…… orz
2008年11月30日
#
えーと、前回の大阪勉強会以来ですかね。とりあえず11月の駆け込みエントリということでw
やまだです。
なんか大阪の方が私のホームになってきた感のある今日この頃、皆様いかがお過ごしでしょうか?
#ホームレス、という話もありますがw
相変わらずちまちまと自宅でWPFプログラムを弄ってたりします。あまり時間もとれないし、一つ機能を入れるたびにリファクタリングの嵐で遅々としてしか進んでいなかったりしますが。
で、せっかくWPFでプログラム作ってることだし、ひさしぶりにSandcastleでAPIリファレンスでも出してみるかなぁ、と。別にWPFだからってSandcastleの何が変わるわけでもないはずで、まぁとりあえずやってみるべしと。
で、それだけのことなのに、なぜかはまること、はまること。
その1.なんか変だ
え、変なのはお前だ、って?あ、はい、まあそれは置いておくとして(認めるのかっ)
生成されたAPIリファレンスの表示が何かおかしかったりします。ドキュメント内リンクも有効になっていないし。
でも、"Build completed successfully." って表示が出てるしなぁ。ちゃんと出力されているはずなんだが……、とログを見て、途中にある文字列に気づきます。
OutOfMemory
……おーい。……ぉーぃ、ぉーぃ、ぉーぃ……。
むなしくコダマが響きます……。
……成功していないだろうがっ!
教訓1.Sandcastle Help File Builder は、成功していなくても "Build completed successfully." って表示することがあるので要注意です。何かあやしいと思ったらログを追っかけるべし!
その2.さっきは成功したのに……
え、学習効果がないのは、お前だ、って?……あー、そーかも。
なんかねー、ドキュメントの再生成を繰り返しているうちに、動作が変わるんですよ。で、原因は↑の OutOfMemory だったりして。
で、一度終了させて、もう一度起動しなおすと今度はちゃんと動いたり。
……これって、メモリリーク起こしてないか?とあらぬ疑いをかけてみる。
#自分の期待どおりの動作しなかったら、バグだーと叫ぶ困った人、いますよねー。……はっ、私かっ!?
教訓2.Sandcastle Help File Builder が期待通りの動作をしなかった場合には、一度再起動してみましょう。今度はちゃんと動くかもよ?
その3.お前は何をしてるんだっ!?
え、意味不明なのは(以下略)。……はいはい、どーせそうですよー。
XAML では明示的にクラス定義はしないですよね。だから、".xaml.cs", ".xaml.vb" 側の partial class 側に<sammary>タグでコメントを書いています。
自分では、このやり方で問題ないように思っていたんですが、生成されたドキュメントでクラス名の一覧を見てみると、クラス名がコメントに表示されている……。おーい、自分で記述した方のコメントはどこに行ったんだー?
……と思って、クラスの方のAPIを見てみると、確かに自分が書いたコメントはありましたけど、その他にそのクラス名だけのコメントが1行追加されている……。何だコレ?
で、XAML定義をミスってIDEがエラー吐いたとき、その原因を追っかけてってわかったですよ。XAMLから生成されたC#(VB)のコードに勝手に<sammary>タグが追加されてるっ!
意味のない情報を自動生成すんなー……。
教訓3.XAMLで定義したクラスには、Visual Studioによりクラス名だけの<sammary>タグがつけられたりします。まぁ、そーゆーものなので、気にするのはやめましょう。
では、次回はまた大晦日にお会いしましょう?
2008年10月31日
#
辛い時ほどボケ倒すっ!……でスベってさらに辛くなる、と orz
さて、相も変わらずよくわからない状況にいたりします。
ご無沙汰しております。やまだです。
10月の勉強会は参加できるかなー、とか言いつつ、いざ申し込みというときに既に満員になっていたりで、ご無沙汰状態は続いていたりします。大嘘つきです。
で、会社では立場的な問題から、仕事上でコードを触れる機会も少なくなってきていたりしたわけなのですが、ちょっと触らざるを得ない状況になって……いざ触ってみると、わかっていたつもりでもなかなかコードが書けなかったりで愕然としたり。
これじゃあいかんということで、ちょっと個人的にもプログラミングをしてみようと。
で、始めてみましたWPF。概要は知ってたけど、この際だからいろいろ遊んでみようと。
題材は、これ。
Progect Manager
未だに私が Palm を手放せない理由の一つだったりします。タスク管理ソフトというか、アイデアプロセッサというか、そういうもの。
一応 Windows 版の PDesk というものも存在するけど、そっちは Palm 版とは別物感が漂っているので、やはり Zen of Palm そのままのイメージで実現したいな、と。
定型画面だったら Grid と Viewbox だけあればかなり対応できそうなんですが、表とかリストとか木構造とか動的に生成しようとすると……わからーん!
で、ListView とか TreeView とかと悪戦苦闘しながら、一応なんとなく動いているっぽいものがようやくできてきました。
嬉しいのでスクリーンショットでも挙げておきます。まんま TreeView ですけど……。
#たったこれだけのもの作るのにどれだけはまってるんだとw

#ついでにこのソフト自身で自身のバグ管理もやってみたり。
11月の東京勉強会も難しいかもしれないので、 とりあえず次のターゲットは今週末、大阪勉強会だ!
……狼が来たぞー?