Friday, October 16, 2026

PRACTICE MAKES PERFECT

When you’re working on something, and you know what you’re doing, and don’t need to keep stopping to figure things out, then the work is effortless. There’s a flow.

But when you must keep stopping to figure things out, then even the simplest tasks can be tedious.

This is especially true when working with technology and doing things on a computer. You know what you want. You have a clear picture in your head, but every now and then you must pause and figure out how the computer does it.

BUSINESS COMMUNICATION

Business communication is especially laborious because written communication needs to be focussed, terse, to the point, yet comprehensive and detailed. Not too wordy and not too vague. Somewhere in the middle.

And that’s why, for many things, we have templates. It removes the “staring at the blank page” syndrome that many writers face when trying to put something down. And now we have Artificial Intelligence, like CoPilot and Claude and Gemini and so many others. Even for simple things like writing a comment to something you’ve read or watched online can be automated. Simply tell your AI agent what you’re thinking of saying and it will draft an articulate response. It may vaguely sound like you would have, but you’ll agree it’s better said that you would have.

That’s how Hallmark made its fortune. “Let me tell your loved ones how you feel for you.” So, when you want to send a greeting card for any occasion, just go to your nearest bookstore and browse through the many cards, already written for you, and try to match the sentiment that you’re trying to express.

BACK TO PRACTICE...

In software development most of the work to build tools for your business, the stuff that needs you to do some scaffolding, is already done. I know. I came from the world where even placing a button on an HTML page was tedious let alone writing the code that the button will call when it’s clicked.

And in software development, a developer can be hung up on some of the simple things while trying to get to the most important part of the tool, the actual business logic. You need to know the simple stuff innately but should not spend too much time on all your projects dealing with the scaffolds.

So initially you practice. You do a lot of work learning a framework so that the framework can do most of the heavy lifting for you. The framework allows you to set up a project, get all the user interface elements on the screen, set up databases where you can store your data and then frees you to do the important stuff. Writing the business logic. The fun stuff.

CODING PAGES

I first wrote about coding pages in August 2024. By then, the idea was not fully fleshed out but the gist of the exercise was to eventually end up with a personal script for automating the boring stuff. To get you quickly to the interesting stuff.

And I focussed on a single programming language, Python, and a single framework, Flask. With Python, Flask, Bootstrap and SQLite a technically competent person can do a lot of interesting things on a personal computer to automate their own work.

It’s just like being super competent using Excel VBA which goes beyond Excel macros. The Kenya Revenue Agency uses Excel VBA to automate the submission of tax data and while they don’t do it very well, I’ll give them a few points for trying. Clearly a web-based solution would be even better. I&M Bank uses templates to automate their batch payment system which includes payroll.

The idea behind coding pages was that at some point a developer would be so comfortable with the setup that they could get to the business logic part of the development in less than an hour.

BOREDOM

And then unfortunately boredom sets in. Once you’ve done something a hundred times, and you can do it in your sleep, you no longer feel the need to keep doing it repeatedly. And the next challenge was to script this scaffolding part. By the time you got to the scripting exercise, your Python and Flask expertise was solid. You knew how to set up manual authentication as well as multi-factor authentication using Google’s Authenticator App, Blueprints to modularize business logic, Jinja2 macros to automate the building of repetitive user interface blocks and manage database access manually.

I must say, as an old school developer, I’ve never bothered to learn any of the object relational model frameworks, like SQLAlchemy. I find them too heavy for the small stuff and my SQL knowledge gets in the way. Since I know how to get to the data using plain SQL, I manage the complexity of having SQL statements all over the code by putting them in modules.

Anyhoo, the boredom is a good sign. It’s a sign that it’s time to move on. A muscle has been strengthened, and it needs a new challenge. The focus is now on fine tuning the scripting so that the automation becomes solid.

USE IT OR LOSE IT

And finally, once that muscle is built, if you don’t use it, you’ll lose it. And it’s not only about software development, or drawing, sketching, woodworking, gardening. It’s also about writing, reading, meditating and thinking. At some point, just like I found out with the coding pages exercises, which I still do today, if you do not switch it up, do something slightly different, you’ll get bored, you’ll stop using it, and it will fade. The trick is trying to figure out how to stay interested. More on that perhaps later.


No comments: