Sign in:

Thousands of Tiny Robots

The Modular Robotics Blog

I just got home from a long week visiting suppliers in mainland China and Hong Kong; saying hello in person, touring the factories, eating big Cantonese lunches, and figuring how to optimize for Quality, Cost, and Speed, in that order. Dave, our Head of Manufacturing, was with me and is still there for a second week visiting six more suppliers.  It was a pretty intense trip: we drove all around Southeast China, stayed in a different weird hotel each night, visited one or two factories each day, and sweated like crazy in 100 degree heat with oppressive, dense, saturated humidity.

I’ve written here about a couple previous trips to China: the first one in 2009 with Bunnie and crew, and the 2013 trip that resulted in our big decision to build a factory in Boulder.  In between those trips, there were 5 or 6 more solo trips as I set up the supply chain for Cubelets: custom plastic injection moulds, magnets, circuit boards, stamped steel parts.  These trips weren’t particularly easy or fun: long factory days, lots of driving, lots of translating, and a lot of alone time to contemplate my culture shock.  By 2013 I was nursing a solid China hangover and was ready to take a break from the transpacific flight routine.

Fast forward to last Saturday.  It’d been more than two years since the last trip, my China hangover had faded, and we headed out again, first to Hong Kong for a couple of days.  I haven’t spent too much time in Hong Kong, usually it’s straight to the Futian border checkpoint, but we built in an extra day to acclimate and wander around.  Dave and I hiked up Victoria Peak from Central (I’ve never sweated so much), took the tram down, and I got to check out the Bank of China Tower a little more closely.

DSC_0191
I.M. Pei’s Bank of China Tower

I think it’s a beautiful building.  You know, for a skyscraper.  I did a little project on I.M. Pei, the architect, freshman year in architecture school (1995!), so was pleased to get up close.  See those two spires on top?  When the building was proposed, the drawings didn’t have them, and the local Feng Shui folks declared that the building was going to be totally bad news.  Too many X’s or something.  Negotiations were had, money changed hands, and the two spires were added to balance out the building and tip it back into the good fortune side of things.  Anyway, I like the spires.  Here’s what it looks like at night, after a few beers.

DSC_0187
The Bank of China Tower and Central at night, from Tsim Sha Tsui

Then to the mainland, for factory visits in Shenzhen, Dongguan, Guangzhou, Conghua, and Fo Gang.  We packed it in, had a lot of great discussions with manufacturers, and saw a ton of production lines.  I’m mostly concerned about auditing the factories for environmental and human rights metrics, and was impressed.

I’ll freely admit that this trip wasn’t the easiest thing in the world for me: it was exhausting, I missed home, modbot, exercise, and fresh air.  But it was productive for Modular Robotics, and we made some decisions on the ground that will strongly influence our next few years.  I’m glad I sucked it up and went myself: Modular Robotics is having a greater and greater impact in the world, and I feel like I need to understand that firsthand.  But it’s really good to be home.

IMG_4272
Connie, KL, Mickey, Dave, me, and Patrick at Jetta
IMG_3084
Dan, me, Dave, Sharen, and Carrie at Kin Yat.

Want to hear something amusing?  I flew thousands of miles around the world on a tightly planned and critical business trip, and I spaced and left my laptop at home.  Like a moron.  Early the morning that I left, I was all packed and ready, and I pulled out my MacBook to send a couple of emails.  I was hoping for a quick response on one of them, so I left the machine open on the dining table, took a shower, and then grabbed my bag and left for the airport.  I realized my mistake while I was standing in the security line at DIA.  There wasn’t anything I could do about it, so luckily my brain mostly skipped panic and went straight to resignation: “maybe it’ll do me good to get out from behind that thing for a week.”  Maybe it did.

Join the Conversation  0 Comments

What’s that, you say? The Elves in production are planning a coup? No, right now the elves appear to be happily building robots, listening to the Allman Brothers, and drinking coffee out of the new sippy cups we got in an attempt to reduce spills on the assembly line.

No, by COO, I mean Chief Operations Officer. We’re looking to hire the absolute best most amazing Chief Operations Officer alive. A what? A COO. Someone to run day-to-day operations at Modular Robotics. A description of the role from our little Roles and Responsibilities document:

The COO is responsible for managing day-to-day operations according to annual and quarterly projections. While the CEO sets the overall strategy, the COO carries it out and leads the directors of the Sales, Production, IT, Facilities, and Shipping teams to formulate their plans and execute on them. The COO is responsible for many metrics including margin, efficiency, production volume, and sales results across direct, reseller, and education channels.

This is a completely new position – we’re not replacing anyone, we’re creating the position from scratch. I’d like to tell you why.

Almost every week for the last six or eight years, I’ve been drawing this little chart in my notebook.

quadrant chart

It’s a quadrant chart. I draw it and then work through what I did in the prior week putting little labeled dots into the quadrants. There, I spilled the beans. That little quadrant chart is my secret to productivity and happiness. No, really! As modbot has grown from 2 to 100 people, my job has changed a lot. When we were first getting started, I noticed I kept putting Accounting and Supply Chain tasks into the lower-left quadrant, so those positions were our first two hires and my chart changed dramatically the next week.

These days, the things that fall into my lower left quadrant all have to do with day-to-day management. I’m not very good at it, apparently (we still can’t make nearly enough tiny robots to satisfy demand) and I don’t particularly enjoy it. The worst part is that lately, I’ve spent all of my time working on operational matters because I suck at it and we’re not meeting our day-to-day, month-to-month production volume goals. Since I’ve been spending so much time working on the machine that is modbot, I haven’t focused much on where the machine is going: strategy, communication, financing, R&D, our tiny robot roadmap, and all of the other things that inhabit my upper-right quadrant. So: compounding negative returns = time for a change.

The notion that maybe I should find someone else to be modbot’s CEO has occurred to me. Maybe I was OK at the job for the first few years but modbot needs somebody different for the next few? My friend Nathan is doing this right now, and seeing him so excited to return to designing stuff, instead of managing stuff, induces a twinge of envy. I even brought it up with our Board of Directors, who counseled that I was probably the best person to lead the company, but that I might consider a strategic hire to take on some serious responsibility so that I can spend some more time in my upper right quadrant.

Many companies don’t have COOs. But Modular Robotics is an operationally intensive business. The processes and systems involved in making thousands and thousands of tiny robots are complex, serious, and demand focus and experience. So we’re looking for someone amazing. Somebody who has led a hardware company from millions per year to tens of millions. Somebody who I can completely trust to manage toward metrics and grow our operations while I focus on the other half. Wait, which other half?

Can we look at charts for a minute? Thanks. I really love charts. Here’s the first version of our org chart that I made with a COO added into the mix.

next modbot org with COO anon - New Page (1)

That org chart isn’t totally satisfying. It puts a COO in charge of Manufacturing, Sales, Finance, and Tech Ops, and puts me in charge of the rest: Engineering and Marketing. But it strikes me that the distinction between the two halves is not arbitrary, that it’s meaningful. The Operations half is running the machine, the other half, which figures out where the machine is going, is the Design half. Engineering designs products, Marketing designs media and materials, and our Product teams design experiences and educational activities. I like to consider these as tags, not as categories, because complex systems like Modular Robotics don’t map very well to getting put in little boxes, but here’s a second stab at our org chart where Design is green and Ops is blue.

next modbot org with design-ops - New Page (1)

I like this view. It’s a more helpful framework for me to think about the complex system that is modbot than a traditional business hierarchy (probably because I’m a designer, not a MBA). But it implies something inaccurate, which is that the heirarchy effectively isolates different tree branches. Sales goes up through COO but Marketing goes up through CEO. Sales and Marketing, in reality, work extremely closely together, but the chart makes it look otherwise. So I made one more attempt.

next modbot org with design-ops anon mix - New Page

Perfect, right? OK, maybe the previous one is easier to understand. Where were we? Right, the COO position. It’s taken me a while to figure this out. I’ve read, I’ve journaled, and I’ve talked with a bunch of other CEOs, our investors, and my mentors. I particularly liked this article that identified four major failure patterns in the COO role. We’ve got the right reason, the right time, now we need to find the right person and make sure we have the right support structures in place. This isn’t a role that we’ll post an ad on craigslist for, in fact, I’m not even going to put up a normal job posting for it. Are you the right person? Do you know the right person? Drop me a note!

Join the Conversation  3 Comments

So awesome. Remember a couple of months ago I wrote about playing around with flow-based programming in Pd? Well now, Miller Puckette, designer of the language (and of MaxMSP) is coming to Boulder to teach a month-long Summer course on interactive programming and digital music technology.

Miller Puckette
Miller. Photo from: http://pd-la.info/2011/05/thank-you/

 

The course starts the day after tomorrow and runs until August 7.  I feel a little envious: I wish I could join it somehow, but it’d be impossible with my travel schedule.

I’m proud of Mark Gross.  He’s the co-founder of Modular Robotics, you know, but for the last couple of years he’s been leading the ATLAS Institute at the University of Colorado just down the street from us.  All indicators (like this fact that this course exists, for instance) show that Mark is enjoying great success transforming ATLAS into a world-class program.

Join the Conversation  0 Comments

Alicia Gibb’s new book, Building Open Source Hardware, is awesome. It’s filled with interviews, case studies, discussions of licensing and manufacturing, and practical information about taking a project from idea to product.  If you’re interested in open hardware, you’ll want a copy.

I contributed a little piece to the book about FARKUS, the open source manufacturing robotics platform that we’re working on.  You can read it here while you’re waiting for your copy of the book to arrive!

13220-01

Join the Conversation  0 Comments

Do people on the internet bring you down?  It happens to me a lot.  I’ll read an article, and before I know it, my eyes will have wandered down into the comments, and I start to get upset with trolls, upset about how intolerant some people seem to be.  Upset with our education system, upset with stupidity, and even a little upset with there, their, and they’re.  Often upset about an oversimplification of complex things.  I try not to let this stuff get to me, but sometimes it’s hard, especially first thing in the morning.  I just don’t want to hear what random people on the internet have to say.

Shut Up   Chrome Web Store

So I use Shut Up, which is a lovely lightweight Chrome extension that removes all comments from web pages: YouTube, the Daily Camera (it’s our local Boulder, CO paper and has the worst comments ever), the Radavist (apparently I like pretty bicycles more than I like other people who like pretty bicycles), etc..  Shut Up misses a couple of sites and isn’t perfect, but it’s free.  Maybe you’ll find that it has a place in your life too.

It strikes me that this may seem antisocial.  Facebook’s article last week about “echo chambers” has made me a little more aware of the possibility of over-curating our inputs.  But eschewing web comments is not the same as reducing diversity, it’s reducing the volume of input from the whole diverse internet.  Toward what seems like, for me, a much more manageable flow.

Don’t worry, I haven’t forgotten about tiny robots.  Next Level Cubelets Part II soon!

Join the Conversation  0 Comments

I flew to Atlanta last week to give a talk at Mailchimp. Know them? If you don’t send emails to big groups of people, you probably wouldn’t, but if you do, you definitely do. Mailchimp is a mass-email service, but it’s wrapped in a cutesy, web 2.0 B2C-style design. They have millions of clients — we use them at modbot to send newsletters. If you’ve subscribed to get email updates for blog posts, look at the bottom of this email! Sent by Mailchimp.

I try pretty hard to ignore invitations that don’t appear to have a direct benefit for Modular Robotics. After all, there’s always a lot to do at the new shop. But the people at Mailchimp are totally awesome, and they offered to take me to dinner at Empire State South. So, 18 hours in Atlanta. Turns out it was completely worth it. For a SaaS company, the chimps there do a lot of playing in hardware. I got a great demo of the Freddie Mercury Project hardware in which they sent email from the stratosphere with a stuffed monkey. Etcetera.

Anyway, I talked about tiny robots and manufacturing and complexity. And also a little about evolution and faith, because why not? The slides from my talk definitely don’t stand alone as a presentation (if you weren’t there, you won’t get it) but for the archives, here they are (55MB PDF).

2015_mailchimp

Join the Conversation  0 Comments

What’s a robot?  Our working definition is that it’s a machine that Senses, Thinks, and Acts.  Cubelets and MOSS are pretty primitive robots; if you prefer Sense, Plan, Act, they probably won’t be offended.

Anyway, each Cubelet falls into one of the Sense, Think, or Act categories, and one of the main reasons that they seem primitive (compared to a mouse, say), is that they fundamentally work together based on simple, linear, one-to-one relationships.  Snap a Distance Sensor onto a Drive block, and the more the distance sensor detects, the faster the motor goes.  The less, the slower.  All of the Sense and Act Cubelets output basically linear values (or actions) based on their inputs:

