this post was submitted on 07 Mar 2024
169 points (87.2% liked)

Technology

66353 readers
4567 users here now

This is a most excellent place for technology news and articles.


Our Rules


  1. Follow the lemmy.world rules.
  2. Only tech related content.
  3. Be excellent to each other!
  4. Mod approved content bots can post up to 10 articles per day.
  5. Threads asking for personal tech support may be deleted.
  6. Politics threads may be removed.
  7. No memes allowed as posts, OK to post as comments.
  8. Only approved bots from the list below, this includes using AI responses and summaries. To ask if your bot can be added please contact a mod.
  9. Check for duplicates before posting, duplicates may be removed
  10. Accounts 7 days and younger will have their posts automatically removed.

Approved Bots


founded 2 years ago
MODERATORS
 

A person I watch frequently gave me this gem. Please forgive the annoying thumbnail.

Original from ycombinator

you are viewing a single comment's thread
view the rest of the comments
[–] squirrelwithnut@lemmy.world 120 points 1 year ago (14 children)

I've seen this sentiment in a few places recently, and as a software engineer with 20 years of experience I can say with 100% certainty that this is a terrible (and dangerous) trend when it comes to programming.

Undergrads should absolutely be learning how memory works, how to allocate it, when to free it, and what issues you can get into when you don't do it properly. Sheltering them from such things will lead to a more ignorant generation of developers, which will lead to a lot of headaches down the road, for everyone.

[–] nyan@lemmy.cafe -2 points 1 year ago (7 children)

Manual memory management has about as much applicability these days as assembler did back when I was doing my degree. It should be covered as part of learning How Things Work Under the Hood, it's still needed for some kinds of specialist work, but many—perhaps even the majority of—people writing code will never need to deal with it in the real world, because the languages in which most code is written these days all have some form of memory management.

[–] sunbeam60@lemmy.one 3 points 1 year ago

Hmmm.

You’re probably right. But to any student reading this I’d say you’re likely to become a significantly stronger programmer, and thus find it easier to find employment, if you understand and feel comfortable knowing how to use a memory-unsafe language. Eventually you’ll arrive up in a problem that’s caused by it, or a required optimisation that benefits from manual memory management. If you want to work in games, too, there really is no other option.

In that sense it’s the same as assembler. One day you’ll sit there and not understand why something breaks only to realise that the underlying assembler doesn’t quite do what the source alludes to.

So, I’m not sure you need it, but I’m pretty sure you’ll benefit from it.

load more comments (6 replies)
load more comments (12 replies)