13:25 “Huh, this person is seeing it different, why is that? Maybe they are seeing something I don’t”
More developers of repos should have this mindset. From my experience, Ary, Brian, and ysbaddaden are great examples. If repo owners / contributors don’t have this mindset, open source can be very dangerous, and most importantly: a hindrance to its community and development.
Tangentially, I think open source can be very dangerous. I have one great example: Godot 3.2+ compared to 2.1. I’ve converted my game from 2.1 to 3.0 stable a couple years ago. Had a plethora of issues in 3.0 (tile flickering, audio crackling, etc). My project is rather large, 20,000~ LoC, and I eventually got tired of being a beta tester and reporting issues for over half a decade. I said hell with it, and started to convert everything back over to a modified 2.1 stable. 2D performance is better, no tilemap flickering, polyphony support, window initialization is faster, UX is smoother, menus in editor are easier to navigate, so many more positives I could go on. Workflow speed has increased so much by switching back. And most importantly, no game-breaking bugs and it’s production ready!
This part might seem irrelevant at first but it’s very important. People wonder why there are no “big games” with Godot. Why? Because with such an influx of contributors, the bugs scale off PRs. It’s a never-ending issue and becomes worse over time. This does not only apply to Godot’s repo, but to any big open source project. This can be mitigated by the community manager / repo owner to only merge game-breaking issues, but in Godot’s case, it’s a mix. They will merge game-breaking fixes, but also merge new functionality (or new functionality masked as a bug fix). I’d rather use software and be confident in the end-product and have it production ready, compared to being a game developer and a beta tester of the same product! It was disheartening to read that GitHub issue where a developer released his gorgeous game on steam, and had a client crash (audio bug) infiltrate his game that was merged before a release.
Speaking about software stability, I just realized how fortunate we are with Crystal’s stability. You mix Crystal with Godot 2.1 and it’s a match made in heaven. Crystal does not have as many contributors as Godot (but to be honest, I can see this being a good thing). I’d rather have a stable application with less functionality, than one with more functionality that is littered with bugs and causes instability. Especially when the current functionality is more than enough. It’s not just about more features, which sadly, in Godot’s case, I think that’s where it’s heading.