Future-proof your skills with Linux, Python, vim & git as I share with you the most timeless and love-worthy tools in tech through my two great projects that work great together.

Coding, Keyboards and Literacy

As literacy is continuously redefined, coding is becoming more and more important. To become proficient in coding, touch-typing on a full-sized QWERTY keyboard is essential. I propose that learning to type is a necessary step and provides a great escape from mobile addiction. Laptops are a bridge between two worlds, allowing you to use free and open source software without depending on Google, Apple or Microsoft.

Discover the power of coding, keyboards and literacy to unlock your autonomy and agency.

By Michael Levin

Monday, September 4, 2023

Every few centuries, literacy is redefined. And literacy is the difference between being powerless and having some control over your destiny in society. In other words, being able to decode thoughts from text and encode them again is a significant part of free-will. It’s the next step past instincts because you can stop and think. You can consider what others think and do what you think is best for yourself.

What we call autonomy and agency are tied to our ability to decode and encode our thoughts. It broadens our choices. It gives us more power to see the unseen and to do the unexpected. It opens doors that were previously closed. It illuminates paths that were previously dark. It gets us out of the dark ages and whatever situation circumstances have placed us in. It is the ability to rise above our circumstances and to change them.

That is what literacy is. It’s the ability to read and write. It is the ability to decode and encode thoughts that lead us to alternate patterns of self-automation. It is the ability to read and write code. There is a much thinner line of separation between spoken and written word and computer programming languages than might be apparent at first glance.

This was true with the Gutenberg press when books proliferated and in the time-period between that and when public school systems ensured that the majority of the population could read and write, those who could had a huge advantage over those who couldn’t. You could write your own pass such as it were, and few could stop you because they lacked the ability to do so without resorting to more primitive basic behavior like violence. Of course they still did (and do), but it can only be sustained for so long before its seen for what it is. Embracing the new literacy wins in the end even though a few intrepid individuals are sacrificed and lost along the way.

Literacy is changing again. What it is to read and write is now what it is to read, write and code. It’s different from mathematics which some people “get” and some people don’t because coding is much easier, much closer to the spoken and written word. It’s encoding a series of ideas and instructions tied very closely to the spoken word without needing to make up new symbols and syntax at every turn to express ideas with complex chains of dependencies. In math the way it exists today if you tune-out at point-B you’ll be lost at point-C and beyond with little ability to do a big catch-up. Not so with coding. The joke is: “I just learned Python and it was quite an evening.” You can still be learning subtleties of Python for the rest of your life, but those essentials that bridge the gap between the spoken-word and the world of automation are about an evening’s work. A weekend at worst.

Another thing you’ll hear more and more often is that Python is the new lingua franca of tech. That means Python is to technology what English is to international communication. It’s what everyone agrees upon as a lowest common denominator so you know you can understand and be understood with the least muss and fuss. There are “better” languages than English and there are “better” languages than Python. That doesn’t matter. Good enough and fortified is better than best but obscure.

Python becoming the lingua franca of tech will surely be debated, but it’s been in the works for a long time. There have been various contenders, few as closely aligned and heartbreakingly not quite right as PERL. PERL was the original “Practical Extraction and Report Language” and it was the first to be regularly bundled with Linux distributions as an alternative to the even more primitive shell scripting languages. Whatever language becomes the de facto standard in Linux for general purpose scripting is going to have a strong, if somewhat invisible, claim to the throne of lingua franca of tech. It’s enough to eclipse even how JavaScript is built into browsers.

Python has long satisfied the good enough criteria and as of late it has crossed the threshold of fortified by being included with every distribution of Linux, the building-block of most modern information technologies, in a way that JavaScript isn’t and probably never will be, even built into the browser as it is. For those for whom Python is still some abstract snake-named language, ponder how good that means Python really must be under the surface despite its unfortunate and misleading name.

