Refactoring development

Ramblings from the trenches...

View on GitHub

It’s been here for some time, but after a few false starts (the not-so-simple SOAP protocol and WS-BS*) it seems the world has finally agreed on Json/REST as the de-facto protocol or lingua franca of the web.

Discovery

How do we discover it? Discover has always been an after-thought with REST, but these days most rest frameworks come with built in discovery (at least for human).

But as devs, we always like consistency, - that’s where things like Swagger come in - read spec 2.0 here.

Strong-ish Typing

Swagger stands on the shoulders of the Json Schema project. With the types announced it’s a stones throw to auto-generate bindings for all the strongly typed languages out there.

Testing

Having all these services out there that we rely on is great, but we need to be able to stub them out with fakes. This is where open source projects like mockbin come in. By being able to record and then replay you can isolate yourself from your other (micro)services.

Versioning

Swagger supports marking bits of your API as deprecated which gives your users a warning they should be upgrading.

Final thoughts...

Simple is good, it keeps everything very mashable. If the de-facto services interface is Json/REST, doesn’t that make Enterprise JavaScript inevitable?


Examples of ‘Universal JavaScript’ (yes now JavaScript on the server has a cool name - well better than ‘Isomorphic JavaScript’) :

NetFlix