foo.c
Bill Wear
on 13 November 2019
I remember my first foo. It was September, 1974, on a PDP-11/40, in the second-floor lab at the local community college. It was an amazing experience for a fourteen-year-old, admitted at 12 to audit night classes because his dad was a part-time instructor and full-time polymath.
I should warn you, I’m not the genius in the room. I maintained a B average in math and electrical engineering, but A+ averages in English, languages, programming, and organic chemistry (yeah, about that….). The genius was my Dad, the math wizard, the US Navy CIC Officer. More on him in a later blog — he’s relevant to what MAAS does in a big way.
Okay, so I’m more of a language (and logic) guy. But isn’t code where math meets language and logic?
Research Unix
Fifth edition UNIX had just been licensed to educational institutions at no cost, and since this college was situated squarely in the middle of the military-industrial complex, scoring a Hulking Giant was easy. Finding good code to run it? That was another issue, until Bell Labs offered up a freebie.
It was amazing! Getting the computer to do things on its own — via ASM and FORTRAN — was not new to me. What was new was the simplicity of the whole thing. Mathematically, UNIX and C were incredibly complex, incorporating all kinds of network theory and topology and numerical methods that (frankly) haven’t always been my favorite cup of tea. I’m not even sure if Computer Science was a thing yet.
But the amazing part? Here was an OS which took all that complexity and translated it to simple logic: everything is a file; small is beautiful; do one thing well. Didn’t matter that it was cranky and buggy and sometimes dumped your perfectly-okay program in the bit bucket. It was a thrill to be able to do something without having to obsess over the math underneath.
Abstraction
In short, what made UNIX and C usable and beautiful to mid-brainers like me was abstraction. You didn’t have to worry (much) about the low-level details if you didn’t feel like it. You could focus on pure logic and abstract entities without having to “break the fourth wall,” as actors say. You could take little pieces — like “ls” and “cat” and “awk” and “sed” — and you could assemble a script or a C program that would grant your wish. And that was exhilarating and exciting and fabulous for me.
Never had that kind of experience again. Well, at least, until I bumped into MAAS. Same thrill, except the pieces aren’t shell built-ins, they’re little bits of bare metal around your data center. Composable hardware. Remote control data center, where you can move machines around from a console, instead of sending your IT guy to Atlanta, to that infamous server farm next to the prison over there. Which is off 285, which is kinda like a prison in itself, but that’s another story.
The point? It’s the same exhilaration, the same excitement, the same fabulous-ness. (Poetic license #3774786, btw). MAAS is like the Tech Model Railroad Club and the MIT SAIL and Crossbar 5 and Mac and VIC-20 and Java and Mozilla, and so many of the wonderful gumdrops along my road to today, all rolled up into one product. Except that it’s cutting edge, Web-based, and highly network-savvy, just like the team behind it.
Resume.org
When I saw the job posting for a MAAS Developer Advocate on greenhouse, and I read through maas.io/docs, and read the position description…well, I didn’t even bother with a resume. Just wrote my snippets of experience under each of the requirements in the job description and mailed it in. As an Emacs org file. Long story short, I got the job, and I’m willing to do it for just as long as they’ll have me.
BTW, I’m Bill Wear, the Developer Advocate for MAAS.
Hello, World.
Ubuntu cloud
Ubuntu offers all the training, software infrastructure, tools, services and support you need for your public and private clouds.
Newsletter signup
Related posts
Building RAG with enterprise open source AI infrastructure
How to create a robust enterprise AI infrastructure for RAG systems using open source tooling?A highlight on how open source can help
Life at Canonical: Victoria Antipova’s perspective as a new joiner in Product Marketing
Life at Canonical: Victoria Antipova’s perspective as a new joiner in Product Marketing
What is patching automation?
In software, patches are updates that are designed to overcome problems, flaws or vulnerabilities in the programming. Patch management is the process of...