Hacker News new | ask | show | jobs
by magicalhippo 2806 days ago
Specialized applications aren't too bad if they're made with integration in mind. That allows them to tie together different datasets to do a limited set of things really well.

The problem is if it's difficult to get data into or out of them.

At work we make a fairly specialized application, but we're very flexible in how we can receive data and send data back out. From manually copying and pasting Excel sheets, parsing emails and PDFs, plain XML over SFTP or web services/REST APIs, we got solutions depending on where the core data comes from and where results needs to go (status back to WMS/TMS, financial details to invoicing system etc).

If needed we have customer-specific "integration shims" to easily adjust/correct/ignore data as it comes or goes.

This allows us to focus on making our application really good at a few things, and let other programs handle the tasks our customer also needs to get the job done (warehouse management, transport management, invoicing etc).

I agree though that support can be a bit of an issue when you have many systems working together and something is wrong. The place where the user discovers the error is often not the place where the error occurred. Monitoring is important, allowing support to be proactive ("hey, the server where you're hosting the DB to our program has less than 1GB diskspace left again").