【IT】一流プログラマーになるためには「1万時間の法則」ならぬ「3万時間の法則」が適用される [田杉山脈★]
■ このスレッドは過去ログ倉庫に格納されています
一流の人物は例外なく1万時間の練習に打ち込んでいるという「1万時間の法則」は、勉強やスポーツ、芸術などの分野で広く知れ渡っています。プログラマーのBreck yunitsはこの法則を信じて1万時間をプログラミングに費やしたのですが、実際に効果があるのかに自信を持てず、自身が尊敬するプログラマー25人に「あなたはプログラミングに何時間費やしましたか?」といった内容のメールを送ったとのこと。そして、返信があった5人の回答をGitHubに公開しています。
GitHub - breck7/30000hours: How many hours have you spent practicing programming?
https://github.com/breck7/30000hours
◆ドナルド・クヌース:5万6000時間
数学者・計算機科学者であるドナルド・クヌース氏は1938年に生まれ、初期のコンピューター「IBM 650」に出会って以来、50年以上プログラミングに携わっている人物です。クヌース氏はアルゴリズム解析の分野を切り開いた第一人者であり、プログラミングについて記された書籍「The Art of Computer Programming」の著作者としても知られています。また、「時期尚早の最適化は諸悪の根源である」といった言葉でも知られ、ソフトウェア開発の初期段階で最適化を行うべきではないとの考え方を持っています。クヌース氏は記事作成時点で存命中であり、スタンフォード大学で教べんを執っています。
◆ロブ・パイク:3万時間
ロブ・パイク氏は1956年に生まれ、1995年に「Limbo」、2009年に「Go」というプログラミング言語を開発したことで知られています。「UNIXはただ死んだだけでなく、本当にひどい臭いを放ち始めている」という言葉を残しており、自身のプログラミングに対する信条として「プログラミング5か条」というものを掲げていることでも有名な人物です。また、3万時間を達成するに至った自身の勤務時間も公開しています。
◆ピーター・ノーヴィグ:3万時間
1956年に生まれたピーター・ノーヴィグ氏も3万時間をプログラミングに費やしたとのこと。Googleで研究責任者を務めたこともあるノーヴィグ氏はAIやロボット工学の分野で活躍しており、NASAが開発した宇宙機「ディープ・スペース1号」の自律制御システムを設計しています。また、ノーヴィグ氏は1万時間の法則を提唱したマルコム・グラッドウェル氏に倣い「Teach Yourself Programming in Ten Years(プログラミングの独習には10年かけなさい)」と題したエッセイも執筆しています。
◆スティーブン・ウルフラム:5万時間
1959年に生まれ、ソフトウェア会社「ウルフラム・リサーチ」のCEOを務めるスティーブン・ウルフラム氏は5万時間をプログラミングに費やしたとのこと。ウルフラム氏は1986年に数式処理システム「Mathematica」を開発し、セル・オートマトンの研究を行っていることで知られています。また、ウルフラム氏は自身の活動の記録を細かく取っていることでも知られ、2002年に出版した自身の著書「新しい種類の科学」に「これまでにキーボードを1億回打鍵し、マウスを100マイル(160km)分動かした」と記述しています
https://gigazine.net/news/20210404-5-programmers-30000-hours/ 俺の経験から言えば時間なんていうほど関係ないかな
それよも高い数学英語力がなければいくら言語だけ覚えても遠からず高い壁を超えられなくなり
誰でもできるような簡単なお仕事しかできないで終わる感じ
後はその上で理論的思考が得意かそうでないかの向き不向きくらい 日本の優秀なエンジニアは見合った給料もらえないからサボることで給料の方に合わせるようになる
結局自分がわからないものを評価できない上が潰してんだよな >>1
コーディングは技術であって一流もくそもない
ちゃんとマネジメントが出来るようになってくれ 必要なのはそういう人材 >>322
コーダーとプログラマーはまったく違うよ
大手SIerはプログラミングもマネージメントもできない手配師ばかり。 まっ ユーザーインターフェースやシステムリンク考えるのと、フォルダー構成や、リソースをどこから持ってくるかなどという話は違うからな。
より抽象レベルの高い上位ができるようになった方がええ。 >>320
その数学英語理論力を付けるために時間が必要と言う訳よ >>293
お前は、ただ揚げ足取りしたいだけで質問に答えてないレスをした。
そういう頭の悪いヤツの回答読んで損した。 >>321
英語ができない時点で世界的にみて劣悪プログラマー >>318
そうエンジニアとかいっちょ前に名乗ってるがちょっとしたウェブ職人に過ぎない 昔から考えると分野が広くなりすぎて、時間がかかるようになっとるわな。
問題はその広がった分野のいたるところから出てくるから広く知っておかないと問題解決に時間がかかる。 一流になるのに一万時間必要な事と
今走り続けてる一流が三万時間やってることって矛盾してなくない? >>3
そもそもステップアップするもんじゃないぞ
全く別もんだ 3年必死こいて勉強して使えるようになったら別言語とかよくある
COBOLやってUNIXやってWindowsに移ってWEBに移って・・・って会社の都合でやらされる
そして20代後半になると開発からは遠のきコンサルとか実質営業とかの仕事をやらされる
日本のSEが技量低いのはそんなのばっかりだから 言語なんて1か月あればサルでもできる
難しいのは作るときのアーキテクチャやフレームワークを理解することだと言ってるだろ
特に英語しか情報がないものが多いのでそこで挫折するやつが多い 高校から、遅くとも20歳までにはそれなりの数のプログラムを書いているでしょうね 区分とかいうクソみたいな言葉を使って分岐するのをやめろ
データの構造すら満足に構築出来ないのもやめろ、1本クソみたいなレコードだけで考えるな 本当のPGは、やっぱ機械の世界でいう「マザーマシン」を
作れる奴だろね。 たとえば、コンパイラ/OS/デバッガ等。
それらマザーマシンを作るためのツールというか理論を
研究してるのが、コンピュータサイエンティストとか
云われる学者。
だから、文系でも成れる世間一般で云うPGとは
機械工みたいな職人だよ。 だから、訓練時間が
大きく関係する(=このスレの主題)。 コンテクトスイッチディスパッチャーとWindows並みのイベント駆動やメッセージパッシングでGUIの組み込みファームウェアなんてあちこちでやっているだろ?
作っているのは、一人か二人だけど、それだけ一流の人はいるという事。
それとまた違う一流は、現場に入って、ユースケースUMLからオブジェクト、ビヘイバーから必要なフォーマットまでシステム企画、制作できる人達。
カンパニーカードと福利厚生、クライアントシステムや銀行口座をリンクした企業ファイナンス等を作っているのがそういう人達で、わずかながら日本には居る。
コンパイラはRuby以後は研究者しか知らないが、居ることはいる。 RoRの制作者にもお会いしたことがあるがその辺のPGとはやはり違う。
まぁ 日本のPGにお願いしたいのは、せめてSOLID原則ぐらい守ってくれよなという事。 >>336
知ってると思うがその3つ以外の超専門職のコンピュータサイエンティストもいるぞ >>3
ジョブチェンジっていうか打ち合わせ、見積、契約、設計、プログラミング、テスト、納品、謝罪全部やってる >>337
Solid原則ってのググったが2年程度の経験があれば自然に身につくものばかりだな >>3
SEつか個人事業主で商談からプログラム、経理まで
全部やってる人はどんどん増えてる >>312
それは素人のレベル
プロとして、職業として、あるいはそのレベルのプログラミングの話をすると適正が大きい事がわかる
エクセルのマクロを組む、末端の規模の小さいアプリを作る、その程度なら適正によらず大抵の奴が一定の訓練学習で対応可能
しかし規模が大きくなったり、パフォーマンスやセキュリティ、再利用性、可読性、メンテナンス性まで考慮したコーディングになるとセンスというか素質や適性要素がどんどん高くなってきて、向いてない人は何を何年やっても無理なわけ
ある程度以上高いレベルのプロを目指すならスポーツ選手や芸術家になるのと同じで早めの適性の判断が重要になるよ >>314
そんな極端な例を挙げてもなぁ
普通のやつは部屋くらいは借りてるよ >>317
PGってのは日本では殆ど差別用語化してる
世界ではソフトウェアエンジニアとか開発エンジニア
単なるコーダーでは無い >>326
哀れなPGさんだったんだね、可哀想に… >>327
それは極論過ぎる
Googleだって英語苦手だけどコーディングに傑出した才能を持っているやつなんていくらでもいる
バランス良くなんて本質的にはどうでもいい、バランス欠けていても特化した能力があればいい世界 >>344
増えるかどうかもわからんよ
数学の授業受けて数学嫌いになる奴はアホほどいる >>350
極論でもないぞ
もはや最新技術もフレームワークも
英語直接読んで追っかけられんとどうにもならん
日本語出るまで待ってたら2周は遅れるし
今後は更に酷くなるだろう >>351
そういうのも込みで増えるかどうかで言えば増えるわな >>352
英語なんてわからなくてもコード読めば分かるからな
レベルの高いやつほど余計な説明は不要だからね
凡人だけだよ、英語がどうのって言ってるのは >>354
レベル低いと自分で言ってるようなもん
コード読んでもそれが意図した挙動かバグなのかは
ドキュメント読まんと分からんだろ まあ地頭ですよね
130以上の言語IQと圧倒的WMC 文系にも出来るとか言って募集してる学校や企業はやべえ >>353
根拠は?
上にも書いたけど学校で強制的に教えられたから嫌いになるとかよくある話だぞ あと愛知
創作活動としての表現力、自由度の高さ
だからこそ構造デザイン力が問われる
同じく構造デザインを必要とする経営、マーケティングとも相性が高い >>349
ちゃんと会話する癖をつけよう?
揚げ足取るために生きてる訳じゃないでしょ >>359
一般論として全くやらない、から、必須でやる、となれば理解度も経験値も増えるわけだし、そちらを選択する人間も増えるだろう
逆に増えないと今後得る方が不自然で、そちらこそ根拠を示すべきじゃ無いのw >>350
特殊ケースを一般化しないようにしませう
日本人がユーチューブとかに上がってるプログラム動画をみてもなにを言ってるか分からんのは圧倒的不利 >>363
負け惜しみお疲れ
コードなんてどんなに読んでも所詮コードよ
設計意図とか目的とかを正しく理解せず
計算式だけ正しいか確認してるようなもん
それが分からないうちは全然ヒヨッコだわ
もっと実務経験つもうな >>3
seは土木で言うと施工管理だろ
プログラムのスキルいらないじゃん
てか出来ないから工程管理だろ
今は違うのか この5人は超超一流だろ
一流になるのに3万時間とかいってはいないよな
勝手な解釈してるやつは論理が破綻してるからもしプログラム作ったことあるにしても最低のプログラマーなんだろな 正直いって学習したときの年齢を無視してるのは論外
10代の1時間は
20代の2時間に相当し
30代の5時間に相当し
40代の20時間に相当し
50代の50時間に相当する 未だにトップレベルになれんわ。
小学生のころプログラミング始めて、それなりの大学の情報系卒業して、上場企業でずっとプログラム書いてて年収1000万越えたとこまで来たけど、まだ世界のトップレベルにはほど遠い。 >>350
Google Japan のマネージャーに英語下手が多かっただけじゃね 俺は英語から入ったから、出来ないとパズルすぎね?とか思っちゃうけどw >>354
コード読んで初めて知るようじゃ遅い
開発段階でエンジニア連中とコミュニケーション取れないと
最先端の情報は手に入らない 英語が出来た方が圧倒的に優位なんだけど、大多数の日本人プログラマーにとっては
英語の方がハードルが高いという不都合な真実w これでもだいぶできるようになったほうだよ
20年前は大手企業の現場でも
「英語の資料しか無いので作業できません。和訳資料用意してください」
が通ってたんだから >>370
じゃあ増える(だろう)って事でいいんだね
ならこのくだらんやり取りも終わりだ >>383
> じゃあ増える(だろう)って事でいいんだね
実に低能らしい理解力だな
まあ根拠なくそう言い張ってりゃいいんじゃね?w >>97
PMもコンサルもSEも営業も、pg書いてくれる人を見下すんだよねー。 >>375
素質の問題だよ
素質がないと何年やろうがトップレベルにはなれんし、なる必要もない IT業界にいて思うことは、つまんねーことでマウント取る猿ばっかだよなってこと
それは、底辺の5chでも変わらんのねw >>387
まぁプロコン問題なんて素養あるやつは学生でも解くし
何年プログラムしてても経験で解けるもんじゃないからな >>381
30年近く前、田舎の弱小IT企業でさえ、英語のマニュアルだったぞ
欧米製の大型使うシステムだったから
元は大手がぶん投げて、結局田舎までたどり着いた
しばらくして和訳マニュアルが出てきたけど、
IT素人の翻訳だからゴミだった >>388
コミュ障天国だから温かい目で見て静かに距離を取ろう 入札のプレゼンに来たSEに、
「行数で良いですが、あなたはこれまでどれくらいプログラムを書きましたか?」
と尋ねたい。名刺の肩書がアーキテクトとかいうSEもいるが。 情報処理試験のPMとか、会社でもステップ数で工数やバグ摘出件数見込んでるけど、外国でも本当にやってんのかな?
日本の大規模プロジェクトだと、たいていPMとか数字集めと鉛筆ナメナメに時間使ってるけど >>394
まぁ事前計画が最重要されるお国柄だわな
計画段階で「バグ見込み件数」とか求められるからね
ステップ数はアホと思うが
他に馬鹿でも納得する指標がないからしゃーない
んで計画と一致しないと見込み違い叱責されるから
「あとバグxx件の予定だからこれはバグにしよう」とか
「検出時期ずらそう」とか「不具合じゃない仕様だ」とか
数字合わせ遊びに奔走することに
海外だとまず作ってみて検証して
市場が受け入れ可能なほどにバグ取れたらリリース
なんてノリじゃないかね知らんけど >>393
おまえは今まで食ったパンの枚数をおぼえているのか? >>395
とっくに中抜き万歳チェック杜撰なお国柄になっとるよ >>395
バグが少なくても「テスト不足が疑われる」って怒られるのマジ頭おかしいよな。
工業製品作ってるときの品質管理法を流用してるんだろうけど、プログラムのバグが正規分布に従って発生するかよ。 >>397
どっちかと言うと中抜き屋が
「自分ら仕事してます」アピールする為に使われるのが
ステップ数元にしたバグ出し計画&進捗表と思うぞ
実際発注元はその進捗表を元に
「進捗は計画通りですボス」とかやってたり
なんか全員で喜劇をやってる気がしてくるが
ところがどっこい、これが現実…! >>394
定量評価するための指標としてはコードの行数やステップ数は大きな基準の一つだし、他に変わる指標がない場合が多いからしょうがない
ステップ数以外の指標も使えばいいだけの話であってステップ数を使わないのは逆におかしいし、それをアホ扱いする方がアホ >>401
いやモジュール単位で改変率*複雑度とか
内部ではやってても偉い人がそれじゃ納得せんのよ
「この計算式の根拠は?」「どっかで採用実績あるの?」とか
聞いてきてメンドクセ、ってなるから
結局対外的にステップ数に落ち着くって話 >>399
コーディングなんて組立作業とたいして変わらんよ
ネジ締めの代わりにキーボードと言うボタン押してるだけやし 大して変わらんがまぁいくらか複雑な抽象作業なので少しはアタマが必要だがまぁその程度 品保のゴミを黙らすのとどっちが時間かかるかで言うと適当に資料埋めた方がまだマシなのが >>404
大手だと阿保みたいなところまでライブラリ整備して
組立作業みたいな感じでコーディングさせるところがあるから
>>403も間違っちゃいない
ただし、ど素人の外注大量動員して回しているようなところで成り立つもんだろうけど
ここで言ってるプロって数学と論理学の素養が当たり前にあって抽象的な概念も
余裕で頭の中で組み立てられてAIなんかも理解しているような奴らの事だろ?
日本にゃそんなのいないよw 日本ではC/C++で本格アプリケーション書けるプログラマが少なすぎる
ネットワーク全般に精通したプログラマもいないし
なによりハッカーがいない
スクリプト言語使った業務やWebの受託開発ばかり
ちょこちょこと言われたとおりに
これじゃ世界と渡り合ってゆけない >>411
そういうのうまいの東欧とか経済ではおかしなとこばかりだぞ
いいのか悪いのか知らないが
銃器関係の発展とリンクしてる 新しい概念を3分で大づかみして3時間で一通り理解して3日で仕事にできるようでないとな
基礎からたらたらとボトムアップしてしか学べない人間は使えない >>403
よしじゃあiOS並のエコシステムを
人海戦術で作ってみようか
そのコーディングの塊が日本じゃマトモに作れないんだが
そういやこんなのもあったな
JTBのバーチャル日本
https://www.excite.co.jp/news/article/Buzzap_70181/
まぁこれなら組立作業でできるのかも知れん 英語で言えば日本人は単語や文法を永遠に学び続ける
ボトムアップどころかボトムに留まり続けるアホ日本人 >>1
プログラム言語から、ひどい臭いがする。
かと思えば、いい臭いがするのは・・・あんまりないけど・・・時々あるんだってさ。
なんでこんなことになってしまったんだろう。(´・ω・`) >>411
大学でC/C++とネットワークもやって新卒でやったけど、報われないから何千時間もやる前に
辞めちゃうんだよ。相方が廃人になってフロントエンドに逃げたっけ。何日も徹夜して手柄は
会社来ずテレビゲームやって遊んでたオッサンだったかな。 つかe-taxとか使ったことないだろ
マイナンバー連携といい、なんで簡単な組立作業で
こんな低クオリティなアプリが出来上がるんだろうね
日本のソフト開発体制が上からおかしいとしか思えんのだが ■ このスレッドは過去ログ倉庫に格納されています