今はソフトウェア技術の規模が微妙な時期なんだよ。
数学のように「全ての分野を網羅するには人生は短すぎる」程の広がりはなく、
これまでの全ての問題を一つ一つ追体験するのも無理ではない。グローバルしかり、ポインタしかり。
もちろんそれは無駄だとして「歴史」に学ぶのも一つの手だ。
ただし実体験と教科書の知識だけでは重みが違うから、そこらへんがWeb系全般のフワフワ感につながる。
とはいえ、今後ともソフトウェア技術は肥大化する一方だから、今後の学び方としてはWeb系流の方が正しい。
ただ、今はまだそのシンギュラリティに到達しておらず、C++流の学び方も成立するってだけで。

> IDE
文法が分からない=指摘されてもどう直してよいのか分からない、のだからそれ以前だよ。
ただしvscodeだとC#流の「;が抜けています。追加しますか?はい/いいえ」で行けたのかな?
それなら入れておくべきだったかも。実際はemacs+flyCheckでやった。
ただし既にPHPとNodeで動くコードをGoに移植だから、引っかかるのは全てSyntax/API/Go方言なんだが。

> だから蟻地獄的なものはあるかも
Goは多分、思想がGoだけで完結してるんだよ。
「驚き最小」ってのはGoの世界ではそうなのかもしれんが、
nilがタプル(というよりポインタが全部タプルか?)だとは普通のプログラマは思わないから
そこは「驚き最大」だ。
それならそれでいいとして、だったら最初にそれを言え、なんだが。

Goは割と想定外のところでバグるんだよ。
この点、実はJavaScriptはC的で、文法だけ抑えたらあとは、あー、はいはい、で行けた。
だから俺(というかC使い)にはJavaScriptは相性がいい、というのはある。
Goは妙なところでGoだけの世界を作ってるだろ。これが吉と出るか凶と出るか。