4 ms·
My one friend writes code for satellites. My other friend is a security vulnerability researcher working on the Linux kernel. I write code to process terabytes,
by Grimm1 6y ago
My one friend writes code for satellites. My other friend is a security vulnerability researcher working on the Linux kernel. I write code to process terabytes, potentially petabytes of data consistently and performant. I don't really know people who do frontend professionally in my personal life but I can't imagine keeping a webapp serving millions of people on many different devices performantly is easy.
My point is it really depends on the scale or depth of the work you're doing. It's pretty easy to keep things running smoothly for a smaller company or one not doing hardware etc etc but I think this really misses the mark for a lot of work, there's a scale or depth where you can't get away with not using what the author says is only used in interviews.
- cosmodisk 6y agoWhat you described here falls within 5% of all programming jobs.The rest 95% aren't that demanding.
- rtlfe 6y agoI would guess that most satellite and big data code falls into the non-hard category. In my experience working with things that sound similarly challenging, it's usually the case that one person or a small group of people do most of the "hard" part early on and then a much larger team spends years doing relatively simple work expanding on the foundation they built.
- Grimm1 6y agoI think there are a lot of other issues with that and don't think your experiences reflect the norm, or at the least they certainly run counter to mine so far.
- jrott 6y agoIn my experience with being on a big data team is that most days you don't have to do anything all that hard but it always comes up eventually.
- lumost 6y agoIn my experience the stuff that comes later usually gets harder to do right. The first few features are pretty easy - the code base is small, the rules and state are simple, and there aren't any major performance issues. Later on features start coming into conflict, there's more complexity to be managed, and you've used up all of your latency budget. How often do you hear that you just need to rewrite everything at that point? How often does that payoff?
- Grimm1 6y agoI just don't think you're correct. I think that idea is why we have companies on their third rewrites and most codebases look like sphagetti with performance issues abound. I think many domains are much more demanding but the people working on them don't know any better to avoid the pitfalls.
- MuffinFlavored 6y agoIn my experience, he/she is correct. I do a lot of "plumbing". Take data from one source (database, API, vendor), massage it (map/filter/reduce/tweak/translate), send it back to client. Lots of frontend work is using the same paradigm (human input triggers events that interact with components to manipulate state and make network requests) over and over for different screens.
- PaulDavisThe1st 6y agoIn the 80s it was called "application development" and it was the vast majority of jobs in the software industry. Database, forms software, user data entry, data presentation. The web has just replaced the technological components, but the basic model is more or less identical (and arguably still hasn't reached the same level of sophistication that the forms software of, say, 1988 had (though this is certainly arguable)).
- Thaxll 6y agoI don't think programming for satelites / kernel is more demanding than modern frontend, for example the Linux kernel did not change that much in the last 15 years, it's pretty much the same old C with the same tools. On paper it looks cool and complicated, in reality it's not that hard. Lot of fields in CS don't move that much especially things based on C / asm, kernel, embeded ect ...
- wwright 6y agoThis doesn’t seem true to me. You can definitely work with the traditional kernel and C model, but we have eBPF, GPU computing, unikernels, C++20 and Rust… and I’m not a low-level guy, that’s just off the top of my head. Things do evolve.
- spenczar5 6y agoI’m lost. What does Rust have to do with the Linux kernel? I agree that most kernel programming isn’t computer-science hard, but its peopleware-hard: you need to maintain compatibility and get signoff and step very carefully forward because any change can affect so many disparate groupa.