Web Site Updates | 20260909

Decimal line items for labor hours
Now Billable Time line items on invoices will reflect actual hours of labor being billed, not just quantity “1.”  This was a workaround due to a limitation of item quantity only allowing whole integers

Partial payments
It is now possible to make multiple separate payments toward an invoice

Payment reminder emails
Nobody likes to chase after money, but the reality is it people sometimes forget to pay their bills. Invoice reminder emails will go out automatically after 30 days.

Minor layout updates
General cleanup and formatting

Statement on the use of AI for software development | 20260827

With the rapid advancement of LLMs (Large Language Model AIs) and especially their usefulness for developing software, we feel it’s important to clarify a few things.

Firstly, we unapologetically do use AI for coding assistance. It’s basically impossible, at this point, to not take advantage of the productivity boost we can realize using AI. These models are the next evolution of the search engine. They excel at summarizing concepts and generating code. We can now do in a day what used to take multiple days, using AI. Even with current limitations, we’re still seeing at least a 2-3x productivity boost using it, if for no other reason that it makes generating simple boilerplate code much faster.   

What we don’t do, however, is blindly use their output in an application, or “vibe code” slop, and ship it. They’re not at that level yet (they will be soon).

Every line of code we use that is AI generated (or copied from anywhere for that matter) is checked by a human so we know exactly what it’s doing. It’s too easy to introduce insidious bugs or otherwise cause damage by blindly running AI generated code.

AI is certainly capable of generating good quality code. This is largely related to the quality of your prompts. Having the right terminology, and phrasing requests unambiguously, and with enough detail to keep the machine on track and not doing anything unexpected, is key, aka “Prompt Engineering,” which may sound like a joke, but using AI for coding assistance is a garbage-in-garbage-out situation.  Output quality reflects the quality of the prompts.     

They are getting better at not just following prompts explicitly, but also applying reasoning and coding standards to prevent you from making mistakes or overlooking things.  And if vibe-coding is your thing, that’s fine. That is the direction it’s headed.  For now, we want to maintain more control and awareness than that so we can take responsibility for code we publish.

At some point, AIs will become smart enough that they can output full applications with just prompts and no human review. They may skip generating source code entirely, and instead go straight to machine assembly. Of course there will be risks, ethical questions and unforeseen challenges, but we’ll deal with those as they come.

Don’t worry too much, and enjoy the ride.