5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

【提案】ソースコード量の計測方法【議論】

1 :デフォルトの名無しさん:02/05/24 05:11
ソースコードの量を行数で計るのはおかしい。なぜなら、同じ処理を
関数にせずにコピペしたら量が増える等という欠点があるからだ。
また、実行ファイルの容量で計るのもおかしい。なぜなら、静的リンクを
すると量が増える。いくらコメントを書いてもソースコード量に加算されない
等といった欠点があるからだ。

そこで私はソースコードを圧縮したサイズをソースコード量とする方法を提案する。
これなら、同じ処理をコピペしたりしてもソースコード量に影響が少なく、
より正確な量を測定できると思うがどうだろうか?

2 :デフォルトの名無しさん:02/05/24 05:14
2をゲット〜

するのやめた

3 :デフォルトの名無しさん:02/05/24 05:14
ソースの量を測っても意味が無い

4 :デフォルトの名無しさん:02/05/24 05:18
書けば書くほど使用キャラクタに偏りが出て、不利になっていく

5 :デフォルトの名無しさん:02/05/24 05:22
テンプレート+ポリシーを使って再利用したらどうするんだ?
漏れの場合ソースコードの量は50分の1程度になったぞ

6 :デフォルトの名無しさん:02/05/24 05:46
全く同じ機能を提供するのにソースコード量は
少ないほど良いわけだが。(コメントは除く、コメントは適量が良い)

評価=機能*再利用性/(ソースコード量−コメント量)

機能と再利用性を評価しなきゃならないし

