About

I am Mike. I am classified as human.

My Story

I grew up in San Francisco, CA and lived in sunny California for most of my life. Over a decade ago, I moved to Milwaukee, WI, much to the bewilderment of friends and family. Here, I learned important life skills, like what to do when your windshield freezes over.

Like most UX folks, I fell into the industry from adjacent interests: web development, graphic design, and a strong desire to organize things into neat, labeled containers. Lucky for me, those are all useful user experience skills.

I’d love to tell you all about my technical skills and work experience, but that’s what the rest of the site is for. Here, you can learn about all of the weird stuff through an interactive trivia game that I built so I could figure out how to use callback functions correctly in React.


The Mike Trivia Game

How well do you know Mike?

Answer ten trivia questions to learn strange things about me that don't belong on a résumé.


About This Site

This site is built with React and uses Gatsby as a static site generator. I hadn’t used Gatsby before, but I had read enough about Jamstack sites to want to try a SSG and it seemed well supported.

My goal was to build something more dynamic and scalable than my prior portfolio sites. That feels like a success so far; it’s far easier to maintain all of this content and it should be less painful to reskin down the road.

Some odds and ends about how the site works:

  • “Work” and “Thought” pages are sourced from JDX files at build time
  • I used Tailwind CSS and SCSS modules for the site styling. Tailwind was probably overkill; I hadn’t used it before and was really just looking for an opportunity to try it.
  • I migrated my hosting to Netlify, which has been a real joy to use. It watches the site’s Github repo and auto-deploys when changes are pushed to the main branch. It’s as simple as advertised.

Eventually, I want to implement a headless CMS by sourcing content from a separate data source. Thus far, I’ve toyed with Netlify CMS but had trouble getting my JDX files to recognize React components. It seems like a fixable problem, but it required more effort than needed for the MVP. Hey, there’s always a Phase Two...right?

Questions? Concerns? Want to hear my thoughts on CSS-in-JS?

Let me know!

Built with Gatsby. Hosted on Netlify.

“Be excellent to each other...and party on, dudes!

© Mike Hartman 2021