Hacker News new | ask | show | jobs
by autarch 83 days ago
Imagine that you are a consultant. You get a call that starts with, "Hi, this is Joe Schmoe and Schmoe Law Firm. I need a new billing system. Can you build me one?"

And you respond by saying that you can, but you need to do a _lot_ of work with him to spec this billing system out. You can't just build "a new billing system" without any more details. You tell him that this will take many hours of work between the two of you where you ask him questions, write a spec, get his feedback, and repeat that a number of times.

At this point, he says "wow, that sounds like a ton of of work for me just get started", and he gives up.

AI does not fix any of this, and this is the thing that I think most people will not want to do, and that's why I think this blog post is making a very good point. The amount of work it takes to build a new software system, even with a super competent programmer as a partner, is still quite significant. And it requires thinking about hundreds of tiny little details in a way that drives a lot of people nuts. They will only do it if they _really_ have to do it.

4 comments

Think payroll. I used to think payroll is relatively simple. Then I spent some time on government of Canada Phoenix pay system (go ahead... Google and weep). And it's... Insane. System has been live for a decade and still regularly gets hit with some weird scenario from some department that nobody foresaw, it wasn't captured in requirements, but upon review by business analysts is a valid scenario. Bob was a CS5 in department of defense and speaks French so gets bilingual bonus and his boss was away for half a day so Bob gets acting cs5 pay and is in public alliance union so these are the dues, and it is second Tuesday of a month and blue moon, but then Bob got moved to department of agriculture and then 3 months later realized that his previous manager at defense didn't put in his promotion on time so now you have to figure out his retro pay for when he was in defense even though everything on his file now has agriculture labour agreement and codes and rates etc etc etc. And this made up example is a fraction of the complex examples.

Clear and comprehensive Requirements are always the tricky bit, at least in business software. Twilight zone covered it perfectly and presciently decades before AI, with genies taking your requests literally and giving you unpredictable and usually negative outcomes.

Or AI won't fix diffusion of responsibility that you see in companies through outsourcing, offshoring or matrix organizations...Or to go through committees to know if they should change shh root access with abc123 as password.
That billing system will end glue code that links existing Big SaaS players which AI can handle just fine.

Consultants are not spinning up a bespoke SaaS product given the risk.

> You can't just build "a new billing system" without any more details.

Does every billing system need to be a one of a kind snowflake?