DEV Community

Meghan (she/her)
Meghan (she/her)

Posted on

Web Features Have No Versioning System

Something I've noticed from being a web developer, looking out on the vast horizon of development platforms, is that being a web developer has a very unique set of challenges. I think that a lot of them arise from two factors. One is our best feature and the other is a fixable problem.

1) ""anyone can make a web browser""
2) the Web has no versioning system

The first problem, as I mentioned earlier, is actually our biggest feature but the problem arises because the user expectation is that our site, (full functionality aside) needs to "just work" in a way that at at the bare minimum, fails gracefully telling the user something about the status of the device they're on and if they can use the site.

The second is fixable. And no, I'm not proposing we have a Web 2, Web 3, etc. It's amazing that there isn't an order to the Web APIs such that vendors can implement them in the order that makes the most sense for the hardware the browser will be running on. However, from both a developers' and a potential new browser's perspective the fact that the progress of most specs can only be tracked through a Git commit history.

ECMAScript itself and most CSS features don't particularly have this problem, but HTML and a lot of the Web API extensions to JavaScript run into the issue above

The WHATWG says they don't want to publish a spec with problems. And I get it. No one does, but what version numbers do is give developers a baseline of reference for what functions and features are available for their disposal. It would also give new and current browser developers checkpoints of functionality to tackle so that they could focus their efforts better. It would set up a way for the browser to know "hey this site wants WebUSB 2, but I know I only support v1, I should tell the user!"

Top comments (1)

Collapse
 
alainvanhout profile image
Alain Van Hout

Unfortunately, these kinds of proposed solutions inherently can only work in a situation where everyone follows them, which is impossible given that there is already released software and sites out there that are not going to be updated to conform.