by tdammers » Wed Jul 25, 2018 9:14 am
Indeed, not going to happen.
The problem is essentially one of a Tragedy of the Commons. While the community gain of having standardized properties would be huge, there is no immediate payoff for an individual aircraft developer to do it, and changing your code to accommodate the standard properties after the fact comes at a considerable cost. In fact, even using standard property layouts for new development carries a cost, because now instead of just creating properties as you see fit, you have to look up what you're supposed to use, and verify that your setup meets the standard, for every property you create.
And the gain will only be useful if all, or most, aircraft out there get updated to the new standard - if only a small subset matches it, then it's still useless, because anything that depends on it will break most of the time.
And there's another problem, namely, who is going to manage the standardization effort? How are you planning to get people to agree on a standard? This isn't going to be easy, remember that for most people here, their work is a work of love, they have strong feelings about it, and they are not looking for others to tell them how to do it. So whatever standard you may propose, someone's feelings will get hurt, someone will have to say goodbye to something they value, and heated discussions with an uncertain but probably unproductive outcome will ensue.
If you want some sort of standard, then it will have to evolve, so the question is, how do you make that happen. It's a fine balance, really; one between getting people on board, and making those on board productive towards to goal. Let me explain with a simpler example.
Let's say you want to add a property that holds the ICAO code for each aircraft model, and transmit that over multiplayer. That would be a super useful feature, because it means that all sorts of other tooling (like OpenRadar) could trivially display correct codes, MP games could load reasonable placeholders for missing MP models, etc. So how do you make this happen? You can't post a message saying "from now on, all aircraft must set the `/sim/type-code` property to the ICAO type code or else", because you don't have any authority to enforce this. You have to give aircraft developers a reason to add that property, and you have to give tool developers a reason to look at it. Without aircraft supporting this property, no tool will look at it; but with nothing consuming it, no aircraft will expose it. Vicious circle. So in order to break that circle, you need to be in a position to start making that change on both ends, enough to gain some social traction. You could, for example, add it to the half dozen aircraft you maintain, and convince the developers of the online maps and / or fgtracker to look at the property if it is present, falling back to the old behavior if it's not. The fallback is important, because without it, existing functionality will break, and that will hurt the tool's popularity, so that's a no-go. But if you do this right, and the change proves to actually be useful, then more and more aircraft developers will add the property, and more and more tooling will start using it. Most likely, you'll never get 100%, but it's possible that at some point in the future, all the "serious" tools and aircraft do, and the property becomes a de facto standard. Then, and only then, does it make sense to seek community consensus about formalizing the standard and making it "mandatory". But that takes months, if not years.