We write mostly Java, some Kotlin, targeting the JVM.
Most commonly our software runs on premises on server-class hardware (or what passes for server-class depending on the industry...), sometimes hosted in the cloud, sometimes on "edge" hardware (think Raspberry Pi class power/spec wise).
One component of the software actually is a web frontend (and a Jetty backend) to go with it, but it's not your typical "web-app" and it's not SaaS. But there's much more to it than that.
Hardware bugs can be found during chip bring-up within the first couple of months back from the fab, but since I've worked in this area I've never actually seen a bug that couldn't be worked around. They happen, but they're rare and I've never experienced a chip needing a respin because of a bug.
There is documentation, but it's not as well organized as you might imagine. Documentation is usually only necessary when implementing new features, and the resulting code doesn't change often. There are also multiple instruction sets as there are a bunch of little processors you need to control.
Vulkan/DX12 aren't really "low-level" APIs. They're "low overhead", and honestly, no. Their code base is just as large and complicated, if not more so, than OpenGL/DX11.
So for your opinion to carry any weight, please enlighten us as to the games you have shipped that qualify you to comment on their take on programming practices.
Not really. Let's reverse the situation on you - why should we take your opinion seriously, we have no idea how much you have shipped, if anything at all, so by your logic, your ragging on the other programmers practices is ridiculous.
I've shipped a few things over the years, but doubt I have strong takes in programming, besides 'the "properness" of a variables name is dependent on the amount of lines between it's definition and usage.' Doubt anyone will take my considerations seriously.
I'm not making any claims about programming practices
If someone comes out saying "you guys are all doing this wrong" and yet they can't finish their own project then why would I take their advice seriously?
If you suggest a way of doing software development and you can't even show it working out to completion, what does that say about your proposed methods?
I had a larger rant written, but this is the only part that had any value:
Yes, one can argue that lack of produces results does not give big plusses towards their work processes, but it does not necessarily negate the value of the concepts that they preach.
The value of a thing is not only defined by who is spouting it, one must evaluate the argument on it's own merits, not by evaluating of the people yelling about it.
There are plenty of concepts in this world that I cannot make work, that does not mean that the concepts are bad. It only means that the failure reflects on me and my in-capabilities.
And this might be something that you are not noticing: You are making claims about programming practices indirectly by stating that THEIR practices are not worth considering due to lack of shipping anything.
It's not really the same. Casey is suggesting people that don't spend 10 years crafting everything from scratch are somehow "lesser than." The user you're replying to is pointing out that Casey has set a completely arbitrary rule for game quality that conveniently leaves out his inability to ship something, and that's funny.
We're not saying games taking longer than a few years are failures, we're saying good games can encompass both approaches. But Casey, and his followers, are doing purity tests to feel good about themselves.
And this is assuming the games they ship are even good or noticeable to the user. I don't much care for Braid or The Witness, and I don't want my favorite dev studios to suddenly write everything from scratch every time. I would have a lot less fun things to play.
reply