Skip to main content
  1. Blog
  2. Article

Bill Wear
13 November 2019

foo.c


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.


Related posts

Simplify your enterprise kubernetes and govern your AI agents with Canonical

Discover how Canonical is delivering simpler kubernetes to scale enterprise AI at Kubecon North America (NA) 2026 Enterprises have a clear mandate: scale AI initiatives...

From personas to archetypes: a living, shared understanding of the people we build for (Part 1 of 2)

Personas are easy to create but often ignored. This is the first of two posts about how we developed archetypes to keep our personas fresh at Canonical. These are shared,...

MicroCloud and LXD LTS releases now available

Canonical announces the latest Long Term Supported (LTS) releases for MicroCloud and LXD

What designers should know about semiotics

What happens when you look at an apple? When you see it, you perceive the apple and assign meaning to it based on your language, experience, and personal preferences – such as...