Make it Like an Espresso Machine

My company had a great year. A seriously-fantastic, blew-past-our-revenue-targets-in-June, doubled-our-insurance-premiums (‘cause those are tied to revenue lest the insurance companies go hungry) kind of year. I’ve had plenty of the other kind of year, this was way better. It was a ton of effort and everyone had to work some extra hours to meet demand as we were scaling up staff as quickly as prudently possible. Beyond paying the requisite overtime, and giving everyone some pay bumps, I wanted to improve daily life a little bit. We’d all be spending a little more time in the shop, it should be a tad nicer. Now, when I say we had a great year, this isn’t a Silicon-Valley great year. Nobody is lighting cigars with $100 bills here in little Warren, Rhode Island, but we can blow a little cash for a treat. Heck, if you can’t enjoy the good times, what are you going to do during the inevitable bad times? So I bought a few celebratory upgrades to the break room, but my favorite was an espresso machine.

Not everyone in our company drinks coffee, but nearly everyone does, and those of us that enjoy coffee really enjoy coffee. So I wanted to get the best espresso machine and headed over to The Wirecutter to find it. Reading through their typically thorough reviews, it dawned on me that I actually didn’t want the best espresso machine. What I wanted was a reliably very good cup of espresso with as little fuss as possible. I don’t want, nor do I want my co-workers, to learn how to operate an espresso machine to pull the perfect shot. I just want to enjoy my coffee. The ideal machine would be no machine, rather a nice cup o’ joe materializing whenever I got a hankering for some robust, flavorful coffee. So I bought the recommended beginner machine and super-convenient grinder to go with it. It is about as close as you can get to one-button perfection. Stick the basket in the smart grinder, tamp the grinds down a bit, lock it into the espresso machine, press one button and moments later you have a consistently good cup of espresso.

With better machines you can pull a better shot, but you have to be more engaged in the process to operate the machine properly. By contrast, Breville Bambino Plus hides all the complexity behind one button. It obviously doesn’t make the internal process any easier, water still needs to be heated properly and pumped through the grounds at the correct moment, it just hides the complexity and uses software in the machine to do its best to mimic a good barista. You work for me, coffee machine.

This approach mirrors my feelings on designing scenic automation equipment for live entertainment. The products we design at Creative Conners aren’t the best in the sense that they aren’t the most sophisticated or don’t have the most features. Instead, we aim for simplicity. Breathtaking effects are absolutely achievable with Spikemark, but my goal is to make it possible for anyone to get into automation and move stuff. To achieve that goal I sacrifice features to keep the software accessible. The best automation system would be no automation system, where the scenery magically moves the way the designer envisions without any motion controllers, or drives, or rigging, or cue programming. Keep it as minimal as possible, hide the complexity, let us do more coding to keep it simple for the technicians charged with realizing the designer’s intent. That’s the lens I look through when scrutinizing our products.

As I look over the Spikemark UI with that critical eye I see complexity that needs fixing. Over 15 years of development we’ve of course added many features to the software. Those features are great and definitely needed. Projection mapping integration and ad hoc UDP messaging and grouped motion are all fantastic capabilities. But then I look at the Properties Pane for a typical machine and the huge list of parameters that can be adjusted gives me shivers. There’s a lot of numbers to tweak. And who the heck understands it all besides those among us that are anointed automation gurus?

Over the past 15 years, I’ve noted that users have less and less appetite for learning intricate software. I think that’s a good thing. It used to be that every decent sized application required studying and digesting hundreds of pages of instruction manuals. Nobody really wants to do that anymore, including me. Learning to use the software is not the goal. The software is merely the required tool to get to the goal. Our customers want to move stuff on stage. Everything else is a necessary evil, a distraction from their real purpose. Further, the majority of our customers are not full-time automation technicians. Automation is just one small aspect of their job. They are Technical Directors, Stage Carpenters, sometimes even Production Managers or Stage Managers that are trying to get a show up and ready for the audience.

The design of an automation system spans several disciplines, so I use a lot of different software to get my work done. Besides writing C and VB.Net and Python to help develop our software, I also use AutoDesk Fusion360 for mechanical design and EagleCAD for PCB design, and QuickBooks and Excel and Illustrator and... yeah a lot of software. EagleCAD, for example, is a great tool for circuit design and PCB layout, but oh my lord is it a bizarre, funky, unintuitive mess of a UI. I dread opening up that software after it’s been dormant on my hard drive for months, knowing that it will take hours to re-orient myself to the application. So I have sympathy for our customers. Maybe they haven’t opened Spikemark since last year when they loaded-in Christmas Carol and they just want it to work. Make. It. Move. Please. For the love of God. Move. Now!

The coming year promises to be a big year on the software product side for us. We’ve got some big network protocol changes happening under the hood, and some even fancier platform changes that have been months in the making. As we slosh around in the lower layers of Spikemark I’m taking notes on how we could use some of the new plumbing code to simplify the higher levels of the application. Get it all down to one button. Make it like an espresso machine (or as close as possible).

