<div style="text-align: center;"><h4>Need voice recognition in your app?</h4></div>
<div style="text-align: center;">
</div><ol><li style="text-align: left;">You could write it yourself - if you were insane, had endless time and felt more than a little masochistic. </li><li style="text-align: left;">You could grab some gigantic library and package it into your application. And endure the pain and costs of distributing that library alongside your own code.</li><li style="text-align: left;">You could spin up somebody else’s code as a microservice on infrastructure you control.</li><li style="text-align: left;">You could call a third party web service.</li></ol><div style="text-align: center;">
</div><div style="text-align: center;">
</div><div style="text-align: center;">If you choose options 1 or 2, congratulations you are a software developer. No doubt about it. Options 3 or 4 might make you something other than a developer. I’m not sure. It depends who you ask.</div><div style="text-align: center;">
</div><div style="text-align: center;">Option 3 would involve specifying and provisioning a host to run the service. That’s what sysadmins do, right? Or Option 3 might involve packaging the service as a docker image and deploying it as such. Sounds kind of like DevOps.</div><div style="text-align: center;">
</div><div style="text-align: center;">Substitute the other services your application requires for “voice recognition” above, rinse, repeat. You now have your application. Relatively little code required.</div><div style="text-align: center;">
</div><div style="text-align: center;">I am not a microservices zealot. The above are just design decisions. Costs and benefits to be weighed for the particular situation. But I would argue that choosing the path of writing less code does not make one something other than a software developer.</div>
<div class="separator" style="clear: both; text-align: center;">
</div>