These books shouldn't be dismissed since they provide people with a foundation for further learning. They also offer a friendly introduction to programming, rather than imposing an intimidating wall that will keep people away. It is also important to note that these books break the learning into 24 one hour modules, or something similar, so they can have reasonable coverage of a programming language.
If these books have a failing, it has little to do with the concept and everything to do with being poorly written.
Yes, the biggest fault of those books was that the titles were a cheap gimmick. The implication that you could blow through the book in a day and know the language is kind of a lose-lose, because it undersells the difficulty of the lessons to newcomers and sounds patently ridiculous to professionals. Realistically, someone who has no prior programming experience would take more than an hour per lesson, and would probably take a month or two to get through the book, like any other first-time programming tutorial.
My first exposure to programming was Sam's Teach Yourself C++ In 24 Hours from a used bookstore in my early teens. I didn't stick with it for more than a couple chapters but compiling a program that printed "Hello world" was a magical experience.
Very confusing to read the article labelled as 1998 and have references for newer stuff (e.g. Ratatouile).
The biggest one for me is to recommend a bunch of 98-propiate languages (C++) and then recommend Go!
I guess that the article has been slightly updated, but it felt weird. In another language I checked the references are older.
You never say that you become good at programming.
You let other people in the field say it. And that happens when it becomes accountable. For some it happens early in their career. For others, entire careers end and the words have never been said.
Anyone who claims they're good at programming is still learning. We're all just, more comfortable with nuances but still really bad at it. Programming rocks to do things correctly is hard.
If you've been finding elegant solutions to complex problems for a while and you feel like everything kinda repeats itself. (I'm not that good, still encountering completely new problems)
My point is not to presume the competence of others (which, frankly, I don't care about outside of like Knuth and "are you making my life harder at work"), but to point out we should establish our own view of whether we're competent enough based on what our goals are. People tell me I'm a good programmer; I don't really see it. This used to bother me. It doesn't anymore because I've found other things to enjoy in life.
> In 2001, Norvig published a short article titled Teach Yourself Programming in Ten Years,[20] arguing against the fashionable introductory programming textbooks that purported to teach programming in days or weeks. The article was widely shared and discussed, and has attracted contributed translations to over 20 languages.[20]
Anyone who followed this article would've greatly threatened their chances of being hired by Google, since they would've spent their time on things other than rehearsing for the interviews.
No, the book is not about rehearsing you for interviews. In contrary, the book emphasizes on the mastery of your tech which books rehearsing you for interviews neither claim nor can do.
The whole idea of the book is to get deep insight into your tech following the 10 000 hours rule which one might achieve within 10 years of practice.
It was published against the mainstream idea of that time advertised under the name "Teach Yourself Something In 24 Hours". This book is a call for hard work, mastery and is against rushing when learning.
Op means that if they followed Norvig’s advice they wouldn’t be hired by Google, because they’d be studying actual programming instead of rehearsing Leetcode for interviews.
I don't think it necessarily leads to a of mastery of data structures and algorithms in the context of leetcode/modern coding interviews. One can do a lot of coding, and even be paid for it, for years and just not even encounter a lot of this material. Though one will have developed much of the same intuition that you typically acquire in a data structures class, it doesn't necessarily mean you're prepared to code mergesort on a whiteboard.
I've been at it for over 30 years. Still learning.
You can learn fast today, and then continue tomorrow, and next month, and next year, and if you remain curious, half a lifetime later you are still learning.
I'm a zoomer dev and I have a question.
The article here linked to google groups - https://groups.google.com/g/alt.fan.jwz
"Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable."
I've never even heard of google groups, and it's crazy to read conversations nearly as old as me.
What is/was UseNet? Was that the precursor to php bulletin boards in way / the forums of the 90s - 2000s? Would the zoomer equivalent be discord for my generation?
Probably the closest modern equivalent to Usenet is Reddit--each newsgroup is roughly kind of like a subreddit, and, like Reddit, threading is quite the norm in newsgroups. The main difference is that Usenet wasn't centrally organized, messages tended to be rather longer than Reddit posts, and it's possible to cross-post on Usenet (post to multiple newsgroups with one message) in a way that it isn't on Reddit.
(The pre-web antecedent of Discord would be IRC, latterly stuff like AOL chat rooms.)
And if you think it's weird to read conversations nearly as old as you, I'm a millennial and I've read Usenet conversations older than I.
> And if you think it's weird to read conversations nearly as old as you, I'm a millennial and I've read Usenet conversations older than I.
I first read the Apollo transcripts when I was maybe 8 or 10 years old - this was deep into the 1980s but the Apollo missions were still before my time. Reading such material at 8 or 10 didn't feel unusual.
Now, rereading as I near 50, they are surreal. The conversations, and the moon itself, have not changed one bit. But myself and the world around me are unrecognisable to the 10 year old me still reading over my shoulder.
Usenet was a decentralized forum where anybody could participate and nobody could be banned. Despite this, the quality of discussion was usually very high. The user interfaces supported rather comprehensive threading and filtering capabilities, so you could block the people you wished you could ban. It was sort of destroyed by spam (since spammers couldn't be banned) but doesn't have much spam anymore because it's too obscure for spammers to bother with.
There isn't a Zoomer equivalent, because the internet has been locked down since then, and anyone who attempts to offer an uncensored and uncensorable forum gets brigaded and maybe swatted, then cut off from the banking system.
Usenet is still around and still fairly active, though by volume its probably more commonly used as the originating source for anything torrented nowadays. PHP bulletin boards is a good approximation if you squint. If you imagine being on a large number of topical mailing lists all filtered into their own inboxes you wouldn't be far off.
"Usenet" has a wikipedia page which describes the network quite well. I used it in the late 2000s, not just for discussion as some groups were also hosting warez. Pretty sure you can still go there although it's unclear you'll get the post quality of the 80s-90s (back when I read discussions it was already a lot of trolling).
Ah yes, but of course Norvig never had access to current generation LLMs, which do let you learn C++ in 24 hours! No need to understand the memory hierarchy, the LLM will produce perfectly performant code right out of the box.
With LLMs you can iterate through a hundred thousand software development lifecycles in a month, vastly increasing your rate of project experience gain.
This article is so obsolete, it's literally from the previous century.
If these books have a failing, it has little to do with the concept and everything to do with being poorly written.
reply