feature article
Subscribe Now

It’s Not Me, It’s You

When All Else Fails, Read the Instructions

“The fault… is not in our stars, but in ourselves…” – Cassius, Julius Caesar (I, ii, 140-141)

 

Paperwork – you gotta love it. There’s some evidence that nowadays, in the age of the “paperless office,” we create (and fill out) more paperwork than at any other time in history. This dreary fact demonstrated itself to me just the other day.

A nice man with whom I was doing business handed me a three-page form to fill out. How quaint! Because this is the 21st Century and because I am not Bartleby the Scrivener, I scanned the document into Acrobat and let the software convert all the printed boxes into fill-in fields. From there, I could just click each box in turn and type in my information. Click, click, done. I printed out the completed form for a signature (which I could also have done electronically, had the other party been willing to accept it).

But after I’d committed it to ink and paper, I found a few mistakes. Oops. That’s why we have proofreaders. It looks like I’d forgotten to fill in one box, and put the wrong information in another. Re-type, re-print, re-sign. Oops again, a different mistake this time. Do-over. Argh! Yet another mistake, this time… I’m ashamed to admit that it actually took me four re-spins before I’d filled the dumb thing out properly. Must need more caffeine.

Fax the form to headquarters and wait for a response. Surprise! They complained that it still hadn’t been filled out correctly. The cranky lady in the inaptly named Customer Care department explained with all the patience she could muster that I’d carelessly missed box #22a and could I please resubmit the entire form with the correct information. I apologized for the error and foolishly confessed that it had taken me multiple attempts to get even that far. “Oh, yeah, we get that all the time,” she replied in her best not-quite-condescending voice. “Practically everyone submits this form wrong. Nobody seems to be able to follow directions anymore.”

Pause for dramatic effect.

“Uh… so you’re telling me that your customers all submit this same form incorrectly but it’s their fault?”

I suggested as politely as I could that maybe the fault was in their paper form, not their clientele. After all, if “practically everyone” makes the same mistake, perhaps the error lies in the design of the form. Maybe – and I’m just spit balling here – just perchance might you consider redesigning the form so that it’s not so confusing? Speaking for myself, I had trouble figuring out what information was supposed to go where. It’s conceivable that your other clients are all suffering the same problem, as you yourself suggest. You think? Worth a thought?

You would think I had impugned her ancestry. Maybe she’d lovingly crafted this form herself, or it had been designed by her darling granddaughter the talented graphic artist. I don’t know. But she was remarkably defensive about it, protecting a minor piece of bureaucratic paperwork like it was a family heirloom. How dare you malign my ancestral administrative legacy!  

My point here is, we all get attached to the things we create. That’s only natural, and it probably springs from some deep-seated instinct for familial protectiveness or clan hegemony. We defend our choice of processor, our favorite operating system, our collection of development tools, and our timeworn work methods.

But that instinct to protect and defend without justification leads to some really nasty programming and some bad products. Software interfaces, database schemas, GUIs, phone trees, websites, user manuals, PowerPoint slides, charts and tables – they all fall victim to the “it’s good because it’s mine” mindset. We can do better. More importantly, your customers deserve better.

I created my first website using HTML and a text editor (we’d only recently passed the stone tool age) and I was pretty darned proud of it when it sort of, kind of, started to work. Beaming proudly, I showed off my handiwork to someone else. The joy was short-lived.

In another’s eyes, the site was ugly, the margins were ragged, and the menu structure was confusing. And did you really have to try out all the HTML tags at once? Regardless of how long it had taken me to create, it still wasn’t a very good website. The level of effort I’d put into it was irrelevant. Sure, it was a good learning experience, and it’s important to learn new skills – that part’s all fine. But the site itself – the product, so to speak – wasn’t ready to ship to customers. All it took was a moment’s feedback from an outside observer to make that clear.

That same kind of constructive but brutal feedback is vital when creating all sorts of software interfaces, whether they be user interfaces (a GUI, for example) or internal APIs. We often get too hung up on the internal plumbing that goes into a software project and start to forget about its external appearance and usability. Apple famously designs its products from the outside in, focusing on the “user experience” first and then working out how to make the bits and bytes render that vision. The original Palm Pilot (remember those?) was famously a block of wood in Jeff Hawkins’s pocket. He wanted something that would fit that size, shape, and weight. The rest was details.

We all hang our kids’ finger paintings on the refrigerator because, hey, they’re our kids. That’s sweet, but that kind of unconditional love doesn’t extend to your colleagues’ product designs. Beat ’em up. Give ’em a hard time. Administer some tough love. And ask for the same in return. Who knows, you might like it. Mister Grey will see you now, Miss Steele. 

Leave a Reply

featured blogs
Apr 19, 2024
Data type conversion is a crucial aspect of programming that helps you handle data across different data types seamlessly. The SKILL language supports several data types, including integer and floating-point numbers, character strings, arrays, and a highly flexible linked lis...
Apr 18, 2024
Are you ready for a revolution in robotic technology (as opposed to a robotic revolution, of course)?...
Apr 18, 2024
See how Cisco accelerates library characterization and chip design with our cloud EDA tools, scaling access to SoC validation solutions and compute services.The post Cisco Accelerates Project Schedule by 66% Using Synopsys Cloud appeared first on Chip Design....

featured video

MaxLinear Integrates Analog & Digital Design in One Chip with Cadence 3D Solvers

Sponsored by Cadence Design Systems

MaxLinear has the unique capability of integrating analog and digital design on the same chip. Because of this, the team developed some interesting technology in the communication space. In the optical infrastructure domain, they created the first fully integrated 5nm CMOS PAM4 DSP. All their products solve critical communication and high-frequency analysis challenges.

Learn more about how MaxLinear is using Cadence’s Clarity 3D Solver and EMX Planar 3D Solver in their design process.

featured chalk talk

PolarFire® SoC FPGAs: Integrate Linux® in Your Edge Nodes
Sponsored by Mouser Electronics and Microchip
In this episode of Chalk Talk, Amelia Dalton and Diptesh Nandi from Microchip examine the benefits of PolarFire SoC FPGAs for edge computing applications. They explore how the RISC-V-based Architecture, asymmetrical multi-processing, and Linux-based reference solutions make these SoC FPGAs a game changer for edge computing applications.
Feb 6, 2024
9,936 views