this post was submitted on 26 Aug 2023
28 points (100.0% liked)
Experienced Devs
4006 readers
1 users here now
A community for discussion amongst professional software developers.
Posts should be relevant to those well into their careers.
For those looking to break into the industry, are hustling for their first job, or have just started their career and are looking for advice, check out:
- Logo base by Delapouite under CC BY 3.0 with modifications to add a gradient
founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Users will become dependent on anything you release.
Microsoft has to be careful with private and internal members as users will use reflection and become dependent on them. Meaning internal changes break customer code.
Admittedly that is over kill in most cases. I take the stance if they are dependent on private state it's their fault if a release breaks it.
But the point remains you can't easily change existing APIs once released.
As mentioned above semantic versioning is a good solution to this. At least then they know when an upgrade will cause breaking changes.
If it can be avoided don't put out anything that will likely be retired. Releasing experimental features that are likely to be replaced is always going to be bad.
If you release a feature you need to plan to support it essentially.