この5つのことを知るまではプログラミングは苦痛でしかなかったです...

だれでもエンジニア / 山浦清透
4 フォロワー
1 動画再生回数·2024/11/07
プログラミングは最初ずっと苦痛でした。実務を通じて、ベテランの先輩の下について、5つの教訓を学んだことで、プログラミングが得意になることができました。
\学費完全無料!/
【働きながら学べる】エンジニア実習アプレンティス。内定直結のエンジニア実習。給与をもらいながらスキルを身につけられます。
https://apprentice.jp/lp
■独学で自走できるエンジニアになるためのプログラミング学習サービス
https://dokugaku-engineer.com/
■UdemyでAWSやGitの入門講座を販売中
https://linktr.ee/yamaura
■プロフィール
山浦 清透(やまうらきよと)
Web系エンジニア
1987年生まれ、福岡県出身。京都大学大学院卒。
2014年に未経験からエンジニアに転向し、既存サービスの運営、新規事業の立ち上げ等を経験。プログラミングの修得に四苦八苦してきた経験から、開発現場で使えるエンジニアリング知識を発信。Udemy受講者数14万人。
どうも京です今日なんですけどもこの5つ
のことを知るまではプログラミングは苦痛
でしかなかったですっていうことでねえ
まあね僕あのプログラミング始めてねもう
だいぶ長いんですけども15年とかかなり
長いんですけども最初のうちね本当
プログラミング苦痛だったんですよね
なんかこう覚えることは多いし用語は意味
わかんないしエラーはめっちゃ出て詰まる
しいや本当苦痛しかなかったでもあのもう
こうWeb系のね磁石開発系のねエジャと
してやってことになれてでそこからま
すごいベテランのねめちゃくちゃこう
スキルの高いますごい先輩の元につかして
いただいてそこでま実務しながらそのして
も教えていただきながらやっていく中でえ
途中がねプログラムなんかすごい分かって
きてプロすごい得意になったんですね実も
ちゃんとできるようになってでそれは今
今日話すこれから話す1つの教訓を学んだ
からなんですねこの5つの教訓が僕を
すごい助けてくれてでで今日はねちょっと
ねその教訓をね5つのことをまお話しし
たいと思っていてねあのプログラミングは
苦手な方とかあとはね今からエンジニアに
なっていきたいもしくはエンジニアになっ
てまだジュニアの方とかのね何かしら参考
になるところがあるんじゃないかと思うの
でねお話していけばと思いますはいでは
まず1つ目1つ目なんですけど
プログラミング言語ではなくえ
プログラミングを学ぶっていうところに
なりますこれま僕はね実も入ってまその別
ベ先輩ついてたらもうそのベトラ先輩って
ないろんな言語いっぱい使えるんですよそ
結構自由自使っててえなんでそんなに
いっぱいの言語を使えるんですすかて
なんかもう1個1個覚えること違うくない
ですかみたいな僕今えそのバックエンド
ルピーやっててもうフロントエンドの
ジャバスクリプトは全然ちょっと違ってる
から使いこなせないんですけどみたいにっ
ま相談したらえでもま確かにそうか確かに
表面上はそう見えるかもしれないけどえ
プログラミンググって基本的な考え方は
すごいどの言語も一緒なんだよねってま
処理をねこう逐次的に上から下にね流れて
いってで何かこうこの場合はこういう風に
したいみたいな条件分岐発生すきは条件
分岐の公文をそこにやればよくてで例え
こう繰り返し処理何回もこう同じ処理を
繰り返したた繰り返し処理の公文入れてと
かなんかこう例外が出る場合だったら例外
の公文を入れてとかいう形でえま基本的に
処理のねそのプログラミングの考え方
みたいなのって一緒だからじゃあそん時
例えばこう条件分岐入たいんだったら
ルビーだったらこうだしジャスクリプトは
こういう風かな書き方だしみたいなそこを
ねちょっと差分だけカスタマイズしてそこ
でキャッチアップすれば後の考え方は
かなり共通でいけるよみたいな僕はそう
いう風な感じでえプログラミング言語1個
ねちょっと抽象化してプログラミングって
いうものを考えてるよみたいに言われては
はーってなったんですねそれはすごい本当
に目から鱗でだからそれの僕はねなんか
こう言語を勉強するってなったらねえイ分
ってこういう風に書くんだなとかそんな
感じでねえ法文ってこう書くんだなみたい
な書き方みたいなプロギングの文法書き方
みたいなのをすごい意識してたんですけど
いやそうじゃなくていやそこも必要なん
ですけどもそこは1個ねちょっとメタに
行っ
て条件分岐っていう考え方があって何か
こうやって条件を分岐した条件分岐って
考え方を当てはめたらいいんだなじゃその
そのためにえじゃ条件動画って言うとこの
言語だったらこういう書き方あるっていう
そういう形でね1個で抽象化してみて
あげるとすごいプログラミングがね楽に
なっていったんですよ何したいどういう風
にすればいいかの方針がなんか立つように
なっていったんですよでただ方針が立って
もまだねえっとなかなかスムーズにはいか
なくてでそん時ね何やってたかって言と僕
ねま次2つ目は座学でなく実践するって
いうところなんですけどもすごいこう座学
で学んでたんですよねYouTubeの
動画で学ぶみたいな本とかで学ぶとかいう
話ですねで座で学んでそれで終わりにして
たんですけどなそうするどうしてもやっぱ
実際書こうとするとね書けないみたい身に
つかない身についてないなみたいなのは
すごいあってで先輩がどうしてるかなって
よくよく見てるとなんか新しいこと学ん
だりとか新しい言語学んだら絶対なんかね
ちっちゃなミニプロジェクトみたいなのと
かをやったりとかして手元になんコード
書いたりとかしてたんですね簡単な
プロジェクトさせてそそれ何分やってるん
ですかて聞いたらいやなんかこう新しい
言語とか学ぶ時とかあって新しいこと学ん
だらま本読んだだけじゃないだけだって
やっぱしどうしてもわかんないところある
からま実際にこうねちょっと簡単もんでも
いいからね動かしてみてるんだってそう
するとますごい分かるよって言われてはあ
みたいなそれ確かにいいっすねって言って
まちょっと真似てみて実際にやってみたら
確かにいいんですよすごいなんだろうな本
で分かった気になるところがやってみると
実際は分かってなくていあやることで
初めて分かるしあそういうことなんだな
みたいなはすごい分かるし自分でもね
使えるようになるんでねこれはねすごい役
に立ちました
はいで3つ目行きたいんですただねこの
やっぱ実践するだけやってもじゃあいざ
タスクができるようになったかって言うと
ねまだまだタスクはねスムーズにでき
なかったんですよねでそれがですねこの3
つ目大きく作るのでなく小さく作
るっていうとこなんですけどまあるこう
いう機能を作ってくださいっていうまこう
タスクが来るじゃないですかでそれやる
じゃないですかでやろうとした時にまあ
なんか結構ね複雑な機能とかだとえみたい
などっから手つけたらいいんだろうみたい
何したらいいんだろうみたいなわかんない
フリーズする止まるみたいなでま先輩相談
すわけですちょっとこういうタスクあるん
ですけど同実装したいいかわかんなくて
ちょっと助けてくださいみたいなまそし
たらねその先輩がねちょっと手元でじゃ
こんな感じやったらいいんじゃないって
言って見せてくれるわけですよねでそし
たらこうなんかまず最初にちっちゃい
ちっちゃいねものを作るんですよね
ちっちゃいまその本題のタスクの機能その
まんまじゃなくてその1部分を切り抜いた
まなんか模擬的な仮想的なこう模擬的な
機能をまずちょっとさっとね1分とか2分
とかさっと作るわけですねじゃこれで
ちょっと模擬的なこの部分だけできた
でしょで次この部部分を追加していく
でしょでこれちゃんとやろうとするとここ
で条件分岐できるじゃあここで条件分岐の
場所追加してあげるでしょほらこうやって
いくとどんどんどんどんできてこない
みたいなみたいなこと言われてはあ
なるほどえそういう風にいつも助けやっ
てるんですかほんみたいなまそのやっぱ
大きくやろうと作ろうとしても手動かない
からえ小さく分解してま小さく1個1個
作ってでそこになんかこう積木みたいに
積み上げていくんだよって言われてははあ
てすごいなったんですだから僕手動か
なかったんだって確かにねこれでこれ意識
してからはすごい色んなタスクでね手が
止まるってことがめちゃくちゃなくなって
いきましたはいでねこれでま結構良くなっ
たんですけどでもなんかね先輩をよくよく
見てるとなんか僕とやり方違うんですよね
で僕ってえっとこれ4つ目1度作ったら
完成ではなく何度も壊すっていうことなん
ですけども僕当時の僕は1度作ったら1度
コード書くじゃないですかで動くじゃない
ですかそしたらせっかく動いたコードなん
でえそれ壊したくなかったですね基それ
大事に取っといてそれを壊さないようし
ながなんかちょっと追加の機能とかをつけ
ていってたんですねでが先輩のよくよく
見るとなんか先輩はすちょっと作ったら
行動もガサって壊したりとか捨てながら
作り直してまたガーって作っていってで
またなんかガサって捨ててまた作り直す
みたいなことをよくやっててえみたいな
なんでそんな何回も行動壊したりとか捨て
たりとかその消したりとかされてるんです
かみたいな聞いたらいやだって最初から
こうベストな構造って分からないじゃない
できないじゃないてだからこう作っていき
ながらどんどん理解深ていくだってで理解
を深めていってそこの状況にあった毎回
最適な構造を作って
いくしもしこう機能とかがね最初増えると
最初はねこの構造良かったし機能が増える
とこの構造じゃ良くないってなるだからそ
したまた最適な構造作り直していくまそう
いう風にやった方やってるんだよって言わ
れてえみたいなえでもなんか作ったもの壊
すってなんかこなんかまた動かなくなっ
たら怖くないですかそれなんかもったい
なくないですかて言ったらいやいやいや
みたいな例えま別に作っもう一度自分の中
で作ったら作ったことは自分の血肉になっ
てるしま仮にも元のコード戻せないとか
いうこう心配なったらギットでコミットと
かして保存してきいつだって戻せるしそれ
よりもえ作った行動一度作った行動って別
にその時の最適その時は最適かもしれない
けど機能が増えていったりとかしたりか
もしくはその理解が深まっていくと行動の
理解が深まっていくそれが最適じゃなく
なってくるってでそこで別になんか元の
構造をなんかこういつ大切にしていたら
結局なんか継ぎはぎみたいなっていい行動
になんないとだからそこの新しい最適会を
見えた段階で毎回作り直していった方が
結果として早いしすごい綺麗な行動になる
よって言われてはあそういうもんなんです
みたいな壊していいんだみたいな壊しちゃ
いけないと思ってましたってなってそれで
すごいね自分でもうね毎回コド書いて
ちょっと書いてったらすぐまた壊してまた
す作り直してみたいなことをやって言っ
たらすごい行動がね綺麗になったし最終的
にはすごい効率的な行動をねえかけるよう
になっていきましたはいでそんな感じで
どんどんパワーアップしていってで最後に
5つ目のね教訓を話していきたいんです
けどもえその前に1つお知らせをさせて
ください私は経営する株式会社ユーブでは
アプレンティスというえ内定直結型の
エンジ実習サービスを運営しておりますえ
学費完全無料給与をもらいながらスキルを
身につつけることができるエンジ実習
サービスとなっておりますえこういったね
しっかりとこうこの教訓を生かしながらま
ほと活躍していくね演者になりたい方は
是非下の概要欄からえ覗いてみてください
はいではね最後に5つ目の教訓をえお話し
していきたいと思います5つ目はえなんと
なく分かったではなく正確に理解するって
いうところになりますえこれもね僕がやっ
てた当時やってたことなんですけどもま僕
なんかこう分かんないことかエラーとか
あったりするともしくはなんかわかんない
かとまなんとなくこんな感じかなみたいな
雰囲気で理解してま進めるみたいなこと
よくやってたんですけど先輩結構ねなんか
僕でたでも僕はこう解決できないエラーと
かあったりするじゃないですかでそう解決
まなんとなくこんな感じかいやでもうまく
いかないなみたいな時に先輩に相談しに
行ったら次先輩ちゃんとドキュメントとか
を読んだりとかしっかりと理解していくん
ですよとかもしくはその行動がなんぜそう
いう挙動してるかとめちゃくちゃ丁寧て解
するですよですごい時間かけてまま先輩
なんて早かったんですごい時間かけてる
わけじゃないんですけどもすごい丁寧に
しっかりと理解してああこれってこういう
ことねみたいなだからこういう挙動してて
なんかこういう偉いなってるんだみたいな
完全理解しててことはじゃこうやればいい
んじゃないって言ってパッと解決策やって
すっと解決するみたいなえみたいなえ
なんかなんかそんなにこう理解するのに
すごい時間かけて実際手動かす時間は
そんなに短いもんなんですかみたい聞いて
みたらなんかまそのちゃんとやっぱしセフ
に理解するのすごい大事きちんと理解
するっていうのがまずなんでこういう挙動
してるかとかを正確に理解しないとま対策
とかもこうあやふやになっちゃうってで
正確に理解すればも対策もちゃんとできる
しまた同じケースが起きてもまた次それ
行かせていけるでしょみたいなだから絶対
政府に理解した方がいいよって言われて
ははみたいないや僕なんか難しいから結構
もう理解するちゃんと理解しとしたら
すごい時間もかかるからなんとなくでやっ
てましたみたいみたいなでもそうじゃなく
てちゃんと理解した方がいかもあれいいん
ですねって教わってでそれ以すごい正確に
理解するてそうするとねやっぱ最初にね
どうしても時間かかったんですけども
ゆくゆくはすごいその理解が土台になって
同じエラーでつまんなくなるし他にも色々
応用が効いてきてね最終的にはこっちの方
が断然早くなって実装がねできるように
なっていきましたはいというわけでねえ
今日は僕が学んだ5つの教訓のお話してき
ました今ねプログラミングが苦手だったり
とかしたりとかねえちょっと実明大変だっ
たりとかしてもなかなか者報できないなと
かもし思うことがあったとしてもこの1つ
の教訓ねえ是非ちょっと意識してみて
くださいそれだけね随分とプログラミング
がえ楽になるはずですはい是非ねこの動画
参考になってねなんか最終的ねこう
プログラミングが好きだなとか得意だな
みたいなねえところになっていただけたら
えものすごく嬉しいですはいとわけでね
今日の動画いかがでしでしょうかえもしね
少しでも参考になったらねえ高評価とか
あとはコメントいただけるとねすごく励み
になりますそれではまたお会いしましょう
またね
