THE NEW Miscellaneous Talk That Doesn't Deserve A New Thread Thread Thread (Part 2)

There’s two layers to the problem, I’d say. One is the general code architecture where good code practices are related to programming patterns and techniques used to encapsulate logic so that you can focus on one part of the problem at once. For example some terms related to this are OOP, common code patters (proxy, factory, singleton, plain record models), and concepts like SOLID or KISS, data model design. Those are things that apply to most languages and can be used to make sure you aren’t writing super tangled together spaghetti, instead writing really neat small code modules (in OOP that is classes and interfaces) that interact with each other in a well defined way that is documented with comments. If you don’t do that you end up with such a huge mess that trying to reason about the program all at once overloads your brain and you can’t work on the program effectively anymore.

The second layer is writing idiomatic code in the language you picked. Each language has its own set of best practices, like how you should structure, indent, name things in your code. This ensures that when other people read your code they aren’t surprised by your style choices but can actually focus on the meat of the problem: does your code have bugs, algorithmic mistakes, bad big O scaling algorithms that are trivial to rewrite.

I’ll point out that for Thrive, we have a style guide document detailing most of our styling requirements, but also some Godot usage requirements that we’ve found avoid bugs or just result in much more consistent and less confusing code for existing Thrive developers to read:

The rest of the style is enforced with automatic type checks, which are awesome in saving review time as a human doesn’t need to look at your weirdly spaced out code and instead the automatic tool tells you to fix the problems before a human reviewer can then focus on the actual logic of your changes as their eyes won’t get caught on every single style difference.

So it didn’t? Or it could be that only geo location information is removed as I think that’s the only really personally compromising info if someone accidentally uploads an image with that.