Why consume external APIs?
When building your application, you have to consider multiple factors and sometimes implement multiple features that go well beyond your expertise.
Does that mean you should not build an application if you do not master every feature? No! Many applications rely on code developed by other people who are more skilled and experienced in a very specific area. These pieces of code are packaged as APIs and services so we can use (aka consume) them without having to understand every line of code they contain.
We have already come across this situation when we added logging into Bookmarkr. We didn’t develop the logging engine ourselves. We instead relied on an existing service provided by an organization that knows how to do it (and do it well!). By relying on that service, our application was able to benefit from logging functionality without having to be experts in the logging business domain.
Now, I can hear your thoughts (yes, I can – that...