How does coding change when coding is cheap, but getting it wrong isn’t.
Tag: programming
Your Execs Are Going to Kill Your AI Strategy
Not your engineers.Not the models.Not the tooling. Your executives. If your leadership team still runs the company through slide decks, your AI initiative is already compromised. AI does not thrive in PowerPoint. Work becomes about presentability: One Company, Two Realities Every company has two operating systems: Finance works inside Xero models and reconciliations.Sales lives in Salesforce pipelines and probabilities.Engineering lives…
Generative AI as APIs
Let the computers talk amongst themselves Pixar’s “Up” gave us Doug, who answered the age-old question of what dogs would say to us if they could talk. It turns out, dogs have nothing to say that we already didn’t know. In 2023, Large Language Models (LLM), such as ChatGPT, gave computers the ability to mimic…
Comparing Different LLM Models For Data Extraction
A lot of human and computer processing time is spent getting data from one format to another. Many processes defy automation because they run on a long tail of unstructured data, human text, and documents designed for printing. The explosion of AI and large language models (LLMs) opens the door to fully automated data extraction…
How Many Babies?
This is one of those questions that gets under a programer’s skin: Supposed a society where people prefer boys. They will keep having children until they get a boy and then stop. What will be the percentage of boys to girls in this society? Programers Like to Complicate Things: I immediately started drawing out trees with…
Jira: Epics, Sub-Epics, and Story Points
I love Jira, probably more than I should, but the difficulty in tracking progress and breaking down work to mirror my teams kills me. The new Greenhopper 6.2 and the “edit in place” fields made a big difference, but I still needed a couple of things: A way to groups a bunch of Epics together…
Software Estimation that Works, Part 1: Ranges. Confidence and Risk
Estimates Cannot Be Precise “How long will that take?” No other question stops a tech team dead in it’s tracks. Without exaggeration, it is like asking a new parent, “So how much do you think it will cost to send you kid to college?” If you are that parent and paid your own way, or…
How Software Estimates Fail Part 4: Lots of Little Estimates
Last week we talked about how easily estimates go wrong when you try to make giant ones up front, but they can also fail easily when you try to add up lots of small ones. Once again, it comes down to simple math and how optimistic we are about our planning. If I were to…
How Software Estimates Fail Part 3: The Grand Estimate
Classic project planning work backwards, you pick a large goal that will propel the business forward and add the right mix of enough man power and/or time to hit your goals. Make millions. Retire. If it were that simple, none of us would be dialing into 9am scrum meetings.There is a reason why when people…
How Software Estimates Fail Part 2: Estimating Once
This is the “Cone of Uncertainty.” The numbers behind the cone are based upon surveys of thousands of software projects and the differences between their estimated and actual schedules. As you travel into the cone, you are travelling further into the project’s timeline. Estimates made later in a project are base upon more data and…
How Software Estimates Fails Part 1: What Is an Estimate Anyways?
Nothing dooms a project faster than its first estimate. From the fateful moment that someone even hints at one; the launch date, budget and staffing all seem to be broadcast to every possible stakeholder and locked down in an iron clad contract. This kind of behavior is why so many gun-shy developers just stopped giving estimates all…
Stupid sed Tricks: LDAP
Spent too many minutes doing a simple task today: Take groups from LDAP and tell me who in in group 1 but not group 2. Apache’s Directory Studio is essential if you do a lot of LDAP work. It makes it easy to navigate and peek around. With this I was able to dump two files, each listing…
