道具使いの技術者たち
過去に@ITの掲示板でも質問を投げかけてみたことのある、この話題。
その当時から3年経過したにも関わらず、同じように日々悩んでいます。「生産性を上げること」と「人を育てること」、その両方をバランス取って進めていくことに。
あれから時代は進み、人材の両極化はことさら大きく表れてきているような感触を受けます。わたしはそれなりな年数を過ごしてきていますので、「後継者を育てろ!」といろいろな方面から突っつかれていますが、正味なところ、今の自分たちと同じようなことをできるまでに育て上げるというのが非常に困難、もしくは達成できないと思えているのです。
業務としてシステムを作ることを生業としていますので、プログラムの実装では「再利用を行い生産性・保守性を高める」「コーディング量を減らし実装にかける時間効率を上げる」など、基本的に省力化の方向へと進んでいるのはよくあることだと思います。
直接自由にコーディングを行わせるのではなく、共通的なフレームワークに則り、コーディング方法の統一や記述量の減少を行う。技術力によりバラツキに出やすいSQLを直接記載することを減らし、一定レベルの品質を保つ。分業を行いマンパワーを有効に活用する。ここを読まれる方々も、多くのことに挑戦し、ある程度の効果を得たり、もしくはいろいろと改善を行われていることと思います。
また昨今の開発ツールが進化していく方向性を見ると、恐らくは「実装領域を減らし」「定型的な仕組みを用い」「上流工程も標準化する」方向へと向かっているのではないでしょうか。VisualStudioやEclipse等を含めたIDEの世界では、ますます利用可能となる範囲が増えています。
わたしが分かる少しの範囲というのは.NET側ですので、例としては偏りますが、ASP.NET MVC FrameworkやASP.NET Dynamic Data、さらにはADO.NET Entity Frameworkというのはその1つだと思います。設計として確立されたMVCモデルを利用しやすくしたMVC Frameworkや、DBアプリをコーディングレスて構築可能にするDynamicData、より概念レベルでの実装を可能にしたEntity Frameworkなど実装レイヤだけにとどまらず、設計レイヤにおける作業を取込む方向へと進化しています。
これは裏返すと、
「ほとんどのことはツール側でサポートするから、プログラム・詳細設計とかは誰にでもできるようにする」
「技術者はもっと根幹に関わる分析・概要設計部分とかに注力してもらう」
という流れへと進んでいるということです。
ある程度以上の性能要件などが出てこない限りは、熟練者クラスの人材でなくとも、「それなり」なシステム構築を可能になってきているのが良く分かるかと思います。※この進化自体が業界にとって良いことか悪いことか、という問題は別の話題ですので置いておきます。
現実として、わたしたちは「短納期」「高品質」「低予算」が絡み合った中での開発行為を続けなくてはならない状況です。IT業界といえど、物売りな世界ですので、同じものを同じ値段で販売していてはどこかで買い手がつかなくなります。同じものを安く売るか、さらにレベルアップしたものを同じ値段で売るか、どちらに進むにせよ同じことを続けていては将来の衰退は間違いはありません。
そのような現実ですので利益は減少し、今を乗り切ることに精一杯な企業が多いのはある意味仕方のないことかも知れません。ですがそのツケは確実に自分達の足元を浸食しているのではないか、と思えるのです。
ここまでの何回かのエントリで「人を育てる」話題を書かせてもらいました。そのあたりから感づかれるかと思いますが、わたしの中で、ツケは人材面に表れてくると考えています。
時間もなく予算もない、そのような状況ですのでOJTと称して即実戦投入、用意されているフレームワークやらを利用し、とにかく何かしらのAPを作ることができる状態に持っていく。これを望む・望まざるに関わらず最優先にしている企業も多いことと思います。
ですが、そこで生み出されるのは「高機能なツール群を使うこと」ができる人材です。
道具の使い方は熟知するでしょうが、道具の選び方・システムの作り方には疎い技術者が増えてくるのだと思います。過去にいただいた意見では「必要になれば勉強する」とありましたが、わたしにはまだにそう思えません。ここまで高機能なツール群が登場してきている以上、業務の上で今まで必要だった事が本当に必要になるケース自体が減少しているのです。変な話、わたしが開発の基本と思っていたことが、今は知らなくとも問題ない、ということさえあり得ます。知る必要がなければ、勉強も当然ありません。
これが特定企業にのみ起きている話題であれば何の問題もないのですが、この流れはもはや業界全体のものと見てもそれほど外れてはいないでしょう。そう思えるくらい、技術者の質の低下は間近にある出来事かと思います。
そのような状態になるということは、その企業の技術力で勝負するのではなく提示する価格で争う体力勝負的世界になる(現に今もなっていますが)ことへと繋がります。どこの会社が、誰が作っても同じようなものができてしまうのですから。そうなってしまっては中小企業が生き残る事は厳しいでしょう。他社と比較して強みがない、体力に乏しい企業がますます減少していくことになります。生き残るのは体力のある企業、明確な強みを持つ企業に限定される……文字だけ読めば、そうそう悪いことには見えないのが難しいところです。
今勤めている会社がそうならないためにも、人材の教育は行っていかなくてはなりません。
「今を乗り切らなくては将来もない」という意見はごもっともです。ですがその思想でいる限り、将来になったとしても今と同じ、もしくは今よりも厳しい状態が待っているだけなのだと思います。今できない事が将来にできるとは残念ながら思えません。それは将来が今よりも好転していなければ無理な話です。未来を知る予知能力は残念ながら持ち合わせていません。
そう考えると厳しいのは承知の上で、両方に対処していく必要があるのだと思います。
「どちらが重要か」ではなく「どちらも重要」なのです。簡単に「できない」と諦めるのではなく、自分たちの状況の中で「できる方法」を考えなくてはならないのだと思います。
高機能なツール群をただ使わせるだけではなく、エンジニアとして良い方向へと成長することができるような「場」を用意する。わたしは開発現場側の人間ですので、今できることの1つが「社内勉強会」による知識と経験の開示と考えています。それが果たしてどこまでの効果を生みだすのかは開催している本人にも分かりません。自分で考えているよりも結果は残らないかもしれませんし、もしかしたらいい影響が出てくるのかも知れません。そこについては随時振り返り、周りを良く見ながら進めたいですね。
……勉強会以外にはどうするか、という点について考えていることもあるのですが、そこは近いうちにまとめてみたいと思います。
コメント
forseti
はじめまして。forsetiと申します。
ツールや小規模ながらフレームワーク作成にたった事もありまして、
この「それなり」が技術的には目指すところなのは分かります。
しかし、いざVisualStudio+VBで開発を行った時に「それなり」の恐ろしさを肌で感じました。
気を抜くとダメになると・・・。
しかし、フレームワークは使う側からすれば中身までは分かりませんし、
技術力的に作る側と使う側で2分されてしまうのではないでしょうか。
私はフレームワークの中身まで見る知識は無いので、
ツールが出来る事は自分で1回やってから使う
事をできるだけ心がけています。
インドリ
同感です。
私はフレームワークを作ってきた人間なのですが、フレームワークは所詮「分かっている事を省略するもの」であります。
ですから、私はフレームワークを利用する際には、ソースコードを読んでから利用する事が必要だと思います。
それと、「道具使いの技術者たち」が蔓延っている原因は、「人使いの経営者たち」と「品質を見る気が無いお客様たち」だと思います。
経営者や管理者は知らなくてもいいがまかり通っていますし、お客様も品質に関しては凄く甘く、看板だけを見て買っているのかと疑いたくなる状況です。
お客様は何故か品質をチェックすることを最初から放棄しています。
鑑定人を雇えばいいのに・・・
他にも駄目なところを言えばきりがありません。
いいところを探す方が大変なぐらいです。
ですからこの業界は既に破綻していると思います。
何もしなければ完全崩壊します。
この状況を変えられるのは技術者が先ず変わらないといけないと考えております。
にゃん太郎
Ahfさん、こんにちは。
おしゃることはその通りですし、私もそう考えています。長い間やっていると本当に昔と根本部分が変化していると感じます。良くも悪くもですが、誰でもコードは書けますが誰でもプログラムが組めるわけではないと思うようになりました(表現が微妙でごめんなさい。適切な言い方が思い浮かばなかったので)
私は設計時、自分で出来ると思う事だけを書きますが(これは当たり前ですよね?)、それを渡してもコーディングできない事がたまにあります。ナゼか「どうしても出来ません」と言ってくる。中には「出来る訳がない!」と逆ギレされます。そういう時は仕方ないので自分でコーディングしてデバッグしてから戻してどうすればいいかいちいち説明するようにしています。だからPMの今でもコーディング作業をしています(これはメンバーの数が絶対的に不足しているからもありますが)ソフトに付加価値を付けるために確かに難しい事も多少しているのですが、それにしても出来ないとは…そんなに私の設計書が悪いのかと良く凹んでます。
しかし、このコラムを読んで一番問題だと感じたのは…また書きかけのコラムとネタが微妙に被っている所です(笑)問題点と言うか、危機感は共通なんだと改めて感じました。
インドリ
にゃん太郎さんへ
> しかし、このコラムを読んで一番問題だと感じたのは…また書きかけのコラムとネタが微妙に被っている所です(笑)
それは妖怪ネタカブリの仕業です(笑)
冗談はさて置き、この手の話題は本当にネタがかぶりますよね・・・
でもそれは、この業界が明白な問題を抱えているからだと思います。
明白すぎてネタをかぶらせないのは至難の技です。
しかしながら、同じネタでも書き手が違えばちょっとでも違う部分が発生しますので、お気になさらないで書けばいいと思います。
私はにゃん太郎さんのコラムもAhfさんのコラムも、そして他の人達のコラムも楽しみにしております。
ちょっとぐらいネタがかぶっても気になりません。
Soda
必要な知識は時代によって変化しますよねぇ。
ブラックボックスを気にしているようですが、道具が正しく使えるのならば、その中身を知る必要はないと思います。
・・・というか、そんなの気にするなら殆どの言語が使えないわけでw
必要なことは、そのブラックボックスの中身ではなく、ブラックボックスをどのように使えるのかという知識だけです。
今の知識も数年たてば不要なものになる確率もかなり高いですよねぇ。
例外があるとしたら、そのブラックボックスを作る立場の人ですね。
絶対数で言えば、ブラックボックスを作る立場の人は少数なわけです。
その人達は例外的にブラックボックスの中身を熟知しなくてはいけませんね。
道具を使う立場にいる人達は、よりうまく道具を使うことを。
道具を作る立場にいる人達は、より良い道具を作ることを。
私は前者の人が圧倒的に多いと考えていますし、お客に近ければ近いほど、道具が使えるという技術のほうが重要だと思っています。
自分達が使う道具を自分で作れなくても、なにも問題はありません。
自分達が作る(お客の)道具のことを知っていれば良いだけです。
そこで必要となる技術や知識は別物ですよね。
道具が便利になって、昔必要だった知識がどんどん不要になっていきます。
Ahfさんが心配していることは、自分が知っている知識を知らない人が増えていることだと思います。
でも、それってどの時代でも存在するわけですよw
初期のVBやら.NETやら登場する前からプログラム組んでた人は、それらが登場したときに皆同じ心配をしてるわけです。
でもね、ちゃんと道具を使える人は、.NETからしかプログラムを組んでいなくてもなにも問題ないんです。
逆の視点で見ると、Ahfさんの心配ごとは、自分が知っている知識が不要になることを恐れているようにも見えます。
道具が便利になり、自分にとって優位な点が無くなることを無意識に恐れることで、道具を使うことに対し抵抗が生まれるのかもしれません。
道具を作る知識は、道具を作っている人達の間で継承されていきます。
ですから、知っている人が少なくなるだけで、一度生まれた知識が無くなることは無いです。
「道具使いの技術者」は質が低いのではありません。
時代によって必要な知識が違うだけです。
質が低く見えるというのは、錯覚であり、見ている側が自分のほうが上であるという無意識な願望だと思います。
問題は、道具を使えている気になっている人や、道具に使われてしまっている人です。
表面的なものしかみえない人達は、その傾向が強いですねぇ。
新しいものを追いかけ過ぎると、新しい技術を知っているということで、自分が上だと錯覚します。
PS.
個人的には、「社内勉強会」の最大の効果は、色々なことを相談しやすくことじゃないかなーと思います。
コレもっと簡単に書く方法ないかなーとか、自分で考えても答えがでないことはいくらでもあるじゃないですか。
相談できる場があると大分違うなーと思いますし、ソレよりもコッチのほうが簡単だーみたいな良い意味での競争もあったり。
楽をすることに対して貪欲なのがプログラマだと思ったりw
ちぇるび
全く別の業界の者です。
わたしが思いますに、みなさんが心配されてらっしゃるのは、「基本的に変わらない知識」の欠如された人材が増えた、と言うことではないでしょうか。
そこを「質の低下」とおっしゃっているのではないかと思います。
Soda
>ちぇるびさん
私が受けた印象はーあれですよ、車の運転で例えるとオートマ専用免許みたいなものかな?
クラッチの付いた車で免許を取った人がオートマ免許の人を心配しているような感じ。
道具使いは、車を運転する人ですね。
その人達に対し、クラッチ付きの運転方法を教えるべきかどうか?
また、クラッチという概念を理解するべきかどうか?
個人的には、オートマ車を作る人は、クラッチがどのようなものか理解していないといけないと思います。
ただ、万人がクラッチを理解すべきかと言われればNoと答えますね。
仮にクラッチの特性が必要になったとしても、おそらくそれはオートマの特性として扱われると思います。
まったく新しい概念の車が誕生したら、クラッチという概念は、始めから存在しない可能性もありますね。
将来的にハンドルやアクセル、ブレーキすらもなくなるかもしれません。
その時にも同じような心配をするのかもしれません。
私は時代により、必要な知識が異なると考えていますし、継承しなければいけないものは、その中に含まれていると思います。
継承される範囲は減っていきますが、それは「質の低下」ではないと思います。
最初にforsetiさんが書かれているように、必要な場所が分かれているだけじゃないかな?
forseti
>Sodaさん
>問題は、道具を使えている気になっている人や、道具に使われてしまっている人です。
私もこれが書きたかったのですが、言葉が思いつかなかった^^;
道具をうまく使うためには道具を作るに至る背景や、ある程度概念を知る必要があると思います。(オブジェクト指向の理論とか)
現在道具が優秀になりすぎて、知らなくても使えてしまう。
結果使われている技術者が増えている事を皆さん危惧されているのではないでしょうか。
事実物凄く増えていると言う印象を受けます。(私もそっち側かもしれませんが)
目的地まで声で言えば車が走ってくれるようになったら、
タクシー運転手は一気に減るでしょう。
道具が優秀になった先のこの業界の未来は・・・。
ビガー
ビガーです。
>「技術者はもっと根幹に関わる分析・概要設計部分とかに注力してもらう」
情報システムの利用状況などを鑑みると、この傾向は今後さらに強くなるはずです。無駄なものを作っているお金は、どの企業もないはずなので。
>道具が便利になり、自分にとって優位な点が無くなることを無意識に恐れることで、
>道具を使うことに対し抵抗が生まれるのかもしれません。
何回かのAhfさんのコラムを拝見して、Sodaさんのご意見と同じ印象を受けました。
道具が便利になっていることを、自分で実装する手間が省けたと喜び、その理由や背景を後進の指導に役立てる方が良いのではないでしょうか。
Ahfさんのスキルセットは存じませんが、失礼ながら、分析や概要設計、要件整理など他に身につけるべきことは、たくさんあるんじゃないでしょうか。
がると申します。
んと…このあたり。件の掲示板の質問の時に、Blogで雑感を書いた記憶があるのですが( http://d.hatena.ne.jp/gallu/20060904/p2 )。
私のスタンスは「一度ホワイトボックスにした上で、普段はブラックボックス化する」なので。ほかの業種の「一流どころ」のお話を伺ったりした経験なども鑑みるに「深いところまで知る事は必須」だと考えております。
ただ、それを万人に求めるものか? と問われると、おそらく「否であろう」と思っているので。
そのあたりは各個、個人のスタンスとかいうものがあるのではないかと思います。
Ahf
みなさんコメントありがとうございます。
何というか胸を打つスルドイ指摘が・・・。
夜にでも一気に返答させていただきます。
Ahf
>forsetiさん
道具が優秀になった先のこの業界は・・・という危惧は私も抱いています。
巧いこと表現ができませんが、今の仕事の形式ではなくなるでしょうね。変な話、コンサル的なポジション(分析と対応案の考察)と、コーダー(モノを組み合わせる)、それだけで済んでしまう時代がくるのかも知れませんね。
>インドリさん
ユーザー側に求めていくのは難しいですよね。売り手側の自分たちが何かしら影響を与えていくことができればいいのですが。そこも良い方法が見あたらないのが現状だと思っています。かといって同じ技術者達にどう伝えていくか、というのも本当に難しいですよね。
個人的にはフレームワークというものをライブラリ的なところに限定せず、広義のフレームワーク(手続き等も含めて)で、なぜそのように用意されているかの「意図」を感じ取ってもらいたいのと、大元にある方法論などにも興味を持ってもらいたい、とは思っています。
>にゃん太郎さん
かぶりましたか(苦笑)。にゃん太郎さんとは、かなり考えることや思うこと、ひょっとすると置かれている状況は近いのかも知れませんね。というか近いです(苦笑)。私も上から下までやることもありますから、よくわかります。
>Sodaさん
「道具を使えている気になっている人~」、この部分が今回一番言いたかった点でした。Sodaさんの言われる質の低くない技術者もたくさんいる事はよくわかります。ただ個人的に「そうでない人の割合」が増えてきているような気がするのですよ。
楽をすることこそプログラマ、という考え方は心底同意です(笑
楽をするための努力を惜しまないのが、なんというかこの仕事に向いている資質というか。
>ちぇるびさん
基本となるべき変わらない知識が欠如している、IT業界だけに限らず他の業界でも増えてきているのですかね?是非(ぼやかした形でも結構ですので)聞いてみたいですねぇ。
こういったところって、業界に関わらず共通して考えていけるといい事多いと思えるのですよ。
>ビガーさん
道具が便利になること自体はメリットも多いですからね、そこは受け入れていく点だと思っています。分析や概要設計、そういったレイヤのスキルも必要ですね。まぁあまり客観的に自分のスキルがどの程度まであるか、というものがわからないのでまだまだ努力努力ですけど。
>がるさん
あぁ、掲示番でやっていた際に取り上げていただいていたとは・・・。
「万人に求めるか?それは否」というのがベターですよね。私も自分のスタンスを押しつける気はないです。押しつけてもあまり上手くいかないでしょうからね。
そうなると個々のスタンス・考え方をどう生かしてあげるかというのが、今後は求められてくるのでしょうね。
しかし、一度ブラックボックス化したものというのは、なかなか中を知ろうとする事がなくなるというのが悩ましいところです・・・。どうにも人を選ぶというか。
Ahf
そして一番ドキリとしたコメントに対して。
自分が知っている知識が不要になる恐れ。
ご指摘にあったようにそういう恐れが確かにあります。そのあたりはどうしても、元々が職人側というか技術者側というか。今いる領域というのは、無意識のうちに大事にしてしまいたい、と思えているのだと思いますね。
同じ事なんですけどね。自分が人に求めているところも。
それともう一つ、今の自分がわからない点が。
このままの流れで行くと、恐らくは今の自分が努めているような企業は
「軒並み淘汰される事になるのか?」
と思えます。製造業等で同じ事が起きていると思うのですが、技術を持った中小企業というのがどんどん減っていく状態ですね。自分たちが道具を使うだけの状態になったとき、物を作り出すことができなくなったとき。仕事としては道具を使えばできるのでなんとかなるのでしょうが・・・。
それは本当に幸せな方向へ向かっている事なのでしょうか?
まぁ考えすぎ、見通しが甘い、全然見当違い、色々私もありますからどうなるかなんてわからないですけどね。
インドリ
>それは本当に幸せな方向へ向かっている事なのでしょうか?
暗い未来しかないと思います。
しかも「技術力はないが権力だけある」会社が生き残り、
ユーザーは販売元がそこしかないから「ばったくりでも買う」状態になるでしょう。
現在のところ良い兆候が何も見られません。
しかしエンドユーザーが「看板だけで買う」行為をしているのですから、
ある意味エンドユーザーが望んだ未来なのかもしれません。
無論私達技術者もその当たり前の未来をまねている責任があります。
どんどん詐欺業界への道を進んでいるという気がします。
Soda
>Ahfさん
>それは本当に幸せな方向へ向かっている事なのでしょうか?
道具に対しての考え方次第ではないかと思います。
新しい道具により、短縮できた開発時間を使って、より良いものを作ろうと考えるのか。
それとも、新しい道具でできることに限界を感じて、この道具ではこれぐらいのものしかできないと考えるのか。
例えば画面表示などはDOS時代と比べて圧倒的に楽になったじゃないですか。
今でもどんどん進化して、より綺麗により簡単に表現できるようになっていると思います。
多くの開発者は、DOS時代の知識を必要としないでしょ?
画面表示関係の関数はブラックボックスだけど、中身を気にすることは少ないでしょ?
ここで中身を気にする人は、道具を作る側に行く人じゃないかなぁ。
で、画面表示が簡単になってはいますが、それをどのように組み合わせて使うかは開発者や表示したいものによって色々あるじゃないですかー。
道具が進化しても、人間の要望もそれに応じて高くなると思いませんか?
人間の要望が上限に達するまで、これは続くじゃないですか。
道具の進化はスタート点の位置が変わるだけです。
新しい道具を使った、新しい技術が常に生まれるのですよ。
道具に頼ったら技術力が落ちるなんて錯覚です、比べる技術が異なるだけです。
新しい道具により、今まで自分が苦労した部分が無くなることを認めたくないだけでしょう。
もしくは、新しい道具にできることを想像できていないのかもしれません。
私は、道具の進化により、より良いものが開発しやすくなっていると思っています。
いつの時代でも、その時代にあった道具を上手く使えることは、重要な技術だと思いますよ?
まぁ・・・新しい技術を知っているのと使えているのでは大きな差がありますが(^^;
PS.
・・・っていうか、DOS時代のような開発環境には戻りたくねぇw
Jitta
> 自分が知っている知識が不要になる恐れ。
他の人の知識を不要にすることを仕事にしている人が、自分の知識が不要になることを恐れる。面白い構図だと思いました。
私たちの仕事の多くは、専門的な知識がなくても仕事が完遂できるようにします。より少ない手順で仕事が完了するようにします。これは、他の人の知識を不要にし、他の人の仕事を奪っていると言えないでしょうか。
ちぇるび
>Soda様
>クラッチの付いた車で免許を取った人がオートマ免許の人を心配しているような感じ。
確かに、それはあるのかもしれません。
でも、軽油ってあるじゃないですか。あれ、軽自動車用のガソリンって思われてる方、いるらしいんですよ、結構。
そこまで知識の欠如していても、自動車免許ってとれるんですよ。それって恐ろしいことですよね。
極端な話、タイヤを交換ができなくても、普免、とれちゃいます。一回は自動車学校でしているはずなんですけどね。
オートマ免許の人って、全ての方ではありませんが、「普遍的な知識」が欠如されている方もいらっしゃいます。それが今の方に言えることなんじゃないのかなぁ、なんて思います。
あと、新しい技術でも古の技術という基礎があって成り立っているものなんじゃないのかな、なんて思いますが、いかがでしょうか。
知らなくてもいいけど、知っておけば技術はかなり上がると思うんですよ。
どこの会社だったかな、昔の車を古参社員と新人とで再び作り上げる、っていうのを研修にしている、なんて話があったと思います。
それだけ古の技術って必要るものなんだと思います。
そう考えると、確かにクラッチはなくなるかもしれませんが、クラッチの技術は何かしらのかたちで残るんじゃないかな、と思います。
あと、
> 自分が知っている知識が不要になる恐れ。
わたしでもありますよ。
IT技術者ではありませんけどね。
でも、昔取った杵柄、って言葉もあるんですよね……。
それで助かったことも多々あります。
Soda
>ちぇるびさん
>オートマ免許の人って、全ての方ではありませんが、「普遍的な知識」が欠如されている方もいらっしゃいます。それが今の方に言えることなんじゃないのかなぁ、なんて思います。
うーん、私が言いたかったことはココになるのかなー。
あれですよ、ちぇるびさんの言ってることは、オートマ免許かどうか関係ない話だと思うのですよ。
軽油の知識がないのは、ガソリン車が主になってるからだろうし、タイヤ交換なんて普段しないことだろうし。
だから、「オートマ免許だとそういう人が多い」ってのは、違うんじゃないかなと。
オートマ免許ってだけで、下に見ている感じを受けるんですわ。
それと同じ印象をこのコラムと一部のコメントから感じたということです。
実際問題として、車がオートマしかなくなったら、オートマ免許でいいじゃないですか。
オートマ車しか運転しないのなら、クラッチの知識は要りませんよね?
今クラッチの知識が必要なのは、クラッチ付きの車を運転している人と、車を設計している人です。
ひょっとしたら、ギアが切り替わるという知識すら不要かもしれません。
オートマ車しか運転しない人がクラッチの知識を知っていても得することは、あまり無いですよね?
ソレに対して、
「クラッチも知らないのに運転するなんて、真のドライバーじゃない!」とかー
「全てのドライバーは、クラッチを覚えるべきだ!」
と言ってるように聞こえると(^^;
>あと、新しい技術でも古の技術という基礎があって成り立っているものなんじゃないのかな、なんて思いますが、いかがでしょうか。
ここ、私の書き方が不味かったかなーと思うとこですねぇ。
新しいものが良くて、古いものが駄目と主張しているようにも見えましたね。
その手のものでも、知識として必要な部分とそうじゃない部分があると思うのですよ。
で、問題は「なにが必要な部分か?」ということです。
わたしは、この必要な部分が、その時代や立場によって違うと思っているのです。
車を運転する人(道具を使う人)にとってクラッチの知識は不要になっている、これが時代の違い。
しかし、オートマ車を作っている人には必要な知識である、これが立場の違いです。
>知らなくてもいいけど、知っておけば技術はかなり上がると思うんですよ。
ソフトウェアの世界で一度ブラックボックス化したものを、展開して得られるものは、限定されると思うのですよ。
逆の視点でみれば、展開しないといけないようなものはブラックボックス化しないような・・・
しいて言えば、同じようなものを作ったりする時かなぁ。
少なくとも、ブラックボックスを展開しないと使えないようなブラックボックスは要らないと思う(^^;
道具や部品って、使い方を知ることが重要であって、道具や部品の作り方を知る必要性って少ないと思いませんか?
PS.
オートマって略語だけど、正式な名称(Automatic Transmission)知っている人は少ないと思ったり。
オートマチックまでは誰でもわかるんだよねぇ、それだけでATだと思っちゃうしw
PS.2
ハイオクとレギュラーというように、なぜガソリンが分かれているのかは、謎だったw
ハイオク=高級としか認識してなかったから、ハイオク専用車が存在していることを知ったのはかなり後だったなぁ。
レギュラーガソリン仕様車にハイオク入れても、意味がないことが多いというのは、さっき知ったばかりだ(ぉ
Ahf
コメントありがとうございます。
>暗い未来しかないと思います。(インドリさん)
うーん、個人的には「どこが作っても同じ物になる」状況の方に不安を感じました。もちろんそこまでいってしまうか、は私達技術者次第ですよね。
>新しい道具により、今まで自分が苦労した部分が無くなることを認めたくないだけでしょう。(Sodaさん)
それはありますね。何というか私は「苦労した部分=基礎知識」のような錯覚を持っているのだと思います。そしてその苦労した部分がなければ新しい物を生み出せない、と決めつけてしまっていたのだと思います。うーむ。
>他の人の仕事を奪っていると言えないでしょうか。(Jittaさん)
その通りなんですよね・・・。自分たちの行っている事も同じ事なんですよね。
同じ事をやっているにも関わらず、どこか自分達だけは例外だとしているようなスタンスが、きっとこのような考え方に繋がっているのだと感じました。
>知らなくてもいいけど、知っておけば技術はかなり上がると思うんですよ。(ちぇるびさん)
私もそのケースはあると思います。新しいことを行うにしても、古いことが役立つことは何かしらあるのだと。・・・願望も込み込みですけどね。
>オートマ免許ってだけで、下に見ている感じを受けるんですわ。(Sodaさん)
うーん、これもありますね。オートマとマニュアル、フィルムカメラとデジタルカメラみたいところでしょうか。指摘され改めて自分の文章を読み返すと、あー、と頷けるところが多数ですね。
>道具や部品って、使い方を知ることが重要であって、道具や部品の作り方を知る必要性って少ないと思いませんか?(Sodaさん)
うーん・・・それを言ってしまうと、例えば社内でフレームワークやライブラリを用意すること自体、必要性が低くなってしまうように思えます。
Soda
>Ahfさん
>うーん・・・それを言ってしまうと、例えば社内でフレームワークやライブラリを用意すること自体、必要性が低くなってしまうように思えます。
ん?それは、道具や部品を作っているということですよね。
それを作っているのならば、その作り方を知らないと駄目ですね。
私は、道具を使うだけでいい人が、その道具の作り方まで知る必要性はないと思っているんです。
コラムの内容では既存のフレームワークを利用しているように見えたのですが・・・
ただ、社内でも同じだと思うのですよ。
道具を作る人と使う人が分かれているのならば、使う人が作り方まで知る必要性はないと思います。
作る技術と使う技術は別物で、どちらが優れているというわけではないです。
@ITでは、作る技術のほうが使う技術よりも、優れている思われている傾向がありますねぇ(^^;
先に車の例を出しましたが、車を作っている人が運転が上手いとは限らないじゃないですか。
その逆で、運転の上手い人が車を作れるとは限りませんよね?
お互いの意思疎通ができないと、良い環境は生まれませんがお互いが全てを理解しあう必要性はありません。
両方の技術が必要かどうかは、会社の規模や方針しだいじゃないかなぁ。
Ahf
Sodaさんコメントありがとうございます。
作る技術と使う技術、感覚的に「作る>=使う」と思うところはありますね。
作る人は使うこともできる(ように思える)といったところでしょうか。
実際としてその通りか?、と言われるとご指摘の通り違うと思います。
私の個人的な状況と感覚ですが、受託開発やパッケージ開発を行うことを生業としている企業が、道具を使うだけで作ることができない、というのは問題ありと思っているのですよね・・・。
そういう環境を除けば、作る技術を知る必要というのはそれほどないのですね。
Jitta
脱線:
> 極端な話、タイヤを交換ができなくても、普免、とれちゃいます。一回は自動車学校でしているはずなんですけどね。
中学校の技術の時間にやりましたが、自動車学校では一回もしていません。
> ひょっとしたら、ギアが切り替わるという知識すら不要かもしれません。
電気自動車のみになれば、不要です。直流モーターなら、電流を逆に流せば逆回転しますからね。ついでにシャフトやディファレンシャラーも不要です。今は1つのエンジンで2つのタイヤをつなぐシャフトを回していますが、電気自動車なら本当の4WD、すなわち4つのモーターが4つのタイヤに個別に動力を与えることも可能です。
必要な知識は時代によって変わる。使用する技術によって必要な知識は変わる。
isz
初めて投稿させていただきます、iszです。
いまさらのレスで申し訳ないです。
自分も、道具の使い方をよく知らないでも使えて「使えてるんだからいいじゃん」的な技術者が増えている気がします。
たしかに、それで作ったものは動くんですがね・・・。
床屋なんかを例に出して考えてみるとわかりやすかったんですが、床屋はハサミの使い方を熟知して髪を切ってると思うんですよ。
でも、素人でも一応ハサミは使えるから、髪を切れてしまう。
でも、仕上がりには明らかな差異が出てくると思うんです。
でも、両方とも「髪を切る」という仕事は達成してるので、お金はもらえたりして。
我々は上の例でいう床屋にならなきゃいけないと思うのに、素人のような人間ばかりになったとしたら、そのうち、お客様が自分で髪を切りだして、床屋に仕事が回ってこなくなる日が来そうですね・・・。
そうならないためにも、先輩後輩問わず、もちろん自分にも言い聞かせていきたいと思います。
Ahf
iszさんコメントありがとうございます。
素人のような人間ばかりに、という危惧は現実になりそうな怖さがありますよね。
私もiszさん同様、自分に言い聞かせながらこれからを過ごしていきたいと感じています。
CMP
私の予言w
IDEはより高性能化し、誰でも必要なアプリケーションを自分で作れるようになる。
つまり、アプリケーションレベルに限りプロとアマチュアの差がほぼ無くなる。
プログラマ/SEが生き残る道は、よりハードウェアに近いソフトウェアを作る(OS、フレームワーク、ライブラリ、ドライバなど)か、アプリケーションを作成するためのソフトウェアを作る(IDEやコンポーネント、オブジェクトなど)しかない。
よって、道具使いでしかない技術者は技術者とは呼ばれず、淘汰されていくだろう。
Ahfさんはこの予言、どう思います?w
Ahf
CMPさんコメントありがとうございます。
その予言はかなり当たると思ってます。
付け加えると、コンポーネント群をいかに組み合わせるか、というレイヤでの
需要が増え今のSEやPGはそちらに流れていき、今起きている問題のほとんども
同じようにそのレイヤに引き継がれていくのではないか・・・などなどw
まぁもう一つの予想としては、ターゲット層を小規模企業に絞っているような
ところでは「今と変わらず」続けているような気もしています。