Meanwhile everyone I work with is loving the smooth copilot integration with vscode.

Its so good at automating boilerplate stuff.

Especially testing, oh god does it make writing tests faster. I just tell it the scenarios that have to be tested and boom, 1000 lines of boilerplate produced in like 5 minutes.

And when it has existing code to use as a reference on how to do it right, it does a very solid job, especially repetitive stuff like tests, since usually 95% of the code in a test is just arranging and boilerplate setting up the scenario.

Also “hey go add xml docs to all the new public functions and types we made” and it just goes and does it, love that lol

Once you acknowledge like 90% of your code is boilerplate and sonnet/opus are extremely capable at handling that stuff when they have existing references to go off of, you can just focus on the remaining 10% of “real” work.

Why is everyone okay with boilerplate? Did we forget what programming languages are supposed to do?

You still have to maintain that code.

Theres a fundamental minimum amount of boilerplate you just have to write to make a functioning app, even if its simply just describing “this thing does this”

For example, if Im making a web api, theres just fundamentally a chunk of boilerplate that wires up “This http endpoint points to this domain logic over here”

And then theres gonna be some form of pre-amble of describing “it takes in this input, it returns this response, and heres all its validation”

And while its simple code, and its very simple to test, its still a buncha LOC that any half assed dev can write.

Stuff like that AI can shit out very quick given an input requirements doc that you, the dev, were gonna get anyways

And then you, the dev, can fill in the actual logic that matters after all that basic boilerplate stuff.

“Yes, it has a phone number input, its required, and it must fit the phone number regex we defined. So… shocker, you gotta put a string called PhoneNumber on the inptu model, and another shocker, its gotta have the phone number validation on it and required non empty string validation on it”

It doesnt take much trust to put into the LLM to get that sorta stuff right, but it saves me a whole bunch of time.