11 ms·
We Are Doomed: A pessimistic point of view of "modern software engineering"
- rijx 3y agoI respectfully disagree. I’ve passed the same thoughts back and forth in my mind before, but it’s mostly nostalgia. Yes, some tools were much snappier on much crappier hardware, but they also lacked features, including safety and collaborative ones. We have so many more people using computer devices and the internet now. We have to account for them to some extent and a lot of libraries do that for us, but it does make them heavier. I’d say yes software has gotten fat and slow in a lot places, but also immensely more capable and more reusable.
- wild_egg 3y ago> We have so many more people using computer devices and the internet now. We have to account for them to some extent and a lot of libraries do that for us, but it does make them heavier. A significant percentage (majority?) of those devices and internet connections are low powered and slow compared to what most readers here are using Those heavy libraries can often exclude those users simply because they can't adequately run the fancy features those libraries provide There's a balance here that I think we, as an industry, are not managing well
- mathgladiator 3y agoThe answer for Apple is shockingly simple... stop buying their hardware. It sucks for games, so just stop.
- cassianoleal 3y agoI've been happily playing Baldur's Gate 3 on my MacBook at 1920x1200 resolution with most settings maxed out. It hasn't sucked. In fact, it's been pretty smooth.
- arcticbull 3y agoI would argue the iPhone and iPad together are probably one of the biggest gaming markets on earth. There are after all 300M consoles and 900M iPhones out there.
- mathgladiator 3y agoThat's true, but then you can't complain about Apple throwing their weight around either.
- Firmwarrior 3y agoI'm not saying it's good for games, but the iPhone's GPU blows a big ugly Switch or Steam Deck out of the water I really wish the gaming space on phones weren't such a radioactive wasteland
- sumuyuda 3y agoI did. Got a Steam Deck and couldn’t be happier.
- justanotherjoe 3y agomy opinion is that high resolution displays are the root of all evil.
- readyplayernull 3y agoSomething similar happened back in the late 80's when we had painful EGA and then VGA/MCGA arrived with its glorious mode 13h, then everything about graphics became easy and cool! Then Super-VGA entered...
- neilv 3y agoIMHO, the most concerning sign about software engineering practice isn't exactly "bloat", but the inability of the industry to do anything securely. Consider every software security update to be a bridge falling down, due to incompetence. In this case, the fault isn't so much individual incompetence, as collective incompetence of the field. The ecosystem is toxic, as are conventional practices, as are market incentives. Individuals might be incompetent on top of that, but the situation is nigh impossible for competent ones as well. And there are no professional engineer licenses to pull, nor few individuals to send to jail.
- mathgladiator 3y agoI've become a strong believer that software engineers to form a guild/professional society such that we can hold ourselves accountable.
- Aerroon 3y agoSo, introduce risk to becoming a software developer? What's the upside for the developer?
- mathgladiator 3y agoA spine to push back on bad practices
- ClumsyPilot 3y agoBingo. People do not understand that lawyers/doctors can tell their boss to go pound sand by saying ‘that would lose me my license and so no one will ever agree to do it’
- williamcotton 3y agoPointless jumping through circles. At that point I would definitely get a JD instead.
- deleted 3y ago
- quelsolaar 3y agoWhat ever you think of Vulkan, it is NOT typical of modern software engineering. Its a massive outlier. It is very demanding of its users, it is very low level, it exposes the complexity of the hardware, it is large but not bloated, as it reflects the hardware complexity. If you complain that modern software is slow (it is), then its because people are NOT using low level APIs like Vulkan, that forces you to think about how to most effectively utilize the hardware. Its because people don't want to know how anything works, and load up on a mountain of dependencies and run everything in a garbage collected virtual machine in a browser.
- mistrial9 3y ago> because people don't want to know how anything works for some definition of "people" .. isn't the detail at the low level sort of overwhelming on modern cards?
- quelsolaar 3y agoYeah, its hard. But the original author complains about having to understand hard things, and then at the same time wonders why modern software sucks. You have your answer right there: If you don't understand a system you can utilize it. Lots of people argue that slow shitty software is good enough, because its not worth spending time, energy and money doing things right. I dont agree with this, but its consistent argument: Money and time is more important then software that runs well. At least then you have made a choice about your priorities.
- LucidLynx 3y agoHi, author here. I made a mistake in the article to be honest. I don’t complain that I have to « understand hard things », but, I missed this in the article, that the complexity of the Vulkan is like 5x more than OpenGL for… 5% better performance? Like Directx12, where most of the Directx11 games do not have any extra valuable performance compared to the complexity of moving to the newer version of the API. I would love to learn a new low-level API for better performance, but I really don’t think the time I spent learning Vulkan to benefit of the same performance I could have using OpenGL worth it. I will make an update to the article this week to make a clearer explanation, thank you for your comment.
- ex3ndr 3y agoI highly doubt that building a 10 c++ files was as fast as now. I am clearly remember building c# apps for a much longer, i remember how deployment of a trivial app on Azure took ~15 minutes. Meanwhile we still don't have 5k displays with 120hz, hardware is not even here.
- jiggawatts 3y agoThere are 4K and 5K OLED PC displays with 240 Hz capability being made this year, with some models reaching 480 Hz at 1080p! E.g.: https://tftcentral.co.uk/news/asus-announced-rog-swift-pg32ucdm-with-31-5-qd-oled-panel-4k-and-240hz-refresh-rate https://tftcentral.co.uk/news/asus-announced-rog-swift-pg32u... Azure deployment pipelines are still slow as molasses. That hasn't changed.
- ex3ndr 3y ago4k is trivial, 5k is impossible, your link is about 4k.
- wffurr 3y agoMissed an option for cross platform graphics, which is IMO the best one: WebGPU. Supported on all platforms, much simpler than Vulkan, and with solid C++ (Dawn) and Rust (wgpu) libraries.
- Const-me 3y agoNeither Apple nor Microsoft want any usable multiplatform graphics API. For this reason, none of them delivers such a thing. If you want a multiplatform graphics API, you should use a library which implements such API on top of these native OS-specific APIs. I have good experience with that one: http://diligentgraphics.com/diligent-engine/ http://diligentgraphics.com/diligent-engine/ I’ve used it couple times on Windows with D3D12 backend, and on Linux with GLES 3.1 backend.
- ClumsyPilot 3y ago> If you want a multiplatform graphics API, you should use a library which implements such API on top of these native OS-specific APIs. Typical software approach- instead of fixing the fundamental problem, just put a plaster on top. That’s how we deal with everything. Thats why our industry can’t be trusted.
- Const-me 3y agoHow would you fix the fundamental problem? It’s technically possible to force these two companies to implement a shared API, but hard to do, and “Vulkan API Support Act of 2024” sounds a bit weird, IMO.
- ClumsyPilot 3y agoWe do it in other industries all the time, petroleum fuels content is regulated that way for compatibility. We have a ‘electrical plugs act’, ‘fire hydrant act’, ‘railway standards act’, ‘air traffic control act’, ‘water mains act’, etc.
- Const-me 3y agoI think the #1 reason for these regulations wasn’t compatibility, it was safety. People die in fires, railway accidents, aviation disasters, and from waterborne infections.
- 3y ago
- lmm 3y agoMeh. Yet another unfocused rant about "complexity". PC gaming is essentially dying and so there's no money in it and no effort being put into it, and that goes triple for PC gaming on Apple systems. Stuff gets faster when you pay skilled people to make it faster, and gets slower when you don't care how fast it is. That's all it's ever been.
- RagnarD 3y agoPC gaming is essentially dying?? Is that why the gaming market is more than the market for music and movies combined? Maybe Steam would like to comment.
- lmm 3y ago> Is that why the gaming market is more than the market for music and movies combined? It's a factor yes. Monetization is much better on consoles and phones. > Maybe Steam would like to comment. Notice how Valve has essentially gotten out of the actual PC-game-making industry, in favour of a) the selling-shovels-to-hopefuls business of publishing, and b) trying to become a game console maker.
- marcianx 3y agoTBH, I think Valve is doing pretty well with both. Steam has now long resulted in a renaissance for indie game marketing and access, and the Steam Deck is incredibly well designed for on-the-go usability.
- justanorherhack 3y agoThis is not a direct decision of valve. There are lots of people working on games but the company is privately held, democratically vote driven where they don’t fire anyone. I’m pretty sure it’s relatively small staff compared to other modern gaming studios these days. The gaming industry pc is the largest it’s ever been and growing. Look at subreddit growth for r/pcmasterrace and the popularity and growth of discord as a platform. Pro Pc Esports is also growing, has more watchers every week than the Super Bowl and dominates consoles.
- RagnarD 3y agoThe root of many successful revolutions is observing that what exists is simply unacceptable and working to build something transformatively new. Many such attempts fail, but not all of them do. Perhaps the author is identifying such a need, and might consider architecting a superior cross platform solution from first principles.
- deleted 3y ago[deleted]
- jongjong 3y agoI've been saying this for some time. This is all in line with the bullshit jobs phenomenon which is likely the result of reserve bank 'full employment' agenda. People used to think I was a conspiracy theorist for suggesting this. Yet it's clear as crystal that the incentives in the monetary system itself are set up this way. Can you think of a more powerful incentive than money to drive behavior?
- keyle 3y agoIn my arms brother I am very pissed when I see software “engineers” more concerned about a vim configuration than thinking why their shell profile takes three to four full seconds to load.
- w0z_ 3y agoMost companies aren't like Rockstar Games or older Valve. More MBA's pushing for product & market-share grab than building from passion. IMO
- commandlinefan 3y agoWell, remember, as Donald Knuth said, “optimization is the root of all evil” (that’s what your boss heard).
- EPWN3D 3y ago"Graphics programmer thinks that their field represents all of software, news at 11. In other news, systems programmers think that anyone who doesn't want to deal with memory management is a weenie."
- qustrolabe 3y agoSo the problems in article are: Apple doesn't support Vulkan, Apple chips were incompatible with Docker, Apple deprecated OpenGL support, Apple don't make their Metal multiplatform. I think I see a pattern here, hehe
- 0x457 3y ago> Apple chips were incompatible with Docker, Uhm what?