7 :デフォルトの名無しさん:02/05/24 05:51
>>6
割り算かよ(w
書けば書くほど評価が下がっていくな

8 :デフォルトの名無しさん:02/05/24 06:38
>>7
普通そうだと思われ

9 :デフォルトの名無しさん:02/05/24 06:47
>>6
機能に1より大きい指数をつけてほしい
同じ再利用性で
ソースコードを2倍にして機能も2倍になっても評価が変わらないのは痛い

10 :デフォルトの名無しさん:02/05/24 06:59
いや、ダメです。
指数は0.02です

11 :デフォルトの名無しさん:02/05/24 07:00
効率の評価なら、機能2倍でソース2倍なら、評価同じでええんちゃう?
作ったものの大きさの評価なら、機能点だけでいいと思うし。


12 :デフォルトの名無しさん:02/05/24 07:49
>>1
スレ立てる前にソフトウェアメトリクスについて調べて来い

13 :デフォルトの名無しさん:02/05/24 07:50
>>12
もう立てちゃったんで遅いです

14 :仕様書無しさん:02/05/24 08:54
>>13
ここをソフトウェアメトリクス道場にしろよ。
生意気な>>1を鍛えてやる

15 :デフォルトの名無しさん:02/05/24 09:18
量より複雑さだろ。
RUBYで生成できるようなソースコードなんぞ金にならん

16 :デフォルトの名無しさん:02/05/24 09:22
生成、ですか?

17 :デフォルトの名無しさん:02/05/24 10:21
>同じ処理を関数にせずにコピペしたら
こういう事するやつのソース計っても意味ないと思うが

18 :デフォルトの名無しさん:02/05/24 10:46
>>11
機能2倍でソース2倍ということは
仕事として2つ分やったということだから
2倍の評価にするべき

よって、6の式は
評価=機能*機能*再利用性/(ソースコード量−コメント量)
が妥当と思われ

19 :デフォルトの名無しさん:02/05/24 11:21
つか、算数やりなおしれ。

20 :デフォルトの名無しさん:02/05/24 11:54
>>18
そんな懇意的なムツカシイ事しなくても
コメントと空白文字を正規化したソースを
辞書法で圧縮した結果を計れば良いと思う。
(もちろん辞書はプロジェクト単位で共有)
うまく作ればコピペ疑惑の高い部分を色分け表示したりできそう。

あ、良いアイデアかも。作ろうかな。

21 :デフォルトの名無しさん:02/05/24 12:02
「機能が2倍」ってどうやって計測するんだろう…
関数の数を2倍に増やせば「機能が2倍」ってわけでもないだろうに…

22 :デフォルトの名無しさん:02/05/24 12:04
「再利用性」ってどうやって計測するんだろう…
「後で再利用された回数」とかだったら計測可能かもしれないが、
それってソース書いた時点では計測できないよね。

23 :デフォルトの名無しさん:02/05/24 12:08
常識的に、再利用性はコメント量に左右されるよね。
コメント無いソースは基本的に再利用しにくい。

24 :デフォルトの名無しさん:02/05/24 12:11
コメント量に左右される、
でなくて コメント量にも左右される、だな。

25 :デフォルトの名無しさん:02/05/24 12:28
つまりコメントにランダムな文字列を埋め込むのが一番だと

26 :デフォルトの名無しさん:02/05/24 12:33
>>25
常識的に考えて、そんな無駄なことする人はいません。

27 :デフォルトの名無しさん:02/05/24 12:59
タイトルに飾りをつける>>1はDQN
定説です。

28 :デフォルトの名無しさん:02/05/24 13:22
>>20
変数名を変えただけで効力が無くなります
作るコードのスタイルによって圧縮率に個人差が出ます
ツー事で、無意味。
偏りを出したくなければエントロピー圧縮を行うしかない

29 :デフォルトの名無しさん:02/05/24 13:50
つうか測定する必要あるのか?
システムの評価は運用効果によってのみ
評価可能であるって言葉があったような・・・

30 :デフォルトの名無しさん:02/05/24 13:56
クライアントにソースの行数数えられて報酬をわり算される。
いいね、それ

31 :デフォルトの名無しさん:02/05/24 15:37
02/05/24 0 empty.h

ヤッタ、報酬が無限ダ!

32 :デフォルトの名無しさん:02/05/24 15:41
0除算で計測不能だろ…
いつから
無限大=x/0 (0<xのとき)
になったんだ?

33 :デフォルトの名無しさん:02/05/24 15:47
>>32
よく考えろ。
empty.h は機能性0,再利用性0なわけだから
(むしろディスクスペース余計に使うから負値かも)
>>31
無限=x/0(x<=0のとき)
と主張してるわけだ。
多分、無限ってのは無限大とか∞とかとは別の何かだろう。


34 :デフォルトの名無しさん:02/05/24 18:36
つーか、FP法やソフトウェアメトリクスを本当に知らんのか?
車輪の再発明にすら届いてない気がする。

35 :デフォルトの名無しさん:02/05/24 18:47
0/0 == 1じゃねーのかYO!

36 :デフォルトの名無しさん:02/05/24 19:06
0/0 == 1 でいいのか?
本当にいいのか?
多分 x/x == 1 ゆえに 0/0 == 1 なんだろうけど
それだったら同じように 0/x == 0 ゆえに 0/0 == 0 という
主張も出来るね。
それに x/x == 1 も 0/x == 0 も
成立するのは x != 0 の時だけだ。

37 :デフォルトの名無しさん:02/05/24 19:21
>>36
数学的には同じようなこと

38 :デフォルトの名無しさん:02/05/24 19:49
x=>0のとき
(2*x)/x => 0 (藁

39 :デフォルトの名無しさん:02/05/24 20:27
lim(x->0)とx=0は別物でわ?
>33
有る意味、再利用性は∞でわ?

40 :デフォルトの名無しさん:02/05/24 20:56
「再利用性」の定義次第ね。


41 :デフォルトの名無しさん:02/05/24 21:06
以下、「再利用性」とは何なのか、
それを点数化するにはどうすればよいか、
を話し合うスレになりますた。

42 :デフォルトの名無しさん:02/05/25 03:53
>>39
概念で話したとき、結果的に
limit(x->0) 1/x = 1/0 = ∞
だから、同じ「ような」ことって書いた

43 :デフォルトの名無しさん:02/05/25 09:48
数学に文学的表現持ち込むと混乱するだけ。
サイズ 0バイトの empty.h が
limit(x->0)と「同じよう」であることを証明してくれ。
それに式間違ってるよ。
limit(x->0) 1/x = ∞ は正しいけど、
limit(x->0) 1/x = 1/0 と 1/0 = ∞ は両方とも間違い。

44 :デフォルトの名無しさん:02/05/26 02:51
>>43
だから、同じようなって言ってんじゃん。
お前はlimit(x->2) x〜 をいちいち頭ん中に「2に近づくんだから…2 * 〜だ!」って思いうかべるのか?
普通の人間だったら、x = 2 って計算するだろ?

とまあ、そうことです。



ほんとは、

1/0 = ∞

って

0 * ∞ = 1

と言ってるようなもんなので、意味通じないけど。

45 :デフォルトの名無しさん:02/05/29 10:03
再利用性について、以前に思ったことがあるんだが、
再利用の実績と再利用の可能性は分けて考えた方が良いのではないだろうか。

46 :デスマーチ商店:02/05/29 11:24
ソースコード 5000円/10g

47 :デフォルトの名無しさん:02/05/29 15:32
再利用性について、以前に思ったことがあるんだが、
ソースコードの再利用とモジュールの再利用は分けて考えた方が良いのではないだろうか。


48 :デフォルトの名無しさん:02/05/30 00:52
>47
そうやって、いろいろ分けて考えた結果、
どんぶり勘定。

49 :デフォルトの名無しさん:02/05/30 03:36
0/0を無理に仮定すれば
 x = 0/0 → x * 0 = 0
よって x はあらゆる複素数を取り得る
⇒意味ないじゃ〜ん

50 :デフォルトの名無しさん:02/06/01 08:08
全ソースを tar.gzに圧縮した結果サイズ

51 :デフォルトの名無しさん:02/06/01 14:45
これまで作ったなかで最も大きなソースの大きさは?などと馬鹿げた質問を
マネージャーがする時があるが、いつも思うのはこれ聞いてどーすんだ?と
それこそ糞コード10000行と、実はそれが1000行で実現できて、残りはコメンと
で2000行、トータル3000行なので、3000ぐらいですと答えた場合、
あーこいつは大きなソフト組んだことねーなとか思われるんだろうか?(w


52 :デフォルトの名無しさん:02/06/01 15:26
>>51
あるよな。漏れも面接のときに「何ステップくらいのプログラム
書いたことあるの?」って聞かれた。ステップだよステップ。

ただ、面接でこういう行数の問い方をすると効果的だと思うがどうか?
比較的小さなプログラムの要件定義書(実装すべき機能まで落としたもの)を
見せて、「これを君が実装すると何行くらいのコードになる?」
って聞くの。多すぎてもポイ、少なすぎてもポイ。

53 :デフォルトの名無しさん:02/06/01 15:50
漏れも「なんステップくらい?」って聞かれたことある。しかも、何度も。
思わず「ステップってなんですか?」「行数ですか?」って聞き返したよ。
ステップなんて、言語によってぜんぜん違うだろが!

生産量は「ソースファイルのバイト数」でケテーイ。

いじょ

54 :デフォルトの名無しさん:02/06/01 15:52
圧縮後サイズいいな。使い回し的記述は激しく削減されるわけだな。

55 : :02/06/01 15:59
いつのまにか数学板のスレになってたな。


56 : :02/06/01 16:00
つーか、いまどき、ステップとかいってる時点でDQNでしょ。


57 :デフォルトの名無しさん:02/06/01 16:03
なんで、圧縮なんてするんだよ。めんどくさい。
シンプルな方法が一番いいんだって。

圧縮されにくいデータってのは、カオスとか、乱数に近くなるんだぞ。
同じ処理を書いたソースコードでも、
カオスに近づいて、可読性が落ちたほうが生産量が高くなるってのは
納得できましぇーん。


58 :デフォルトの名無しさん:02/06/01 16:04
おめーら馬鹿ばっかしやな。
最新のソフトウェア工学では、ソースを定量的に測定するには、重さをはかるんだよ。


59 :デフォルトの名無しさん:02/06/01 16:06
>>56
じゃぁ、お前はなにを使っているのか言ってみろ。とか言ってみるテスト。

60 :デフォルトの名無しさん:02/06/01 16:07
今判明した。
57は真性のバカだ。

61 :デフォルトの名無しさん:02/06/01 16:09
そもそも行(step)数は話題にもしないなあ。
保守性とか構造とかは議論すれど。

62 :デフォルトの名無しさん:02/06/01 16:11
ブルドッグソースは200gとか?

63 :デフォルトの名無しさん:02/06/01 16:20
>>58
何処が笑えるんだ?


64 :デフォルトの名無しさん:02/06/01 16:27
>63
おもろないか

65 : :02/06/01 16:33
>>59
つーか、ソースコードの量なんて気にしてないとかいってみるテスト。


66 :デフォルトの名無しさん:02/06/01 16:59
ソースの量を計測して何につかうんだ?

67 :デフォルトの名無しさん:02/06/01 20:06
>>51-52
面接でその問いを発したものですが何か?
質はその後の質問&答えで判断するの。
ま、最初の軽いジャブよ。

行数でもステップ数でも他の表現でも、自分が適切だと思う表現で、
プログラムの規模を相手に要領よく伝えられるかもみてるんだよ。
よどみなく答えられりゃ、こいつは要領のいいやつだなって評価になる。
(要領のいいやつを採るか採らないかは、また別の話。要領がいいやつが欲
しいときもあれば要領*だけ*いいやつは欲しくないときもある。)

行数聞いて何の意味があるんですか?ってな顔したやつは、ま、
扱いにくそうだなって評価になる。もちろん扱いにくいからといって
採らないわけじゃない。技術が優秀なやつは扱いにくい傾向が
あるからね。ま、他とのバランスですな。



68 :67:02/06/01 20:17
つづき

>比較的小さなプログラムの要件定義書(実装すべき機能まで落としたもの)を
>見せて、「これを君が実装すると何行くらいのコードになる?」

人それぞれだと思うが、俺が重視してるのは、こいつはどれくらいの複雑さ&
煩雑さを扱えるか?って点。ぐちゃぐちゃのくそみそな状態に直面したとき、
どの程度なら自力で収拾できるかだ。

小さな課題を出して解かせてもねぇ。そんなのだれでも出来るし。そこから
複雑なプロジェクトの対処能力ってのは推測できない。俺はね。

69 :デフォルトの名無しさん:02/06/01 20:26
ソフトウェアの品質や価値を判定する職業があると面白いかも。
かなりの能力が求められそうだけど。如何なものか?



70 :デフォルトの名無しさん:02/06/01 20:32
>>69
アクセンチュアとかがやってたような気が。
技術屋っていうより、困猿さんのお仕事では?
まあ自前で品質測定→分析→改善までできりゃベストではあるけど。

71 :67:02/06/01 20:35
もすこし

だからコメントの比率とか言語による差異なんて、誤差なんだよ。

数千行のプログラムが最大ですってのと数万行のプログラムを組んだことがありますって人と、
数十万行のプロジェクトの中核メンバーとして活動してましたって人は、やっぱりキャパが違う。

大規模なコードを相手にしてれば、どんな設計やコーディングをするとはまるか、がある程度
経験的にわかっているはず、と推測する。もちろんこれだけじゃはずれることもあるから裏づけを
とるための質問をその後する。

コメントがどうの、言語がどうのなんてのは、それこそ枝葉末節の話。

72 :69:02/06/01 20:39
>>70
マイホームを建築するときに、外部の建築士にチェックさせる様な
ものなのでしょうか。コンサルタントにも当たり外れがありそうだけど。


73 :デフォルトの名無しさん:02/06/01 20:44
1は圧縮について少し勘違いをしてるような気がしますが。

74 :デフォルトの名無しさん:02/06/01 20:48
>>72
そういうのもやってますけど、メインはプロジェクトマネージメント業務。
企画立案からカットオーバー後の運用にいたるまでのプロセスを管理する。
(実働部隊は外注さんがほとんど。最近自前でやろうとしてるみたいですが)

困猿の当たり外れっていうと、ほとんどは金で解決できると思いますよ。
悪煎茶の中にも当たり外れがあって、金を積めば「当たり」のチームが来ますね。
ひどいのは本当にひどいらしい(伝聞)。

75 :67:02/06/01 20:48
勘違いしていないと思われ。君がハフマン圧縮しか知らないと思われ。

76 :デフォルトの名無しさん:02/06/01 21:01
俺も面接で行数聞かれたけど、質問した奴が古い人間なんだな、と判断しますた。

77 :デフォルトの名無しさん:02/06/01 21:25
ほんじゃキミの過去の実績をどう聞いて欲しいの?

78 :デフォルトの名無しさん:02/06/01 21:29
好きなプログラミング言語を聞いてみるとか。ダメか。


79 :デフォルトの名無しさん:02/06/01 21:47
もちろんそれも聞くよ。俺は。けど続いてその言語で作ったプログラムは?って
話になるけど。

作ったことがなけりゃどの程度その言語を深く理解しているかを聞く。理解せずに
フィーリングだけで好きだ、とかこれから勉強したいとかは、雑談としてはいいけど
評価しろといわれても困る。好きならすでにある程度勉強しているはずだから。

作ったことがあるなら、どういうプログラムかだね。内容がユニークで一芸に
秀でているなら、そこを重点的に聞く。内容がこれといって面白みがなければ、
やっぱどれくらいの規模のプログラムを作ったかを聞くけどね。

今度から「あなたが手がけたプログラムの規模を、あなたがもっとも適切と
思える表現で説明してください」と聞けばいいのかな。これはこれで面白い。

80 :正しい面接の仕方。:02/06/01 23:01
『Ruby!』 と叫んでみる。
  ↓
『Ruby!』 と答える。
  ↓
          _______
        /::::        ::::::\
       /:::: \、、  , ,/   :::::::ヽ
       |::-=・=-|=  -=・=- |  :::::::ヽ
      |::  //|=  ヽ\ :::|   :::::::|   採用。
      |::   ' .|=      ::|   ::::::::|
       |::::   |=  |   ::::|   ::::::::|
       ヽ:::: ,.|-  .| へ ..:::::::\__ノ
        `/ `|-  |/ /  ::::::::::  ヽ  
         / /|   / /   :::::     | 
        ノノ ゝ ノノ、         |
           \_3

81 :78:02/06/01 23:21
>>79
優秀な面接官だなぁ。ちょっと良い感じ。


82 :79:02/06/02 02:45
>>81
普通だよ。。。面接官をなめすぎ。。。
ほめてもらってこんなレス返すのも心苦しいけど。


83 :デフォルトの名無しさん:02/06/02 11:56
>>67
>質はその後の質問&答えで判断するの。
>ま、最初の軽いジャブよ。

結局、行数(ステップ)と「質」の相関は薄いってことだろ。
何言ってんだ、お前? そんな無意味なジャブいらねーんだよ。

84 :デフォルトの名無しさん:02/06/02 13:16
>>83
質がすべてじゃないからね。

いくら質のいいコードが書けても、小さなプログラムしか書けないなら、
大規模なプロジェクトに入れるわけにはいかない。

大規模なプログラムも高い品質で書けるなら大歓迎。
もちろん小さなプログラムしか書けない人にはそれ向きの仕事が
あるから、そっちに回すというだけだ。

85 :81:02/06/02 13:51
>>82
失礼をば致しました。
自分の周りに「普通の面接官」が見当たらなかったもので...。

86 :83:02/06/02 14:37
>>84
なんか言ってることがハチャメチャになってきてねーか?
まずさぁ、「質のいいコードが書けても、小さなプログラムしか書けない」なんて奴いるのか?
いたとしても、すごく例外的なんじゃないか…。

大きなプログラムを任せるための絶対条件のひとつに「質のいいコードが書けること」があると思う。
大きなプログラムをへたれプログラマにだらだらと糞ソースで作り上げられちゃ困るからな。
君のコード行数を問う行為で、へたれプログラマのだらだらと長い冗長な糞コードと
優秀なプログラマの洗練されたコードとを正しく評価できているとは思えないんだ。

(だらだらと冗長なコードであっても)長いコードが書けるということは、
大規模プロジェクトに参加するだけの資質がある、とか言ってるわけだろ? もう馬鹿かとアホかと。

87 :デフォルトの名無しさん:02/06/02 14:40
>>86
あのね、大規模なプログラム書いたことある?(w
小さいプログラムの延長で巨大なプログラムは作れないのだけど、その辺わかってる?

88 :デフォルトの名無しさん:02/06/02 14:46
>のコード行数を問う行為で、へたれプログラマのだらだらと長い冗長な糞コードと
>優秀なプログラマの洗練されたコードとを正しく評価できているとは思えないんだ。

だから行数と質は別だといってるだろう?質は他のことで評価すると明言してるだろ。
日本語のわからないやつだな。

俺が聞くのはだいたいこんなことだ。

一番規模の大きなプログラムはどれくらいですか。
 つづいてそのプログラムがどんなものかを聞く
一番つくってて面白かったプログラムはなんですか。
 どこら辺に凝ったを聞く・
一番大変だった(以下略)
 どこら辺を苦労したかを聞く。


89 :83:02/06/02 14:46
ちなみに漏れの経験だけど… へたれプログラマ(←漏れが認定)の
書いたプログラムをリファクタリングと称してゼロスクラッチで
書き直すとコード量が 1/10 以下になることもある。
だから、1,000行のコードと 10,000行のコードでプログラム規模が違うとか、
参加したプロジェクトキャリアが違うとか、プロジェクト適正とか
(書いたことのあるコード量だけでは)判断できないんじゃないかってことだ。

本当にコード量ってアテにならないんだぜ?

90 :デフォルトの名無しさん:02/06/02 14:49
その1/10になったコードってのは何行ぐらいなのかよかったら教えてくれないか?
(からかってるわけじゃないけどね)

91 :83:02/06/02 14:49
>>87
>小さいプログラムの延長で巨大なプログラムは作れないのだけど、その辺わかってる?

え? そうなんですか… 知りませんでした。
巨大なプログラムであればあるほど、小さなプログラム(再利用可能部品、機能単位部品)を
組み上げて作るものだと思っていました。巨大なプログラムというものは、
はじめから巨大なプログラムとして書き始められるのですね! …それって保守大変じゃないですか?

92 :83:02/06/02 14:57
>>88
>だから行数と質は別だといってるだろう?質は他のことで評価すると明言してるだろ。
>日本語のわからないやつだな。

いいですかぁ〜? 日本語でもう一度説明するからちゃんと理解してくださいねー。
漏れは >>83 において…
「結局、行数(ステップ)と「質」の相関は薄いってことだろ。
 何言ってんだ、お前? そんな無意味なジャブいらねーんだよ。」と言っております。

質を他の質問で問うているのだし、行数を問うジャブではそもそも質を計れないから
意味がないと言ってるんだよyo!
決して、君が面接官としてヘタレだと言っているわけではなく、後半の質問で 面接者を
評価できているにも関わらず、なんで何の役にも立たない行数を問う無駄な行為を
ジャブと称して行っているのか理解できないだけなんだよ。

分かったかい?

93 :デフォルトの名無しさん:02/06/02 15:00
>>91
>え? そうなんですか… 知りませんでした。

無知だね。そういう点を評価するために聞くんだよ。

>巨大なプログラムであればあるほど、小さなプログラム(再利用可能部品、機能単位部品)を
>組み上げて作るものだと思っていました。

だからその分解能力を見てるんだよ。大きなプログラムを作った経験があれば、
そういったことの難しさやコツをわかっているだろうと、推測する。裏づけは他の
質問で取るけどね。

人員も大規模なプロジェクトでいえば、

もしそういう仕事はSEとかにまかせてPGは言われた部品だけを考えてれば、
プロジェクトが万事スムーズに進むと考えてるなら、そういう人はあまり
大規模なプロジェクトに向かないってこと。

分解された仕様を渡されても、その部品が全体のなかでどう位置づけられてい
るかについて考え、仕様に記されていない部分は補うなり、不備を指摘するなり
が適切なレベルで出来るか否か、が重要。不備を承知で「仕様書にありましたから」
とそのまま実装するようなやつは困るし、必要以上に不備をあげつらってプロジェクト
全体の運営に支障をきたすのも困る。

そういう部分を知りたいの。

94 :83:02/06/02 15:00
>>90
うーん、過去もっとも圧縮率が高かったものというのは覚えていないけど…
最近 5万行を超えるコードが 3,000行弱になったよ。
信じられるかい? 書く人によってここまでコード量に違いが出るのに
それでもあなたはコード量を問いますか?


95 :デフォルトの名無しさん:02/06/02 15:03
>>92

>質を他の質問で問うているのだし、行数を問うジャブではそもそも質を計れないから
>意味がないと言ってるんだよyo!

キミが小さいプログラムを高品質で作れるなら、大規模なプログラムも高品質で
作れると主張していることは>>91でわかった。おれはそう思っていないから、規模と
質を組にして質問しなければ意味がないといっている。

だからこの問題は>>91の話に一本化してよいんじゃない?

96 :83:02/06/02 15:11
>>95
>キミが小さいプログラムを高品質で作れるなら、大規模なプログラムも高品質で
>作れると主張していることは>>91でわかった。

そんなことは言っていないよ。大きなプログラムを書くための絶対条件のひとつに
「質の高いコードが書けること」があるとは言ったけどね。部品を組み立てるには
組み立てるためのインターフェイスを設計しないといけないから、
小さな単体プログラムを作れるだけでは、大きなプログラムを作れるとは限らないよ。

>規模と質を組にして質問しなければ意味がないといっている。

だから君は勘違いをし続けていることになぜ気づかないんだい?
君がジャブと称して問うているのは、あくまでも「コード量」だろ?
それで「規模」を問うている気になっているのが間違いなんだよ。

たとえば、>>94 で漏れが書いた例だけど、君の面接で 漏れの前任者が
「5万行のコードを書いたことがあります」と言ったら、君は 中規模のプログラムが書けると判断し、
漏れが「3千行のコードを書いたことがあります」と言ったら、君は 小規模のプログラムが書けると判断するのか?

97 :デフォルトの名無しさん:02/06/02 15:12
>>94
>最近 5万行を超えるコードが 3,000行弱になったよ。

ほう。面接の場ならそれは話題に出すべきだね。それはそれで評価するよ。

余談だけど、何もコードだけで評価したいわけじゃないから、こういった話題が
面接の場で聞ければ(俺は)うれしい。なるべくそういった話も聞き出すように
こころがけてはいるけれど、別な話で時間を食われて、残り時間があまりなけ
れば、そのまま終わってしまうこともある。

やたらめったら聞きもしない事を一方的にしゃべられても困るけど、もし面接
が終わりの段階に来ても、「ここまでの質問じゃ俺のよさがわからん!」と思うな
ら、積極的に話さないと損だよ。


98 :デフォルトの名無しさん:02/06/02 15:17
>たとえば、>>94 で漏れが書いた例だけど、君の面接で 漏れの前任者が
>「5万行のコードを書いたことがあります」と言ったら、君は 中規模のプログラムが書けると判断し、
>漏れが「3千行のコードを書いたことがあります」と言ったら、君は 小規模のプログラムが書けると判断するのか?

キミが
 5万行のコードではどれくらいの質で書けるか
 3千行のコードならどれくらいの質で書けるか
を見るいってるんだが?5万行も3千行も質だけで評価して欲しいといってるわけ?

99 :デフォルトの名無しさん:02/06/02 15:19
勘違い面接官がいるスレというのはここですか?

100 :デフォルトの名無しさん:02/06/02 15:21
むしろ尤もな事いってる面接官に見えますた。

101 :83:02/06/02 15:25
>>98
>キミが
> 5万行のコードではどれくらいの質で書けるか
> 3千行のコードならどれくらいの質で書けるか
>を見るいってるんだが?

あのぉー。ほんとに呆れてきちゃったんですけど…。あなたが見ようとしているのは
 中規模プログラムではどれくらいの質で書けるか
 小規模プログラムではどれくらいの質で書けるか
じゃないの?
これを問うことができるのなら、それはすばらしく有効な方法だと思うよ。

でもさぁ、コード量を聞いても「小規模」か「中規模」か判断できないでしょ?
だから君の前半の質問は意味がないと言っているのだよ。

102 :デフォルトの名無しさん:02/06/02 15:28
(´-`).。oO (行数とプログラム規模の相関について面接官さんの意見を聞きたいとなァ)

103 :デフォルトの名無しさん:02/06/02 15:31
>君がジャブと称して問うているのは、あくまでも「コード量」だろ?
>それで「規模」を問うている気になっているのが間違いなんだよ。

いいや。別に「何行ですか」の問いに行数じゃなくて別の答えをしてもらわなくても
いいよ。俺は。俺も知りたいのは「規模」だから。規模というより複雑さだ。上の方
でも同じことをいってると思うがね。

だから、もっと適切な表現があるならそれを答えればいい。行数を示した上で
記も独自の表現で規模を説明してもいいし、行数を示すべきじゃないというなら、
それでもいいよ。ちゃんと規模が相手(俺)に伝わるなら。

ま、俺の場合どのみちあれこれ聞くから同じだと思うけどね。当たり前だが
相手の言った行数を鵜呑みにするほど馬鹿じゃない。差しさわりのない範囲で
内容を聞く。例えば画面ばっかりやたら多くて行数が増えるような性質のプログラム
を、そうでないプログラムと同一次元では比較できないからね。

なんにせよ、行数はあげられません。他に適切な表現もできませんというのは、
プラスの評価にはならないだろうね。

104 :デフォルトの名無しさん:02/06/02 15:38
おいおい、結局行数聞いても意味ないってことじゃんかよ

105 :デフォルトの名無しさん:02/06/02 15:39
いいかよく聞け、

「3千行規模のプログラムをメンテナンスしてください」
って言われて、圧縮された5万行のプログラムを渡されたら…




ぶっ殺す!。


106 :83:02/06/02 15:41
>>103
ようするに、規模を知りたいくせに「何行ですか」なんて聞き方をする
とんちんかん面接官ということだね?
面接者にとっても貴重な面接時間なんだからさ、ストレートに
「プログラム規模は?」って聞いてあげれば? その方が言葉で答えやすいよ。

107 :デフォルトの名無しさん:02/06/02 15:46
>「プログラム規模は?」って聞いてあげれば? その方が言葉で答えやすいよ。

キミがそう質問されたときの答えを教えてくれないか。なるほどと思えば参考にするよ。



108 :83:02/06/02 15:47
>>105
そうだなぁ、コードは短ければ短いほど良いなんていう間違った流れになって、
ヘタレプログラマが、コメント削除、トリッキーに行圧縮なんてしていたら、
「ぶっ殺す!」って言いたくなるのも分かるけどね。
漏れがフツーに書き直したら、フツーに 3千行になったんです。
なので、圧縮して 3千行になっているわけではなく、
膨張して 5万行になっていた! というのが正しいところだろう。

109 :83:02/06/02 15:53
>>107
漏れはプログラムだけ書く純粋なプログラマじゃないんで参考にならないと思うけど。
システム規模を答えることは良くあるよ。
「一日の発生トランザクション数ほげほげの夜間更新を〜」とか、
「ピーク時においてクライアント数ほげほげのリクエストを処理できるマルチスレッドサーバを〜」とか
面接担当としても、行数を答えられるよりどんなことができるか把握しやすいようだよ。
(まぁ、勝手に漏れが好感触だと感じているだけかもしれんがね…)

110 :デフォルトの名無しさん:02/06/02 15:55
付け加えれば、アンケート用紙に記入しているわけじゃなくて会話の
中で質問するわけだからね。相手の反応を見て質問を変えたりはする。
クラス数を聞くときもあれば実行プログラムのサイズを聞くときもある。
開発期間やプロジェクトに参加した人数も聞く。官庁がらみのプロジェクト
だとドキュメントの比重が無視できないから、それも聞く。

相手の反応を見てさらに質問をつづけていくわけだから、その中の
ひとつの質問に妙に反応して、以後の質問に支障をきたすのはお互い
損だと思うけどね。


111 :デフォルトの名無しさん:02/06/02 15:57
>>109
あぁ、そういう分野では当然そういう質問もするよ。

112 :デフォルトの名無しさん:02/06/02 15:59
しかしまあ、このスレのタイトルからすると…

113 :デフォルトの名無しさん:02/06/02 16:03
(´-`).。oO (結局 素のソースコード行数に意味はあるのかなぁ)

114 :デフォルトの名無しさん:02/06/02 16:08
実行ファイルのバイト数
ひく
フレームワークが吐く、はじめの状態でのバイト数
いこーる
追加分(バイト)

115 :デフォルトの名無しさん:02/06/02 16:13
>>113
行数に意味があるか?とこだわっている人が行数を必要以上に重視している
と誤解してるんだよ。

規模なんてものは一言二言じゃ表せないから、いろんなことを聞き、いろんなことを
答えてもらう。逆に聞きたいんだけど、その中の質問の一つに行数があることにそん
なにこだわる意味があるのかねぇ。そんなに行数が大事なの?(w

行数を聞かれたとたん「この人はプログラムのことを何もわかってない頭の固い
人間だ」と思い込んで、あなどった応答をしたら損だと思うけどね。もちろん面接で
行数しか聞かれなかったとかいうなら、怒っていいけどね。(w


116 :デフォルトの名無しさん:02/06/02 16:21
>>115
行数に意味があるかどうかだな。素人の方が行数が極端に増える傾向がある場合、
行数を聞くのはまったく役に立たないかもしれない。とすれば、たとえ質問のひとつだとしても
そんな無意味な質問をする奴 = プログラムのことを何もわかってない頭の固い人間 と判断することも
あながち間違いとは言えなくなってくるだろう。これはあくまでも「行数に意味がない」という前提の話だけど。

117 :105:02/06/02 16:24
>>108,83
>膨張して 5万行になっていた! というのが正しいところだろう。

そうじゃねーよ。

5万行は5万行なんだよ。
質がどうとか書き方がどうのという問題じゃない。
5万行のコードをメンテして、最終的に3千行になったから、
「あなたの仕事量は3千行分ね」なんて、いわねーだろ、ふつー。

118 :デフォルトの名無しさん:02/06/02 16:27
>>116
面接のとき無意味に近い質問はいろいろするよ。履歴書にも趣味とかのらんがあるだろ?
それが相手を知る会話の発端になる程度には意味がある。行数もその類だ。だから最初の
ジャブだといったろ?

119 :デフォルトの名無しさん:02/06/02 16:30
>>115
ん? 「行数しか聞かれなかったなら怒っていい」んだ。
それってつまり、「行数だけ聞いても意味がない」と受け取っていいのかな。
逆説的に「行数と○○を聞くことで意味を持つ」ということ?

○○ってなんだろう? 今までに経験したプロジェクト規模? 経験年数?
いろいろ考えられるけど、それらって行数と併せないと意味を持たないのかな?
○○を聞くだけでいいんじゃないだろうか?
やっぱり質問のひとつに行数がある意図は不明確だと思うけど。

120 :83:02/06/02 16:33
>>117
いや、そもそも漏れは「仕事量○行分ね」なんて言わないから。
5万行分とも3千行分とも言わない。君、何が言いたいのか良く分からんよ?

121 :デフォルトの名無しさん:02/06/02 16:36
横から失礼します。機会がなく、殆んど規模の大きいものは書いた事が
ないのですが、そういう人はどのように評価されるのでしょうか?
小規模なものなら、ある程度の質のものを数日で書く自信があります。
環境やその人の「規模」の定義にもよると思いますけど。


122 :デフォルトの名無しさん:02/06/02 16:38
(´-`).。oO (面接官さんの行数は雑談なんだ… このスレの趣旨とは関係ないってことか)

123 :デフォルトの名無しさん:02/06/02 16:38
>>119
何度も同じようなことを説明している気がするが、プログラムの
内容を差しさわりのない範囲で聞く。そのあとの質問はプログラム
の性質によって異なる。

124 :デフォルトの名無しさん:02/06/02 16:42
>>119
あほだ。。。で、キミはどう質問して欲しいんだ?


125 :デフォルトの名無しさん:02/06/02 16:43
長いプログラムも書けないヒッキーがよってたかって面接官いぢめてんじゃねーよ。

126 :デフォルトの名無しさん:02/06/02 16:43
>>122
面接なんて所詮雑談だよ。

127 :デフォルトの名無しさん:02/06/02 16:46
>>125
いじめていいよ。参考にするから。
けど同じような発言ばかりでちょっと飽きてきた。


128 :デフォルトの名無しさん:02/06/02 16:46
>>119
行数はただの雑談なんだよ 意味ねーって本人が言ってるじゃねーか
かわいそうだからもうツッコムなよ

129 :デフォルトの名無しさん:02/06/02 16:49
面接官っつうのも面接ばっかやっててアタマ逝かれちまうんだろうな
よくわかたーよ

130 :デフォルトの名無しさん:02/06/02 16:49
行数=履歴書の趣味欄age

131 :デフォルトの名無しさん:02/06/02 16:50
>>121
面白い。彼の「面接」をみんなでして見てよ。
俺がすると出だしが「小規模とはどれくらいの行数ですか」なんて質問になりそうだから。

132 :デフォルトの名無しさん:02/06/02 16:51
やっとまともな流れになったのか。
「121さん、小規模とはどれくらいの行数ですか?」

133 :デフォルトの名無しさん:02/06/02 16:52
だいたい50〜200行程度です

134 :131:02/06/02 16:53
>>132
行数は意味ないから聞かないんじゃなかったのか?

135 :デフォルトの名無しさん:02/06/02 16:53
>>133
ネタ?なんじゃいそりゃ。

136 :デフォルトの名無しさん:02/06/02 16:54
>>133
ちいさっ

137 :デフォルトの名無しさん:02/06/02 16:55
ここにいる連中は人事決定権もってない奴ばかりだと思うけどさ、
最終的に 121を同僚として向かえて良いかどうかで、
「採用」「不採用」を出すってのどう? >>121 自身が了解したらだけどさ。

138 :デフォルトの名無しさん:02/06/02 16:56
「その50行のプログラムを貼り付けてください。」

139 :デフォルトの名無しさん:02/06/02 16:58
今から作るので数日待ってください。


140 :121:02/06/02 16:58
>>137
是非お願いします。正直、自分がどのように評価されるのか検討が
全くつかないんです。今後の参考にしたいと思います。

>>132
今さっき wc コマンドで調べたら、920 行程度でした。
行数を数えたのははじめてなので、これが何を意味するのかは
わかりません。使用した言語は Perl です。


141 :デフォルトの名無しさん:02/06/02 16:58
ネタくせ〜

142 :デフォルトの名無しさん:02/06/02 17:00
920行って・・・
アプリケーションとしてはSmallじゃなくてMinimumに属する部類だろ。
そんな経験普通役に立たない。
web系ではどうなるか分からないが。

143 :121:02/06/02 17:04
>>142
なるほど。やはりそう取られると思いました。
しかし、行数が多くなってしまう方が問題あるんじゃないですか?


144 :83:02/06/02 17:05
900行って中身にもよるけど、中規模と言えることも多いと思うよ。
中には書き捨てプログラムに 900行費やす奴もいるけどね。
121は次からトリップ付けてよ。

145 :デフォルトの名無しさん:02/06/02 17:06
>>143
実現する規模が同じならね。
その920はどんなことをするもの?

146 :デフォルトの名無しさん:02/06/02 17:08
Perlは特にコード量にばらつきが出やすいからね。
ほんと行数では規模分からんと思うよ。
「それはどういったプログラムなの?」

147 :デフォルトの名無しさん:02/06/02 17:11
>>142
まあperlで1000行ってのは、それほど変じゃないと思うけど。

どんなプログラムなんでしょ。cgi系?それとも小さなツール?
cgiであればデータベースとかの経験は?
いちばん複雑だと思ったプログラムの内容とその行数&製作日数は?
他の言語の経験は?

できると思う分野、やりたい分野?
多人数で仕事をした経験はある?その時の人数は?

顧客仕様の打ち合わせとかの経験は?


148 :デフォルトの名無しさん:02/06/02 17:12
おーい。今まで行数は無意味だとかいってたのに、急に行数の話になるんだよ(w

149 :142:02/06/02 17:14
perlはよくしらんのでああ書いたが。
普通C++やJavaなんかで書くプログラムで1000〜1500行程度の物は
アプリケーションと呼ぶのもおこがましいツールでしか無いと思うよ。
どんなに優れたコードであってもね。

150 :デフォルトの名無しさん:02/06/02 17:15
>>148
ある程度の規模になると行数はほんとに無意味だが、
さすがに1000行とかだとお話にならないレベル。

151 :デフォルトの名無しさん:02/06/02 17:16
どんな仕様なのか、誰も聞かないのかw

152 :デフォルトの名無しさん:02/06/02 17:21
>>150
なんか都合がいいねぇ。100万行とかを常時相手にしているもんからみると、
1000行と10000行も目くそ鼻くそだね。

と、俺が言ったらキミはどう反論する?


153 :デフォルトの名無しさん:02/06/02 17:23
>>152
個人で書くコードの話なんだが?
個人で100万行書いたらあなたを尊敬します、マジで。
漏れは今現在メンテしてるソースで7万行程度。

154 : ◆sr/RoVZg :02/06/02 17:26
121 です。トリップを使うのは始めてです。

>>147
ツリー型掲示板プログラムです。最初は友人達とメーリングリストを使って
情報交換をしたかったのですが、環境による制約から CGI スクリプトで
それを作成することにしました。最初は Lisp で書こうと思っていたの
ですが、インタプリタが用意されていないので Perl を使いました。
本当は RDBMS を使いたかったのですが、これも環境による制限から
ファイルベースの DBM を使いました。

プログラムを書く前に複雑な問題は可能な限り紙の上で解消しておくので、
実際にコーディングするときに複雑だと思った事はあまりありません。
使用できる言語は Scheme, Common Lisp, C, Perl, Python です。

やりたい分野は、複数人作業における複雑な作業を抜本的に改良する
ようなものです。最近良いと思ったのは CVS です。
他人数で仕事をした事はありません。3 人が最高です。


155 :デフォルトの名無しさん:02/06/02 17:26
つうか、920行でも7万行でも100行でもなんでもいいからさ、
どんなプログラムを作ってるのか、概要ぐらい書けよ。

156 :デフォルトの名無しさん:02/06/02 17:27
採用!

157 :デフォルトの名無しさん:02/06/02 17:32
>>153
頭よくないね。プロジェクトの規模が重要なの。もちろんその中で
自分がどれくらいの位置を占めているかも重要だがね。
それがわからないから、行数の話でかみ合わないのかね。

158 :デフォルトの名無しさん :02/06/02 17:36
モンテカルロ法で計算できそうな気がする。


とかいってみる。

159 :83:02/06/02 17:41
うーん、漏れはまだ「採用」だせないなぁ。
良い点
・プログラムスキルだけでなくCVSなどのバージョン管理についても理解がある
・掲示板のバックエンドにRDBMSを採用しようとした判断(結果としてDBMだけど)
悪い点
・経験プログラムの偏り。
・GUIプログラミングに関するスキルが不明

「それだけの言語経験がありながら、メジャーと言われる
 C++/Javaのいずれにもやらなかったもしくは興味を持たなかった理由ってありますか?」

「UnixプラットフォームでもGUIの重要性が高まってきています。
 Tk/Qt/Gtk などの経験はありませんか?」

160 :デフォルトの名無しさん:02/06/02 17:46
>>154
>使用できる言語は Scheme, Common Lisp, C, Perl, Python です。

ほほぅ。なかなかユニークだね。この辺ってなんか語ることある?
言語自体をあれこれいじって楽しんだ/研究したとか?

>やりたい分野は、複数人作業における複雑な作業を抜本的に改良する
>ようなものです。

それはとりあえず企業が自分で使うためのもの、と受け取ってよいの?
それともそういう製品の開発に携わりたいとか?

bugzillaとかのバグトラッキングシステムなどは興味ある/ない。

プログラムを作りたいのか、それのこだわらず開発支援の環境を
構築することに興味があるのか?たとえば市販のツールを組み合わせて
同じことをするというのも射程距離なのか?また、支援ツールの
開発をしたいのか、支援環境の維持管理も含まれるのか?

ISOうんちゃらやCMMなどについて、興味ある・ない?肯定的・否定的?



161 : ◆sr/RoVZg :02/06/02 17:47
121 です。

>>159
普段使用している環境が GNU/Linux なせいもあると思いますが、あまり
C++ の必要性を感じた事がありません。以前、多様性が便利かどうか
試してみたいことがあったのですが、C で実装して終ってしまいました。
Java についてですが、文法は理解できます。Java に手を出したことも
ありましたが、その時点で必要性が感じられなかったので十分には
学習しませんでした。環境において必要とあらば、C++ でも Java でも
再学習しようと思います。

GUI ですが、GTK+ なら使えます。マニュアルをみながらですけど。


162 :デフォルトの名無しさん:02/06/02 17:53
個人的には DBをバックエンドに使う理由がよくわからん。
要求される信頼性と導入コスト・作業量との兼ね合いを
どの程度考えて「本当は RDBMS を使いたかった」と
言っているんだろうかとオモタ。

・・・あと RDBMSって言うよりは、製品名も出しておこうよ。

個人的には、もう少し聞きたいね。
・SQLは打てる?
・ER図は書ける?
・テーブル数とかの規模は?
・導入(環境設定)と運用(リカバリ・ログ管理)の作業はできるの?

163 :83:02/06/02 17:56
お,Debian使いか? 律儀にちゃんとGNUっと前置してるし。

「結局、Cで実装したということですが…
 多様性のメリットが理解できなかったということでしょうか?
 それとも(書き捨てプログラムなど)場合によっては Cの方が
 メリットがあると判断した結果でしょうか?」


164 : ◆sr/RoVZg :02/06/02 17:56
>>160

> ほほぅ。なかなかユニークだね。この辺ってなんか語ることある?
> 言語自体をあれこれいじって楽しんだ/研究したとか?

学習した順序は Perl, C, Common Lisp, Scheme, Python です。
自分はずっと、エラー処理をいかに扱うかについて悩んできました。
関数の返り値を毎回チェックするのが、何か間違いであるかのように
思えていたのです。Scheme の継続を理解してから、例外処理を意識
するようになりました。例外処理が outgoing-only な継続である事に
気が付いてから、エラー処理が楽しくなりました。

言語自体で楽しかった (し、為になった) のは Lisp におけるマクロです。
この概念は C を使うときでも多いに活用させてもらってます。

> それはとりあえず企業が自分で使うためのもの、と受け取ってよいの?
> それともそういう製品の開発に携わりたいとか?

これは両方ですね。企業が自分のために使うものでもあり、自分のために
作るものでもあると思ってます。

バグトラッキングシステムは利用したことがない (大規模なプログラムを
作成したことがないので、大量のバグも発生しない) ので、まだ
わかりません。必要になったら探索してみようとは思います。

最後の質問ですが、標準規格のような類でしょうか?


165 :83:02/06/02 18:01
>>162
だって掲示板だよ。にちゃんねるの現状, TBCの情報流出などを見ても
RDBMSにしておくのはベターチョイスだと思う。
121の傾向を見るとDBにはPostgreSQLを選択してきそうだから、
導入コストも低いと思う。(DBMと変わらんだろ)

166 :83:02/06/02 18:05
121の面接やってると、ソースコード量の計測方法と
全然関係ない方向に言ってしまうな。
別スレ立てたらどうだ? >>121

167 :デフォルトの名無しさん:02/06/02 18:07
このスレはマ板向き

168 :デフォルトの名無しさん:02/06/02 18:09
>>166
いいんじゃない?2chのスレなんてこんなもんだよ。

169 : ◆sr/RoVZg :02/06/02 18:13
121 です。複数の面接官に興味をもって頂いて光栄です。

>>162
どの程度のレベルを「打てる」というのか分かりませんが、とりあえず
思い付くようなものは問題なく打てると思います。あとは本を読むので。
ER 図ってのは始めて聞く単語です。
テーブル数は場合によりけりでしょうか。数は結果論だと思います。
導入、運用、管理はできます。サーバ管理者をやっていた経験もあります。

>>163
多様性は便利だと思います。すでに Lisp を習得していたので、無意識の
うちに多様性の恩恵にあずかっているんでしょう。C で書くと、他の言語
の処理系からでもある程度リンクしやすいので、将来的には利点があると
思います。GTK+ なんかがその例ではないでしょうか。


170 :デフォルトの名無しさん:02/06/02 18:13
>>165
>にちゃんねるの現状
鯖落ちとかパフォーマンス問題を指してるのね?

言っておくけど、ファイルベースのものを単にDBに置き換えたからといって、
パフォーマンスがファイルのときより改善されるとは限らないからね。
インデックスの貼り方一つで、パフォーマンスが数倍〜数十倍変わるし。
その辺のチューニングは121は習熟しているんだろうか?

>TBCの情報流出
sa/パス無し とか system/manager のまま運用するような愚かな真似をすれば、
DBでも十分問題がおきそうな気がします。
ファイルベースでも Grant/Deny をきちんと設定すれば、問題ないと思います。

>導入コストも低い
一人でやるならともかく、複数人の作業でDBを使うアーキテクチャを組むと、
スキルのある人員の確保とかで苦労が増えるかもしれません。
まぁこれはDB接続とかのコアな部分をコンポーネント化して隠蔽すれば良いのでしょうけど。
コーディング量は確実に増えますでしょうから、その辺の部分も含めたコストを121は
どの程度考えてるんでしょうか?

171 :83:02/06/02 18:30
>>170
別にパフォーマンスだけの話じゃないけどさ、同時アクセス、排他制御、シリアライズといった
恩恵を DB 使えば簡単に得られるのに、自分で実装するのって馬鹿らしくない?
それに、dat落ちってなんだよ。DBにしておけば…。

それと最近DBのチューニングヲタが多いんだけどさ、チューニングがあまり有効にならない分野ってのも
多いんだよ。DWHとかな。全トランの 1/10以上のレコードを取り出して集計しないといけないとかね。

管理者ロールにパスワード設定するのは当たり前。この前 SQL Server の sa/ノンパス に
ついて「セキュリティホール」なんて報じているメディアもあったけどね。

DBの導入コスト、ファイルシステムを使用して排他制御するのと天秤にかけたら…
漏れは DBの方が開発コストを抑えることができると思う。

172 :デフォルトの名無しさん:02/06/02 18:31
>>169
業務でDBが絡むと、ER図(EntityRelationDiagram)は
結構使われてると思いますんで、早速ぐーぐって勉強することをお勧めします。

>サーバ管理者をやっていた経験もあります。
もーちょっと具体的に。

・いつからいつまで?
・どこで?(ex.「中堅流通業のIS部門で」)
・誰と?(ex.「運用チームは5人、自分はサブリーダで2人面倒見てました」)
・何を?(ex.「NT4.0ドメイン・ファイルサーバの管理とFreeBSDベースのWebサーバの設定・管理」)

173 :デフォルトの名無しさん:02/06/02 18:45
>学習した順序は Perl, C, Common Lisp, Scheme, Python です。
>自分はずっと、エラー処理をいかに扱うかについて悩んできました。
>関数の返り値を毎回チェックするのが、何か間違いであるかのように
>思えていたのです。Scheme の継続を理解してから、例外処理を意識
>するようになりました。例外処理が outgoing-only な継続である事に
>気が付いてから、エラー処理が楽しくなりました。

なるほど。一緒に仕事すると楽しそうだね。ところでやぼなこと聞くけど。
約1000行が最大というのだから、エラー処理に関する経験もその中での
ことと思っていいんだね。

>これは両方ですね。企業が自分のために使うものでもあり、自分のために
>作るものでもあると思ってます。

それはそうなんだけど、小規模な会社だとそういった部分に金をかけられない。
キミが就職しても片手間にやれれば御の字だと思う。

大規模な会社の場合開発支援の部署は開発とは別にある。外販する製品を
開発する部署もまた別。開発支援の部署に入ればひがなそれをやることになる。

製品を開発しながら自分の開発に役立つツールを部署内で作るというのも
あるけれど、あまり比重をかけられないのが普通。それを望むとなると、
かなり会社を選ぶ必要があると思う。例えば基礎研究部門とかのように
比較的自由度が効くようなね。ただ当然そういったところは誰でも歓迎って
わけじゃない。

シビアなことをいえば開発と開発支援の整備を両方とも目いっぱいってのは、
あまり期待しない方がいいと思う。(あくまで一般論だよ。)

>バグトラッキングシステムは利用したことがない (大規模なプログラムを
>作成したことがないので、大量のバグも発生しない) ので、まだ
>わかりません。必要になったら探索してみようとは思います。

なるほど。

>最後の質問ですが、標準規格のような類でしょうか?

検索すればでてくるよ。開発支援部署を希望するなら、そういったことに
興味を持つのもよいと思う(そうの上で否定するなり肯定するなり)。
業務フローを整備し、それを支援する社内情報システムを作るとか。

けどキミはきっと開発の方をやりたいんだよね。



174 : ◆sr/RoVZg :02/06/02 18:51
121 です。晩飯を食べてきました。
このままいくとキリがないので、時間的な区切りをつけませんか?
たとえば最大でも 200 とか。その時点で判定を下して頂ければと思います。

>>170
DBMS の本質はプログラムからデータの物理的な表現を切り離すことに
あるので、理想的には DBMS は指数単位のクエリにも耐えられるものと
仮定してプログラム設計を行うべきだと思います。現実はそうでは
ないので、ある程度は考慮しますが。チューニングについてはサッパリ
です。「遅いかな?」と感じたり、どう考えても実行効率が悪い様な
場合のみ本でも読んで解決しようというスタンスです。
あとは実際に速度を計測します。

>>172
ER 図の説明、ありがとうございます。早速調べてみようと思います。
「サーバ管理」というのは大袈裟な表現だったかもしれません。実際には
個人でサーバを立ててメールや Web 等を利用しようといった具合です。
・開始と終了年月日は忘れました。大体 1 年半くらいやってました。
・個人でやってました。
・ひとりでやってました。友人のサーバ管理を補助していたこともあります。
・GNU/Linux で、Web、メール、DNS、あとはログインもさせていました。


175 : ◆sr/RoVZg :02/06/02 19:00
121 です。

>>173
1000 行が最大ではありませんよ。最近に作った小規模なものがその行数
だったということです。一番 (自分の作ったものの中で) 大きいのは
多分 GUI フロントエンドの付いたLisp インタプリタですが、手元に
ないので行数は数えられません。

>シビアなことをいえば開発と開発支援の整備を両方とも目いっぱいってのは、
> あまり期待しない方がいいと思う。(あくまで一般論だよ。)

やっぱりそうですか。自分のやりたいのは開発なので、支援プログラムには
時間を割り当てられなくなってしまいそうですね。


176 :162・172:02/06/02 19:22
最後の質問。
「デスマーチ」について、君の思うことを書いてみて。

>やりたい分野は、複数人作業における複雑な作業を抜本的に改良する
>ようなものです。

これと絡めてね。


----
技術的素養は十分あると思うよ。技術者としてなら採用したいと思う。

177 :83:02/06/02 20:20
採用。
現場の人間として面接に参加している人の多くは「採用」するんじゃないかな。
ただ、大手のように年寄りが余生を過ごすためにやるような人事部だけの面接だと
どうかなー、むずかしいかもしれないね。
君の偏りがあって誰でもピクっとくるキーワードがあまりないんだよね。
C++/Javaを触ったけど当時必要性を感じなかった、必要あればやる。というのも
現場の人間はプログラマにとってもっとも大事な要素が「自分でものごとを調べる能力」だと
知っているから君を評価できるけど。C++/Javaに挫折したと受け取る素人もいるし。
「必要があれば調べる(能力が私にはあります)」というのも「今後がんばります」という
精神論にしか聞こえない素人もいる。

極端な例だけどさ…
「PerlでCGI…ふーんアクセスカウンターとか作れる人か… (いらないや)」
「C++/Javaは… 挫折したのか… (いらないや)」
「本読んでがんばる? やる気だけじゃーなー (いらないや)」

面接攻略という面から見れば、もっとウケるキーワードを用意するとか、
調べればできるといった言い回しはやめたほうがいいかもしれない。

178 : ◆sr/RoVZg :02/06/02 20:33
121 です。

>>176
デスマーチの主な原因のひとつに、「曖昧さ」にあると思います。
ドキュメントに使用する文字、日付のフォーマット、決断の権限などを
明確にすることによって、かなりオーバーヘッドが軽減されると思います。

あとは無駄な装飾に拘らない事が重要だと思います。
お客さんに提出する文書は LaTeX で整形して、あとは全て plain text が
良いと思います。そうすればメーリングリストやツリー型掲示板で
議論の流れを明確にして、途中参加の人もある程度の速度を以てプロジェクト
の一員になることができると思います。バージョン管理も重要ですね。

何かというと、密接なコミュニケーションが最も重要なんだと思います。
あとはプロジェクトリーダーとして、高給取りで百戦錬磨のハッカーがいると
最高です。

新卒で今年の春から働きだしたもので、この程度しか答られませんが。

>>177
やった。ありがとうございます。
あまり自分は得意ではないのですが、おっしゃる通りキーワードを並べると
効果的かもしれませんね。周りの人があまりにも「キーワードは○○」
みたいな口調で話しているので、何だかなぁと思っていた所なんですよ。


179 :162・172・176:02/06/02 21:13
>>178 サンクス!
>何かというと、密接なコミュニケーションが最も重要なんだと思います。
>あとはプロジェクトリーダーとして、高給取りで百戦錬磨のハッカーがいると
>最高です。
この辺はちと夢見すぎのような気もするけど(というか、少し短絡的のような…)。

「密接なコミュニケーション」が具体的に何を意味するのかとか、
曖昧な仕様の検出と明確化への具体的なプロセスをどうするかとか、
その辺を実務で覚えていくといいと思う。

あと、ちと技術的なアプローチに偏ってると思うよ。
プロジェクト参加者のモチベーションとか、顧客・自社・協力会社間の政治的なものが
最終成果物に影響しないってのは、少数だと思うんで、本気で首突っ込むならば
その辺でのリーダーシップを執るための手腕も磨いてほしい。こういう問題は避けないでね。

>途中参加の人もある程度の速度を以てプロジェクト
>の一員になることができると思います。
ここをちゃんと考えてるのはいいね。こういう気配りを一つ一つ積み重ねて、いずれは
プロジェクトの初期から携われるぐらいの力を持ってると思うよ。

とりあえず俺なら、デカ目のプロジェクト(100人月以上)にPGとして参加させてみたい。採用っ!

180 :デフォルトの名無しさん:02/06/02 21:16
>>175
>1000 行が最大ではありませんよ。最近に作った小規模なものがその行数
>だったということです。一番 (自分の作ったものの中で) 大きいのは
>多分 GUI フロントエンドの付いたLisp インタプリタですが、手元に
>ないので行数は数えられません。

それを先にいってよ。(笑
雑談だけどLispインタプリタはどの言語で書いたの?

>新卒で今年の春から働きだしたもので、この程度しか答られませんが。

ほお新卒か。技術的はなかなかのもんだね。少なくと職を選ばなきゃ仕事にあぶれる
ことないと思う。

けど、キミは何がやりたいかだね。例えば言語をいじったりツールを作って飯
を食えるのは相当なレベルである必要がある。俺の会社にも研究部門はあるが、
いいたかないが学歴も、院卒の新卒か第二新卒が前提。それ以外採らないわけ
じゃないが、それを補ってあまりある相当な資質が必要。Lispインタプリタ云々は
微妙な線だ。

一方そうでない場合は受託か製品開発をやってもらうことになると思う。

perlにこだわるというなら、はっきりいって小規模なWeb作成の受託とか
だと思うけど、それでよいの?あるいは社内のサーバー管理者とか?
なんとなくそれにはもったいない気がする。

言語をこんだけいじっているなら、他の言語に乗り換えてもやっていける
と思うけど、その場合どんな仕事をしたいかになる。優秀そうだから
技術だけ見て採用不採用を決めるなら、採用ってことになる。

けど入ってもキミが不本意と思う仕事しかさせてあげられなければ結局また
転職ってことになって、うちの会社もキミも損だから。
そして、必ず実際の面接で聞かれると思うけど、転職を考えた理由。


181 :例の部外者:02/06/02 21:37
#何気に、自分の事を書かれているかのような、親近感の涌く良スレですね

182 :デフォルトの名無しさん:02/06/02 21:43
>>177
>極端な例だけどさ…
>「PerlでCGI…ふーんアクセスカウンターとか作れる人か… (いらないや)」
>「C++/Javaは… 挫折したのか… (いらないや)」
>「本読んでがんばる? やる気だけじゃーなー (いらないや)」

>面接攻略という面から見れば、もっとウケるキーワードを用意するとか、
>調べればできるといった言い回しはやめたほうがいいかもしれない。

初めて意見が合ったね。
面接する方も優秀なやつを取り逃がさないように努力はする。
しかし結局会話に上らなかったことは知りようがないのだから、
>>121の発言のように妙に控えめなのは、困る。根掘り葉掘り
聞いてくと、なんだ結構面白いやつじゃないか、って話になっても
そこまでで時間切れになって詳しく聞けないこともある。

そうするとどうやっても大味な評価になってしまうからね。
聞いて欲しいことはそっちからヒントを出してくれないと。


183 :デフォルトの名無しさん:02/06/02 21:45
(´-`).。oO(自分で説明する程度の実績しか無いうちは、贅沢言うなってこった)

184 :デフォルトの名無しさん:02/06/02 21:54
新卒(および第2新卒)と中途採用は判断基準が違うからね。
実績の方が確実だが、新卒に実績をっていっても仕方ないから。

185 :デフォルトの名無しさん:02/06/02 21:55
なんでもいいけど、どう考えても板違いだよな

186 :デフォルトの名無しさん:02/06/02 22:01
なんで?

187 : ◆sr/RoVZg :02/06/02 22:04
121 です。

>>180
> それを先にいってよ。(笑
> 雑談だけどLispインタプリタはどの言語で書いたの?

動くことには動いたのですが、明確なゴールが無かったため挫折してしまい
ました。納得のいく品ではなかったので、人に話すつもりはなかったん
ですよ。言語は C です。

始めてプログラムを作成した頃は、周りの友人 (非プログラマ) の意見を
反映できるようなプログラム作りを目指していました。しかし文献を読ん
だりしていくうちに、だんだん技術に偏った考え方をするようになって
しまいました。これが本末転倒であることは十分にわかっています。
もう少し腕を磨いてから、もう少し腕を磨いてから... という無限ループ
に陥っている状態です。目標を再確認することが、当面の目標です。

>>182
以前は面接でかなりアピールする方だったのですが、(自分でいうのも
なんですが) 次第に謙虚になって、現在のようになってしまいました。
これじゃダメですね。


188 :デフォルトの名無しさん:02/06/02 22:15
マ板があるから。

189 :デフォルトの名無しさん:02/06/02 22:21
>以前は面接でかなりアピールする方だったのですが、(自分でいうのも
>なんですが) 次第に謙虚になって、現在のようになってしまいました。

りきんで伝える必要はないけど、(淡々とでも)伝える必要はある。
俺の場合は淡々と説明してくれていいけど、相手による。

>動くことには動いたのですが、明確なゴールが無かったため挫折してしまい
>ました。納得のいく品ではなかったので、人に話すつもりはなかったん
>ですよ。言語は C です。

Lispインタプリタを書いたというなら評価の対象になる。1000行のperlのcgi
よりもその価値が小さいとは思えない。それをいうつもりがないというのは、
それを一切評価して欲しくないといってるに等しい。


190 :デフォルトの名無しさん:02/06/03 01:14
ここで前に出てきた自称面接間はなんだかいろいろいってたけど、
彼のところはどうかしらんが、、、
たいてい面接官ってちゃんとプログラムすら書いたことないやつが平気で
君?難行ぐらいかいたことある?なんて聴いて、その行数でそいつの経験血
を推定しちゃってる企業は事実として、割りと多い。
またソフトウェアマネジメントにしても、ソフトウェア組んだことない奴(例えば
ハード屋出身のマネージャが時代の趨勢で最近ソフトも面倒みなきゃらんので)
が人を取るために、なくなく面接官やってたりする。


191 :デフォルトの名無しさん:02/06/03 01:21
>>190
そういう面接官の場合、行数を聞こうが他の何を聞こうが、おんなじだろ?


192 :デフォルトの名無しさん:02/06/03 01:23
もしそういう面接官でもこれを聞けば相手の能力がたちどころにわかるってもんが
あるならぜひ知りたいね。

193 :デフォルトの名無しさん:02/06/03 12:36
>>192
面接日が決定してから、面接までのオナニーの回数。

これが多いほど精力が高いとみなすことができ、
またエロを前にぶら下げることで馬車馬のように働かせることができる。

また、オナニーばっかりしているやつなどは、
業績不振のときに切捨てても会社に実害をおよぼすことがない。

194 :デフォルトの名無しさん:02/06/03 12:50
>>193
>また、オナニーばっかりしているやつなどは、
>業績不振のときに切捨てても会社に実害をおよぼすことがない。

最初から雇わない方がもっと害がないんじゃない(w

195 :デフォルトの名無しさん:02/06/03 22:04
おれは面接で行数聞かれたから、
「20〜30万行くらいでしょうか…」ってハッタリかましたんだけどさ、
どうゆうプログラムなのか内容も聞かれずに面接終わったよ。もちろん採用ね。

ようするに行数を多く申告すればいいってこった。

196 :デフォルトの名無しさん:02/06/03 23:41
>>195
小さい会社で、その会社に入ることが目的の場合はそれでいいけど。。。
配属する部署とか、最初に入れるプロジェクトとかも面接のデータを参考にするから、
あんまり事実と違うこというと入ったあと不幸になるんじゃないかと。

ま、入ってしまえばこっちのもんって考えも一概に否定しない。実際這ったりかました
手前、そのとおり振舞う羽目になるってこともある。うそから出たまことだね。
自己責任てことで。

197 :デフォルトの名無しさん:02/06/14 21:28
> 私はソースコードを圧縮したサイズをソースコード量とする方法を提案する。
プログラムの規模をソースコードや、それを圧縮したもので表す方法は、プログラム
言語に依存するという問題がある(アセンブラの1000行とPerlの1000行では規模・
複雑さが大きく異なる)。
そこで、ソースをコンパイル・アセンブルしたバイナリをさらに圧縮したサイズで
プログラム規模の指標とする方法を提案する。

この方法であれば、言語にも依存せず、無意味なコピペにもあまり依存しない。
画期的な方法である。

198 :デフォルトの名無しさん:02/06/14 21:53
STLで膨らましまくり。

199 :デフォルトの名無しさん:02/06/14 21:59
Javaやブビは思いっきり小さくなるな
bccは質の悪いデブコード吐くし、VCL使えばそれだけで超巨大ファイルが出来る

200 :デフォルトの名無しさん:02/06/14 22:06
開発前 = 開発後に含まれる、フレームワーク提供の改造不要ファイル

であるとき、

作業量 = 圧縮(コンパイル(開発後)) - 圧縮(コンパイル(開発前))

かな。

201 :デフォルトの名無しさん:02/06/14 23:51
>>197
言語ごとに係数をかければいい。

202 :デフォルトの名無しさん:02/06/15 01:36
>200
何を言ってるのかわからんのはオレだけか?

203 :デフォルトの名無しさん:02/06/15 09:49
>>197
リソースとかどうすんの?

#今昔作ったVBのexeをcab最高圧縮したら320KBになったけど
#これってどうなんだ?

69 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)