Javaのスクールをやっていて本当に多い問い合せは「C言語をやっていなくても大丈夫か」という問い合せです。
以前このスクールでなく別の場所でわたしがC言語を教えた時に多かった質問は「アセンブラやってなくても大丈夫か」でした。
おそらくアセンブラを教えた場合に聞かれるであろう質問は、「パソコン自作したことないが大丈夫か」なのではないかと思っています。
このあたりの問合せが多いのは、ネット等を調べると「基礎が大事」と書いてある場合が多いからでしょう。
基礎は大事なのは事実です。しかし必ずしも基礎の方が学びやすいわけではありません。基礎的になればなるほど抽象度が増す傾向があり、初学者には習得が難しくなる傾向にあります。
アセンブラが重要と言う人が一番最初に学んだプログラム言語が一番最初からアセンブラだったわけではありません。BasicやC言語を学びその後にアセンブラを学んだ時アセンブラの重要性がわかったという事をネットで感想として書いているだけです。
それは決して学ぶ順序に関して書いているわけではない点に注意しなければいけません。
Javaの基礎にCがある。これは事実ですが、基礎から学ぶのが良いかというと決してそうではありせん。明らかにCよりJavaの方が簡単な言語ですし、実用的です。
Javaを習得した後にC言語を学ぶと、確かにCはJavaの基礎になっているのだな、と判りますが、だからといってJavaのコードが良くなるかと言うと、そうも断言できません。
プログム言語は普通の言語と同じです。英語の基礎にラテン語があり、ラテン語を知らないと英語の真の意味は理解できませんが、だからと言って英語を学ぶ前にラテン語を学ぶ人はいないでしょう。
それと同じで、Javaの前にCを学ぶ意味などまったくありません。
しかし、英語を学んだ後にラテン語を学ぶと基礎力の強化によりより強い英語能力を獲得できる事は確かです。同じ英語を話す人の中で競争するならば、ラテン語を学んでいない人と学んだ人の競争では、学んだ人の方が勝利する確率が高くなります。
それと同じで、同じJavaを学んだ人で競争するならば、C言語を学んだ人の方が強いのは事実です。
しかしながらほとんどの人はそんな高度な競争はしないのです。競争に勝利しなければいけないような仕事もしません。
よって最初から基礎にこだわりすぎる事は必要ありません。
Javaのみ学べば十分に仕事をしていく事が可能です。
初学者の方には「基礎」という言葉に惑わされないようにしてほしいと望みます。
以前このスクールでなく別の場所でわたしがC言語を教えた時に多かった質問は「アセンブラやってなくても大丈夫か」でした。
おそらくアセンブラを教えた場合に聞かれるであろう質問は、「パソコン自作したことないが大丈夫か」なのではないかと思っています。
このあたりの問合せが多いのは、ネット等を調べると「基礎が大事」と書いてある場合が多いからでしょう。
基礎は大事なのは事実です。しかし必ずしも基礎の方が学びやすいわけではありません。基礎的になればなるほど抽象度が増す傾向があり、初学者には習得が難しくなる傾向にあります。
アセンブラが重要と言う人が一番最初に学んだプログラム言語が一番最初からアセンブラだったわけではありません。BasicやC言語を学びその後にアセンブラを学んだ時アセンブラの重要性がわかったという事をネットで感想として書いているだけです。
それは決して学ぶ順序に関して書いているわけではない点に注意しなければいけません。
Javaの基礎にCがある。これは事実ですが、基礎から学ぶのが良いかというと決してそうではありせん。明らかにCよりJavaの方が簡単な言語ですし、実用的です。
Javaを習得した後にC言語を学ぶと、確かにCはJavaの基礎になっているのだな、と判りますが、だからといってJavaのコードが良くなるかと言うと、そうも断言できません。
プログム言語は普通の言語と同じです。英語の基礎にラテン語があり、ラテン語を知らないと英語の真の意味は理解できませんが、だからと言って英語を学ぶ前にラテン語を学ぶ人はいないでしょう。
それと同じで、Javaの前にCを学ぶ意味などまったくありません。
しかし、英語を学んだ後にラテン語を学ぶと基礎力の強化によりより強い英語能力を獲得できる事は確かです。同じ英語を話す人の中で競争するならば、ラテン語を学んでいない人と学んだ人の競争では、学んだ人の方が勝利する確率が高くなります。
それと同じで、同じJavaを学んだ人で競争するならば、C言語を学んだ人の方が強いのは事実です。
しかしながらほとんどの人はそんな高度な競争はしないのです。競争に勝利しなければいけないような仕事もしません。
よって最初から基礎にこだわりすぎる事は必要ありません。
Javaのみ学べば十分に仕事をしていく事が可能です。
初学者の方には「基礎」という言葉に惑わされないようにしてほしいと望みます。
コード品質と受託開発の力学
中小企業は中小企業だけ相手にすれば良いってのも一つの考えなのかもしれないですけど、それだと何も変えられないかと思います。
高付加価値と高価格はまた別だったりするのですが、付加価値を判断するには受けとる方にもそれが付加価値なんだって理解できないといけないのがちょっと難しい所。
プログラミングの常識vs日本の現実
SI業界は終っていると言われるのは事実です。現状構造はほぼ確定しており、変化させるのは一苦労という状態です。
それでもそうした中で働いていてさえ、最初は努力さえしなかった人が努力する人になる場合もあるのを見てきたので、本人が希望するなら仕方ない、というのが今の自分の立場です。
適性診断を実施して適性なしって判ってもどうしてもスクールで学びたいという人がおり、どうしてもSI業界に就職したい人がいる。絶対拒否する事は今の所ない。
ダメな人にはダメと言ってあげる方が実はわたしも良いと思っているのだが、ダメって判断するポイントが極めてむずかしかったりする。サポートして育てるとちゃんと才能が発芽する事があるので簡単に諦めない事にしている。
ただ業界3年いてダメなら本気でダメなんですけどね。ただちゃんと教えると改善される事もあるので捨てた物でもない。単に知らないだけなので、正直現場での教育の不備なんじゃないかと思う事もあります。
であれば人を育て、教育し、徐々に変化するための知識を教えていくしかない。それが現状人を教えている立場としての信念です。
現状をなんとかしてから、でなく現状をなんとかするために現状を認めてできる事をやる以外選択肢がないのです。
変えるなら100年かけて変えるぐらいの覚悟がないとだめかな、っていうのが今の思い。
その辺りの酷さは生徒にも正直に言っている。なかなか理解はされないけど。SI業界以外未経験者中途採用していないので、希望者は当分いなくならないし、当分いろんな事は改善されないのかもしれないけど、それでも座して何もしないより、何かしてみようと思っている。
ほとんどがゼネコン化している現状では、こっちの発想の方がむしろ標準になってしまっていて、中小企業はなかなか大きめのエンドユーザにアクセスする手段がなかったりします。ゼネコンの発想ですよね。昔ながらの企業さんに多い考え方です。逆にこの方式は資金に余裕の無い会社では出来ません。運用で取り返すために、単純にキャッシュが入ってくる期間が長すぎるためです。
中小企業は中小企業だけ相手にすれば良いってのも一つの考えなのかもしれないですけど、それだと何も変えられないかと思います。
高付加価値と高価格はまた別だったりするのですが、付加価値を判断するには受けとる方にもそれが付加価値なんだって理解できないといけないのがちょっと難しい所。
プログラミングの常識vs日本の現実
こんな中学生が独学でもできるプログラマーの常識で最低限のことが理想論になってしまってるから,日本のIT業界は終わってるって言われるんですよ.
YES.ダメな人にはダメと言ってあげる方が,よほどその人のためになる.IT業界の深みにはまってからでは手遅れだ.
SI業界は終っていると言われるのは事実です。現状構造はほぼ確定しており、変化させるのは一苦労という状態です。
それでもそうした中で働いていてさえ、最初は努力さえしなかった人が努力する人になる場合もあるのを見てきたので、本人が希望するなら仕方ない、というのが今の自分の立場です。
適性診断を実施して適性なしって判ってもどうしてもスクールで学びたいという人がおり、どうしてもSI業界に就職したい人がいる。絶対拒否する事は今の所ない。
ダメな人にはダメと言ってあげる方が実はわたしも良いと思っているのだが、ダメって判断するポイントが極めてむずかしかったりする。サポートして育てるとちゃんと才能が発芽する事があるので簡単に諦めない事にしている。
ただ業界3年いてダメなら本気でダメなんですけどね。ただちゃんと教えると改善される事もあるので捨てた物でもない。単に知らないだけなので、正直現場での教育の不備なんじゃないかと思う事もあります。
現状は極めて難しい状態ですが、時間をかけて変化させるしかないのかと思っています。時間をかけるなら一人で成し遂げる事はなかなか難しいでしょう。残念だけど無駄な努力だと思うよ.「質の悪いコードほど儲かる」という現状をなんとかしない限り,質の良いコードを書く開発者に希望など無い.「病人は生かさず殺さず薬漬け」を推奨する病院経営者の下では,良心的な名医ほど悩み苦しむはめになるのだ.
であれば人を育て、教育し、徐々に変化するための知識を教えていくしかない。それが現状人を教えている立場としての信念です。
現状をなんとかしてから、でなく現状をなんとかするために現状を認めてできる事をやる以外選択肢がないのです。
変えるなら100年かけて変えるぐらいの覚悟がないとだめかな、っていうのが今の思い。
その辺りの酷さは生徒にも正直に言っている。なかなか理解はされないけど。SI業界以外未経験者中途採用していないので、希望者は当分いなくならないし、当分いろんな事は改善されないのかもしれないけど、それでも座して何もしないより、何かしてみようと思っている。
オブジェクト指向は大切と言うけれど
オブジェクト指向と相対性理論
続・オブジェクト指向は大切と言うけれど
上のblogすっごい話しが噛み会ってないようです。
id:kagamihogeさんはほとんど下請けの会社のプログラマーっぽい。id:JavaBlackさんがどういう立場の人なのかちょっとわかりずらい。
教育を広く実施し、人材紹介などをしている立場からすると、id:kagamihogeさんの方がリアルで、id:JavaBlackさんのは理想論ぽく感じる。
「一行一行を大切に書く心がけ」を「そんなのはプログラマの基本で常識」と書ける人はどのぐらいの人なのだろうと思ってしまう。
変数名がちゃんと書ける人がどの程度いるのだろうか。書けない人の方が寧ろ多いから、我々のような教育業者が必要とされている。多くの人は基本などは全く学んでさえいないし、自分でさえ学ぼうとしない。
きっとid:JavaBlackさんのような人だと、学ぶ意欲の無い人はやめてしまえと言うのだろう。
正直わたしもそう思うのだが、人を教えているとそうも言えない。
id:kagamihogeさんの例の用にそのプログラムを全部すてた方が早いプログラムというのは本気で多く、だからこそ、プロジェクトに問題が発生する。
一部では寧ろ問題が発生する事を望んでいるような傾向さえも見うけられる。
プログラマーの性能が上りすぎるのをいやがる企業だって存在する。プログラムの性能が上ると、トラブルが発生しなくなるから。
トラブルこそが飯のタネという所謂デスマーチ企業というのが大量に存在しているのも現実。
特に大企業ほど多い。1円で落札し、トラブルを発生させて、運用費用や改修費用を高くする事で損益を回収する企業が本気で実在するのだから。
某SIerはJavaで30億円の案件を実施したが、一人もJavaが書ける人がその会社にはいないなんて良くある事。
教育を実施していただける会社はすばらしく健全です。頑張っています。
わたしは教育を実施し、前向きである企業につくしたい。少なくとも「一行一行を大切に書く心がけ」だけでも教えられると思っている。
オブジェクト指向と相対性理論
続・オブジェクト指向は大切と言うけれど
上のblogすっごい話しが噛み会ってないようです。
id:kagamihogeさんはほとんど下請けの会社のプログラマーっぽい。id:JavaBlackさんがどういう立場の人なのかちょっとわかりずらい。
教育を広く実施し、人材紹介などをしている立場からすると、id:kagamihogeさんの方がリアルで、id:JavaBlackさんのは理想論ぽく感じる。
「一行一行を大切に書く心がけ」を「そんなのはプログラマの基本で常識」と書ける人はどのぐらいの人なのだろうと思ってしまう。
変数名がちゃんと書ける人がどの程度いるのだろうか。書けない人の方が寧ろ多いから、我々のような教育業者が必要とされている。多くの人は基本などは全く学んでさえいないし、自分でさえ学ぼうとしない。
きっとid:JavaBlackさんのような人だと、学ぶ意欲の無い人はやめてしまえと言うのだろう。
正直わたしもそう思うのだが、人を教えているとそうも言えない。
id:kagamihogeさんの例の用にそのプログラムを全部すてた方が早いプログラムというのは本気で多く、だからこそ、プロジェクトに問題が発生する。
一部では寧ろ問題が発生する事を望んでいるような傾向さえも見うけられる。
プログラマーの性能が上りすぎるのをいやがる企業だって存在する。プログラムの性能が上ると、トラブルが発生しなくなるから。
トラブルこそが飯のタネという所謂デスマーチ企業というのが大量に存在しているのも現実。
特に大企業ほど多い。1円で落札し、トラブルを発生させて、運用費用や改修費用を高くする事で損益を回収する企業が本気で実在するのだから。
某SIerはJavaで30億円の案件を実施したが、一人もJavaが書ける人がその会社にはいないなんて良くある事。
教育を実施していただける会社はすばらしく健全です。頑張っています。
わたしは教育を実施し、前向きである企業につくしたい。少なくとも「一行一行を大切に書く心がけ」だけでも教えられると思っている。



