Matt RaibleMatt Raible is a writer with a passion for software. Connect with him on LinkedIn.

The Angular Mini-Book The Angular Mini-Book is a guide to getting started with Angular. You'll learn how to develop a bare-bones application, test it, and deploy it. Then you'll move on to adding Bootstrap, Angular Material, continuous integration, and authentication.

Spring Boot is a popular framework for building REST APIs. You'll learn how to integrate Angular with Spring Boot and use security best practices like HTTPS and a content security policy.

For book updates, follow @angular_book on Twitter.

The JHipster Mini-Book The JHipster Mini-Book is a guide to getting started with hip technologies today: Angular, Bootstrap, and Spring Boot. All of these frameworks are wrapped up in an easy-to-use project called JHipster.

This book shows you how to build an app with JHipster, and guides you through the plethora of tools, techniques and options you can use. Furthermore, it explains the UI and API building blocks so you understand the underpinnings of your great application.

For book updates, follow @jhipster-book on Twitter.

10+ YEARS


Over 10 years ago, I wrote my first blog post. Since then, I've authored books, had kids, traveled the world, found Trish and blogged about it all.
You searched this site for "java web frameworks comparison". 2,229 entries found.

You can also try this same search on Google.

2018 - A Year in Review

In 2018, I spoke at several fantastic meetups, traveled a bit overseas, and enjoyed some fun family vacations. We had the time of our lives driving Hefe in the Denver St. Paddy's Day Parade!

Bubbles

We traveled to Crete for JCrete and had a blast with the Java community. We journeyed to Ireland with my folks, and I thoroughly enjoyed a speaking tour of Ireland JUGs and the Dublin JHipster Meetup. Our classic VWs had a great year with only minor repairs needed.

I'm going to look back on 2018 using the following categories.

Professional

For those stumbling upon this post with no context, I'm a veteran open source developer that works at Okta as a developer advocate.

This year I focused on blogging more than speaking. I still spoke a fair bit, but I tried to focus on meetups more than conferences. The DevEx Team at Okta released a slew of SDKs at the end of 2017, so I had plenty to write about. Over the year, I found more and more developers had heard of Okta during my talks. I even found users in most audiences! This was quite a change from 2017, so it seems my team's advocacy efforts might be working.

[Read More]

Posted in General at Jan 29 2019, 01:25:24 PM MST 2 Comments

Life Update: Thanksgiving in Montana, RWX2018, Devoxx4Kids, DJUG, and Trish's Birthday

For the first time in many years, we flew to Montana for the holidays. We typically drive, and it takes around 14 hours. It was quite nice to take off and land in just a couple of hours.

First class to Montana! The House, The Cabin, and The Bedroom

Fantastic porch, even in the winter.

I thought it'd be fun to take some pictures of the cabin I grew up in. It's just a guest cabin now, but it still seems very cozy.

The Cabin's dining room The stove! My dad used to love sitting on the oven door every morning.

[Read More]

Posted in General at Dec 20 2018, 09:20:02 AM MST Add a Comment

The JHipster Mini-Book v5.0 Released!

The JHipster Mini-Book v5.0 is now available as a free download from InfoQ. Get it while it's 🔥! You can also buy a print copy from Lulu. You can read more about this release on the JHipster Mini-Book blog.

JHipster Mini-Book v5.0 Cover

The source code for the application developed in the book (21-Points Health) is available on GitHub.

Thanks to the InfoQ publishing team, Dennis Sharpe/Jeet Gajjar for tech editing, and Lawrence Nyveen for copy editing. And most of all, thank you Asciidoctor for making the publishing process so easy!

Posted in Java at Nov 14 2018, 09:48:11 AM MST Add a Comment

JHipster Conf 2018: Summer Solstice in Paris

Last week, I journeyed to Paris with my son, Jack. It was his first time in Europe and I brought him along for good reason. I’d been invited to the first ever JHipster Conf, and I was eager to attend. We were both pretty excited when we left Denver last Monday.

Our adventure to Paris begins! #jhipsterconf

A post shared by Matt Raible (@vwsforlife) on

My Background with JHipster

I’ve been a part of the JHipster community for a few years now. I joined by accident, really. I was trying to market myself as an independent consultant by spouting my knowledge of Spring Boot and Angular with an InfoQ mini-book. Since JHipster leveraged both to jumpstart app development, it seemed like a perfect fit. I’ve been a long-time fan of app jumpstarts, having developed my own called AppFuse in days long gone.

Through the process of writing the mini-book, finding issues, and submitting pull requests, I eventually found myself to be a member of the JHipster development team. Through my relationship with JHipster, and it’s 3.0 release, I found myself intrigued my microservices and how to develop them with Spring Boot, Spring Cloud, all through the generation expertise of JHipster.

