ขนาดวิดีโอ: 1280 X 720853 X 480640 X 360
แสดงแผงควบคุมโปรแกรมเล่น
เล่นอัตโนมัติ
เล่นใหม่
暗記というよりは使っていくうちに勝手に覚えるイメージ。忘れたらまた調べる。
一度覚えれば滅多に忘れないが複数言語を併用してると各言語の文法や関数が脳内で混ざるw「コンパイルエラー? ああ、これは Perl の文法だった。今書いてるのは C だ」ということはよくある(←忘れとるやないかいっ!)混乱したら調べれば良いのだ。プログラミングというか、ソフト開発で最重要の言語はズバリ日本語。設計書などを判り易く曖昧なく記述し、対顧客や開発チーム内で誤りなく意思疎通できることが大切。ソフト開発者としての人生でコード書いてる時期なんか最初の10年くらいなのだから。
ほんとそれ。コード書く時間より読む時間のほうが何倍も多い。それ以上に、仕様に書きおこす時間と引き継ぎのための資料作ってる時間、引き継いだ資料を解読してる時間のほうが多いからね。
「プログラミングは調べればいい」の感覚は、「英語は辞書引きながら読めばいい」みたいな感じだと思ってる。難しい単語や知らない構文、言い回しは辞書やネットで調べてわかればOK、でも主語述語の存在自体や本当に簡単な会話文なんかはわかってないと話にならない、みたいな。
そうそう辞書で調べながら英語話してたら、会話にならないのと同じなんですよね。初心者エンジニアは基礎単語と文法を丸暗記すべき!
作るものによって使うメソッドとかクラスとか違うし、覚えてもバージョンの違いで変わったりするから覚えることが無駄説すらある。とはいえ、それは基本的な記法とか簡単かつバージョン返歌の少ない部分は全部覚えてることが前提だけど。
記憶力よくないので最近だと「あの引数なんだっけ?」どころか「なんかAPIあったよな、なんだっけ?」くらい覚えてない。ChatGPTが嫌がらずに教えてくれるので助かってます。
暗記のとらえ方って人によって違うから難しいなただリファレンスとか一通り目を通しておけば、発想や調べるとっかかりがまるで違う「こう書こう」という発想は機能を知らないと出てこない
プログラミング以外にも基本情報技術者試験で出るような知識は最低限暗記しておかんと会話についていけん
@@ゆうま-s5r そういう普遍的な基礎知識は必須ですよね。後はオブジェクト指向とかですかね。ただ、細かな言語仕様とか全メゾットを丸暗記する必要はないと思います。言語のバージョンアップで変わったりもしますし。
コンピュータの基礎知識を身につけている前提で、正しくコード書けるなら丸暗記しなくても良い。
プログラミング暗記しなくてもできるレベルならコンピューターなんか1000年前に開発されてたもおかしくない
正しくコードを書くためには暗記が必須なんですよね。そして実務では正しいコードを早く書けないと話にならないので、スピードの観点からも暗記はどうしても必要
その論理って、数学の証明問題と同じ言い分じゃん。2次方程式の解の公式を覚える必要はない。ただし、自分で導出できるなら。みたいな。自分で解の公式を出せるから覚えなくていいという理屈。(なお実際には導出できた上で、さらに覚えておくのがいい)だから覚えなくていいとか言っている連中は、※ただし理解と自分で書けることが前提って言葉を省略しているのではないかと思うんですよ。
@@IsncuskncumaC++とかC#とかJavaScriptの全メゾット覚えるのは無理だと思うけど。大体最近の言語にはこんな機能があるというのと出来れば各言語の関数名ぐらいを覚えていれば問題ないでしょ。引数とか返り値の仕様とかはIDEである程度わかるし。
丸暗記はしなくていい。でもニッチでピンポイントなメソッドはそもそも調べる発想が出ないからそこ知ってるかで生産性に激しく差が出たりは稀によくある。
2:20の完全に理解したはCSSやると「どう作るんだこれ!?」ってなるとこまでセットズレてるのって地味にむずかったはず
もうヤケクソになって自分のモニターサイズでしか合わない-10pxくらいするやつ
ITは情報の劣化が早いから独学で知識を仕入れられない奴は、一生知らないことばっかだぞ
学習方法として、ひたすらコードを書きまくるか、単語帳作って暗記するかだと、後者の方が学習速度が速いんですよね(実体験)英単語を全然知らないのにとりあえず英語書きまくっても上達する訳ないよね単語帳学習が不要になるのは、プログラム実行時のエラー文を読んで自分で改善方法が思いつけるようになったら。それまではひたすら単語帳見まくって暗記をこなした方がいいと思う。
おれは、これに賛同する。
少なくとも暗記しようと思って覚えることはない。覚えるまで使うだけ
暗記とか考えたことないな。コーディングしてて頻繁に使うものは毎回調べてるうちに勝手に覚える。だから結局のところ、ひたすら作りたいもの作ったりして触りまくることが大事だな。
20年ぐらいこの業界について「なんもわからん」がマジで増えてきたので大学に通いなおしてます。大学マジで良いですよ。。
最近わからんことが増えてきたのに対して大学って普遍的な知識の学習が主になると思うんだけどどういう感じなのか気になる。
@@うーすけ-d2n 仕事で各種ライブラリを使っていると思いますが、RDBは数学の集合論の実装に過ぎない、型については圏論、通信などは微分積分などと理論背景を知っていることでライブラリを組み合わせて何となく動かす、ライブラリ作者が考える「おれの考えたさいつよ」は作者に思想にすぎないやろ、ライブラリを神とあがめる必要などどこにもないというポイントに行きつくので作者はCSごりごりが多いのでその人の思想背景について同じ目線で評価、会話ができるようになる、というかそのレベルで働かないと仕事にならねぇ、いつまでも変わりまくるAPI仕様に追いつくだけ、というのからは距離を置いて静的なものへの渇望を中年は考えがち。コア理論がわかっていればAPI仕様は表層やろ、調べたらすむ話や、とすてて契約関係とかチームビルディングとか要求されてる仕事に時間をさける。大学の勉強でオブジェクト指向の授業とかあるけれど、いきなり「皆さんがいうオブジェクト指向は本質的に妥協の産物なのでこれだけが正しいと妄信するのは見識が低いと言わざるとえません」って言われる感じっす。で、そのあと歴史的経緯とかどういう妥協があるのか、オブジェクト指向の限界とかについて授業が進みます。そんな感じ。微積だとこれが5G通信のの理論的根拠です、とか教えてもらえていろんなRFCが「わかる、理論を仕様化してるだけじゃな」ってケースが増えていきます。回答になっていますでしょうか?
大学院ですか?学部ですか?
@@futonchann 学部です。文系卒業なので放送大学の情報コースに入ってます。学位授与機構つかてCSの学位に繋げるつもりです。微分積分学んで、あれ、これ、信号分割の基礎理論で5Gとかでも使われてるんじゃね?ってChatGPTに聞いて教えてもらって毎日「へー」っとなっています。エンジニアの仕事はほとんど基礎理論そのままの組み合わせですね、っていう最近です。ベイジアンフィルターとか。毎日がまた楽しくなってきました。
for loopという制御文の存在が抽象としての理解の対象で、それは必要だけど、for loopを各言語でどう書くかなどの具象は滅多に書かない言語なら忘れててもいいって感じ抽象や概念の理解を暗記と呼んでないからいらないといわれると考えてる
リンゴの英単語ってaから始まるよなってのを知ってることが重要。それを暗記とは言わないし、知ってるべき種類が膨大だから業務経験と年数がものを言い、更に最新知識もぶち込む必要がある。
数学で公式は覚えなくていいを真に受けたのと同じ感じある
チョットデキルの元ネタの元ネタはフィギュアスケート選手プルシェンコ氏の「ワタシハスケートチョットデキル」だったり
暗記というより丸暗記は不要派です個人的には細かい仕様とかをお客さんから聞かれた時答えられると強い気もします(ここのオプションどうだったっけみたいなやつ)
C++を一年間勉強している人だけど、暗記というより問題を解くほうがいいよ。頭を使うほうが印象に残って覚えやすいし、楽しい。ただし具体例をコピペするだけなのは非推奨です。
C++の辞書のように分厚い言語仕様を丸暗記は無理があるしね。年々進化するから増え続けるし。
語学だって、外国語1つある程度使えるようになったら、問題があればその都度調べるだけだし、周辺の多言語習得は要点把握で応用効かせられる。最初の一つだけはマジで頑張れ、教えてくれりゃ楽だし、楽しめれば最高。
youtubeとかネット記事とか chatGPTとかがあるから、今の時代は独学といえどもサポートが手厚いとはいえ、能力が身についた人には能力がある(進次郎構文)なので、その過程が独学が他者から教わったかは、本当にマジでどうでもいい
「遊びと言って休日に仕事する」は「業務時間中には優先度の問題で取りかかれないものを休みの日にする」の意味が多いイメージがあります。これはテックリードや開発リーダー、プレイングマネージャーになると増えます。というのも、立場上コード全体をある程度見渡せないと仕事にならないけど、開発自体は多人数で行うし、レビューで全てを指摘するのは無理だし無駄なのでそうしてるって感じが多いかなと。
暗記が必要と感じた事は一度もないが、ある程度知らないと何ができるのかすら分からないしイメージできないから、そういう意味で知識を蓄えることは必要よなあとはやってるうちに覚える
本当にこの人プログラミングの才能あるなって人は遅くても中学生ぐらいから独学でプログラミングやってて大学や専門学校ましてや社会人になってからはじめた人は一生追いつけない壁みたいなものを感じる
脳みそに機能へのポインタ(実装は調べればいい)を作る作業を暗記と呼ぶか... ですね
機能への関数ポインタかな?
6:42 僕も自分で調べて解決できるのが理想だと思うけど、先輩後輩同僚に聞くのも悪くはないと思う。その方が早かったり分かりやすかったりするし(侍エンジニアとか如何でしたかブログをハシゴするよりはきっとマシ)。あと個人的に、「まず自分で調べろ」の環境だと会話自体減りがちなので「何度でも聞いていいよ」の環境の方が好き。もしかするとこれら2つも文面通りに受け取っちゃいけないエンジニア語録かもしれないけどw
俺のちょっとした経験上だとエンジニアは勝手にいっぱい抱え込んだ結果イライラしてるのか、“なんでも聞いて”とか“この人に聞いてね”と言われて聞いてもイライラをぶつけられることもままあるだからイライラをぶつけられてもちゃんとメンタル保てるならガンガン聞くのがオススメ“こいつに聞きたくねぇなぁ、すぐキレるカスだし”くらいの気持ちを持とう
だいたいプログラミングのルールとか使う道具はどれも似ているので、まず実現したいことがあって、頭の中でロジック描いて(場合によっては設計書書いて)、コード書き始めて始めて慣れてない、忘れてる言語なら引数戻り値なんだっけ、って調べることが多いかなあ。日本語の標準語と方言ぐらいの距離感。でもそれぐらい精神的にどっしり構えられるに至るまでには10年はかかってる感じある。
最近は統合開発環境を使ってコードを書くのが普通になったので、ライブラリ関数の引数の順番とかをいちいち覚えなくとも良くなった。いや、統合環境でコード書くのは最近というか、もう何十年も前から普通になっているか。
自分打ちすぎて手が関数名暗記してて草
今回の内容、プログラミング界隈の方言の解説だ
術式は朧げでも、論理は覚えている。つまり、そういうことだ。
@@東西権平 今どきの言語で共通に使える知識が重要ですね。
関数の使い方は調べたらいいどんな関数があるか(何ができるか)はどんどん覚えないと上達しない大切なのはググり方、やりたいことの実現方法の調べ方を覚えることだと思います
まあ、引数とかメゾットの仕様とかは複数言語使っているとごちゃごちゃになるし今どきIDEで調べられますし、関数名と大まかな動作ぐらいとプログラムの基礎的な知識ぐらいを覚えておけば問題ないですねz
コーディングはあやふやでgitの操作とか環境構築とかウロ覚えだけど今はAIに聞けば一発だし、暗記してないって言っても手癖で書いてもなんとなく動くから案外覚えてるものだよそれにTracebackでどこがダメなのかわかるし
プログラミング言語って呼び方の通り新しい言語覚えるのとほぼ同じだから単語は覚えないとどうしようもない
自分も端くれですけどものすごく頷きながら見てて全てに納得してます
ChatGPTが嘘をついているのかがすぐに分かるスキルやコードレビュー時に必要となる考えをもとにコメントできるかぐらいは覚えていく必要があると思う
覚えなくてもいいはホントだけど基本知識が無いと正しく調べることが出来ない
プログラミングの基礎の考え方やコンピュータの動作さえある程度分かっていれば、言語はなんでも使えるよってのは言われたなぁ
使うシーンに応じて何を使うのが最適かっていうのを考えるのにちょっとした暗記力はいるかもpythonのnumpy行列とかディクショナリーは知ってる知ってないで作業効率全然ちゃうし
入門レベルなら教わるのもいいと思うけど、それ以上になるとそもそも教わる場がなくなるのよね勉強会参加したり難しい洋書を読むしかなくなるし、大半はそこで挫折する
プログラミングは絵を描くようなイメージがあるわ。先に頭の中でコードのイメージがあって、それをコンピュータ上に書き写す感じ。理屈より先に感性でプログラムを作ってる。理屈は人に聞かれたら後付けしてる。
意思伝達に齟齬が生まれない程度の知識を覚えるのは必須としても、それ以外は基本実践ベースでガツガツ書いていく方が使える人材になれると思う。
まず業種と職場によるだろオフィスソフト作ってるとこと、ゲーム作ってるとこでもだいぶ違うあと今から座学で勉強する人はそりゃ覚えた方がいいんじゃない?覚えなくても調べればいいじゃんとか言ってるなら、もう勉強しないで社会でればいい話だから未熟なまま実践に放り込まれた人は手動かすしかない今回はこのパターンなんだから、とりあえず都度調べてこなしてけが正解だと思う
プログラミング真にちょっとしかできない時の言い回しに困りそう。完全に理解したはネタ知らん人からすると自信過剰なやべーやつだし。
結果的に覚えてるだけで、例えば大学受験の歴史で暗記するみたいに積極的に丸暗記する必要はない
え?linuxコマンドとかって暗記しないんですか?私は暗記する派なんですが🥺
コマンドはちゃうやん
わざわざ単語帳みたいなの作って暗記はしてないだろ?使ってるうちに覚えてたって感じでしょそれは暗記とは言わないよ
コマンドはちゃうのか?😵💫
うーん、単語帳とかは使わないけどマニュアルを読んでるとき覚えようと努力はするかな複雑なコマンドとかは何回かこの工程が繰り返されちゃうんだけど
コマンドはチョットワカル。でもオプションは覚えてなから毎回調べる。
独学でできない人のコードは冗長コードなんだよな。
お客さんに説明するときにいちいちネットで調べてる暇なんてないから、概念を把握して記憶しておく必要はある自分一人で作業するときも作業の度に調べ直してるんじゃ効率悪いから、やっぱりちゃんと脳に記憶させておく必要がある暗記しなくていいのは、その覚えている概念を実現するために具体的にコードをどう書いていくかですねてかそもそもそんなもん暗記しようとする人なんているのかな?
概念は覚えてる必要性があって実際の書き方とかは覚える必要がないって感じだよな
for文は怖すぎて感で書きたくない
独学のくだりはその通りと思いますね。私も、独学でプログラミングできるようになるか、と相談されることが結構ありますが、「昔はそれが普通だったけど、今はかなり無理。」とか答えてますね。
「暗記」ってニュアンスの違いかなぁ個人的には「for 文の存在を『暗記』する」とは言わないfor 文の存在自体は50年くらい間を空けない限り多分一生忘れないはず覚えるのに努力が必要ないことには「暗記」は使わない
プログラミングを学ぼうとして、環境構築で躓き、そもそもプログラミングにすら辿り着けないあるある。最初は環境構築不要なスクリプト言語で、素数見つけたり、うるう年見つけたり、簡単なソートアルゴリズムで、結果は標準出力させてればええねん。
「体で覚える」と「暗記」は全然違うからねプログラミングは前者
知らず知らずのうちに、暗記してるから。
それな。いちいちノートに書き写して暗唱とかしている人がいる事の方が衝撃だわ。
最初の言語にPythonとか選ぶタイプのガチ初心者って何を期待してるんだろう。いわゆる作りたいものがないけどプログラミングやりたい人。ゲーム作りたいならUnity(C#)とか、WebフロントならReact(TypeScript)とか、やりたいことで技術を選ぶはず。他意はなくて純粋に気になる。
自分も動的なWebサイト作りたいからJavaScriptから始めて今はTypeScriptだがPythonはちょっとした自動化とか関数計算代わりにしか使ってないなー。Pythonガチでやる人が意外と多いのは確かに不思議。
昔より独学で勉強できる環境はそろっている。複数言語を扱うようになると、とても暗記できるような世界ではないよ。
Web系はライブラリの移り変わりが激しいしね。JavaScriptの基本言語仕様すら追加され続けるし。
言語の基本的な構文を覚えるだけなら、慣れてる人は1日~数日かからないですね。それに対してライブラリは無数にあるので切りがありません。例えば〇〇〇の処理が必要なとき、自分で作るか?or ライブラリにあれば使う。の2択になります。ライブラリにはよく使われそうな処理が便利にまとめられていて、日に日に増えますから、覚えようと思っても切りがありません。プログラミング初心者にとっては、どれが言語の基本構文でどれがライブラリなのか見分けがつかないので、それが原因でこの動画で言われてるような勘違いが生じるのでしょうね。本当にプログラミング言語と呼べるのは、for文とかif文とか、変数の宣言とか、たったそれくらいです。それ以外はすべて、プログラミング言語では無く、言語に付属するライブラリです。 ライブラリは、自分が作ったか、他人が作ってくれたかの違いしか無いので、よく使うものだけ覚えるのが普通ですね。他人が作った自分にとって何の意味も無い処理を覚えるのはただのアホです。そして、何を作りたいのかで必要なライブラリは毎回変ります。例えば .Net Framewok もライブラリです。これも、自分で作るか、他人が作ってくれたかの違いしかありません。クラスの数が膨大すぎて暗記するのは不可能ですし、自分にとって必要のないクラスの使い方を暗記する意味もありません。 ただし、Visual Studio はちょっと特殊で、言語それ自体に覚えるべき便利な機能が結構あります。たとえば、配列などの複数のデータを、データベースの命令文のように簡単に処理できるLinqこれを覚えるとプログラミングに掛かる時間が飛躍的に減少します。あとは、クラスのインスタンスを作成する際に型を動的に厳密指定できるGeneric ジェネリック型指定。これを覚えるとクラスの使い勝手が劇的に変化します。クラスのインスタンスを数値のように計算可能になるOperator演算子とか、上げたら切りがないほど機能が豊富ですね。こんなに多彩な言語はちょっと特殊です。
C#かな?C++やJavaScriptも言語仕様の複雑さで言ったら負けてないと思う。年々進化し続けているし。
文字列切り出しとか文字列検索系のメソッドの開始インデックス、未だに0始まりか1始まりか調べるわwww
言語によるから複数言語使っていると訳わかんなくなるな。
@@resistan-y1hホントにそれ
よく使うコマンドは暗記したらいいが、アルゴリズムの丸暗記は応用できないからやめるのねん🐮🖐️
覚えようとか暗記しようとか考えてるよりさっさと実践して試行錯誤したほうが良いし、動画で言ってるような基礎的なことはその試行錯誤の中で嫌でも勝手に覚えるという意味で暗記は不要
基本情報だったり、ITの普遍的な事は義務教育の時と何ら変わらない温度で勉強しなきゃいけない。暗記不要とか言ってる人達の言葉に絶対に耳を貸しちゃいけない。その人達は"暗記不要なレベル程度"の仕事しか任されてない。RPGの最初の村で偉そうにしてイキがっている冒険者に過ぎない。「すみません。知りませんでした。」が通じるのは若い間だけだから、その貴重な無敵時間の価値に気づいたほうが良い。今座っている椅子がいつまでもいつまでも存在すると思わないほうが良い。
そもそもプログラミング関係でまともに丸暗記できるような規模のまともな環境など現代にはもうほぼ存在しない
C++の全仕様とかJavaScriptの全仕様覚えている人は一部の天才だけだと思う。基本的な四則演算、ビット演算、ループや分岐、構造体やオブジェクト指向などは書いているうちに覚えるしな。
大人「掛け算なんて暗記いらない筆算でいいやろw」小2「いや掛け算99の暗記いるやんw」ってこと?
どちらかと言うと算数なんてできなくてもいいやw⇒いや、四則演算のやり方は知ってるよね?程度九九の暗記までいけるならプログラミングで言うとアルゴリズムってものを覚えるくらいの難易度かな?
数学の問題解くのに公式なんて覚えなくていい→公式の存在、使い方が分からないとダメだよね。くらいじゃない?
物理で公式は微積で導けるから暗記する必要はないって言ってる感じなあそんで真に受けたやつは微積できないっていう
掛け算なんて足し算でええやろぐらい
chatGPTに聞いた方がいい
アセンブラだけやっとけば、あとは何も知らんでもどーにかなるっていうか、スタックポインタとインストラクションポインタ、アドレスだけでなんとかなる64KB超えると地獄だけど(´・ω・`)
今どきオブジェクト指向や関数型の影響を受けたメゾットぐらいはしっておかないとレガシーシステムの保守ぐらいしかできなくないか?まあ、組み込み系なら問題ないか。
えーー!?覚えの面倒面倒!!今はAI時代チャットGPT最高!
ITで無駄なことなんて一つもありませーん
「このシステムなら特別なスキルは不要だし、普通レベルのエンジニアで対応できますね」って言ったら連れてきたやつがポンコツで、「プログラム書くしかできない人は役に立ちません」って言ったら困惑されたので、「自力で学ぶ力がない人はだめです」って言ったら唖然とされた。何か勘違いされたようだけど、よくわからない。
そりゃ具体的に技術要件提示しないで連れてきた人に文句言ったら唖然とされるわなw
8割型暗記の世界やろw
そんなわけねーだろ暗記ゲーやってるエンジニアとか仕事できんよ、マジで
@@sh723 ?知識知見もたずしてどうやって仕事するん?
@@stnetwark4487 あのな?勘違いすんな、理解する事と暗記は全然別物なんだよ。覚えようとしたら、どれだけの情報量を覚えないといけないか分かってねーからそんな事言えんのよ、高卒現役エンジニアの俺が言ってんだから間違いねーよ。料理と同じでな?色んな調味料を駆使して料理を作るわけだが、この時は、この調味料とこの調味料を何グラム混ぜる事で、この旨味成分がこの辛味と合間って、こう言う味になる。。て言うのがプログラムなんだよ。料理でも本格的になると見た事ない調味料、何に使うかわからない調味料なんで沢山あるのに、プログラムに関する情報なんて、とんでもなく膨大なわけよ。それなのに、8割暗記?お前やってみろって言いたくなるわ。俺も最初は覚えようとしたけど、無理なのが分かった。そして、皆がどうしてるのか、先輩がどうしてるのかを食い下がって聴きまくった、研究した、調べまくった。で分かったこと、「プログラムは覚えゲーでやったら死ぬし、伸びない」じゃあ、どうするか、覚えるんじゃない「理解すんだよ」使い方、パラメータの飛び方、webサイトはどのようにして画面に表示されるのか、、など基礎的な知識を「理解」する事で、初めて、プログラムていうのは自立して書けるようになんのよ
@@sh723 すげードヤってクソみたいな長文書いてるけど普通にプログラム経験ありますけどー暗記というワードの捉えようの問題だわ基礎をしっかり身につけにゃ話にならんってことが言いたかっただけ理解したことを忘れたらなんも意味ないからな
捉えようの問題ならば、なぜ自分の捉え方が正しいことを前提に突っ込んでるんだろうかこの人は暗記の辞書的な定義は「そのものを見ずにそらで言えること」この動画でも例示されてるfor文の話とかがいい例ですよねもし忘れてしまったとしても、それは全く知らない状態(=勉強前の状態)とは違っていて、頭の中にインデックスが張られてる状態になるのよ間違いを認められず、前提を自分の都合のよく解釈、捻じ曲げちゃったらどんな主張でも通っちゃいますよ
昔ある外国人が「プログラミングは暗記するな!」って動画だしててコメントは基本賛同が多かったけど「インド人が爆笑してるぞ」って煽り?コメントがあったんで何の気なしに「インド人の先生がソラで手書きで黒板に十数行のJavaのコード書いてスゲーと思ったわ」ってレスしたら煽り仲間だと思われたのかなぜかワイだけそのコメント非表示になってるわ
暗記というよりは使っていくうちに勝手に覚えるイメージ。忘れたらまた調べる。
一度覚えれば滅多に忘れないが複数言語を併用してると各言語の文法や関数が脳内で混ざるw
「コンパイルエラー? ああ、これは Perl の文法だった。今書いてるのは C だ」ということはよくある(←忘れとるやないかいっ!)混乱したら調べれば良いのだ。
プログラミングというか、ソフト開発で最重要の言語はズバリ日本語。設計書などを判り易く曖昧なく記述し、対顧客や開発チーム内で誤りなく意思疎通できることが大切。
ソフト開発者としての人生でコード書いてる時期なんか最初の10年くらいなのだから。
ほんとそれ。
コード書く時間より読む時間のほうが何倍も多い。
それ以上に、仕様に書きおこす時間と引き継ぎのための資料作ってる時間、引き継いだ資料を解読してる時間のほうが多いからね。
「プログラミングは調べればいい」の感覚は、「英語は辞書引きながら読めばいい」みたいな感じだと思ってる。難しい単語や知らない構文、言い回しは辞書やネットで調べてわかればOK、でも主語述語の存在自体や本当に簡単な会話文なんかはわかってないと話にならない、みたいな。
そうそう辞書で調べながら英語話してたら、会話にならないのと同じなんですよね。
初心者エンジニアは基礎単語と文法を丸暗記すべき!
作るものによって使うメソッドとかクラスとか違うし、覚えてもバージョンの違いで変わったりするから覚えることが無駄説すらある。とはいえ、それは基本的な記法とか簡単かつバージョン返歌の少ない部分は全部覚えてることが前提だけど。
記憶力よくないので最近だと「あの引数なんだっけ?」どころか「なんかAPIあったよな、なんだっけ?」くらい覚えてない。
ChatGPTが嫌がらずに教えてくれるので助かってます。
暗記のとらえ方って人によって違うから難しいな
ただリファレンスとか一通り目を通しておけば、発想や調べるとっかかりがまるで違う
「こう書こう」という発想は機能を知らないと出てこない
プログラミング以外にも基本情報技術者試験で出るような知識は最低限暗記しておかんと会話についていけん
@@ゆうま-s5r
そういう普遍的な基礎知識は必須ですよね。
後はオブジェクト指向とかですかね。
ただ、細かな言語仕様とか全メゾットを丸暗記する必要はないと思います。
言語のバージョンアップで変わったりもしますし。
コンピュータの基礎知識を身につけている前提で、正しくコード書けるなら丸暗記しなくても良い。
プログラミング暗記しなくてもできるレベルならコンピューターなんか1000年前に開発されてたもおかしくない
正しくコードを書くためには暗記が必須なんですよね。
そして実務では正しいコードを早く書けないと話にならないので、スピードの観点からも暗記はどうしても必要
その論理って、数学の証明問題と同じ言い分じゃん。
2次方程式の解の公式を覚える必要はない。ただし、自分で導出できるなら。みたいな。
自分で解の公式を出せるから覚えなくていいという理屈。
(なお実際には導出できた上で、さらに覚えておくのがいい)
だから覚えなくていいとか言っている連中は、※ただし理解と自分で書けることが前提って言葉を省略しているのではないかと思うんですよ。
@@Isncuskncuma
C++とかC#とかJavaScriptの全メゾット覚えるのは無理だと思うけど。
大体最近の言語にはこんな機能があるというのと出来れば各言語の関数名ぐらいを覚えていれば問題ないでしょ。
引数とか返り値の仕様とかはIDEである程度わかるし。
丸暗記はしなくていい。
でもニッチでピンポイントなメソッドはそもそも調べる発想が出ないからそこ知ってるかで生産性に激しく差が出たりは稀によくある。
2:20の完全に理解したは
CSSやると「どう作るんだこれ!?」ってなるとこまでセット
ズレてるのって地味にむずかったはず
もうヤケクソになって自分のモニターサイズでしか合わない-10pxくらいするやつ
ITは情報の劣化が早いから独学で知識を仕入れられない奴は、一生知らないことばっかだぞ
学習方法として、ひたすらコードを書きまくるか、単語帳作って暗記するかだと、後者の方が学習速度が速いんですよね(実体験)
英単語を全然知らないのにとりあえず英語書きまくっても上達する訳ないよね
単語帳学習が不要になるのは、プログラム実行時のエラー文を読んで自分で改善方法が思いつけるようになったら。
それまではひたすら単語帳見まくって暗記をこなした方がいいと思う。
おれは、これに賛同する。
少なくとも暗記しようと思って覚えることはない。覚えるまで使うだけ
暗記とか考えたことないな。
コーディングしてて頻繁に使うものは毎回調べてるうちに勝手に覚える。
だから結局のところ、ひたすら作りたいもの作ったりして触りまくることが大事だな。
20年ぐらいこの業界について「なんもわからん」がマジで増えてきたので大学に通いなおしてます。大学マジで良いですよ。。
最近わからんことが増えてきたのに対して大学って普遍的な知識の学習が主になると思うんだけどどういう感じなのか気になる。
@@うーすけ-d2n 仕事で各種ライブラリを使っていると思いますが、RDBは数学の集合論の実装に過ぎない、型については圏論、通信などは微分積分などと理論背景を知っていることでライブラリを組み合わせて何となく動かす、ライブラリ作者が考える「おれの考えたさいつよ」は作者に思想にすぎないやろ、ライブラリを神とあがめる必要などどこにもないというポイントに行きつくので作者はCSごりごりが多いのでその人の思想背景について同じ目線で評価、会話ができるようになる、というかそのレベルで働かないと仕事にならねぇ、いつまでも変わりまくるAPI仕様に追いつくだけ、というのからは距離を置いて静的なものへの渇望を中年は考えがち。コア理論がわかっていればAPI仕様は表層やろ、調べたらすむ話や、とすてて契約関係とかチームビルディングとか要求されてる仕事に時間をさける。
大学の勉強でオブジェクト指向の授業とかあるけれど、いきなり「皆さんがいうオブジェクト指向は本質的に妥協の産物なのでこれだけが正しいと妄信するのは見識が低いと言わざるとえません」って言われる感じっす。で、そのあと歴史的経緯とかどういう妥協があるのか、オブジェクト指向の限界とかについて授業が進みます。そんな感じ。微積だとこれが5G通信のの理論的根拠です、とか教えてもらえていろんなRFCが「わかる、理論を仕様化してるだけじゃな」ってケースが増えていきます。回答になっていますでしょうか?
大学院ですか?学部ですか?
@@futonchann 学部です。文系卒業なので放送大学の情報コースに入ってます。学位授与機構つかてCSの学位に繋げるつもりです。微分積分学んで、あれ、これ、信号分割の基礎理論で5Gとかでも使われてるんじゃね?ってChatGPTに聞いて教えてもらって毎日「へー」っとなっています。エンジニアの仕事はほとんど基礎理論そのままの組み合わせですね、っていう最近です。ベイジアンフィルターとか。毎日がまた楽しくなってきました。
for loopという制御文の存在が抽象としての理解の対象で、それは必要だけど、
for loopを各言語でどう書くかなどの具象は滅多に書かない言語なら忘れててもいいって感じ
抽象や概念の理解を暗記と呼んでないからいらないといわれると考えてる
リンゴの英単語ってaから始まるよなってのを知ってることが重要。それを暗記とは言わないし、知ってるべき種類が膨大だから業務経験と年数がものを言い、更に最新知識もぶち込む必要がある。
数学で公式は覚えなくていいを真に受けたのと同じ感じある
チョットデキルの元ネタの元ネタはフィギュアスケート選手プルシェンコ氏の「ワタシハスケートチョットデキル」だったり
暗記というより丸暗記は不要派です
個人的には細かい仕様とかをお客さんから聞かれた時答えられると強い気もします
(ここのオプションどうだったっけみたいなやつ)
C++を一年間勉強している人だけど、暗記というより問題を解くほうがいいよ。頭を使うほうが印象に残って覚えやすいし、楽しい。ただし具体例をコピペするだけなのは非推奨です。
C++の辞書のように分厚い言語仕様を丸暗記は無理があるしね。
年々進化するから増え続けるし。
語学だって、外国語1つある程度使えるようになったら、問題があればその都度調べるだけだし、周辺の多言語習得は要点把握で応用効かせられる。最初の一つだけはマジで頑張れ、教えてくれりゃ楽だし、楽しめれば最高。
youtubeとかネット記事とか chatGPTとかがあるから、今の時代は独学といえどもサポートが手厚い
とはいえ、能力が身についた人には能力がある(進次郎構文)なので、その過程が独学が他者から教わったかは、本当にマジでどうでもいい
「遊びと言って休日に仕事する」は「業務時間中には優先度の問題で取りかかれないものを休みの日にする」の意味が多いイメージがあります。
これはテックリードや開発リーダー、プレイングマネージャーになると増えます。
というのも、立場上コード全体をある程度見渡せないと仕事にならないけど、開発自体は多人数で行うし、レビューで全てを指摘するのは無理だし無駄なのでそうしてるって感じが多いかなと。
暗記が必要と感じた事は一度もないが、ある程度知らないと何ができるのかすら分からないしイメージできないから、そういう意味で知識を蓄えることは必要よな
あとはやってるうちに覚える
本当にこの人プログラミングの才能あるなって人は遅くても中学生ぐらいから独学でプログラミングやってて
大学や専門学校ましてや社会人になってからはじめた人は一生追いつけない壁みたいなものを感じる
脳みそに機能へのポインタ(実装は調べればいい)を作る作業を暗記と呼ぶか... ですね
機能への関数ポインタかな?
6:42
僕も自分で調べて解決できるのが理想だと思うけど、先輩後輩同僚に聞くのも悪くはないと思う。その方が早かったり分かりやすかったりするし(侍エンジニアとか如何でしたかブログをハシゴするよりはきっとマシ)。
あと個人的に、「まず自分で調べろ」の環境だと会話自体減りがちなので「何度でも聞いていいよ」の環境の方が好き。もしかするとこれら2つも文面通りに受け取っちゃいけないエンジニア語録かもしれないけどw
俺のちょっとした経験上だとエンジニアは勝手にいっぱい抱え込んだ結果イライラしてるのか、“なんでも聞いて”とか“この人に聞いてね”と言われて聞いてもイライラをぶつけられることもままある
だからイライラをぶつけられてもちゃんとメンタル保てるならガンガン聞くのがオススメ
“こいつに聞きたくねぇなぁ、すぐキレるカスだし”くらいの気持ちを持とう
だいたいプログラミングのルールとか使う道具はどれも似ているので、
まず実現したいことがあって、
頭の中でロジック描いて(場合によっては設計書書いて)、
コード書き始めて始めて慣れてない、忘れてる言語なら引数戻り値なんだっけ、って調べることが多いかなあ。
日本語の標準語と方言ぐらいの距離感。
でもそれぐらい精神的にどっしり構えられるに至るまでには10年はかかってる感じある。
最近は統合開発環境を使ってコードを書くのが普通になったので、ライブラリ関数の引数の順番とかをいちいち覚えなくとも良くなった。いや、統合環境でコード書くのは最近というか、もう何十年も前から普通になっているか。
自分打ちすぎて手が関数名暗記してて草
今回の内容、プログラミング界隈の方言の解説だ
術式は朧げでも、論理は覚えている。つまり、そういうことだ。
@@東西権平
今どきの言語で共通に使える知識が重要ですね。
関数の使い方は調べたらいい
どんな関数があるか(何ができるか)はどんどん覚えないと上達しない
大切なのはググり方、やりたいことの実現方法の調べ方を覚えることだと思います
まあ、引数とかメゾットの仕様とかは複数言語使っているとごちゃごちゃになるし
今どきIDEで調べられますし、
関数名と大まかな動作ぐらいと
プログラムの基礎的な知識ぐらいを覚えておけば問題ないですねz
コーディングはあやふやでgitの操作とか環境構築とかウロ覚えだけど今はAIに聞けば一発だし、暗記してないって言っても手癖で書いてもなんとなく動くから案外覚えてるものだよ
それにTracebackでどこがダメなのかわかるし
プログラミング言語って呼び方の通り新しい言語覚えるのとほぼ同じだから単語は覚えないとどうしようもない
自分も端くれですけどものすごく頷きながら見てて全てに納得してます
ChatGPTが嘘をついているのかがすぐに分かるスキルやコードレビュー時に必要となる考えをもとにコメントできるかぐらいは覚えていく必要があると思う
覚えなくてもいいはホントだけど
基本知識が無いと正しく調べることが出来ない
プログラミングの基礎の考え方やコンピュータの動作さえある程度分かっていれば、言語はなんでも使えるよってのは言われたなぁ
使うシーンに応じて何を使うのが最適かっていうのを考えるのにちょっとした暗記力はいるかも
pythonのnumpy行列とかディクショナリーは知ってる知ってないで作業効率全然ちゃうし
入門レベルなら教わるのもいいと思うけど、それ以上になるとそもそも教わる場がなくなるのよね
勉強会参加したり難しい洋書を読むしかなくなるし、大半はそこで挫折する
プログラミングは絵を描くようなイメージがあるわ。先に頭の中でコードのイメージがあって、それをコンピュータ上に書き写す感じ。理屈より先に感性でプログラムを作ってる。理屈は人に聞かれたら後付けしてる。
意思伝達に齟齬が生まれない程度の知識を覚えるのは必須としても、それ以外は基本実践ベースでガツガツ書いていく方が使える人材になれると思う。
まず業種と職場によるだろ
オフィスソフト作ってるとこと、ゲーム作ってるとこでもだいぶ違う
あと今から座学で勉強する人はそりゃ覚えた方がいいんじゃない?
覚えなくても調べればいいじゃんとか言ってるなら、もう勉強しないで社会でればいい話だから
未熟なまま実践に放り込まれた人は手動かすしかない
今回はこのパターンなんだから、とりあえず都度調べてこなしてけが正解だと思う
プログラミング真にちょっとしかできない時の言い回しに困りそう。完全に理解したはネタ知らん人からすると自信過剰なやべーやつだし。
結果的に覚えてるだけで、例えば大学受験の歴史で暗記するみたいに積極的に丸暗記する必要はない
え?
linuxコマンドとかって暗記しないんですか?
私は暗記する派なんですが🥺
コマンドはちゃうやん
わざわざ単語帳みたいなの作って暗記はしてないだろ?
使ってるうちに覚えてたって感じでしょ
それは暗記とは言わないよ
コマンドはちゃうのか?😵💫
うーん、単語帳とかは使わないけどマニュアルを読んでるとき覚えようと努力はするかな
複雑なコマンドとかは何回かこの工程が繰り返されちゃうんだけど
コマンドはチョットワカル。でもオプションは覚えてなから毎回調べる。
独学でできない人のコードは冗長コードなんだよな。
お客さんに説明するときにいちいちネットで調べてる暇なんてないから、概念を把握して記憶しておく必要はある
自分一人で作業するときも作業の度に調べ直してるんじゃ効率悪いから、やっぱりちゃんと脳に記憶させておく必要がある
暗記しなくていいのは、その覚えている概念を実現するために具体的にコードをどう書いていくかですね
てかそもそもそんなもん暗記しようとする人なんているのかな?
概念は覚えてる必要性があって実際の書き方とかは覚える必要がないって感じだよな
for文は怖すぎて感で書きたくない
独学のくだりはその通りと思いますね。
私も、独学でプログラミングできるようになるか、と相談されることが結構ありますが、
「昔はそれが普通だったけど、今はかなり無理。」とか答えてますね。
「暗記」ってニュアンスの違いかなぁ
個人的には「for 文の存在を『暗記』する」とは言わない
for 文の存在自体は50年くらい間を空けない限り多分一生忘れないはず
覚えるのに努力が必要ないことには「暗記」は使わない
プログラミングを学ぼうとして、環境構築で躓き、そもそもプログラミングにすら辿り着けないあるある。最初は環境構築不要なスクリプト言語で、素数見つけたり、うるう年見つけたり、簡単なソートアルゴリズムで、結果は標準出力させてればええねん。
「体で覚える」と「暗記」は全然違うからね
プログラミングは前者
知らず知らずのうちに、暗記してるから。
それな。いちいちノートに書き写して暗唱とかしている人がいる事の方が衝撃だわ。
最初の言語にPythonとか選ぶタイプのガチ初心者って何を期待してるんだろう。いわゆる作りたいものがないけどプログラミングやりたい人。
ゲーム作りたいならUnity(C#)とか、WebフロントならReact(TypeScript)とか、やりたいことで技術を選ぶはず。他意はなくて純粋に気になる。
自分も動的なWebサイト作りたいから
JavaScriptから始めて今はTypeScriptだが
Pythonはちょっとした自動化とか関数計算代わりにしか使ってないなー。
Pythonガチでやる人が意外と多いのは確かに不思議。
昔より独学で勉強できる環境はそろっている。複数言語を扱うようになると、とても暗記できるような世界ではないよ。
Web系はライブラリの移り変わりが激しいしね。
JavaScriptの基本言語仕様すら追加され続けるし。
言語の基本的な構文を覚えるだけなら、慣れてる人は1日~数日かからないですね。それに対してライブラリは無数にあるので切りがありません。例えば〇〇〇の処理が必要なとき、自分で作るか?or ライブラリにあれば使う。の2択になります。ライブラリにはよく使われそうな処理が便利にまとめられていて、日に日に増えますから、覚えようと思っても切りがありません。プログラミング初心者にとっては、どれが言語の基本構文でどれがライブラリなのか見分けがつかないので、それが原因でこの動画で言われてるような勘違いが生じるのでしょうね。本当にプログラミング言語と呼べるのは、for文とかif文とか、変数の宣言とか、たったそれくらいです。それ以外はすべて、プログラミング言語では無く、言語に付属するライブラリです。
ライブラリは、自分が作ったか、他人が作ってくれたかの違いしか無いので、よく使うものだけ覚えるのが普通ですね。他人が作った自分にとって何の意味も無い処理を覚えるのはただのアホです。そして、何を作りたいのかで必要なライブラリは毎回変ります。例えば .Net Framewok もライブラリです。これも、自分で作るか、他人が作ってくれたかの違いしかありません。クラスの数が膨大すぎて暗記するのは不可能ですし、自分にとって必要のないクラスの使い方を暗記する意味もありません。
ただし、Visual Studio はちょっと特殊で、言語それ自体に覚えるべき便利な機能が結構あります。たとえば、配列などの複数のデータを、データベースの命令文のように簡単に処理できるLinqこれを覚えるとプログラミングに掛かる時間が飛躍的に減少します。あとは、クラスのインスタンスを作成する際に型を動的に厳密指定できるGeneric ジェネリック型指定。これを覚えるとクラスの使い勝手が劇的に変化します。クラスのインスタンスを数値のように計算可能になるOperator演算子とか、上げたら切りがないほど機能が豊富ですね。こんなに多彩な言語はちょっと特殊です。
C#かな?
C++やJavaScriptも言語仕様の複雑さで言ったら負けてないと思う。
年々進化し続けているし。
文字列切り出しとか文字列検索系のメソッドの開始インデックス、未だに0始まりか1始まりか調べるわwww
言語によるから複数言語使っていると訳わかんなくなるな。
@@resistan-y1h
ホントにそれ
よく使うコマンドは暗記したらいいが、アルゴリズムの丸暗記は応用できないからやめるのねん🐮🖐️
覚えようとか暗記しようとか考えてるよりさっさと実践して試行錯誤したほうが良いし、動画で言ってるような基礎的なことはその試行錯誤の中で嫌でも勝手に覚えるという意味で暗記は不要
基本情報だったり、ITの普遍的な事は義務教育の時と何ら変わらない温度で勉強しなきゃいけない。
暗記不要とか言ってる人達の言葉に絶対に耳を貸しちゃいけない。
その人達は"暗記不要なレベル程度"の仕事しか任されてない。
RPGの最初の村で偉そうにしてイキがっている冒険者に過ぎない。
「すみません。知りませんでした。」が通じるのは若い間だけだから、その貴重な無敵時間の価値に気づいたほうが良い。
今座っている椅子がいつまでもいつまでも存在すると思わないほうが良い。
そもそもプログラミング関係でまともに丸暗記できるような規模のまともな環境など現代にはもうほぼ存在しない
C++の全仕様とかJavaScriptの全仕様覚えている人は一部の天才だけだと思う。
基本的な四則演算、ビット演算、ループや分岐、構造体やオブジェクト指向などは書いているうちに覚えるしな。
大人「掛け算なんて暗記いらない筆算でいいやろw」
小2「いや掛け算99の暗記いるやんw」
ってこと?
どちらかと言うと
算数なんてできなくてもいいやw
⇒いや、四則演算のやり方は知ってるよね?
程度
九九の暗記までいけるならプログラミングで言うとアルゴリズムってものを覚えるくらいの難易度かな?
数学の問題解くのに公式なんて覚えなくていい→公式の存在、使い方が分からないとダメだよね。くらいじゃない?
物理で公式は微積で導けるから暗記する必要はないって言ってる感じなあ
そんで真に受けたやつは微積できないっていう
掛け算なんて足し算でええやろぐらい
chatGPTに聞いた方がいい
アセンブラだけやっとけば、あとは何も知らんでもどーにかなる
っていうか、スタックポインタとインストラクションポインタ、アドレスだけでなんとかなる
64KB超えると地獄だけど(´・ω・`)
今どきオブジェクト指向や関数型の影響を受けたメゾットぐらいはしっておかないと
レガシーシステムの保守ぐらいしかできなくないか?
まあ、組み込み系なら問題ないか。
えーー!?
覚えの面倒面倒!!
今はAI時代チャットGPT最高!
ITで無駄なことなんて一つもありませーん
「このシステムなら特別なスキルは不要だし、普通レベルのエンジニアで対応できますね」って言ったら連れてきたやつがポンコツで、「プログラム書くしかできない人は役に立ちません」って言ったら困惑されたので、「自力で学ぶ力がない人はだめです」って言ったら唖然とされた。何か勘違いされたようだけど、よくわからない。
そりゃ具体的に技術要件提示しないで連れてきた人に文句言ったら唖然とされるわなw
8割型暗記の世界やろw
そんなわけねーだろ
暗記ゲーやってるエンジニアとか仕事できんよ、マジで
@@sh723 ?
知識知見もたずしてどうやって仕事するん?
@@stnetwark4487
あのな?
勘違いすんな、
理解する事と暗記は全然別物なんだよ。
覚えようとしたら、どれだけの情報量を覚えないといけないか分かってねーからそんな事言えんのよ、
高卒現役エンジニアの俺が言ってんだから間違いねーよ。
料理と同じでな?
色んな調味料を駆使して料理を作るわけだが、
この時は、この調味料とこの調味料を何グラム混ぜる事で、この旨味成分がこの辛味と合間って、こう言う味になる。。
て言うのがプログラムなんだよ。
料理でも本格的になると見た事ない調味料、何に使うかわからない調味料なんで沢山あるのに、プログラムに関する情報なんて、とんでもなく膨大なわけよ。
それなのに、8割暗記?
お前やってみろって言いたくなるわ。
俺も最初は覚えようとしたけど、無理なのが分かった。
そして、皆がどうしてるのか、先輩がどうしてるのかを食い下がって聴きまくった、研究した、調べまくった。
で分かったこと、
「プログラムは覚えゲーでやったら死ぬし、伸びない」
じゃあ、どうするか、
覚えるんじゃない
「理解すんだよ」
使い方、パラメータの飛び方、webサイトはどのようにして画面に表示されるのか、、など基礎的な知識を「理解」する事で、初めて、プログラムていうのは自立して書けるようになんのよ
@@sh723
すげードヤってクソみたいな長文書いてるけど
普通にプログラム経験ありますけどー
暗記というワードの捉えようの問題だわ
基礎をしっかり身につけにゃ話にならんってことが言いたかっただけ
理解したことを忘れたらなんも意味ないからな
捉えようの問題ならば、なぜ自分の捉え方が正しいことを前提に突っ込んでるんだろうかこの人は
暗記の辞書的な定義は「そのものを見ずにそらで言えること」
この動画でも例示されてるfor文の話とかがいい例ですよね
もし忘れてしまったとしても、それは全く知らない状態(=勉強前の状態)とは違っていて、頭の中にインデックスが張られてる状態になるのよ
間違いを認められず、前提を自分の都合のよく解釈、捻じ曲げちゃったらどんな主張でも通っちゃいますよ
昔ある外国人が「プログラミングは暗記するな!」って動画だしてて
コメントは基本賛同が多かったけど「インド人が爆笑してるぞ」って煽り?コメントがあったんで
何の気なしに「インド人の先生がソラで手書きで黒板に十数行のJavaのコード書いてスゲーと思ったわ」ってレスしたら
煽り仲間だと思われたのかなぜかワイだけそのコメント非表示になってるわ