Hacker News new | past | comments | ask | show | jobs | submit login

I sense that the modern CS education seems lost a lot of its root in computing fundamentals...

This type of findings are pretty much the daily routines of engineers a decade or longer ago...




This is useful even for those of us who have been around for "a decade or longer." We page out of memory the things we don't use very often.

Moreover, modern CS education teaches a lot of things that weren't taught in the past, and it likely only gives a hand-wave to things like memory-management etiquette in low-level C (or Go) API design. This is likely because (1) it's not that difficult to read up on the specifics if you're otherwise a competent engineer and (2) other concepts were valued higher. Perhaps the course focused on writing code with borrow-checking in mind instead.


My CS education is going on two decades old, I think it was decent, and the ideas in this article aren't something that was taught back then in any class I had.

For the most part, it was the other way around, we mostly learned abstraction, so the lessons in class focused on how to encapsulate and hide state. At a higher level than that, education really focused (and still does, I think) on engineering for functionality over engineering for performance.

In some sense, the problem with APIs that allocate is larger now than it ever was before, and growing larger. Data sizes are bigger now, and memory pressure relative to what the processor can do is going up.


While I agree that the IO interface is pretty standard everywhere, doesn't mean the standard couldn't/shouldn't be better for higher level languages.

At the application layer, I really don't care to utilize a partially filled buffer, I want a result set that has what was read. Of course, nobody is being stopped from creating such things as abstractions. StreamReader for C# as an example.


It's great that they are sharing their (re)discoveries, the real shame is that we software people don't have a giant, open and free repository of all these blog posts, Software Engineering articles, and interviews from our practitioners of all ages.


Well, arXiv, Library Genesis, Wikipedia, GitLab, GitHub, and Google Scholar together are a pretty good resource for this. They could be a lot better — for example, being fully legal — but they're pretty amazingly good right now




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: