2017 was a year with many changes. We changed presidents, Stormpath joined forces with Okta, our daughter started high school, and we lost two of our precious pets. On the upside, I traveled to many beautiful places, talked to developers around the world, and became a Devoxx Champion. Not only that, but our two classic VWs ran like champs the whole year. We put upwards of 10K adventure miles on our Syncro, and another couple thousand on Hefe the Bus.
I'm going to look back on 2017 using the following categories.
2017 was the first year I started with a full-time job in January since the turn of the century. I'd been an independent consultant for most of my career. Stormpath enticed me enough with their people and vision that I became a full-time employee with them in September 2016.
January started slow, but I started to hit my stride in February when I traveled to Sweden for Jfokus and skiing. Coincidentally, it was shortly after the conference that I found myself negotiating with Eric Berg about joining forces with Okta. I remember it well: I was sitting in the hotel lobby, with James Ward and Ray Tsang, when it all happened. Shortly after, we were sitting in the back of the bus on our way to a skiing adventure.
A week later, I was back in the states and the deal with Okta was happening. Throughout January, I thought the possibility was 20%. When I returned home from Jfokus, it was full-on happening. In fact, I was one of the last ones to sign the deal, causing panic and a few phone calls in the process. Most of the folks at Stormpath became Okta employees on February 27.
The awkward part was we knew about the deal when we traveled to Devnexus. We had a Stormpath booth there, and we were unable to tell everyone there would be no more signups after Friday, February 24.
The following week, we had a massive onboarding with everyone. There was excitement in the room and many high spirits, so it was a fun day. Shortly after, we entered into a 90-day quiet period for Okta's IPO. It was strange to start a new job with a new company and not be able to talk about it.
Okta didn't have much for SDKs when we started writing blog posts in March. However, it supports standards like SAML and OAuth, so I was able to put together some posts using Spring Security.
I wrote about my anticipation for Devoxx US and France in mid-March.
- Bootiful Development with Spring Boot and Angular
- Build Your First Progressive Web Application with Angular and Spring Boot
- Tutorial: Develop a Mobile App With Ionic and Spring Boot
- Add Authentication to Your Angular PWA
- Build a Microservices Architecture for Microbrews with Spring Boot
- Develop and Deploy Microservices with JHipster
- What the Heck is OAuth?
- The Ultimate Guide to Progressive Web Applications
This year, speaking became a part of my job, so I spoke frequently. According to TripIt, I took 29 trips, to 41 cities, and 14 countries. I traveled 115,456 miles and spent most of my time on United. By my count, I spoke at 22 events.
I was featured on the main Okta blog in late September in Developer DNA: A Day in the Life of Matt Raible.
As the year was waning, I wrote about life as an open source developer and my adventures to Devoxx Belgium and Devoxx Morocco.
In my blog post about SpringOne and The Rich Web Experience, I included a picture of my 2017 conference lanyard collection.
To end the year, I published some popular posts on the Okta Developer blog:
- Build a Basic CRUD App with Angular 5.0 and Spring Boot 2.0
- Bootiful Development with Spring Boot and React
- Get Started with Spring Security 5.0 and OIDC
We held two Devoxx4Kids Denver workshops in 2017: MIT App Inventor - Anyone Can Build Apps and Fruit Ninja with Scratch. These classes were taught by Regina Peyfuss and Melissa McKay, respectively. I'm happy to announce they've both since joined the board for Devoxx4Kids Denver and have been doing a great deal to help organize things.
Our next meetup will be on March 10 and will be taught by Melissa's daughter, Kaitlyn! I think it's pretty cool we have an opportunity to have kids teaching kids. I've also been working with Jay Zimmerman and UberConf to have an UberKids this summer.
AppFuse is no more, so I primarily work on JHipster and the JHipster-Mini Book these days. I refactored JHipster's OAuth authentication in September to use an external identity provider (e.g., Keycloak or Okta) instead of an embedded one. I wrote about how to use OpenID Connect with JHipster on the Okta Developer blog in October.
With the help of InfoQ, we released v4.0 of the JHipster Mini-Book on September 22nd. It's hard to believe, but it's still up-to-date!
I wrote down my goal at the beginning of 2017: to drive Hefe up the California coast. In July, I wrote about why that goal got moved to my bucket list:
I wanted to spend our summer vacation driving our VWs up the California coast, on a mammoth 3500-mile road trip over two weeks. However, when a landslide happened near Big Sur, I knew it was probably best to move this road trip from my yearly goals to my bucket list. Instead, we opted to drive to Montana and spend a couple of weeks vacationing in my childhood playground.
We had a blast road-tripping, hiking, and rafting in Montana. A highlight for me was hiking to Rumble Lake, somewhere I hadn't been to since I was a kid.
The drive home through Jackson Hole and the Flaming Gorge was pretty nice as well!
My only other personal post in the first half of 2017 was Farewell to the 2016-17 Ski Season.
I had a blast skiing in Winter Park, Copper, Crested Butte, Sweden, Steamboat, Tahoe, and Montana.
The highlight of the season was skiing at Big Sky Resort in Montana. We're super pumped that next year's ski pass includes Big Sky!
In early August, we rafted the Salmon River in Idaho with our rafting family and had an epic trip.
Jack turned 13 in late August and we had a splendid weekend with my folks in town.
Abbie and Tucker won their division at the SummerFest Horse Show in September!
Abbie didn't want a birthday party this year, so we surprised her with one instead. It's hard to believe she's a freshman in high school. She's even driving us around with her learner's permit these days! Her birthday was a bittersweet celebration since we had to say goodbye to Jake earlier that day.
We welcomed a new Australian Shepperd-Border Collie mix puppy into our home in December. Her name is Daisy.
Stout and Hefe
Stout 5.0 and Hefe 3.0 were released in early May. Stout had his hood painted and Hefe got a kick-ass stereo system installed.
For Hefe's stereo, I tried going phone-only for a controller. This turned out to be a bad idea, mostly due to bit Play HD and its terrible mobile app. Also, Hefe is lowered and a bit bumpy in the front, so trying to use a touch screen while driving doesn't work very well. He's in the shop now getting a new deck installed.
We drove Stout over 5000 miles this summer and he's been super dependable. Now that he's reliable, we often marvel that he really is the greatest car ever built.
Professionally, I'll be speaking at a lot of Java User Groups in 2018. The Developer Relations team at Okta is focusing on large US cities this year, so you won't see me overseas as much. This is nice because it means I get to spend more time with my family. I have received offers to speak in other countries where they'll pay for all my expenses. If expenses are covered, Okta will allow me to travel overseas. However, I've been telling people I'm only willing to speak if they'll pay for a family member's flight too. It seems to be a win-win so far: most conferences have declined, and I don't have to travel as much. If I find a conference that is willing pay, I'll get to travel with someone from my awesome family!
I'll be coding loads of example apps and writing heaps of tutorials for the Okta Developer blog and I'm super excited about our Iterate Conference next month. I'll also continue to help organize DJUG and Devoxx4Kids Denver.
Romantically, Trish and I hope to never stop dating with the 2-2-2 rule. I look forward to a year with running VWs, long dog walks, and disconnecting to connect. As for goals, I'll go for the ol' standby: to be happy and content with what I have. 😊