未経験者がプログラミングを学びたいと思った時に最初に読む記事
ここ数年プログラミングを学びたい人が増えている。そうした需要に応じて有象無象のプログラミングスクールや不適当な内容の学習サイトも増えている。中には粗悪なスクールやオンラインサロンも沢山ある。しかし未経験者にはどれがいいスクールなのか悪いスクールなのか等の審美眼はない。
この記事では未経験者がそういった情報弱者を食い物にする偽物に騙されないように滑らかに学習を進めていくための道筋について書く。
この記事の対象読者は下記。
- 教養としてプログラミングを学びたい未経験者
- とにかくWebサービスやアプリを作りたくてプログラミングを学びたい未経験者
- プログラマとして職を得たい未経験者
以下、まずは全ての対象読者向けの下準備について書き、その後それぞれの対象読者向けに道筋を書く。
目次
準備
周囲を見渡す
あなたの周囲には困った時に助けてくれそうなプログラマの友人等はいるか?
もしこの質問の答えがYesの場合、この記事は不要かもしれない。まずはそのプログラマに「OOOOをしたいのだけど何から始めたら良いか?」と聞くべきだ。どんな優秀な本や学習サイトがあっても未経験~初心者の間は必ずつまずく。ほとんどの未経験者にとってつまずき=死(挫折)、である。
友人の提案する学習方法が少々ナンセンスだとしても孤独に独学して躓いたまま起き上がれないよりはマシだ。困った時に聞くことのできる経験者が1人でも近くにいるならその人についていった方が良い。
ちなみに手取り足取り教えてもらう姿勢はやめた方が良い。そんなことをタダでやってくれる人間は(特にプログラマのような怠惰な人間には)いない。
もしこの質問への答えがNoの場合、どうしようもないのでこの記事を参考に気合を入れてやっていく。
心構え
誰かに教えてもらうという気持ちを捨てる
これは根性論ではない。教えてもらおうという気持ちで望むとプログラミング学習の道は大学やスクールなど数少なく見えるが、前のめりに学習しに行こうとする姿勢があればこの世界ほど学習がしやすい世界はない。プログラミング関連の学習情報はインターネットに大量に散らばっているおり、それらを自由に活用できる。しかもほぼタダで誰でも入手できる。
困ったらググる(Googleで検索する)
困ったらググる。とにかくググる。わからない単語は全部ググる。初心者レベルのことはググればほぼ全て解決する。諦めずにググり続ける胆力を身につけるべき。
英語を怖がらない
プログラミングの世界は英語が標準語なので避けられない。しかし怖がることはない。わからない英語はDeepL翻訳にでも突っ込んで翻訳すれば良い。それで大体解決する。勉強する必要はもちろんあるがまずは英語を読もうとする努力はする。
パソコンの準備
手持ちのPCがないと始まらないのでまずはPCを購入する必要がある。
予算に応じてどれを買うか選択肢はいくつかある。基本的にどのPCでもプログラミング学習はできる。しかしインターネット上にある初心者向けの情報は今はMacを使った解説が多い。よって初期費用は結構かさむが可能ならMacから始めるのが良い。[1]
ただし金銭的な理由や宗教上の理由でMacじゃなくWindowsやLinux環境で始めたいという場合は下記の記事を読み、理解できそうならMac以外でも大丈夫なはず。
- WSL2が使えるマシンとは? | FJORD BOOT CAMP(フィヨルドブートキャンプ)
- WSL2でLinuxを使おう | FJORD BOOT CAMP(フィヨルドブートキャンプ)
- [2023/08/22追記]学生向け 低予算・高性能ノート PC
- 具体的にどのPCが価格ごとに書いてあって便利。定期的に更新されているので助かる。
ただ基本的にどのPCを購入しても大失敗はないはず。まずはやってみるのが大事。
ちなみにノートPCを選んでいる理由は未経験者だとスクールに行ったり勉強会に参加したり経験者に聞きに行ったりと何かと持ち運びが必要になるケースが多いと思ったので。別にそういうケースが無さそうならmac miniだったり適当なデスクトップPCでも大丈夫。(※2022/09/05追記)
Macの場合
iOSアプリを開発するなら凡そMac一択。
予算15万円以上
- 選択肢1: 最新のmacOSが動くメモリ8GB以上のMacBook Pro(新品)を購入する。
- 選択肢2: 最新のmacOSが動くメモリ8GB以上のMacBook Air(新品)を購入する。
予算10万円前後
- 最新のmacOSが動くメモリ8GB以上の中古のMacBook Pro/Air(中古)を購入する。
Windows or Linuxの場合
AI関連の学習がメインならWindowsから始めた方が良い。
あとThinkPadを選んでいるのは、丈夫・中古市場に多く出回っている・少し使ったことがあるくらいの個人的な理由。あくまで未経験者は迷ってしまうだろうからということでThinkPadしか記載して無いですがあくまで目安なのでこだわらなくても大丈夫。
予算10万円前後
- 選択肢1: ThinkPad(新品)を購入する。メモリ8GB以上,SSDがあれば嬉しい。CPUは初心者レベルならIntelでもAMDでも問題ないはず。
- 選択肢2: ThinkPad以外でももちろん大丈夫。
予算1~10万円未満
- 選択肢1: 中古の安くて利用者も多いThinkPadを購入する。メモリ8GB以上,SSDがあれば嬉しい。CPUはCore i5/Core i7のものが良い。Macに比べると格段に安いが中古は割と玉石混合なのでPCに全く知見がないならばお勧めはできない。
- 選択肢2: リサイクルPC。Core i5/Core i7+メモリ8GBでまぁまぁ安いノートPCがある。メーカーは色々。
その他PC選びについて有識者の意見
開発ツールの導入
まず本格的にプログラミングを始める前にPCに関する知識の整理や開発ツール(ブラウザやエディタ)の導入をしておいた方が良い。手持ちのPCのOS(MacかWindowsか)によって下記のどちらかをやっておく。
教養としてプログラミングを学びたい人の場合
目標
プログラミングとはどういうものか身をもって体験すること
野球漫画を読んだだけでは野球ができるとは言えないようにプログラミング関連書籍を読んだだけでプログラミングができるとは言えない。まずは身をもって体験してみることで見えてくるものがある。教養としてプログラミングを学びたい人ならば下記のCS50をある程度手を動かしながらやるだけで十分すぎるほどの体験になる。
やるべきこと
CS50: 無料
このサイトはハーバード大のコンピュータサイエンスの講義を日本語訳して公開してくれているもの。基本的には手順としてはweek0から始めて、それぞれの講義を閲覧し、出ている課題を自分の手で解いていく。
しかし完全に未経験の人の場合はこの課題を自分で解く部分がかなり難しいと思う。なのでどうしても難しい場合は講義動画を観るだけでもそれなりに意味はある。
100時間~200時間は最低でもかかるので気長に取り組む。
その先
この記事最下部のその他の便利サイト一覧から興味のあるものから手を出してみる。
とにかくWebサービスやアプリを作りたくてプログラミングを学びたい人の場合
目標
自分の考えたWebサービスやアプリを作るために必要な最低限の技術を得ること
Webサービスやアプリを作りたくてプログラミングを学びたい人はそれに必要な技術だけ学べればOK。
プログラミングを学ぶこと自体が目標にならないように注意する。あくまで自分の考えたWebサービスやアプリを作り上げることが目標なので何を作りたいか明確にする。その上でそれに必要な技術を学んでいくのがやるべきことになる。
やるべきこと
「自分の作りたいものを明確にすること」と「N予備校」と「実際に作ること」に集中するだけ。順番としては並行で全て進めるイメージ。
1. 自分の作りたいものを明確にすること
例えばキャンプ好きの人が使えるTwitterみたいなSNSサービス、とか。さらに具体的にどういう画面や機能があって利用者はどう使うのかまで具体的に文字にしてみる。巷の色々なwebサービスやアプリを片っ端から登録して使ってみるのも良い。ただのユーザーとして使う時とは違った発見があるはず。
2. N予備校のプログラミング講座(有料)をやる
未経験の人が何かそれなりの形のものをゼロから作りたい場合、ググりながら地道に作り上げていくのはなかなか大変である(昔はこれしかやり方がなかったし今もそのやりかたは無理ではない)。
しかし今はWebサービスやアプリの作り方を教えてくれるスクール的なものがあるのでそこで学習するのが手っ取り早い。
有象無象のスクールが沢山存在する中で有料ではプログラミング講座 - N予備校が質やコスト(月額 1,100円)的に最も良い。やり方としてはN予備校のカリキュラムに沿ってやっていくだけなので迷うことも少ないはず。
3. 実際に作る
N予備校で学んでいる技術を応用して自分の作りたいものを実際に作ってみる。
始めは不恰好でも良いので学んだコードの一部を変えてみたり少しずつコードを自分のものにしていく。
わからないことはとにかくググって試して考えてまたググって試して考えての繰り返し。孤独で地味な作業だが避けられない。
その先
体系的にコンピュータサイエンスを学んでみる
Webサービスやアプリを作りたいというだけの目標に対して初手で体系化されたCSの勉強を始めるのは多くの人にとっては遠回りになる。しかしより高度なものを作りたくなってくると必要になる知識である。
下記のその他の便利サイト一覧から興味のあるものに手を出してみる。
プログラマとして職を得たい人の場合
前置き
未経験からプログラマとして職を得たい人は巷で吹聴されている「日本はエンジニア不足」・「エンジニアは高収入」という言葉に惹かれているのかもしれない。
しかしエンジニアの人手不足というのは出来るエンジニアが不足してるだけであり出来ないエンジニアは沢山いる。
ここ数年で未経験からプログラマとして職を得たい人の大量参入が相次ぎ、彼らが出来るレベルの仕事に関してはレッドオーシャンになっている。
未経験から採用されたとしてもせいぜい200万円台から良くて300万円台の年収がしばらく続くと考えて良い。
また、とりあえず1年実務経験をつけてフリーランスとして独立するという業界ハックも最近では1年程度の実務経験だと評価しない会社も出てきていて使えなくなりつつある。
逆にこの業界ハックの吹聴が1年ですぐ辞めるような未経験者を増やした功罪として彼らのような未経験者は採用コストになるだけなのでそもそも採用しないという選択を取るところもあるようだ。
これらを読んでモチベーションが下がった人はプログラマとして職を得ることは諦めよう(ちなみに勉強すること自体は無駄にはならないはずなので上述の教養としてプログラミングを学びたい人の場合やとにかくWebサービスやアプリを作りたくてプログラミングを学びたい人の場合を読んで好きにやってみると良い。)
また、今置かれている状況や手段によって取るべき学習コースが長期コースから短期コースまで色々ある。自分の状況に合ったやり方を選んでやってみてほしい。
やってはいけないこと
"プログラミングスクール"というキーワードでGoogle検索して上位に出てくるようなサービスに登録する
SEOの強いプログラミングスクールはまともじゃないという法則がある。
オンラインサロンに登録する
そもそも自分の人生の重要な決定を他人のしかも個人に任せるのは危険。利害関係がない相手ならば問題ないが、金づるとしての利害がある相手を信用してはいけない。
現状が辛い人にとっては甘い言葉にすがりたくなる気持ちもわかるがその解決方法はオンラインサロンに登録することではない。
フリーランスのプログラマとして働こうとする
フリーランスのプログラマとして独立するという言葉に憧れを持っている人がいるがこれはプロフェッショナルなプログラマがやるべきこと。出来ない人がフリーランスになってもまともな仕事は回ってこない。
初手でこの道を勧めてくる人は無責任なので関係を断ち切るべき。
厳しい道にはなるがプログラマとして企業へ就職することを目指した方が長期的なキャリア形成を考えると良い。
謎のエージェントからのメッセージを鵜呑みにする
E-mailやSNSのDMに飛んでくる謎のエージェントからのメッセージは基本無視か後回しで良い。エージェントに登録する前にやるべきことをやった方が良い。
目標
知らない概念について独学で学習できる力を得ること
プログラマとして食っていくなら何かしらの新しい技術や未開拓の技術領域を自ら習得しないといけないことが必ず起きる。その際に本やインターネット上の情報を頼りに独学できる力がないと詰む。プログラマである限りこれは一生続くので最重要スキル。
コンピュータサイエンスの最低限の知識を得ること
web上に転がっている記事や動画などを見てとりあえず動くものを作れるレベルでは仕事で関わるような複雑で大規模な開発を行うことはできない。自分の作ったコードが何故どのようにして動いているのか内部を理解し、システム全体の解像度を上げておく必要がある。
自分のスキルを示す何かを作ること
未経験からプログラマとして職を得る場合、学生であれば新卒採用というラッキーカードがあるので自分で開発した公開されたプログラムやサービスを示すことは免除される可能性はある(むしろ学生なら何を研究してきたのかの方が重要そう)。
しかしすでに社会人である場合は自分の力を示すものがないと職を得られない。それはGitHub上での過去の開発実績かもしれないし、自分で作ったWebサービスやアプリであるかもしれないし、頭が良いこと(元医者だったり元弁護士だったり)がそれにあたることもある。
企業がどういう人材を求めているかによるので一概に言えないが自分のスキルを示すものが何もないなら職を得るのは厳しい。
やるべきこと(長期コース: 2年~)
1. CSを学べる大学に入学する
コンピュータサイエンスを学べる大学に入学し基礎を学ぶ。そこで得た知識と研究成果を持って就職活動に生かす。
- 高校生向けの大学一覧
- 社会人向けの働きながら行ける大学一覧
- 働きながら取得可能な情報系学位の大学一覧【社会人】 - Qiita
- 放送大学 情報コース(※2022/09/05追記)
最低2年(院)~4年(学部)以上はかかる。プログラマとして職を得たいという目標しかない場合は大抵途中で挫折するだろうが、これがプログラマとして食っていくための自力をつけるには急がば回れな道。まだあなたが高校生の場合はこの道を選ぶのが大抵は良い。
2. テック系の企業のインターンをする
2022夏ITエンジニアインターンという神SpreadSheetがあるのでここにまとまっている情報をありがたく使わせてもらうよい。
やるべきこと(中期コース: 1年~)
1. CS50をやる: 無料
理解できるまで動画を見て手を動かしてググって調べて...を繰り返す
1.5. 基本情報技術者試験の勉強
基本情報技術者試験の出題範囲はプログラマとして働く上で基本となる内容を広く網羅している。基本情報技術者試験の本を購入して読み、基本情報処理試験ドットコムのようなサイトで過去問を解いたりすると身につきやすい。
必ずしも試験を受ける必要はないが勉強すること自体は役に立つはず。座学は途中で飽きてきたりするのでその場合は2のN予備校へ進み手を動かしてみると良い。
2. N予備校をやる: 月額1,100円
ここでは自分で考えたアイデアを形にできるようになることが目的。1の時点で十分だと思ったら思い切って3に進んでみても大丈夫。難しければ戻って来ればよい。
3. 何か作って公開する
webサービスでも良いし何かしらのツールでも良い。自分で考えたアイデアや課題を解決するプログラムをこれまでに学んできた知識を元に作る。わからないことはとにかくググって試して考えてまたググって試して考えての繰り返し。孤独で地味な作業だが独学力をつけるにはこれは避けられない。
ある程度形になったらGitHubにコードを公開する。自分が作ったものをZennやQiitaで文章にしてまとめるのも良い。
一つ作って終わりではなくさらにそれを改善したり別の何かを作ったりというのを繰り返す。
4. 学生の場合
テック系の企業のインターンをする
2022夏ITエンジニアインターンという神SpreadSheetがあるのでここにまとまっている情報をありがたく使わせてもらう。1から3でやってきたことを元にインターンの合格を祈る。
4. 社会人の場合
a. 現職の業務改善のシステムやツールを開発する
社会人は1から3の経験だけでプログラマとして転職できることは稀。何かしら実務の経験が必要。そこで今やっている仕事の業務改善(そんなに大規模でなくても普段の作業の中で発生する入力作業の自動化や効率アップ)などに必要なシステムを作れないか考える。
これがうまくいくならその仕事自体での評価にもなるし経歴にもなる。
b. 社内の情シスへ異動する
今いる会社に情報システム部(いわゆる情シス)がある場合ここに異動をお願いする。プログラマとして働くとは違うが社内システムを管理したり会社横断で生産性向上業務を行うというプログラマに近い問題解決能力が必要という意味では現職でのドメイン知識を利用しつつここまで勉強してきた知識が活かしやすい。
社内異動なら異業種転職よりも通る可能性は高い。情シスで業務とシステムを使った生産性向上について経験を積みながら日々の勉強を並行してプログラマとしてさらに異動を狙う。
c. 転職活動をする
社内向けのシステムやツールを作る余裕がなく異動もできない場合は仕方ないので今持っている力のみで転職活動してみる。採用側として最低限自分が使ったことのあるサイトやエージェントを書いておく。
転職ドラフトは職務経歴書を書く練習にもなるし運が良ければ入札がかかることもあるのでとりあえず登録しておくのは良さそう。「現職でやってきたこと」と「勉強してきたこと」と「実際に業務でどうそれらを活かしたか」あたりまでうまく書ければ面談くらいはしてくれる会社はありそう。
やるべきこと(短期コース: ~1年)
1. まともなプログラミングスクールに行く
あまりおすすめしないがとにかく短期間でプログラマとして働けるようになりたいんだという場合はプログラミングスクールに行く。重要なのは上記目標を達成できるようなカリキュラムとサポート体制のあるまともなスクールを選ぶこと。
プログラムを写経させるだけのようなスクール、法外に高額なスクール、情報商材を売りつけるオンラインサロンやYoutuber、とりあえず1年実務経験をつけてフリーランスとして独立しろみたいな業界ハックみたいなことを吹き込む人々に騙されないことが大事。
今まで採用側として見聞きしてきた中で比較的まともそうなプログラミングスクールを挙げておく。下記以外はおすすめできるものはない。あれば教えてほしい。
FJORD BOOT CAMP(フィヨルドブートキャンプ)
- FJORD BOOT CAMP(フィヨルドブートキャンプ) : 29,800円/月
Railsエンジニアになるためのスクール。講師もカリキュラムもまとも。採用企業側の視点で作られたスクールなので、現場で働ける力(チーム開発の知見など)が付けられるように工夫されているところが良い。ここ出身の人のGitHubでのやりとりを某所でみたことがあるが普通に職業プログラマとして働いているメンバーと遜色なかった。
Railsが良いかどうかは議論があると思うが、まずは現場でプログラマとして働く力を身につけられることに価値がある。
N予備校
- N予備校 : 1,100円/月
プログラミング全般とサービス・アプリ開発の技術的なカリキュラムについてはまとも。講師についてもまとも。チーム開発に関する知見や経験はあまり積めなそう。
2. 就職/転職活動をする
スクールを卒業しても転職できるとは限らない。転職活動は別途頑張る。
採用側として最低限自分が使ったことのあるサイトやエージェントを書いておく。
転職ドラフトは職務経歴書を書く練習にもなるし運が良ければ入札がかかることもあるのでとりあえず登録しておくのは良さそう。「現職でやってきたこと」と「スクールで勉強してきたこと」あたりをしっかり書く。
まとめ
下記のプログラミング未経験者向けに学習の簡単な道筋を示す記事を書いた。
- 教養としてプログラミングを学びたい未経験者
- とにかくWebサービスやアプリを作りたくてプログラミングを学びたい未経験者
- プログラマとして職を得たい未経験者
一概にこのやり方が全てとは言えないが一例としては誰かの役に立つはず。1日で一気に書いたのでまだ荒削りな部分も多く随時加筆修正はしていく予定。
ちなみにここに書いたこと以外に学ぶ必要のあることは大量にあるし深掘りできる領域も大量にある。ある程度の力がついたらそこから先は個人の興味や業務に関連する技術を極めたり等々研磨していくと良いだろう。
この下にまとめてある便利サイト一覧のリンクも参考にしてほしい。
最後に、この記事に関する疑問や便利リンクの情報などは@razokuloverにお願いします。返信は気まぐれでしかしませんが...。
その他(随時更新中)
更なる学習の際に役に立つ便利リンクをまとめておく。順不同で興味のあるものから手を出して良い。
ちなみに本をおすすめするのは難しいので載せない。ただし汎用的に使える知識の土台を形成するのに役立ちそうな本を挙げるなら基本情報技術者試験の本を一冊読むのを薦める。それ以外は自分の実力に合った興味のある分野のものを好きなように買ってみてほしい。実力に見合わない難しい(けれど名著と言われる)本はある程度後でも良いと思う。
便利サイト一覧
-
CS50 for Japanese: コンピュータサイエンスの入門
- ハーバード大学のコンピュータサイエンスの講義の日本語訳版。
-
研修資料まとめ.md
- IT企業各社の新卒エンジニア向けの研修資料。要領の良い人はN予備校を使わなくてもこの資料を元に学習するのもあり。
-
東大 理学部情報科学科/大学院情報理工学系研究科|学部向け|講義内容
- 東京大学情報科学科のカリキュラム。コンピュータサイエンスを学ぶための道筋を俯瞰できる。
-
コンピューターサイエンス Online Courses | Coursera
- 世界中の大学の講義を無償で閲覧できるサービス。大体英語。
-
AtCoder:競技プログラミングコンテストを開催する国内最大のサイト
- プログラミングコンテストに参加できるサイト。何か一つプログラミング言語が書けるようになったら試してみると楽しいかも。
-
アルゴ式
- アルゴリズムについて学べる。
-
sindresorhus/awesome: 😎 Awesome lists about all kinds of interesting topics
- Awesomeシリーズ。大体どのプログラミング言語や技術に関しても有志の人々がawesome-rubyやawesome-jsのようなリポジトリをGitHubに作って、そこにその技術を学ぶために便利なリンクや本をまとめてくれている。気になる技術がある場合はまずawesomeリストのリポジトリをチェックすると良い。
-
AWSによるクラウド入門
- 東京大学のクラウド入門に関する授業。
-
Reactチュートリアル1:犬画像ギャラリーを作ろう
- 日本大学文理学部情報科学科の開講科目「Web プログラミング」の教材。
-
Kaggleはじめの一歩
- データ分析/機械学習の競技大会プラットフォーム「Kaggle」についての入門記事。
- 100本ノック系(プログラミングのエクササイズ的なやつ。各技術分野で色々用意されたりする。)
-
本一覧 | Zenn
- Zennの有志の人が書いた技術本。小規模なものから大規模なものまで色々ある。無料のものが多いので興味のあるものを覗いてみると良い。
-
CODEGYM Academy
- 学生向けのプログラミングスクール。入学テストがある。CS50の日本語訳をしている団体がやっているやつ。
-
42 Tokyo パリ発のエンジニア養成機関
- 学生向けのプログラミングスクール。こちらも入学テストがある。
-
コンピュータサイエンスが気になるプログラマに勧める書籍リスト
- 初学者には難しいとは思うがコンピュータサイエンスを書籍で学びたい時に買うべき本の指標にはなる。重ねていうが初学者には難しい本が多いので無理せず。
-
system-design-primer
- GAFAM等BigTech企業の面接時に使えるかもしれない大規模システムのシステム設計に関するまとめ。
- プログラミング初心者には難しすぎるけどこのレベルは理解してないと相応のレベルの企業には受からないという意味では今の自分の身の程を知るのに使える。
- 単純に各種企業のシステムのアーキテクチャを知るのには便利。
-
Developer Roadmaps
- 各種エンジニアになるために必要な技術を図にしてロードマップ化してあるサイト。
-
Think Python:コンピュータサイエンティストのように考えてみよう
- Think Pythonというオライリーが原著の本を日本語訳したやつ。Pythonの初心者向け本。言語仕様や使い方を丁寧に解説してる。
- AWSの日本語講座まとめ
-
【公式】ぷよぷよeスポーツ×プログラミング
- セガ公式のぷよぷよでプログラミングを学べる教材
-
学生向け 低予算・高性能ノート PC
- おすすめPC比較まとめ
-
Macを勧めてることに対してケチつけてるバカがいるがご丁寧に「初心者向けの情報は今はMacを使った解説が多い」と書いてるだろ。未経験者を想定してるんだから初心者向けのプログラミング開発関連でググって出てくる情報が多い方を勧めるに決まってんだろ、文字を読めボケが。 ↩︎
Discussion
学位としては学士(教養)しか取れませんが、放送大学の情報コースにもたくさん講義があります。1講義11000円ですし、学位必要なくても選科履修生や科目履修生でサクッとお試しできるのでおすすめです
ありがとうございます。追記しておきます!
初心者にお勧めするパソコンってピンから切りまでありすぎて悩ましいですが、個人的にWindows or Linuxの場合では
↓
かなと思いました。
あとLinux動かすならRyzenはSEGV問題があったのでIntel CPUが安心かもしれません。(5年ぐらい前の話なので今は大丈夫?)
また、この記事の前提はサーバーサイドやフロントエンドだと思うので、「PythonでAI開発だ」みたいな感じならWindowsデスクトップPCでNVIDIAのミドルクラス以上のグラボ搭載PCが良いかなと思いました。
その他個人的お勧め
コメントありがとうございます!その他PC選びについて有識者の意見として記載しておきます。
未経験からのエンジニア転職を考えており費用・学習に割ける期間・時間の面からプログラミングスクールの利用を検討しています。
プログライングスクールについてですがHappiness Chainというところはどうでしょうか?フィヨルドブートキャンプとカリキュラムや値段設定、学習の進め方がかなり似通っているみたいです。