MJS 031: Mike Hostetler
Today's episode is a My JavaScript Story with Mike Hostetler. Mike talked about his contributions to the JavaScript community. Listen to learn more about Mike!
[00:50] – Introduction to Mike Hostetler
Mike was on episode 133 which was like 2.5 years ago.
[01:45] – How did you get into programming?
First computer
Mike got their first computer when he was 5 or 6 years old. 286 IBM Clone had a command prompt that he spent several years trying to figure out how to code with it until he stumbled on a few basic books at their local public library in junior high. He began teaching himself how to code with QBasic and Borland C++. He, then, found the internet early high school and downloaded the Mosaic browser. He started coding HTML and early JavaScript, late 90’s. Then, he went off to college to get a Computer Science degree.
First job
When Mike was late high school, he decided that he knew enough coding that he was going to try to get a job. He ended up finding web development companies in the phone book and calling each one of them, trying to explain that his 16-year-old self could help them code and build websites. He ended up landing a job and was paid minimum wage to build HTML sites - a lot of 1x1 pixels transparent gifs, coding HTML by hand and notepad. Then, he ended up working for that company for his first couple of years of college as well.
[05:30] – How did you wind up doing JavaScript?
After college, the job that Mike landed was spent on learning Microsoft technologies and then half on the open-source side of learning the LAMP stack. At that time, it required hand-coding JavaScript. His next role is building a custom mapping application which was a single page application that heavily relied upon JavaScript. This was client-side object-oriented. There were no frameworks but it was enough script to build a URL that called a custom CGI to render the map. So, he immediately jumped in and started using the early JavaScript frameworks and prototypes.
The role that Mike was in next was building a touchscreen capable device. They needed custom plug-ins to provide the highlight focus effect around the button. He needed to write a plugin to do that and jQuery has just been released. So, he stripped all the prototype code, throw JQuery in there, and then, write a plug-in to navigate this interface by keyboard.
[09:20] – Contributions with JavaScript
jQuery
Mike’s first participation was on the JQuery project. If you ever use the JQuery plug-ins site, the old site, that was his contribution. He ended up running infrastructure for JQuery for several years. JQuery launched his business career. He switched into an entrepreneur around 2009. Since then, he’s contributed in numerous ways through speaking, leading training, and writing articles. He was a co-author of the JQuery Cookbook.
Node.js
As Node began to get more popular, Mike switched his attention to Node and found passion around the Sails.js project. It was a Node framework that made it easy to build Express-powered apps with Node and limit a lot of the convention over configuration elements of the Sails framework. That morphed into ES6 rewrite of Sails called the Trails framework. Currently, he is an organizer of the Chicago Node.js Meetup and he’s a contributor to the Trails framework.
[11:50] – JQuery challenges and experiences
jQuery 1.4
Mike and the team made community’s problems their problems so the gravity of what they were working didn’t hit them very much until jQuery 1.4. They had an online conference. They all recorded talks and they’re releasing a talk a day for jQuery that will be going to accommodate the 1.4 release. He remembered that he was setting up, managing the servers, and was doing some last-minute configuration. Then, John had tweeted that 1.4 was ready, pointing to jQuery.com. The web server just ground to a halt as he saw the traffic come in off a tweet.
Open-source community
Mike remain friends with a lot of them. According to Mike, they were just normal people who made a choice to lean in, contribute, where those contributions ended up becoming popular. Looking forward, he said that he’s going to continue to contribute to the open-source community. He wants to help the junior developer that is learning ES6 for the first time and is solving a syntax error. From Mike’s perspective, technologies come in waves. jQuery was a wave but jQuery’s wave focuses its energy into JavaScript’s wave. Certain people catch a contribution wave. React is on the upswing. Node is in an interesting spot because they’ve been on the upswing for many years but there’s new work that could be done. He said that had a shot to be at the forefront of the wave and got to see it.
Advice
For anybody else that maybe listening, find a spot where there’s new ground that you can contribute to and just dive in and do what you can to solve a problem to make it better. You’ll catch your wave.
[21:00] – How to pick frameworks
Node frameworks
There was a Reddit thread about Node frameworks in 2017 that listed out all the possible frameworks. The classic answer is to use the right tool for the right job but Mike’s answer is: Node has grown so big that different frameworks are built to different people on the learning curve of Node. The other thing that Node has done is they have this culture of really running away from any Monolithic one-size-fits-all solution. The community of Node has made sure that they make space for an incredible diversity of solutions and frameworks.
Antipattern
The anti-pattern is: what is the best framework of 2017. That’s the wrong question in the Node culture. Look at your team, look at your project, what framework can you be most productive in and what framework can you contribute back into the community with? That is one of the key reasons that Node itself has remained and continued to grow in popularity.
[23:40] – Role in Sails and Trails
Mike’s not contributing to the Sails project at the moment. He has been focusing on the Trails project. He has written a couple of Trails packs or the equivalent of plug-ins, messed around with GraphQL. He is also helping answer questions in the Gitter chat – small ways.
[24:25] – Best ways to contribute
Stack Overflow
Go on to Stack Overflow. Subscribe to tags where you can answer questions. Every answer on Stack Overflow is a contribution. Go, watch, subscribe to the issue queues for the projects that you use. Just even sharing your experience with how you solve a problem, there is somebody that you could reach down to and answer their questions that take their burden off.
Gitter
Get involved in the Gitter chat. Listen, watch, stand on the sidelines, and see what’s going on how the community works.
Pull request
The next step, if you see a problem, submit a pull request, listen to see what the roadmap is, and see what you can contribute.
Infrastructure
A lot of projects need help in infrastructure in their build scripts to produce better-written code. You can document for them. If you wait for the next sexy thing to do, you’ll never get there. Be humble.
Fun
Remember that open-source is fun. If it becomes a drag, you are doing it wrong. Look for the opportunities that are aligned with what you do so it’s a fun, happy experience.
[26:45] – What are you working on now?
Raise Marketplace
Currently, Mike is taking on a new role as Director of Front-end Engineering at Raise Marketplace. It is a marketplace start-up in Chicago. His focus is rebuilding the front-end of Raise on a micro service Node.js in Go service architecture. They have also been listed to help some folks at Google in the web performance team. They are always hiring. If you are looking for a remote role for a start-up. Feel free to reach out to him on Twitter or on Raise.
ModernWeb
Mike’s side-project now is a website called
ModernWeb.com, where they help connect companies with teams of software developers and tell the stories of those software projects. A lot of developers are great at writing code but are terrible at telling the awesome things that we do. So, ModernWeb exists to tell the stories of development. The great side effect is companies want to work with you when you tell your stories. They help complete that circle. Go over to ModernWeb.com and you can contact them through the website or you can drop him an email at mike@modernweb.com.
Picks
Mike Hostetler
Charles Max Wood