Matt RaibleMatt Raible is a Web Developer and Java Champion. 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.

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

The JHipster Mini-Book v4.0 Now Available for Download!

The JHipster Mini-Book v4.0 is now available as a free download from InfoQ. Get it while it's hot! You'll also be able to buy a print version in a week or two. You can read all about what’s changed since v2.0 on the JHipster Mini-Book blog.

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 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 Sep 22 2017, 08:22:04 AM MDT 2 Comments

Devoxx Poland: A Huge Conference in a Beautiful City

It's been a little over six years since I first ventured to Kraków, Poland. I have fond memories of that trip, mostly because Trish was with me and we explored lots of sites. Last month, I visited Kraków for GeeCON, but only stayed for one night.

Last week, I had the pleasure of visiting a third time for my first Devoxx Poland. I was excited to travel internationally again with my favorite travel shirt on. This caused a funny conversation with TSA just before my departure.

Heading to the airport in my favorite travel shirt

I arrived in Krakow on a beautiful day and took an Ubër to my hotel next to the venue. I took a stroll along the Vistula River to enjoy the sunshine.

A beautiful day in Krakow

[Read More]

Posted in Java at Jun 27 2017, 08:44:31 AM MDT Add a Comment

Speaking Adventures at J-Spring, Devoxx UK, GeeCON, and Spring I/O

As a Developer Advocate at Okta, I'm expected to travel up to 25% per month to speak at conferences and meetups. This May was more like 50%! I had opportunities to contribute to a number of cool conferences in exotic cities that I was eager to accept.

My adventure began on Monday, May 8 when I flew to Amsterdam to speak at the J-Spring conference. It was the first time the NLJUG hosted this conference in several years. I marveled at the venue and especially liked the outdoor area it offered during breaks. The walk from/to the train station was pretty nice too.

J-Spring Outdoor Area Amsterdam Bike Paths

I spoke about Microservices for the Masses with Spring Boot, JHipster, and JWT. Feedback I received mentioned it was a bit too fast and I crammed too much into the 50-minute time slot. I do tend to mention everything I know about topics when I speak, so I apologize for trying to cram too much in.

[Read More]

Posted in Java at May 24 2017, 09:50:55 AM MDT 1 Comment

Angular and Cloud Native PWAs at Devoxx France

Devoxx France is one of my favorite conferences. As you might know from my post about Jfokus, I thrive on a sense of community and the memories created by conferences. Last week in Paris, I experienced a passionate community and created several memories, with many good people and friends.

I had two speaking events at the conference:

For the workshop, I intro'd Angular, had the class create an Angular application, then talked about testing Angular. In additional, I showed them a number of demos:

NOTE: Videos of my past performances about Angular can be found on YouTube:

Update: Videos of Josh and my Cloud Native PWAs talks have been published to YouTube. Hope you enjoy!

[Read More]

Posted in Java at Apr 10 2017, 11:53:42 AM MDT Add a Comment

Let the Okta and Devoxx Journeys Begin!

It's been almost a month since Stormpath joined forces with Okta. My first day at Okta was on February 27, and I was only briefly in the San Francisco headquarters. I had to fly out at noon on my second day, so I hunkered down in the Okta Pub and cranked out a presentation for a talk with Micah Silverman at the Kansas City Spring User Group.

The Okta Pub

That's right, Okta has a pub in their SF HQ. When I first heard about this, I knew it'd be a good fit for me!

Now properly fortified, I finished the presentation and headed for the airport, where I rejoiced in my clothing choices for the day.

The whirlwind of ramping up at Okta hasn't died down yet. Last week, I figured out how to authenticate with Okta's API using Spring Boot and SAML. I also got an OAuth 2.0 example working. Then I moved onto Angular and got an example working with OpenID Connect (OIDC), Okta's Sign-In Widget, and the Okta Auth SDK. I was especially pumped when I got an Angular client working with OIDC and a Spring Boot + Spring Security backend. This week, I wrote up my findings as tutorials and recorded a couple screencasts to accompany them. These will likely show up as blogs posts on Okta Developer Blog over the next few weeks.

While the first couple of weeks at Okta has been exciting, I'm more excited about the upcoming Devoxx conferences I'll be speaking at.