But you don’t just jump into Python. There’s a few steps you should get under your belt first. Touch-typing is probably the most important. Creating a greater natural muscle-memory control between human and machine is important, and the spoken word with voice control to some AI just won’t cut it. You’re coding in an unnecessary and almost parental dependency. It’s like you’re saying I want to continue babbling like an uneducated child and I want you to create all the structure and meaning behind my thoughts. While this may not be true for capturing a list of 10 items, the more complex your thoughts involving logic and loops, the truer it is that you want the actual ability to read and write in the language of loops and logic and not just stand by like some child watching a magic trick, unknowing and with no ability to step in and perform the trick for yourself.

How many times have you seen that play out? The magician reveals his trick and the snot-nosed know-it-all satisfied that the seen-it-once intellectual knowing of a thing is all it takes. They immediately try to perform the trick, botch it, claim sour grapes and lose interest. That particular scenario is forever playing out in life in other forms, separating the perpetually illiterate from the true spell-casters. And the cognitive dissonance that creates in the illiterate (unhappiness about a “wrong” situation) just lingers in the back of their mind forever. They subconsciously know they walked away from an opportunity to better themselves by mastering the magic, but it was too difficult to take step #2.

Step #2 is touch-typing. First you realize there is power in coding “old-school” without relying on AI voice recognition and without relying on fancy Microsoft, Google or Apple-provided “power-tools”. These powertools like VSCode are shortcuts and cheats. While perhaps not as bad as fully relying on an AI to transform your words into apps, relying on features like Intellisense and plug-ins for simple tasks like moving files around (git) is making yourself once again a child-like dependent on the vendor. Apple, Google and Microsoft become the source of your abilities. And as such, they can turn them off at any time by discontinuing their products or otherwise changing how they work. This is usually to force you to re-train, re-buy and otherwise remain a hamster on a hamster-wheel.

If you want the acquire the skills that make you not rely on Google, Apple and Microsoft it’s going to take some work. We are already cyborgs, attached to our phones. And the first illusion to bust is that these tiny tap-type keyboards are any sort of replacement for a full-sized old-school typewriter style keyboards that you plug into console computers or are built into laptops. Old fashioned QWERTY keyboards are time-tested workhorses of “getting into the zone”. You can go for hours with the fact you’re really even interfacing with a machine fading way. The computer becomes like an extension of your body. One could argue you can achieve that on a tiny phone or even a tablet on-screen keyboard, but let yourself try. Two or three hours into a project, you are unlikely to have the same opinion.

So the new literacy, even before taking up Python, begins with touch-typing on a full-sized QWERTY keyboard. Even the low-profile ones built into laptops will do. Apple, one of the biggest user interface testers on the planet, pushed the bar of quite how shallow and small you could make one of these keyboards and not cause an outcry and sales-loss. The question has been answered. There is a minimum size and a minimum key-depth and tactile sensation you need for the magic that makes keyboards still so popular to work for you.

A typical Microsoft Surface laptop and the original Macbook Air’s just about got it right. You don’t need the fancy gamer keyboards with that wonderfully satisfying mechanical click, although they are nice. The point is to develop the muscle memory on something that is close enough to satisfying and standard that you can move from keyboard to keyboard throughout life with minimal awkwardness and squandering of your hard-won internal muscle memory asset. So almost any typical modern laptop will do. Don’t get hung up on choice. Good enough is good enough, so long as it’s a full fledged keyboard satisfying those minimum criteria.

So then ho do you practice touch typing? How do you even learn in the first place? Back in my day I took lessons in high school. That was late in the game. A typical person could probably take up learning the skill of touch-typing, which we should probably define as the practice of typing without hardly even thinking and certainly no hunting-and-pecking, in their early teens. There’s no reason it can’t be introduced even earlier with the right motivation and instruction. Tackle the prerequisites for modern literacy as early as possible. By the time you get to Python, the actual arranging of words could be flowing off your fingertips at the speed of thought.

