Post ASq2Sck5ApMj7P7fm4 by bitshifter@mastodon.gamedev.place
(DIR) More posts by bitshifter@mastodon.gamedev.place
(DIR) Post #ASq2Sc75VoApASsWzg by reduz@mastodon.gamedev.place
2023-01-01T15:54:14Z
0 likes, 0 repeats
20 years ago, the syntax of languages like Pascal, Lisp, etc. were considered obsolete and everyone who programmed C/Assembly and used manual composition, functional features, etc. were treated as dinosaurs. Now it seems these things are trendy again. I'm sure that, in 10 years, you will see a new movement of developers saying "See, OOP was not that bad" or "keeping data and logic together was easier".
(DIR) Post #ASq2Sck5ApMj7P7fm4 by bitshifter@mastodon.gamedev.place
2023-01-01T19:30:59Z
0 likes, 0 repeats
@reduz maybe if memory performance catches up with CPU performance, otherwise OOP is just working against hardware.
(DIR) Post #ASq2SdWIHZvjWvgAvA by reduz@mastodon.gamedev.place
2023-01-01T23:11:10Z
0 likes, 0 repeats
@bitshifter Not everything is about performance in software design. Ease of development is important and generally only a small part of software is the one that needs to be optimized and data oriented.
(DIR) Post #ASq2Se1UPasr5gH5Xs by reduz@mastodon.gamedev.place
2023-01-01T15:57:33Z
0 likes, 0 repeats
I also predict that Rust will also become a mess due to so many features added (just like C++/Java) are and developers will start coming up with new "simpler" programming languages that will use 00s syntax again just because it looks different and cooler.
(DIR) Post #ASq2Se1qOHAR6mRN68 by bitshifter@mastodon.gamedev.place
2023-01-01T23:30:36Z
0 likes, 0 repeats
@reduz if you paint yourself into a corner with a poorly performing architecture you can get stuck. Nothing stands out in the profiler because you are suffering death by a thousand cuts through cache misses. The game is built but not shippable due to perf. OOP also makes parallelism hard due to opaque data access patterns. There are other ways of building software that don't have these problems, e.g. ECS, but it's not the only option.
(DIR) Post #ASq2SeiNq7C9EiLLP6 by reduz@mastodon.gamedev.place
2023-01-01T23:49:34Z
0 likes, 0 repeats
@bitshifter IMO that's just a myth and not at all my experience (and I've been shipping PC, mobile and console games for decades) and to me it sounds more like stories of incompetence or not understanding the product.It always for me was easier to optimize corner cases while developing most of the game using scripting and accessible paradigms.
(DIR) Post #ASq2SfCA3P0wj4H7om by bitshifter@mastodon.gamedev.place
2023-01-02T00:08:22Z
1 likes, 0 repeats
@reduz I've also been shipping games for decades and have seen this happen on multiple console titles. The transition to the PS3/360 era was particularly hard, a lot of old OOP architectures were not fit for purpose, titles failed to ship, etc. I've also seen OOP code replaced with cache friendly code go from a millisecond to the dev thinking it was broken because they couldn't see it in the profiler anymore. It wasn't broken.