I’ve learned a ton by being part of the project and trying to figure out how all of its options work.

When I found myself with a full-time job at Stormpath, I did my best to create a Stormpath module for JHipster. When Okta acquired Stormpath, I added a similar module to my list of things I wanted to write.

When it came time to implement an Okta module, I discovered JHipster’s OAuth support only worked internally, not with an external OAuth provider, also known as an Identity Provider, or IdP. I mentioned to the JHipster team I thought we could do better and add support for external providers instead. They agreed, and I went to work.

In hindsight, it was a great decision and not terribly difficult to implement thanks to Spring Security, Keycloak, and Docker. We had a ton of help from the community along the way, and as of last October, JHipster added support for single sign-on with OIDC (tested with Keycloak and Okta).

JHipster 5.0: Spring Boot 2.0, Angular 6, and React

It’s been a fabulous adventure on the JHipster train and it’s still going strong. We just released version 5.0 with React and Spring Boot 2.0 support, there’s client generators for Ionic and React Native, and we just hosted a kick-ass conference about JHipster in Paris.

JHipster Conf 2018

The conference featured members of the core team, the well-dressed and fit Joe Kutner from Heroku, as well as Java celebrities like Ray Tsang and Josh Long. You can read about the festivities and presentations from JHipster's founder, Julien Dubois.

The conference was a little over 24 hours long, starting with a speaker’s dinner on Wednesday evening. Before attending, Jack and I spent the day strolling around Versailles. Versailles is a special place in my life since I proposed to my double rainbow there after Devoxx Belgium in 2011.

?? Versailles #working #jhipsterconf

A post shared by Matt Raible (@vwsforlife) on

The conference kicked off with a keynote by the JHipster's co-leads: Julien and Deepu.

During my talk, I had Jack join me on stage for an intro, and tried to give him a taste of public speaking in front of hundreds.

My talk went well, with some successful and some failed demos. Hopefully people got the point that it’s cool to store your users outside of JHipster so you can share them between apps. I also tried to show that OAuth and OIDC are excellent for securing APIs. You can download my presentation from Add JHipster to Your JHipster Apps with OIDC or view it below.

I created a tutorial of the app I showed in my talk and published it to the Okta developer blog: Build a Photo Gallery PWA with React, Spring Boot, and JHipster. If you like React and OAuth, you're gonna love this guide!

Jack and I had a day in Paris after the conference, so we made the most of it. We hit the Eiffel Tower, hiked the stairs, and marveled at the view. After, we waited in a long line for The Catacombs and walked among the dead.

Kudos to the JHipster Community!

What a trip! It’s so much fun to be a part of JHipster’s thriving open source community. It’s not just the project itself; it’s all the projects we build upon, from Java to TypeScript to Spring Boot to Spring Data to Spring Security to Angular to React to webpack to Bootstrap. It’s a conglomeration of all of my favorite tools and open source developers encompassed in several awesome projects!

Life as an open source developer is pretty fun. I encourage you to get involved in open source too! I started way back in the early 2000s with Struts and Ant, and it’s done wonders for my career.

Viva La Open Source!

Posted in Java at Jun 28 2018, 10:13:27 AM MDT Add a Comment

Farewell to the 2017-18 Ski Season

Summertime has arrived in Colorado! Typically, I try to write my "end of ski season" blog post in April or May, but this year it slipped until June. Do I have a good excuse?! Not really. Things got busy with my trip to Richmond and Oktane 18, that's all.

I'm going to keep this post short and sweet, to mirror the ski season. We didn't receive a whole lot of snow in the Rocky Mountains so the powder days were few and far between. There were a couple though, and I got to spend a powder day with some old friends at Winter Park!

Dudes Day at Mary Jane

The kids and I skied a few days in December, but it wasn't anything to write home about. For New Years, we packed up the Syncro and headed for Crested Butte.

Packed up for Crested Butte!

Crested Butte had OK conditions, but the real fun happened when we ditched downhill and tried Nordic skiing. We spent a few hours with James Ward and daughter Josie on a beautiful cross country ski adventure. I grew up cross-country skiing to the bus stop, so it was a real hoot to do it with the whole family.

Happy Times with James Ward in Crested Butte! Crested Butte has gorgeous views We love CB!

Happy Family in Crested Butte

The real magic happened when I visited the Utah JUG in February. I drove through several snow storms on the way and arrived just in time for my talk on microservices, JHipster, and OAuth.

The next morning, there was 17" at Snowbird. That was a lovely morning.

That evening, Trish and the kids flew in and we hit Alta the next day. They still had fresh snow in spots and lots of sunshine.

Alta!

