Charles Petzold, author of 'Code' and 'Programming Windows', writes about programming, Windows development and computing history.
HN commenters treat his books as authoritative, especially Programming Windows for Win32, and link his essay 'Does Visual Studio Rot the Mind?'.
Note that this is a meta-article: it consists of a critique of another article.
The other article seems to be looking for the word "abstraction-induced complexity", which is when some interface makes some actions easy at the expense of making other actions difficult. The canonical reference: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.53.969
Secondly, even notorious Windows Programmers say the same sort of thing about Windows tools. In http://www.charlespetzold.com/etc/DoesVisualStudioRotTheMind.html, Charles Petzold himself says that Visual Studio rots the brain. He also misses the boat with his predictions about "Avalon", but that's best left to fanbois.
Thirdly, isn't this the same point Paul Graham made in his article http://www.paulgraham.com/gh.html "Great Hackers"?
So, maybe the original article is correct, at least if you believe Authorities.
Programming Windows is THE authoritative source on Win32 programming:
https://www.charlespetzold.com/books.html
It is a fantastic book, I learned everything I know on Win32 from it. Wrote real time scientific software in windows for ~10y! We did it all, external hardware control, custom UIs, etc. Thanks Ryan Geiss for your timing info.
Right about VC6 was the sweet spot imo, C/C++ with lightning fast UI for docs and more. Tools got out of the way. Once other languages got involved (C#?) the docs got out of control and harder to use, and the UI started to get a little overloaded.
The snappiness of those old windows systems was pretty great.
Or, if the masters are too hard at first, see if their pupils have written annotations. I tried Turing, couldn't even understand why what he was talking about was important (or why his "computers" seem so much... lamer than the ones I was used to), and then found Charles Petzold's "Annotated Turing".
http://www.charlespetzold.com/AnnotatedTuring/
He takes Turing's "On Computable Numbers..." and mixes in chapters giving the necessary background on the history of mathematics, number theory, logic, etc. in-line (albeit, it takes about 100 pages to get to the first sentence of Turing's paper). I whole-heartedly recommend it.
The academic CS tomes never really gelled for me. It was .NET programmer Charles Petzold's guides that made things click
http://www.charlespetzold.com/books.html
I'd also give a shout out to Micheal Abrash's Graphics Programming Black Book that taught me the adage "the best optimizer is between your ears"
http://www.jagregory.com/abrash-black-book/
Reference I keep close at hand is Ilya Grigorik's High Performance Browser Networking. Web apps with sub second latency can make all the difference
https://hpbn.co/
Code by Charles Petzold [1] is a fantastic introduction. It isn't so much the nitty gritty "this opcode performs this operation, and these are all the tricks to making it do things, edge cases and things you should worry about" and more along the lines of "what opcodes should a CPU have, and how do those translate into electricity flowing through physical wires?" I feel like really thinking through that book made MIPS and x86 assembly much easier for me.
1 - http://www.charlespetzold.com/code/
If you'd like to learn basic programming concepts right away, check out Pine's 'Learn to Program' (http://pine.fm/LearnToProgram/)
If you'd like to learn best practices, check out Hunt & Thomas' 'The Pragmatic Programmer' (http://www.pragprog.com/the-pragmatic-programmer).
To get up to speed fairly quickly on what's going on under the hood, check out Petzold's 'Code' (http://www.charlespetzold.com/code/) and Nisan & Schocken's
'The Elements of Computing Systems' (http://www1.idc.ac.il/tecs/).