Next week, Devoxx US will be happening for the first time! As a member of the program committee, I promise you this is going to be a great show! We had an incredible number of high quality submissions and it shows in the agenda. I'm especially looking forward to Janelle Klein's What is Identity? keynote. I'll be doing talks on JHipster, Asciidoctor, and how NOT to restore a VW Bus.

Speaking of the bus, Hefe sure looks good, doesn't he? ;-)

A post shared by Matt Raible (@vwsforlife) on

After returning from Devoxx US, Trish and I are taking Abbie and Jack on the spring break trip of a lifetime. I've never been to Big Sky, so we're heading there for a week of skiing, frolicking, and playing in the snow. I might even go phoneless for the week to fully embrace the serenity that Montana provides.

I'm off to Devoxx France the following week. I'm really looking forward to this conference because my talks are all about Angular. I'll be doing a hands-on lab on getting started with Angular, as well as developing a PWA with Josh Long.

To make things even better while I'm on the road, I'm getting some work done on both VWs. We're getting Stout the Syncro painted and having a stereo installed in Hefe. With any luck, Stout 5.0 and Hefe 3.0 will be released in April, just in time for the car show season.

So yeah, life is pretty darn good right now. Let me know if you'll be in Tahoe, San Jose, Big Sky, or Paris when I'm there. I'd love to chat about authentication, open source technologies, VWs, or good beer.

Posted in Java at Mar 16 2017, 11:43:59 AM MDT Add a Comment

A Jolly Good Time at Jfokus 2017

I like speaking at conferences. I don't enjoy the stress of creating a new talk and delivering it for the first time, but I do enjoy delivering talks, and I love the feeling after. It's even better when the conference provides an atmosphere that creates lasting memories.

I've been to many conferences in my career. A conference with a sense of community provides one of my favorite experiences. Not just for the people that attend, but for the people that speak. I've been to several conferences that provide this experience and I'm happy to say I just attended one of my favorites: Jfokus 2017.

I flew from Denver to Stockholm last Monday and performed my first talk on Testing Angular Applications just a few hours after I arrived on Tuesday. Usually, I take a day or two to recover from jet lag, but this time I figured I could clutch up and make it work. Going to sleep on the plane at 6pm Denver time certainly helped and I think the talk went well. For the live coding part of the presentation, I used the second half of my Angular and Angular CLI tutorial. I posted my slides for this talk to SlideShare and Speaker Deck. You can also view them below.

Tuesday night, there was a conference party. I met many new people and put some names to faces with a vibrant community of conference attendees and speakers.

[Read More]

Posted in Java at Feb 16 2017, 05:21:23 PM MST 2 Comments

Upcoming Events: Devoxx4Kids Denver, Testing Angular 2, DevoxxUS CFP and VJUG24

It's been awhile since I've posted anything on this here blog. That usually means one thing - I've been off having fun! That couldn't be more true this summer. The day after my last post, I began traveling and haven't stopped since. In fact, this weekend will be the first weekend I've been home since writing that post. Hawaii, Montana, Denver, Montana, Colorado Springs and Utah - it's been a fabulous summer. I'll write more about those adventures soon.

In the meantime, I wanted to mention some upcoming events you might be interested in:

  • September 10: Devoxx4Kids Denver has an upcoming workshop on Exploring JavaScript with the world famous Dr. Venkat Subramaniam. If you know Venkat, you know this is a session you shouldn't miss. Your kids will love it, you'll get a lot of good laughs and everyone is sure to have a good time. Make sure and RSVP soon so you get in before this baby fills up!
  • August 22: HTML5 Denver has a sessions on ES6 vs. Typescript and Testing Angular 2 Applications. The first session will be delivered by my good friend Geoffrey Filippi and I'll be performing the second act with the help of angular-cli.
  • Devoxx US September 1: One of my favorite conferences, Devoxx, is coming to the US! DevoxxUS recently announced that registration is open. Even more interesting is that the CFP begins September 1st. I'm biased because I'm on the program committee, but I'd love to see your ideas for great talks!
  • September 27: Our good friends from vJUG are hosting the first 24 hour Virtual Java Conference in the world! I'll be speaking about the Art of Angular in 2016 at 10pm EDT.
  • September: I'm looking for new clients. My current contracts end on August 31 and I'm searching for the next cool team to work with. My expertise: Java, JavaScript and I'm really good at CSS. This is a hard combination to find! LMK if you have a need.

