This is the blog, but if you want to know more about me and my projects, check out the Projects and About pages.

I Got a 3D Printer


I’m one of those 3D printer guys now. It happened a few weeks ago when my Solidoodle Press finally arrived only after a quick 3 - 4 month delay. Since then I’ve printed something right after plugging it in that looked awesome…but then I learned that it looked “OK”…then I learned how to calibrate it…then I learned how to switch to better software…then I learned how frustrating 5 or 6 failed prints in a row are…then I learned how to install Windows on a Mac so I can install different 3D printing software…then I learned that Windows wasn’t so bad if it helped me to stop making weird plastic things I throw in the trash…then I learned that looking for the next thing to print is exhausting.

It’s been a busy few weeks, but now I can do all the things that 3D printer guys do! For instance I can talk to other 3D printer guys about how that thing that looks good is actually a little bit shitty because you can see how it delaminated from the bed a little bit in the corner (Should have used a brim!). I can also walk up to non-3D printer people and interject things like, “Oh I can just 3D print that for you if you want!” (I won’t though because I’m terrible at CAD and so is most everyone else). Lastly, when people ask me about what I print after I tell them that the “Future is here!” I can shrug and say “I don’t know…mostly stuff for my kid.” I think that’s the key. I’m not saying having a kid makes any one better or some bullshit about how you truly know the value of life or blah blah blah, but having a kid does make 3D printing a little better because cranking out toys or costume jewelery to a genuinely grateful 2 year old is better than posting your prints online to be critiqued. That and I feel like single people with 3D printers are just killing time with coat hooks until that lonely weekend arrives and you try to print a sex toy. It’s the reason why they make flexible filament for stuff like…hands? Please.

Of course there are also lots of really interesting projects I’d like to use the 3D printer for and none of them will be designed to go up anyone’s butt: Quadcopters! (Yes, I’m a quadcopter guy too.) Giant Lego People! Hexapods! In fact, this 3D printer has sparked an interest in making real (read: non-digital) things that I really haven’t experienced before, which is pretty cool. It’s the future! …wanna see the bracelet I made for my daughter?


I’m on Thingiverse.

A Few Selected Tweets From the New Year

Not So Unlimited Vacation Policy

I was catching up on Marco Arment’s writing ( recently and his link from December 14th caught my eye. Arment links to a piece talking about the lie that is the common start up benefit of “unlimited” vacation days (From Open (Unlimited) to Minimum Vacation Policy). It’s a good piece and certinaly worth a read but Arment’s comments are what specifically caught my eye:

I’ve never heard of an employer in the tech business with one of these “open” vacation policies whose employees actually took as much vacation as they would have in a traditional accrued-vacation-days policy.

What usually happens instead is that the workaholism culture in tech startups takes priority, and it becomes politically unwise to ever take a vacation, especially a truly offline one.

It would seem Marco and I need to have a cup of coffee together some day soon because my team and I took plenty of vacation last year. I myself took roughly 3 weeks, which is about what I’d imagine I’d get if I worked at a Google (for example).

Lets get back to my team in a minute.

First, we should acknowledge the reasons why start ups do the whole “Unlimited Vacation” policy:

  1. It sounds like a really cool benefit so it helps in recruiting. This is especially true when pulling in veteran developers that currently work in more corporate environments.

  2. It lessens HR responsibility by not having to worry about keeping yearly totals of who’s taken how much vacation.

  3. It’s easier for the company’s finance team because the company doesn’t have to keep as much cash on hand. The reason is that the standard 2-week vacation policy usually allows for a departing employee to get those days back in monetary value at the end of the year. When you have a “take what you need policy” you don’t pay anything out because no one has any days “left over” at the end of the year.

  4. It usually means that the average employee takes far less vacation. When you give employees a set amount of vacation days, they are acutely aware of that total and will have internal and external (read: family) pressure to make sure those days get used. As stated before, no one wants to be the person that takes the most vacation, so with an unlimited structure it’s a race to the bottom of used vacation days.

All of that makes sense for the company as a whole, but #4 in particular makes less sense for the team leader/manager. No one wants a valued employee to burn out and yet that’s exactly what can, and does, happen, which is exactly what Marco correctly laments. There is a solution however: As a manager, don’t let it happen.

Back to my team: As I stated, I took roughly 3 weeks of vacation in 2014. I don’t keep track, but I believe most of my team averaged roughly the same amount. We also had a huge crunch time later in 2014 when my team was under the gun to release a brand new stats dashboard (we made it) so it’s not like we’re not doing the usual “start up stuff”. So how one make sure their team takes an appropriate amount of vacation time throughout the year? Easy:

  1. Take some vacation. I’m talking to you! If you, the manager/director/CTO, isn’t taking any vacation, how the hell do you expect anyone on your team to do anything different?!

  2. Tell the crazy workers to take a day for themselves. There will always be those hard core folks on your team that will work non-stop through a deadline…and then after the deadline…and then keep going…etc. After you guys hit a big milestone or meet a deadline, walk up to them, congratulate them, thank them, and then tell them to find a day or two next week to not come in. Don’t tell them to not come in tomorrow because everyone can always find an excuse that they need to be in the next day, so tell them to find two days next week and block on their calendar. Plenty of time to plan a head with sprints and deflect any new meeting requests.

  3. Reinforce that people shouldn’t work while on vacation. Obviously, emergencies happen and you have to be able to cover them when they happen, but outside of that, no work. Now obviously there are lots of people in this industry that genuinely like to work. That’s great, but over vacation tell them not to. If they absolutely have to work on something, I tell my teams to work on their own projects something that’s uses totally different tech than what we use at the office, and if they don’t have any ideas for new projects then use the time to write up a blog post about something awesome we did at work, or take some useful code they created for work and flesh it out in to an open source library (with approval). Just don’t do tickets!

There’s a lot more to discuss here, but for now I’ll leave it at this: There’s too many good reasons for companies, and especially start ups, to stop with the “Unlimited Vacation” policies but at the same time having your team burning out no matter how many snacks you keep at the office will look bad. As always, it falls on technical managers to make sure we take care of our team and ourselves.

That Has to Change

The New York Times has a nice, but short, profile on the CTO of the United States of America and the lede stood out to me in particular:

President Obama’s top technology adviser cringes when she hears highly educated adults say how bad they are at science and math, particularly when they do so in front of children.

“That has to change,” the adviser, Megan J. Smith, firmly told a group of teachers at the White House not long ago. “We would never say that about reading.”

No they wouldn’t. That’s gotta change.

A Project Site Reboot

I’ve decided it’s time to reboot my personal page and you’re looking at the result of that. Over the last year I’ve done a ton of personal projects (I’ve also done some great work with my team professionally, here’s the blog for that: I figured it was time to have a site that listed the projects I’m most proud of and give me a place to blog occasionally about various technical issues.

Check out my list of projects on the Projects page and reach out if you have a cool project to work on or just want to chat.

mikeflynn @ GitHub thatmikeflynn @ Twitter