Do you mind talking about your experience with starting your own company?

Starting my company*

The main shop floor at Creative Conners, Inc.

The main shop floor at Creative Conners, Inc.

I joke that if I knew what I was getting into when I filed the incorporation papers in 2004, I wouldn’t have done it. That’s not really true, I’d do it again. The shred of truth in the humorous lie is that I didn’t correctly imagine what I was getting into when I quit my job and started working out of my basement. Now, having met many entrepreneurs, there are those that start a business because they always wanted to run a business, and others that start a business because they are passionate about a thing and can’t find anyone else to pay them to do it (or perhaps want to do it a different way). I fall squarely in the latter category. In college and early in my career, I had some aspirations of building a business, but those were daydream, fantasy-ambitions about starting a fabrication shop because that’s all I knew about at the time, not because I really wanted to build wood and steel boxes for the rest of my life. I started Creative Conners because I couldn’t find anyone else that believed I had a good idea, but I was unjustifiably confident that I could make something special and scenic automation was a passionate interest for me.

(Well... that’s not even the whole story. The company is named Creative Conners rather than something obviously automation-related like: Make It Move, or Scenic Automation Ltd., or Move Stuff On Stage, because I had two passions in those early days. My first fascination was 3D computer animation, automation was my secondary interest. I spent a ludicrous number of hours trying to breath life into 3D models, and still have a handful of amateurish clips on MiniDV tapes to prove it. Somewhere between 2000 and 2004 I had a soul-searching moment when I realized I was not good at animation, and had a better shot leveraging my expertise in automation. I packed up my Lightwave 3D and Hash:AnimationMaster books, and focused solely on coding the Stagehand embedded system and Avista desktop software. Up until that point, Creative Conners could have either been an independent animation studio, or a scenic automation company.)

I spent about 4 years working nights & weekends on the product. I kept my day-job as a project manager, and had just begun to raise a family. Time was scarce, which is most of the reason it took so long to get the first products ready. Well... that and I was learning a bunch of technical stuff along the way.

The prototype of the Stagehand AC in my Providence basement workshop

The prototype of the Stagehand AC in my Providence basement workshop

When it came time to sell the product, I imagined I could keep my day job and sell on the side. As reality set in, I knew the scheme, that I’d convinced myself would work for the preceding 4 years, was untenable. A big part of the job is selling, marketing, and supporting the product line. In fact, that’s most of the job. Those activities can’t be done part-time and still be considerate to the customer. So, my wife (who is very supportive) and I decided that we should refinance our house (2 young kids at the time, no second income) and use the money to get the business started. I remember my father pleading with me on the phone, as I drove to work intending to quit, not to leave my steady job and ruin my young family’s financial situation. Undeterred, I gave myself 6 months to make the first significant sale, and if it didn’t happen by then I’d go get a jobby job again.

It took about 5.5 months to land the first sale. The money was scary-tight, but that was a good test of my pain threshold and a precursor of the most common challenge I’ve dealt with daily/weekly over the past 15 years. It takes a long time to market a new product and make a sale. I greatly underestimated the waiting. A six-month pipeline, if the product is any good, from first marketing launch to first sale isn’t outrageous in our niche market. To this day, we have to anticipate at least that much lead time when we introduce a product. If sales aren’t significant after a year, it’s a pretty good indication we made a dud. When I am proud of my work, I have a childish belief that the world should recognize how cool my latest creation is and come fawn over it. Of course, few customers really cared that much, and sometimes the creation kinda stunk, and much of the time people didn’t know about it because I hadn’t done a good job promoting the product. (These days the company does a better job because we have talented people focused on promotion).

The thing I wish I had known before starting out is how little time is spent doing the thing I love (automation), and how much time is spent initially selling and marketing when the company is micro-sized, then later managing people and money when the company is a little bigger. Most of what I do day-to-day now is management. I don’t hate it, but I wouldn’t choose it in a Craiglist job posting. The job isn’t “making automation”, it’s “making a company, that makes automation”. It requires a lot of communication, cheerleading, and directing. Those are very different tasks, and I’m not inherently good at any of them: I’m introspective, prickly, and require the admiration of others to stay motivated. Knowing those personal faults, I actively try to work around them; sometimes, I even succeed.

On the positive side, I also don’t particularly like doing the same thing day-in, day-out. I enjoy problem solving. I enjoy experimentation. I like marketing. All of those things are needed to run a small business. I wish I had more focused time for the technical stuff, but to serve our customers well it is more effective to hire people to focus on that while I meet with lawyers, bankers, marketing people, work on growing the company, and handle the never-ending personnel requests and issues that come up. In fact, here’s another one that just popped up. Gotta run!

*This was originally an email response, to the question posed by a student.