Cloudy weather has its problems

Back in the day (or in my case, way back in the day) , you developed a service, and (after hammering at it for a while) it worked. If you had to use an external API, it was one of the major ones (payment processors, major platform login tokens etc.). If one of them was down, then you and the users are probably too busy fighting away the rabid zombies to notice your application failing.

Today it seems that everything I handle is connected to a spiderweb of external APIs. Each service is an old timer cartoon evil boss – just sits in the high tech chair, and based on an array of CRT screens, and threatening phone calls, decides when to perform his only action – pressing a big red button. I have no issue with that. It’s cool that the service name can describe it’s entire function, and still fit on a single line with no scrolls. More so, it is way easier to test a service from A to Z, if there are no letter in the middle. It makes regression testing easy, so you can focus on the new and changed features. But…. it also means that in order to to test your little (yet chatty) service, you need to  make sure all of its little friends are online. Those little friends are also social beings, and cannot tell the time without several API calls of their own.

Continue reading