We spent Sunday and Monday in Park City and got dumped on again. 17" again on Monday. Wahoo! We stayed and skied the morning, then endured a long 10-hour drive home.

Those were the main highlights of the ski season. Both kids are legit skiers now and will ski blacks all day if the snow is good. OK, maybe not all day, but for a few hours at least. ;)

As for the VWs, Stout the Syncro won his class at the VWs on the Green show! Hefe the Bus didn't win anything, but he sure did look good!

Stout won his class!

VWs on the Green 2018

Summer 2018

Now it's pretty much summer in our neck of the woods. We spent last weekend rafting on the Upper Colorado and we're hitting the Arkansas near Salida this weekend. I've been riding my bike(s) a lot, but haven't done a lot of single track trails. I hope to fix that soon.

If you're a developer that follows this blog - I hope to see you on the road in the coming months! I'll be at JHipster Conf next week, KC/DC, UberConf, and JCrete in July, and Boston JUG in August. Hope y'all have a great summer. :)

Posted in General at Jun 12 2018, 07:50:32 AM MDT Add a Comment

Spring Break 2018: Sun, Fun, and Disney World!

I love Spring break. Who doesn't?! When I was a student, it was a nice break between quarters and led to many adventures with friends in college. As an adult, I love taking a Spring break holiday and spending it with my family. In a recent blog post on the @oktadev blog, I wrote:

I work hard, and I play hard. My family loves to do ski weekends, road trips, and whitewater raft trips. I’m lucky to work at a company like Okta that has an unlimited vacation policy. I’ve heard that most unlimited vacation policies don’t work for people because they tend to work more, and take fewer vacations.

I take full advantage of our unlimited vacation policy and make sure to take a week of vacation during every other six-week plan.

How to Achieve Massive Productivity at Work

Last week, my family and I spent Spring break 2018 with Trish's parents in Naples, Florida. We saw some incredible cars, enjoyed a day at Magic Kingdom in Disney World, played some golf, took in a couple of sunsets, and relaxed a bunch. I think some pictures describe it best.

An hour into the two hour wait for #splashmountain. Watch out - Jack is driving!

Disney Fireworks!

Naples Sunset

Awww, they really do ?? each other!

Happy Easter!

More on Flickr → Spring Break 2018

Q1 Technical Blog Posts

In case you're here looking for technical blog posts, I'm still writing about Java, Spring Boot, Angular, React, and JHipster quite a bit. However, I'm doing it mostly on the Okta Developer Blog. Here's a list of my blog posts from Q1 2018:

JHipster Mini-Book v4.5 Released!

In related writing news, version 4.5 of the JHipster Mini-Book is now available! Please let me know if you find any issues, or would like clarification on any topics.

Posted in General at Apr 06 2018, 03:04:31 PM MDT Add a Comment

2017 - A Year in Review

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.

Professional

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.

[Read More]

Posted in Roller at Jan 31 2018, 04:16:39 PM MST Add a Comment

SpringOne, The Rich Web Experience, and Being Home for the Holidays

A few weeks ago, I had the pleasure of hitting two excellent conferences in one week: SpringOne and The Rich Web Experience. The primary reason I like both conferences so much is that there are so many familiar faces.

I had a gas hanging out with folks from Pivotal after I arrived on Monday night. On Tuesday, I thoroughly enjoyed the opening keynote. Seeing the unveiling of Spring Boot 2.0's most impressive feature was spectacular too!

I walked to the Okta office for some swag that afternoon, then proceeded to the Atomist happy hour. I talked with Rod Johnson about how Atomist might be able to help update our example apps and the Okta Developer blog. Since keeping our posts and examples up-to-date is a maintenance burden, I think Atomist could be a huge help.

After happy hour, a bunch of us joined Heroku for a delicious dinner and fun conversations.

On Wednesday, I delivered my talk on Bootiful Development with Spring Boot and React. You can find my slides on Speaker Deck.

It was recorded and published to YouTube as well.

After my talk ended, I only had 70 minutes before my flight took off for Florida and the Rich Web Experience. Luckily, there was hardly any traffic and I found myself boarding with 23 minutes to spare.

[Read More]

Posted in Java at Dec 22 2017, 01:44:25 PM MST Add a Comment

A Stressful, but Rewarding, Trip to Devoxx Belgium and Morocco

One of my favorite conferences in the world is Devoxx Belgium. First of all, it tends to have one of the most enthusiastic audiences I've ever seen. Secondly, its organizers are super awesome and challenge you to give great talks. Third, it was the first conference I ever took my Trish to. In 2011, I took her a second time and proposed to her in Paris afterward.

