Computer Learning Zone CLZ Access Excel Word Windows

Fool me once, shame on you. Fool me twice, prepare to die.

-Klingon Proverb
 
Home   Courses   TechHelp   Help   Contact   Merch   Join   Order   Logon   Forums   
 
Back to Captain's Log    Comments List
Upload Images   @Reply   Bookmark    Link   Email   Next Unseen 
Idiot Proof
Richard Rost 
          
16 months ago
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. - Rick Cook

One of my students had this quote in their email signature, and I have to say... this one hits hard. Not just because it's funny, but because it's true. Painfully, hilariously true.

When it comes to building software, whether it's a billion-dollar app or a humble Access database, you eventually realize that you're not just writing code. You're writing defense. You're designing for the inevitable moment when someone clicks something they shouldn't, types letters where numbers belong, closes the form before saving, or somehow pastes an entire Excel sheet into a single text field.

And yes, I spend a lot of time in my Access lessons talking about how to idiot-proof your database. Trap errors. Validate inputs. Lock things down. Use combo boxes instead of open text fields. Hide things that users shouldn't touch. Add warnings, confirmations, backups, autosaves, and undo buttons if you're feeling generous. Because if it can go wrong, someone out there will find a way to make it go wrong.

But let's be honest... this isn't just a software thing. It's a life thing. Look around at the state of the world and tell me the universe isn't winning this little arms race. From people falling for obvious scams to someone using a toaster in the bathtub to imposing tariffs on islands inhabited by only penguins*, it's clear we're still losing ground to creative forms of user error.

Now, I don't know much about Rick Cook, the guy behind this quote, but after seeing some of his books online, titles like The Wiz Biz, I'm intrigued**. Apparently, he writes fantasy novels about a modern-day programmer who ends up in a world of magic and tries to make sense of it using code logic. Sounds like something I'd read. If any of you have checked out his stuff, post your comments below. I'm curious.

This quote really does say a lot. The universe might be winning for now, but we coders aren't going down without a fight. Just remember to keep your code clean and simple and not make your software too complicated, because as Scotty once said, the more they overthink the plumbing, the easier it is to stop up the drain.

Don't let idiots stop up your drain.

LLAP/RR

* Not being political. This is just funny, and I'd laugh about it no matter which world leader did it.

** I just purchased this on Amazon. Planning to read it on my next flight.
Richard Rost OP  @Reply  
          
16 months ago

Thomas Gonder  @Reply  
      
16 months ago
From my experience in adding a lot of features to demanding applications, which make it easier to stop up the drain, I get it. However, I can't say how many late nights or weekends I lost trying to figure out what some "idiot" user did, that bypassed my efforts to bullet-proof the application. Yes, they did an idiot thing, but if I listened, they sometimes had an explanation that involved something they needed the software to do, that it didn't. I wish they had of come to me first, before striking out on their own creative efforts, but I guess I wasn't always available to them either. In these cases, they weren't the universe's idiot. In other cases, they were. And in some cases, I was the idiot. It's been a long road, but I've become more tolerant of idiots. Unless they program commercial or government websites, or work at a bank.
Thomas Gonder  @Reply  
      
16 months ago
Here is a great example of what I just went through today. Those of you that have seen my forms know that I am trying to bypass many of the standard features that are in Access forms.  At the top of my forms is a little button that does a validation of all the data. The problem is when there is a new record, I have to do a lot of code to bypass what Access naturally wants to do. Today I pressed on that validate button for the first time on a new record and Access barfed up an error message that I had never seen before. What idiot would try to validate data when they haven't entered any yet? Well, people like to push buttons and I might as well be bulletproofed against that possibility, or an .accde will just crash out.

I have hundreds of little code bits like this to deal with all kinds of possible idiot moves:

Public Sub sValdtAll(frm As Form, fCntl, fObj, Optional aShow As Boolean = False)
  '** Validate all fields in form
  ...
  If (fCntl(0, 11) = "FORM" Or fCntl(0, 11) = "NEW") And (frm.Dirty = False And IsNull(frm!ID)) Then
    sAddStatus frm, fCntl, fTranltLang(TempVars!LangID, "3_ValdtNoEntry", "H"), , , , True
    GoTo ExitCd
  End If
...

Many of them take quite some time to figure out the exact combination that will work.
Thomas Gonder  @Reply  
      
16 months ago

Jeffrey Kraft  @Reply  
      
16 months ago

This thread is now CLOSED. If you wish to comment, start a NEW discussion in Captain's Log.
 

Next Unseen

 
New Feature: Comment Live View
 
 

The following is a paid advertisement
Computer Learning Zone is not responsible for any content shown or offers made by these ads.
 

Learn
 
Access - index
Excel - index
Word - index
Windows - index
PowerPoint - index
Photoshop - index
Visual Basic - index
ASP - index
Seminars
More...
Customers
 
Login
My Account
My Courses
Lost Password
Memberships
Student Databases
Change Email
Info
 
Latest News
New Releases
User Forums
Topic Glossary
Tips & Tricks
Search The Site
Code Vault
Collapse Menus
Help
 
Customer Support
Web Site Tour
FAQs
TechHelp
Consulting Services
About
 
Background
Testimonials
Jobs
Affiliate Program
Richard Rost
Free Lessons
Mailing List
PCResale.NET
Order
 
Video Tutorials
Handbooks
Memberships
Learning Connection
Idiot's Guide to Excel
Volume Discounts
Payment Info
Shipping
Terms of Sale
Contact
 
Contact Info
Support Policy
Mailing Address
Phone Number
Fax Number
Course Survey
Email Richard
[email protected]
Blog RSS Feed    YouTube Channel

LinkedIn
Copyright 2026 by Computer Learning Zone, Amicron, and Richard Rost. All Rights Reserved. Current Time: 8/7/2026 10:43:41 PM. PLT: 1s