わんくま同盟 名古屋勉強会 #07 に行ってきた

行ってきました。
次とその次も国際センターでやるみたいで、交通費が浮くので助かります!


以下感想を適当に。


しょっぱなからブレーカーが落ちるというハプニングがw
ノート PC といえど、複数台集まるとやっぱりそれなりの電力消費になるんだなぁ。

計測と見積もり

見積もりのためには計測が大事という話(と受け取った)。
ソフトウェアのサイズとして行数を使うためには、

  • 言語
  • ライブラリ
  • 品質

が同じでないといけない、ってのは超同意。
でも、品質を常に均一にするのはほとんど不可能じゃないかなー。
プロジェクト毎に人員がころころ入れ替わったり、たとえ人員が固定だったとしても経験の蓄積*1があったり・・・


メトリクスツールを使えば・・・って意見はあるだろうけど、あんなものはどうとでもごまかしがきくからなぁ。
しかも、メトリクスツールを「ごまかす」方法ってのはたいていバッドノウハウであって、メトリクスツールを使ったのに (実際の) 品質が下がった、なんて本末転倒もいいとこ。
メトリクスツールは使うとしたら、使ってることを知らせずに、レビューとかで指摘を行うって方法がいいのかな。


で、FP*2 だけど・・・あれって「えいや」の要素が入るんじゃなかったっけ。
そんなものが使い物になるとはちょっと思えないんだけど、使ったことないから実際はかなり使えるのかもしれない。
FP 法といってもいくつか方法があるってのは初めて知った。

AutoCAD でユニットテスト

いい意味で期待が外れたセッション。
AutoCAD でユニットテストって、そもそも意味が分からなかったんだけど、AutoCAD のカスタマイズ部分のテストってことらしい。
何でも、AutoCAD をカスタマイズする API には、

  • メニュー
  • Decel 式
  • AutoLISP
  • AutoCAD VBA
  • ObjectARX
  • .NET API

といくつか種類があって、今回紹介があったのはこの中で .NET API を使ったカスタマイズをテストする仕組み。
一番驚いたのは、API が結構きれいだったこと。
なんか最初の方を聞いてただけだと (某表計算ソフトの API みたいに) ぐちゃぐちゃの API なのかな、って印象を受けたんだけど、全然そんなことはなかった。


あと、AutoCAD はお絵かきツールらしい。えらい高価なお絵かきツールだなw

ライトニングトーク

順番は忘れたけど、戦闘機の話と #define の話と・・・やっべ、あと一個忘れてしまった思い出した FP だ。ファイナンシャル・プランニングの方
懇親会含め分かったことだけど、みんな戦闘機について知りすぎw
#define は・・・Boost.Preprocessor 使えばいいと思います!

個人事業主の始め方

えーっと、つまり、パーツ単位でばらして買えば、経費扱いに出来るということ。やったね!自作 PC 万歳!!
あと、コツコツできない人間 *3 には荷が重いということ。


10 万円を超えると固定資産ということは、MSDN とかは固定資産になるのか。
でも更新を考えると、耐用年数が数年あるってわけわかんない。

それっぽくお絵かきする 10 の方法

そろそろ囲碁のセッションがやりたいらしい。
で、10 の方法とあるんだけど、スライドがちゃんと 10 の方法を説明してることに帰ってきてから気づいたw
一言でまとめると、「実物を見て描け」。自分でかなり後悔したらしいです。

0 からわかる F# Part1

OCaml をモチーフにした言語である F# の紹介・・・なんだけど、実際に F# 入れて触ってたのでセッションの内容をあまり覚えてない・・・
とりあえず、リスト内包は HaskellPython のを足して 2 で割った感じ?

// F#
[for x in 1..10 -> x * x];;
// または
[for x in [1..10] -> x * x];;
// どうやら、リスト内包の中では括弧が省略できるってこと?
-- Haskell
[x * x | x <- [1..10]]
# Python
[x * x for x in range(1, 10 + 1)]

手続き型言語的な思考に慣れてる人なら、F# の書き方の方が考えやすいかもしれない。


ちなみに PowerShell だと、

1..10 | % { $_ * $_ }

こんな感じ?リスト内包ではないけど、短い。


あと OCaml と同じく整数と浮動小数点数を直接足したり比較したり出来ないんだけど、演算子浮動小数点数の場合でも「+」を使うみたい*4

Windows Azure を試す?

クラウド、今のところあんま興味ないんだよなー。
とりあえず、blob はバイナリ・ラージ・オブジェクトの略ではないですよ、っと。
まぁ、今はもう blob といえばバイナリ・ラージ・オブジェクトって認識がかなり広まってるっぽいんで、最早覆すのは困難な気はする。

*1:悪いほうも含める

*2:ファンクションポイント法

*3:つまり俺

*4:OCaml では「+.」を使う