This year, I traveled to Devoxx Belgium for the first time without Trish. It was stressful because I didn't prepare well beforehand. However, it was also gratifying because I was able to make everything work, even it all happened at the last minute. Furthermore, I did the majority of my talks with good friends, which is always a pleasant experience.

The purpose of this blog post is to document my experience this year, so I can look back and say WTF was I thinking?! ;)

I left Denver on Monday (November 6) afternoon and flew to Brussels, Belgium. My flight landed in Brussels at 9 am and Josh and my (three hour) talk was at 1:30 pm. I made it in time, but it was one of the first times we didn’t have a lot of time to prepare face-to-face beforehand. I learned that getting t-shirts printed in the US to save $500 is a good idea, but having to take two suitcases to carry them all is a bad idea.

Cloud Native PWAs with Josh Long at Devoxx Belgium We did our usual talk and I used Okta's new Angular SDK instead of the Sign-In Widget to showcase authentication. Even though the crucial step I needed was contained in my notes, I failed. One simple line to add an HttpInterceptor and I missed it!

I think I followed up well with a tweet that showed how to fix it. But who knows how many people use Twitter. One things for sure, people tweet more at Devoxx Belgium than any other conference I’ve ever been too! In fact, the #Devoxx hashtag got hijacked by some porn sites and their tweets started showing up on the Twitter wall. 

I tweeted about what I forgot to do after our talk.

Josh and my talk was published on YouTube the very next day, which is awesome.

[Read More]

Posted in Java at Nov 27 2017, 08:37:50 AM MST 2 Comments

Life as an Open Source Developer, One Year Later

It's been a little over a year since I wrote about life as an open source developer. I'm happy to say I still haven't written a single line of proprietary code. Of course, things have changed a lot in the last year. I thought going full-time would bring stability to my career. Instead, six months into it we joined forces with Okta.

The transition was rough at first. At Stormpath, we had full-featured SDKs and a great relationship with developers that used our service. We were able to port many of our SDKs to work with Okta, but we discovered that Okta didn't have a great relationship with developers. In fact, their developer blog hadn't been updated in over a year when we arrived.

On the upside, Okta's API supported standards like SAML, OAuth, and OpenID Connect. Open standards made it possible to use other frameworks and not have to rely on our own. I was pumped to find that Spring Security made it easy to integrate with SAML and OAuth. In fact, I was able to leverage these standards to add OIDC support to JHipster.

Okta's new developer console and open pricing are just a couple examples of improved happenings since we arrived. The Okta Spring Boot Starter and JavaScript libraries for Node.js, Angular, and React are also pretty awesome.

I'm happy to say my contributions on GitHub almost doubled in the last year!

GitHub Contributions 2017

As far as stress is concerned, that hasn't changed much. I've learned that the stress I feel from work is still causing me to have high blood pressure. When I measure it in the mornings, or at night, it's fine. When I measure it during the day, it's elevated. I believe my high blood pressure is caused by doing too much. Sure, it's great to be productive and accomplish a lot for my company, but it's killing me.

Therein lies the rub. I get to create my job. All I'm asked to do is write a blog post per week and speak at a conference (or meetup) once a month. Yet I'm doing way more than that. Since this time last year, I've delivered 33 presentations, in 13 different cities. I keep a page on this blog updated with all my presentations.

Next year, I still plan to speak a lot, but I plan on toning things down a bit. I'll be concentrating on US cities, with large Java user groups, and I'll be limiting my travel overseas.

Matt the Hipster Outside of my health concerns, I'm still loving my job. The fact that I get paid to speak at great conferences, write example applications, and discover new ways to do things is awesome. It's also pretty sweet that I was able to update the JHipster Mini-Book and upgrade 21-Points Health during work hours. The fact that I got featured on the main Okta blog was pretty cool too.

The good news is my overseas travel isn't done this year. Today, I leave for Devoxx Belgium, one of my favorite conferences. It'll be my first time in Antwerp without Trish. However, I'm speaking with friends Josh Long and Deepu Sasidharan, so it's sure to be a good time. Traveling to Devoxx Morocco should be fun too. I've never been to Casablanca before.

In December, you can catch me at SpringOne and The Rich Web Experience. Next year, I'll be speaking at Denver Microservices meetup, Utah JUG, Seattle JUG, and JazzCon. I plan to do a JUG tour in the northeast US too.

You might've noticed I don't write a lot of technical content here anymore. That's because I'm doing most of my writing on developer.okta.com/blog. I'm still writing for InfoQ as well. I really enjoyed attending the JavaOne keynotes and writing up what I saw.

I'll leave you with this, a project I'm working on actively and plan to finish before Devoxx Morocco.

Viva la Open Source!

Posted in Open Source at Nov 06 2017, 08:33:17 AM MST 2 Comments