Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Breaking Backwards Compatibility: The easy way

flaper87
April 19, 2015

Breaking Backwards Compatibility: The easy way

Say you have this piece of software that many people use. One day, you wake up and you have the urge to make them suffer. Well, there’s no better way to do so than breaking the software they’re using.

In this talk, I’ll walk you through very good ways to do so by showing examples taken from experience - because experience is the only thing that matters (TM) - so that you’ll be able, by the time this talk ends, to do the same to your users.

(P.S: If you’ve a kinder hearth, you can also do the exact opposite of what I’ll say and keep your users happy.)

flaper87

April 19, 2015
Tweet

More Decks by flaper87

Other Decks in Technology

Transcript

  1. Backwards Compatible... [...] If products designed for the new standard

    can receive, read, view or play older standards or formats, then the product is said to be backward-compatible[...] http://en.wikipedia.org/wiki/Backward_compatibility
  2. Why Does it matter? It’ll help you save TIME but

    not only that. It’ll also help you save MONEY and it does not end there. It also helps saving KITTENS.
  3. communicate Let them know what’s going away Do that at

    least 1 cycle in advance Have a well defined release cycle
  4. Consistent API Helps users migrating over new versions Helps you

    maintaining your software Design by contract
  5. Privacy Rules Private by default Don’t expose internals, commons or

    utilities If it’s public, you can’t assume it’s not being used
  6. Testiing Unit and functional tests are taken for granted Do

    integration tests If possible, run cross- version, integration tests