linear

A linear, monotonic relationship like this makes simple, perfect, robotty sense, but doesn’t have a lot in common with the messy, biological irregularities and discontinuities that we find in systems that look alive.  What if we try something that’s not monotonic: a function that doubles back on itself.  How about an easy piecewise function that makes a triangle: y=x for x<0.5 and y=1-x for x>0.5.  At Wolfram Alpha, we can plot it like this:  Plot[Piecewise[{{x, x<0.5}, {1-x, x>0.5}}], {x, 0, 1}]

I used Cubelets Studio and a Bluetooth Cubelet to reprogram a Knob block to apply this transformation to any data that flows through it.  Then I added a Bar Graph so that I could see what was going on and got this:

Which is exactly right, but I want to use the full range of the bar graph, so I’ll make my triangle wave twice as tall by adding a simple 2x.  It works, and I know you can picture a full bar graph response so I’m not going to bother with a video.  Here’s the code:

  void loop()
  {
     int temp = get_knob();
     if (temp <= 127) {
        block_value = 2 * temp;
     } else {
        block_value = 2 * (255 - temp);
     }
  }

OK.  Now I’m going to switch it up a bit and flash (almost) the same code into a Distance sensor (swapping get_distance() for get_knob()) and build a little mobile robot.  It’s a differential drive robot with the modified Distance sensor controlling one motor, and a stock Knob controlling the other for easy tuning.  The Passive block is just for balance.

Hm!  This little robot looks like it’s attracted to the box but also careful to keep its distance.  Is it “thinking”?  Is it “intelligent”?  Maybe not, but it seems like we’re getting a little closer to intelligence here than we can do with a robot made out of stock Cubelets….

Join the Conversation  0 Comments

Modular Robotics is moving!  We’ve been in our current space for almost three years, and it’s time for an upgrade.  Three times the square footage, two times the ceiling height, and three times the number of bathroom stalls.  And for the first time, we’re not just using my truck to move!  Team modbot has arranged for a series of trucks, riggers for the SMT equipment, and a real moving company to move the office.  The elf team is currently working on moving the inventory.

DSC_0152

The new space is amazing.  It’s a former post office!  It’s a former Coca Cola bottling plant!  It’s super weird!  We’ve been working on a renovation with Tres Birds Workshop for the last six months and it’s finally ready; inspections are complete and the certificate of occupancy is in hand.  I won’t belabor the description since I’m confident that many blog-worthy shenanigans with forklifts and rollerskates will ensue, but it’s currently looking eerily empty.

modular robotics new space

While we’re making this transition, please note that our address has changed.  Send all boxes of chocolates, fruit baskets, or tiny robots in need of maintenance to:

Modular Robotics
1860 38th Street
Boulder, CO 80301

Join the Conversation  0 Comments

Modular Robotics co-founder Mark Gross was in a paragliding accident last Sunday.  He is not dead!  And he has balloons.

IMG_0544

Mark broke his back and a leg, but is stomping around with a cane and in great spirits.  He’s currently encased in a plastic insect shell thing so that his back doesn’t move too much while he heals from surgery.  Falling out of the sky onto rocks sounds pretty harrowing; in Mark’s words:

…one way to clear a tangle is to give a quick gentle tug on one of the tangled lines.  So I give a quick tug on the tangled right brake.   Whoa!  The wing collapses completely, and suddenly the glider steers left sharply in what is aptly and terrifyingly called a “spiral dive”.   Round and around heading for ground: Not much time to think, too low to deploy the reserve parachute, but somehow I get the left side inflated and flying again, but by now I’ve lost a lot of altitude and I’m swinging like a pendulum from the radical changes.   An instant later I swing into the ground.  Hard.

I’m letting you know about Mark’s accident here because he’s not a big social media poster and because he’s got a pretty big community who I know might want to be concerned.

I also wanted to make a little plea for you to be safe out there on your paragliders.  My friend Jacques hit the deck paragliding in the Himalayas in November, broke his back too, and was laid out flat in traction for a month in an Indian hospital.  That makes two for two — both of my paragliding friends have broken their backs falling out of the sky in the last six months.  I think that’s all of my paragliding friends, but if you’re number three, please exercise caution.

Join the Conversation  0 Comments