Cast a Homunculus Majordomo to Help Run Your Life
I'm taking up Linux, Python, Vim, and Git as if they were tools in a carpenter's toolbox, and learning to use FOSS instead of cloud services. I'm creating performance art with these principles, doing real-time idea-capture, aligning small steps to feedback loops, and using GitHub and GitLab. I'm trying to figure out the best way to approach learning new tech tools and advocate the use of Linux, Python, Vim and Git.
Learning to Use FOSS Instead of Cloud Services: Taking Up Linux, Python, Vim and Git as If They Were Tools in a Carpenter's Toolbox
By Michael Levin
Friday, October 28, 2022
Wouldn’t it be nice to have a little help? Wouldn’t it be nice if it weren’t a human or paid-service? Wouldn’t it be nice if you could grow it yourself in baby-steps while learning a valuable lifetime trade in the process?
Well the time is right. The time is right to take up Linux, Python, vim & git as if taking up a standard carpenter’s toolbox. The time is right to ignore the world of WebDev in favor of stuff that doesn’t radically change every 5 years. The time is right to learn hammers and nails before power-tools.
You can start saying no to the many cloud-services trying to get your money. They’re predisposing you to do things their way, through their APIs, products and interfaces. This will lock you in and reduce your freedom. The time is right to adopt a more Free and Open Source Software reality.
Use FOSS. Build on FOSS. And not all FOSS is created equal, so work with what’s both likely to stick around a long time (as if fundamental) and which is well suited to you, is comfortable or brings joy to use. They can’t take that away from you… but cloud vendor providers can. They can take away your particular instances of running systems and they can take away the relevancy of your skills by changing their APIs.
Okay, so where to begin?
Build things now! Build them using these principles. Carry it out like performance art. YES! That is my intent.
Add more intent to your life.
Do more real-time idea-capture and make those captured ideas easier to leverage,
Align small steps to righteous feedback loops
So much of it starts with just sending yourself an email every day that you can start to customize.
Use this email to remind yourself to do certain things.
Go through existing videos and extract main themes
Use this main themes to structure your website MikeLev.in
Lean on GitHub for awhile but move towards running your own GitLab
Do this in a meaningful way that will last the rest of your life even while living a dynamic lifestyle and using certain cloud services (shortish term?)
Cover the topics most near and dear to your heart. Work on the questions you feel you were put on this earth to address.
Don’t forget The Walrus and The Carpenter
Don’t forget the Carpentry skills I covet
Don’t forget how carpentry skills are often and greatly incompatible with tech.
Address how facing that conundrum head-on feels so much like “my thing”. My heartbreak over my beloved lost Amiga computer tells me so.
No world or life or situation or whatever is perfect. Oh yeah, cover the 80/20-rule more. Talk about entering Rabbit Holes knowingly and having contingency plans to escape from Wonderland if the hole runs too deep.
How deep is too deep? Who’s to say? And so nearly everything is a matter of saying how much is enough? And so talk about thresholds.
Where the analog world crosses over into the digital, there are thresholds. Continuity that has any measurable difference in its content can be digitized. Use sufficiently small sampling rates in the sampling rate of the digitizer and it begins to look so continuous again.
Granularity is definitely a thing. Granularity is where APIs (application program interfaces) become important. Choosing your operating system and programming language is very much like choosing the granularity of your digital life. Plus, because things change so fast in tech, it’s like you’re talking about something with granularity that can quickly become a liquid and render irrelevant everything you know. Let’s call that solvency. Granules can dissolve.
When choosing your tech platform, you might make sure you’re not choosing one built from rapidly dissolving granules. That is if you’re a slow learner like me. Some people pick up new languages and frameworks super-easy and what I’m saying won’t make sense for them. But for those of us who like to learn more slowly but to learn better, the excess abilities building up in us through training our muscle-memory is important. We’re banking on that to help us earn a living, find happiness in this world and such.
Is it better to learn new tools fast or to learn the most timeliest tools best?
One focuses on fundamentals (or at least the unchanging illusion of them) while the other focuses on making the most useful work at-hand easiest.
Fundamentals in any discipline even physics may be an illusion because every fundamental element could actually be made up of a seemingly infinite number of yet-smaller particles. How would you know? By advocating Linux, Python, vim and git as that illusion of tech-field fundamentals, I’m suggesting that you might shut up and calculate. Yes, the very alluring world of WebDev is out there, but who wants to program genies, then be on the hook for everything that genie does.
Why not conserve your energy for yourself? Why not build something that works on an extraordinary different model than WebDev just for yourself?
Okay, you’ve got to start doing this.
You’ve got to start solving some real-world problems.
Journaling in itself is one of those things, so even just this video is helping. But there’s also running code. There’s also the concrete “deliverables” that will go into the email. Keep this free-flowing feeling going, but also get organized.
Repetition and inefficiency versus optimization and deduplicating.
Mold it from clay and let it run your household. Ugh! We’re maybe a few decades away from that, but we can start playing with those ideas today.
Things change so fast, why start a new endeavor in a new field that’s just going to be totally different by the time you master it? That’s the problem with trying to master tech. There’s too many kinds of tech to choose from and each type changes so fast?
Sending yourself an email every day will not change anytime soon. Start out leaning on the Google infrastructure. Maybe change that eventually to get rid of dependencies, but don’t be in any hurry. Same category as getting Github.com out of my life, but no time soon. Big win for Microsoft there.
So we switch to proprietary systems where somebody else cooks the meal and we just enjoy it. Sometimes “frameworks” are made to help us do our own cooking, but frameworks go in and out of fashion even faster than the tech they’re based on, and so you have to hope the low learning curve of frameworks make up for their ethereal-ness.
Systemd. That’s a framework. But it’s a framework included with most Linux distros, so that makes it like fundamental. Dive more into systemd and Linux daemons. You can get a lot of mileage out of the name “daemon” and talking about Maxwell’s and Laplace’s, and how yes, daemons are named after those.
Oh how appropriate to name this blog-post after homunculus’ and majordomos. We are in a race to cast spells. This spell-casting will mostly be in the castles of the corporate elite. But every once in awhile it comes downstream.
I’ve been itching to do machine learning, but the APIs are only becoming stable and approachable enough for me to be interested. So go there sooner rather than later with a real-world project.
What is someone who craves the satisfaction of craftsmanship and the mastery of tools who wants to be in the field of tech to do? Nine times out of ten you’ll just be slammed into the fads of nodejs and webdev and won’t be much part of my audience. But if you’re looking for something a little different, a little fundamentalesque, and which will last you a lifetime, well then follow along.
- Send yourself a snapshot of a Google search
- Send yourself the report on a small Web-crawl
- Send yourself this to-do list