I hope to see you at one of these events!

Posted in Java at Aug 12 2016, 03:29:01 PM MDT Add a Comment

A Delightful Trip to Devoxx UK and GeekOut 2016

We found a pub! I had the pleasure of traveling to London, England and Tallin, Estonia this past week. In London, I spoke at Devoxx UK. In Tallin, I spoke at GeekOut. I took my mom (or mum, if you prefer) and we explored the sights, enjoyed local cuisines and savored a few beverages. Our trip started with a direct flight from Denver to London. We arrived on Tuesday, June 7, around noon.

We were only in London for two nights, but it was enough time for us to savor excellent Indian food, fancy a walk through London, and order a bow tie. I forgot the bow tie for my JHipster outfit. Luckily, I found a good replacement and was able to order it for next-day delivery. I had to order it by 5pm and the site declined both my credit cards with time running out. I ended up using PayPal and got my order placed in the nick of time: 16:59:51.

The big news announced at Devoxx UK is that Devoxx is coming to the United States in 2017! I'm on the program committee for this conference, so I look forward to helping make it spectacular.

Devoxx coming to US in 2017!

[Read More]

Posted in Java at Jun 12 2016, 11:13:17 AM MDT 1 Comment

Moving AppFuse into the Attic

In mid-February, I decided to stop working on AppFuse. My reason was simple: I was no longer getting any value from my contributions to the project. I sent a message to the developers mailing list the next day:

Hello everyone,

Last night, I started working on AppFuse 4.0, with the following features from the roadmap:

  • Remove XML wherever possible
  • Java 8
  • Spring Boot
  • Spring Data
  • JSR 303 (might require removing or developing client-side support)

As I started removing XML and integrating Spring Boot and Spring Data, it quickly became apparent that it’d be a lot of work to make all of these changes. My guess is it’d take over 100 hours of my time to do everything. This is time I’d be taking away from my family and personal time.

At the end of last year, I wanted to make AppFuse 4.0 happen because I thought it’d help me stay up-to-date with Java technologies and learn some things along the way. As I dug into the codebase last night, I realized it’d be more of a headache than a learning experience. It seems there would be little reward for all the work.

Because there’s little-to-no activity on the mailing list these days, it seems like it’s the right time to shutdown the project and dedicate my free time to other open source endeavors. As you might know, I’m a big fan of JHipster (http://jhipster.github.io/). It combines AngularJS and Spring Boot and has all the features that AppFuse has - but with a more modern technology stack.

If we had everything hosted on GitHub, I think it’d make sense to add a line to the README that says “This project is no longer maintained”. However, since there’s a lot hosted on appfuse.org (with Confluence), it might not be that easy. Maybe it’s possible to export everything from Confluence to static HTML pages and host them somewhere with the same URLs so there’s not a bunch of 404s from shutting down the project.

Thank you for your contributions over the years. AppFuse was pretty cool back in the day, but now there’s better solutions.

Cheers,

Matt

The good news is I've worked out a deal with Contegix to keep appfuse.org up and running for the next year. The demos, documentation and bug tracker will be available until April 30, 2017. Bamboo and FishEye will be discontinued in the next week since they're too memory intensive for a smaller server. I'd love to figure out a way to export all the documentation from Confluence to Asciidoctor so everything can be on GitHub for years to come. However, there's something to be said for just letting a project fade away rather than holding onto nostalgic artifacts.

On a related note, Java.net will be closing in a year from today. AppFuse started on SourceForge, but moved to appfuse.java.net shortly after. Today, the only thing left on java.net are AppFuse's mailing lists. I suppose it makes sense that both projects will cease to exist around the same time.

AppFuse's source code will remain on GitHub. I have no plans to delete it.

Thanks to everyone that used and contributed to AppFuse over the years. It was a pretty wild and crazy ride from 2003-2007! :)

Posted in Java at Apr 28 2016, 03:40:16 PM MDT 14 Comments