C/C++ 免許制はどうですか? の続き
774RR さんの書き込みより
C/C++ ってカバーする分野が広い(広すぎる)ため、ある分野の専門知識は他の分野では不要なものが多いです。 俺のメイン仕事のちっこいワンチップマイコン組み込み系と πを42億桁計算する超多倍長演算と Web アプリケーションの安全性を確保するためのセキュリティ確保のためのシステムと かさなる専門知識はあまりありません。
設計と実装はある程度分けて考えられると思います。「πを42億桁計算する超多倍長演算」はどちらかというと実装面の影響が強く、「Web アプリケーションの安全性を確保するためのセキュリティ確保」は設計面での影響が強いですよね?security 上の問題が発生することはどの言語でも多いですが、C/C++ の大きな問題として他の言語に比べ実装 (coding) で問題が生じやすいというのがあると思います。
私が想定している試験は、設計 level には踏み込まず純粋に C/C++ の実装を問う試験です。C/C++ の基本的な coding はもちろん、それに合わせて buffer overflow、integer overflow 、書式指定文字列等のひねくれた問題を出題する。そうすれば、言語の学習とともに少なくとも実装上の問題を理解させることができると思います。
aetos さんの書き込みより
あとは、試験費用はまぁどうにか捻出するとして、ちゃんと運用されているかどうか監視する費用とかどうしましょう?
他の免許が必要なところと一緒ですよ。罰則規定を強化すればそれなりに制度はまわる。そういうもんです。
あとは、その試験を必要とする言語・しない言語の線をどこに引くかとか。
バッファオーバーフローさえ起きなければ(セキュリティ的には)「動けばいいや」でも安全というわけではないので、場合によってはC#を使っていてもセキュリティ認定試験が必要になるんじゃないですか?
C# のような memory を動的に管理する言語では、どちらかというと実装ではなく設計にまつわる問題の方が大きいので、言語にとらわれない設計を問う試験が必要だと思います。
ognac さんの書き込みより
しかし、新卒の医者よりベテランの医者のほうが、信頼感が高いです。
弁護士も新人の弁護士より老練なほうが、有利なようです。
「免許がある」=「仕事ができる」 「運転免許がある」NOT = 「運転が下手」にはならないですね。
実践で生かせる技量の有無の判定は、事実上できないと思うのです。
技量の定量化は狙っていません。今回免許制を提案いたしましたが、これのねらいは最低 level の引き上げです。車の免許は運転するなら最低限ここまでを満たしなさい。というのを確保するためのものですよね。それと同じことです。
επιστημη さんの書き込みより
免許てゆーか、なんつんだろ"マイスター(親方)制度"みたいなのがあるといいのかもね。
新人君は公的機関が認めた親方の元に弟子入りして、ですね。
親方には新人君を預けた会社から報酬がもらえて、
公的機関は会社からの要請に応じて近くの親方を斡旋してくれて。
で、親方の横の繋がり:ギルドを通して、
クライアント(会社)が求めるスキルが親方のそれとマッチ
しないなら、ギルドがその仲介を務めて親方の交換とか
この分野は別の親方に習うとか。
無論マイスターを名乗るにはそれなりの実績が必要で、
サボってると権利剥奪、と。
どちらかというと、そちらの方が制限が大きいような気がするのですが。つて持っていないと新規参入が厳しいことに。そういうところはどうしても完全に公開されている状態にしないとまずいと思います。