The key to resilient systems when code becomes comoditized are well documented business processes that flow into executable specifications. Great article by @chamath!
@chamath Well stated, @chamath! As code becomes comoditized, executable specifications that live and breathe along with the systems we build ensure we're building resilient, high quality products, not slop. As business assumptions change, systems can evolve safely and quickly.
We went to see Young Washington yesterday evening. A well done film that reflects the fortitude and character of what it took to form a nation that would endure. It is a rallying cry to who we were and who we can once again become.
#YoungWashington#America
David Friedberg: It's not rich vs poor, it's makers vs takers.
@friedberg:
“ The great lie is that there are two sides to society, that is the rich and the poor.
And the great truth is that there are two sides that are the makers and the takers.
The lie is that the rich are unfairly rich and the poor are unfairly poor, and therefore, the poor must take from the rich.
But the truth is that it's the takers that tell you that lie, that the real truth is that artists, plumbers, electricians, woodworkers, computer scientists, people that build, people that make from all walks of life, all income levels, all wealth brackets, are the makers.
And the takers are what Sacks calls this intelligentsia, the analysts, the espousers, the armchair mechanics, the critics, the commentators, the politicians. They are the takers.
They are the people that watch the rest of society make stuff, build stuff, specifically doing things that create value for other people in society. That's what a maker is.”
The great lie is that society is divided between rich and poor.
The great truth, as David Friedberg puts it, is makers vs takers.
Makers build, create, and deliver real value: houses, software, art, businesses, and everything that moves civilization forward.
Takers watch, criticize, analyze, and politic. They push the lie that the rich hoard unfairly so the poor must seize it… all while positioning themselves to rule the chaos.
As @friedberg tells his kids: “At the end of the day, if you made something and someone else valued it, you were a maker. That was an amazing achievement. That is a great day.”
Takers thrive on division. Makers drive progress.
Time to choose your side.
This is often overlooked, but is likely one of the most important things we should consider. We can leverage agents to help build the scripts, but not everything needs to run through agents. That being said, building utility CLIs that agents and humans can use is powerful.
if anything you want your agents to do is deterministic, such as managing a queue, or sorting a list, create a script for the agent to use. Agent's don't do deterministic things well. It's our job to force determinism upon them.
@unclebobmartin Just listened to the POV of choosing to lose production code vs the tests. A great point about being able to rebuild from tests. Perhaps one of the most important facets of an application includes documented intent, and then building systems that reinforce the intent.
@unclebobmartin Because the specs are consistent and portable and technology agnostic, the entire codebase could be completely replaced including the units that are necessary to bringing the application to existence.
@unclebobmartin So perhaps theist important artifacts are well documented requirements, and Gherkin, being a DSL for writing specifications in a way that is consistent and portable may just be the best way to express that intent.
I get how uncomfortable it feels to disengage from the syntax, from the sequence, selection, and iteration of code, from the dopamine hit of getting a complicated function to execute properly. I get it. I've been coding for longer than most of you have been alive -- I get it.
But the bar has been raised. And if I, someone who has been coding for more than six decades, can clear that bar, you should be able to clear it too.
And fear not, I've found plenty of joy on the topside of that bar. It just take a leap...
@unclebobmartin I've had quite a bit of success at taking other artifacts that have been developed in the course of understanding requirements for a product, and then asking for the Gherkin to be generated as well. I've found it's generally about 90% correct depending on inputs.