this post was submitted on 07 Mar 2024
789 points (95.1% liked)

Programmer Humor

32048 readers
1580 users here now

Post funny things about programming here! (Or just rant about your favourite programming language.)

Rules:

founded 5 years ago
MODERATORS
 
top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 10 points 6 months ago* (last edited 6 months ago)

Obligatory link to the wizard book, aka learn programming the proper way. Never mind the language this is about principles and fundamental concepts. Yes by the end of it you'll have written a compiler, that's the equivalent of a smith forging a hammer and tongs. Flank with HTDP if you need a bit hand-holding putting programs together, SICP is rather pinpoint-focussed on the concepts so doesn't contain much in terms of design. If you want a stand-alone implementation of the language (with the first link you can run all the code boxes in the browser, fancy newfangled stuff I approve of) racket is the way to go, just add #lang sicp in front of your files and you'll have the exact dialect the wizard book uses.

The wizard book has been the standard recommendation for like 20 years now, the only reason other tutorials exist is because newbs insist on "how to move cube in unity without programming" type of hand-holding. It's not actually helping them, on the contrary I see much learned helplessness in the young'uns.

From those basics you can dive into whatever concrete you need for whatever you want to do, you'll have the necessary background to not be lost at sea. To further build that background knowledge it's a good idea to have acquaintance with a broad selection of standard data structures, algorithms, and their properties. No need to go in real depth but you should have an at least intuitive understanding of why they have the properties they have, like, don't be surprised if your game stutters if you're using hashmaps. O(1) and amortised O(1) are not the same thing.

Last, but not least, never write your own datetime or unicode handling code.

[–] [email protected] 2 points 6 months ago (1 children)

sometimes i wish i could start over learning to code again. it used to feel so mysterious and badass.

[–] [email protected] 1 points 6 months ago

@[email protected]

You can rekindle the romance by veering off into cryptology. However, the honeymoon is short followed by battered lover vibes.

[–] [email protected] 26 points 6 months ago* (last edited 6 months ago) (1 children)

Seriously? A mouse for coding?

[–] [email protected] 13 points 6 months ago (1 children)

"Computer? Computer? Hello, computer?"

[–] [email protected] 6 points 6 months ago (1 children)
[–] [email protected] 4 points 6 months ago

"How quaint "

load more comments
view more: next ›