Pretty much for the same reason the 2020 Beirut explosion happened.
Newsletter archive
Why is information exchange a hard problem?
Getting the systems of two companies to exchange information is tricky. Not because the technology is hard, but because there are two parties involved.
Stupid ways in which a project can fail
Lessons from the kitchen timer.
Amateur vs. professional speakers
Even if the task looks trivial, sometimes you need a professional.
Wrapping up the programmer/user chasm
When developing software, the contractor needs to understand the difficulties and the methodologies, and the client needs to be willing to step out of his “that’s the way we’ve always done it” habit of working with traditional contracts.
The programmer/user chasm: estimating resources needed to build software
When you make a bridge you have a plan. You know exactly how much you have to dig and how much concrete and iron you’ll use. You can ask a contractor how much and how long. If the bridge was software, all you’d know before you started to build it is some vague requirements like “it must have a capacity of 7 thousand vehicles per hour in each direction”. A contractor wouldn’t be able to give you a quote. However, it’s not impossible to make good estimates for software.
The programmer/user chasm: contracts and billing
In IT projects, both requirements-based contracts and time-based contracts create tension between the contractor and the client.
The programmer/user chasm: the methodology
Until 20–30 years ago, we approached software projects as if they were bridges. We’d write a list of requirements, and a contractor would develop and deliver the software based on these requirements. Today we know that this doesn’t work.
The programmer/user chasm: Blacksmiths and swordsmen
Why do we perceive as a problem the transfer of business knowledge from the logistics professional to the programmer? Why do we not perceive as a problem the transfer of business knowledge from a manager to a management consultant?
The programmer/user chasm
At a fundamental level, writing software is easy. Why, then, are good programmers so hard to find and expensive to hire?
Will we need programmers in the future?
“Ten years ago, if I wanted to do a simple computing task, I needed to hire a programmer. Today I do it myself in Excel. It seems unlikely we will be needing any programmers at all in a few more years.”
—My boss, c1995
“Strategic vs. transactional” and putting out fires
I think that everyone uses “strategic” and “transactional” differently. One person may say “we’re strategic”, but what they actually do might be termed transactional by another person. If we aren’t certain we are on the same wavelength, “be strategic” becomes a meaningless slogan.
Better, more expensive service
There are always many businesses who are willing to pay for a better service.
Where is my shipment?
It might not occur to customers how hard it is to know where a shipment is.
The bank and the plane
It’s hard for laypeople to handle bank passwords properly. Can computer professionals be trusted with it?
On the Internet
Can remote working be successful? What about remote schooling?
How COVID19 makes us reconsider how we view investments
Like today’s CEOs who have lots of pressure to show ROI within a trimester, I’ve often been looking at the costs and the ROI in a short-sighted manner.
Refusing to believe
Paradoxically, we may sometimes fail in order to not feel failure.
Stories from Greek engineers
Software projects don’t need to be late or exceed the budget—but they need to get rid of a bad tradition.
The believe-in-what-you-wish-for mentality
When we are overwhelmed, our primary urge is to sit down and work, when we should pause and think instead.
We fail to observe ourselves when it’s most needed
Stories from a crêperie.
Self-observation during a project
Lack of self-observation can lead to Increased costs, missed deadlines, unsatisfied customers and frustrated employees. All that while a better solution may be staring you in the face.
Self-observation
Lack of self-observation is detrimental to businesses.
Do you need a web site? (redux)
A web site is a tool. Asking whether you need a web site is like asking whether you need a pen.
How to throw away files, business processes, and clients
It’s not just our homes that can benefit from Marie Kondo’s method—it’s also our businesses.
How to throw away years of effort
If throwing it away is going to pay off, you should throw it away—the amount of previous money and effort is irrelevant.
Finding the right context can be hard
Looking for the right context is important, both when dealing with COVID-19 and when we examine the cost of automation.
Context matters
The cost of automation for a trucking company is dwarfed by the cost of trucks and drivers. Why, then, do many small trucking companies run on pen-and-paper or Excel?
“Strategic vs. transactional” and the home-grown Excel
Do you want to be “strategic” rather than “transactional”? Do something about your home-grown Excel.
“Who knows what’s waiting for us down there?”
We need to keep calm in the face of the unknown.
How your home-grown Excel came to be
“Oh, this thing is so complicated! I’ll just do something simple in Excel.” If you ever said this to yourself, here is the result you got.
What does the coronavirus have in common with a software project?
It’s an old Greek saying that however bad something is, there’s always a good side to it.
The Census Crunch: How much does a real software development project cost?
I created a toy application, which, if you were lucky, would cost you 500 or 1000 dollars/euros. Real projects cost much more.
The Census Crunch: Is it decent enough?
Despite having taken 18 hours of work, it the application needs have some way to go.
The Census Crunch: Why do some trivial things take so long?
A developer will sometimes be able to do wonders in minutes, and sometimes get stuck for hours while trying to change a comma.
The Census Crunch: Why is software development so expensive?
A graphic that shows where a programmer spends his time in order to write a simple program.
The Census Crunch: What is the cost of a small application?
I thought I’d take this small application for breakfast, but it took me two weeks.
The Census Crunch
Search in 1.7 million U.S. transport businesses; the FMCSA census data for humans.
Do you need a web site?
You don’t have to have a web site. Make one if it’s useful for your customers.
Your brand new IT system sucks? Great! Throw it away!
“We paid for it, therefore now it must pay off.” Here’s how to escape that damaging mentality.
A question that can lead to good automation is “how can we reduce the volume of emails?”
Professional vs. nephew software development
If you have your nephew develop software for you, costs will be way smaller. But these savings come at a, well, cost.
What is “document management”?
The first step towards good document management is to eliminate as much as possible.
What is “integration”?
“Integration” is a slightly confusing term and in many cases “bridging” and “connecting” are simpler and tell the whole story.
Questions to ask your potential IT provider
Even if you’re not an expert, it doesn’t harm to ask some questions about your prospective IT provider’s software development habits.
Off-the-shelf vs. custom made
All software solutions suck. The thing is to find one that sucks less.
How a company can be brought down by bad code
If you are a new business you may think you shouldn’t worry about code quality now, and you’ll do it “later”. This mentality has driven companies out of business.
What is an “ERP”?
If you use “ERP” as a meaningless sequence of letters, it’s OK. If you try to look it up, you may be in trouble.
Should I automate?
We often worry a lot about how to proceed with automation. Sometimes we fail to ask: Should we proceed with automation?
Warranties
Warranties can help, but they are not the answer to the problem of automation.