“Getting into the zone” through the momentum that old-school reading and writing can produce is one of the blockers to the “pull of mobile”. Try putting your phone down and going about your day without it. You’ll know the pull of mobile. That dopamine reward you get from checking your whatever’s, that’s what keeps you borg. That addiction to the greater emergent collective entity, that is the simultaneous increased connectedness and isolation. I humbly propose that learning to type so that you have the means to let your on true inner feelings and thoughts fill the emptiness is a practical alternative to the mobile addiction.

While still technological in nature and not without risk, the laptop does serve as a bridge between these two worlds. The desktop operating of a laptop can still be trimmed and pruned and purged of all distraction. It can be turned into a host for even more focus-permitting systems that run on them. It matters not if its Windows or Mac serving as the host, or for that matter Linux. What does matter is that you can get a universal timeless application interface with deep roots in the free and open source software (FOSS) tradition pulled up and ready to use on these hosts.

I find it useful thinking of this project as looking for a space to be. You see, being on your phone is being in a space. It’s a head-space and it’s an actual physical technological space. The former leads to the later. Choosing the physical space of your phone leads to you choosing a borg-like place in your head. Your individual personal autonomy and agency are sort of chopped off in that space. You don’t stand a chance of holding onto and bringing out more of yourself because of how readily the next addicting dopamine hit is lurking at the next app or notification. It’s like being held captive. A beautiful prison.

Now Earth itself is a beautiful prison with us bound to our material bodies and our bodies held in the Earth’s gravity-well. There’s prison-realities you’re just not going to escape easily or anytime soon. But you can choose to only be unjustly held by the original ones of the reality you were born into. The physical limitations of being mortal corporeal being stuck in the Earth’s gravity well. You need not give into the artificial self-induced prisons of modern tech. Better still, you can use the best “free” bits of modern tech to help protect the freedom of your on mind.

And this is my cause. It’s just playing my little role of advancing the concept of what it is to be literate in this day and age to the next level: including a little coding as natural as talking or writing. Hand-in-hand with that coding is the ability to set your automations in motion and keep them running under a reasonable level of engagement and monitoring. In other words, get things running and keep them running as if they were extensions of your body with their own functions, like a beating heart or sensory system that alerts you if pain (touching something hot) goes over a threshold. Set it and forget it, until it brings itself to your attention through some mechanism you set up.

And you do all this without the involvement of or any dependencies on Google, Microsoft or Apple. Or at least in an ideal world, you do. Truth is you start out with minimal and easily de-coupled dependencies on these companies knowing you can sever those final connections when the time comes. And regarding the automation bit, you’re also avoiding If This Than That (ITTT), Zapier and all the other proprietary vendor systems offering freemium levels of service for the mere price of your forever-dependence on them.

So establish a “place” on your laptop that is separate and distinct from that mobile place. And while I don’t think it’s completely necessary, my favorite advice because so many people are on Windows, is to do a full “Reset PC” from the Windows / Settings if it’s already a Windows 10 system, or to install Windows 10 from from Microsoft’s “installation media” site. If the laptop still has Internet connection such as a Windows 11 system you’d like to upgrade to Windows 10, you can do so right from that site without even having to produce a USB install drive. You just choose to install Windows 10 on the current system early in the process. During the install, don’t give it a WiFi connection and disable all the intrusive privacy options when they’re presented. Then after you have Windows 10, go into Settings / Apps and uninstall everything you don’t need. Additionally disable everything intrusive from the Microsoft Edge browser. At the end of such a process, you have an 80/20-rule “clean” host machine for free and open source software (FOSS).

While it’s true you can just find some version of Linux like Ubuntu, make a USB installer and install Linux “on the metal”, you lose whatever advantages there may still be in Windows, such as easy/special driver support for your hardware, compatibility with the general game market, whatever software you need to use for work like Office or Adobe. What I’m saying is that however awful you might feel Windows is, there are still plenty of benefits and because anything including Windows can be a perfectly fine “host” for FOSS, you can get the best of both worlds: Windows and FOSS.