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.

JBoss Rules (Drools) 3.0.1 and AppFuse

Troy Kelley has written up a tutorial on how to integrate JBoss Rules (Drools) 3.0.1 with AppFuse.

While reading Matt's blog article I noticed this tutorial, which is pretty nice, but seems to assume that you're using version 2.x of JBoss Rules (Drools) - mainly because of the fact that the DRL is in XML.

Here's an updated version for 3.0.1 following the same outline as the previous tutorial.

Note that I'm using springmodules (I used 0.4) for the JSR support.

Good stuff Troy - thanks for putting this together.

Posted in Java at Jun 28 2006, 04:55:39 AM MDT Add a Comment

Tech Meetup near Washington, DC

In the comments of my last post, a few folks mentioned they'd be interested in doing a "tech meetup" this week. We're staying at the Sheraton Reston Hotel. We'd prefer to stay "close to home", but that's only because we get lost easily. ;-) In reality, we're open to anything as long as it's not raining cats and dogs like it has been.

Tomorrow (Wednesday) night looks like the best night. 7:00 is probably a good time - where do you want to meet?

Posted in Java at Jun 27 2006, 05:22:04 AM MDT 20 Comments

Washington, DC

It looks like I'm going to be in Washington, DC on and off throughout the rest of the summer. Besides the regular touristy stuff, what's fun to do in this town? I'll be traveling with good friends from work, so I'm actually looking forward to the trip(s).

Posted in General at Jun 22 2006, 11:45:51 PM MDT 20 Comments

Raible Road Trip #10

Raible Road Trip #9 was to the cabin last year for the 4th of July. This year, we're taking it a whole new level. Going to the cabin for the 4th is a good time, but the huckleberries aren't ripe yet. This year, we've decided to go the first week in August instead.

OSCON is at the end of July and visiting Portland in late July is awesome. My parents have agreed to watch the kids during OSCON, and July doesn't want to travel to Oregon (she's rather enjoy some "down time"). Because of all this, I've come up with quite the travel plan for Raible Road Trip #10.

On Saturday, July 22nd, James Goodwill and I leave from Denver and drive to Salem, Oregon - where my parents live.

Denver to Salem

According to Google Maps, this trip should take about 21 hours. We expect to arrive in Salem sometime Sunday night. We'll hang out in Oregon until Tuesday morning. Then I'm flying back to Denver to pick up the kids and return to Portland the same day. On Wednesday and Thursday, I'll hit up OSCON and its festivities. Thursday's Geronimo Live event followed by the Oregon Brewers Festival on Friday should be a lot of fun.

On Sunday, my parents, the kids and I will be heading to The Cabin.

Salem to Montana

Julie's flying into Spokane, WA that Sunday, so we'll pick her up on our way and hopefully arrive at the cabin sometime Sunday afternoon. From there, we'll all enjoy a week of relaxing, huckleberry picking and good family fun. We'll head back to Denver late that week, spending a night in Yellowstone Park along the way.

Montana to Denver

Julie thinks I'm nuts for all the driving I'll be doing on this trip. She calculated it up tonight and it's something like 46 hours. I'm pumped about the whole idea and can't wait for it to begin. I love road trips, especially when doing them with family and friends.

Update: As Sanjiv mentions in the comments, Yahoo Maps has a much better representation of this trip.

Raible Road Trip #10

Total Distance: 2920.6 miles, Total Travel Time: 48 hours 8 mins

Posted in General at Jun 21 2006, 10:51:55 PM MDT 5 Comments

MacBook Pro Power Management Issues

Last week, during the Denver JUG meeting, my MacBook Pro's battery quit functioning. I got a new one from my local Apple Store the next day. Today, my power cord quit working. Again, my local Apple Store was happy to replace it. I wonder if this is a sign of things to come? It's probably time to backup the whole thing tonight just in case the hard drive is next.

Posted in Mac OS X at Jun 21 2006, 12:57:06 PM MDT 4 Comments

RE: What Web Application framework should you use?

Tim O'Brien has an interesting post titled What Web Application framework should you use?. The first thing I noticed about this post is the permalink. It looks like he started with "Isn't Rails supposed to change...", which makes me wonder what the rest of the title was. In this post, he rags on Java Web Frameworks and the lack of a clear path for choosing one. He ends up predicting that many will stick with Struts 1.x (poor bastards) and those that aren't tied to Java should move to Rails. I don't have a problem with folks moving to Rails, but I would like to comment on the Java Web Framework space and Tim's comments.

He says:

Prediction: The confusion over what is happening over at Struts is going to discourage people from continuing to use it. The Struts team did the right thing in recognizing that Struts 1.x was a dead-end, but that project needs a single public message. Is it Struts Action or is it Struts Faces? Or is it two frameworks capitalizing on the Struts brand name?

I think what is going on in the Struts project is definitely two frameworks capitalizing on a brand name. That was a concious choice on the project's part when they chose to start creating sub-projects. The interesting thing about Struts Shale is it's largely a prototype for JSF 2.0. Furthermore, it was rejected by many Struts developers as becoming Struts 2.0. Why? Because JSF sucks. Especially when used with JSP - which is what most folks are doing.

JSF continues to be the most over-hyped under-used framework in Javaland. If you read the blogs of first-time users, you'll find many complaints and issues on how things work. Granted, most of these problems are with JSP and the implementation, but still. If I were in charge of JSF, I'd dump JSP altogether, bundle Facelets with it and allow more flexible page navigation (including controller-to-page). Don't get me wrong, I like the ideas behind JSF, I just don't like the implementation (or the fact I have to wait years for things to be fixed in the spec).

That being said, I've yet to meet an unhappy WebWork fan. If you find someone that still likes Struts, ask them if they've used WebWork. Chances are they'll say no. As far as Tapestry is concerned, the learning curve is too high. It's been rejected time and time again by my clients because of the learning curve. Are they going to fix this? Yep, they're going to re-write the whole damn thing - again! Every major point release of Tapestry throws backwards-compatibility out the window. Furthermore, I've heard once you get over the learning curve, it's a joy to work with. I've also met people at conferences that've used it over a year and say they're still struggling with its concepts.

Spring MVC - I wish I had bad things to say about it, but I don't. It (obviously) has the best Spring integration, but I've found WebWork much more pleasurable to work with. Sure, Spring has a ThrowawayController, but with a name like that, you can tell it's a second-class citizen.

Inspired by Tim's post, here's my prediction:

Struts Action 2 will be the best choice for developing Java-based web frameworks. Not only does it support JSF, but it's easy to learn, test and use. Furthermore, it seems to be the most often used framework in major software products and web sites.

How's that for a clear message? Struts Action 2 is the shiznit, now let's get back to developing applications.

Disclaimer: This is my opinion with a lot of stuff thrown in to get folks riled up. I've never put a JSF, Tapestry or Spring MVC application into production (except for AppFuse of course), so most of my opinions are likely without foundation. In wonder how many applications Mr. O'Brien has put into production with these frameworks?

Posted in Java at Jun 20 2006, 08:32:41 AM MDT 57 Comments

Happy Father's Day

Father's Day has been great so far. We started off this morning by opening gifts. The kids gave me some new framed pictures, as well as a whole bunch of huckleberries. I couldn't ask for better gifts. After that, we headed out to breakfast at my favorite joint, Pete's University Park Cafe. From there, we headed up to Tiny Town and rode around on the "Choo Choo Train". We stopped for ice cream on the way home and now I'm sipping a cold one while watching the US Open. Life is good. :-D

Abbie and Jack, June 2006

Thanks to my Dad for being such an inspiration - I hope I'm as smart as you someday Pappy. Can't wait to see you in July!

Related: Father's Day 2005, 2004 and 2003.

Posted in General at Jun 18 2006, 03:26:00 PM MDT 9 Comments

Upgraded to Roller 2.3

I spent some time today and upgraded this site to the the latest Roller release (version 2.3). Let me know if you see anything out of order. In addition to the upgrade, I made a couple of improvements:

Hope you're having a good weekend - Happy Father's Day to all the Dads out there.

Posted in Roller at Jun 17 2006, 10:49:35 PM MDT 2 Comments

#8 on Google

It's amazing what a blog can do for your name. I wonder why Photo Matt got bumped from #1 to the 2nd page?

Posted in General at Jun 16 2006, 08:48:29 AM MDT 6 Comments

[DeRailed] Denver Rails User Group Meeting

Last night, Francis (Virtuas' Operations Manager) and I went to the local Rails User Group meeting, better known as "DeRailed". This group was started by a good friend of mine, Fernand Galiana, who obviously doesn't know how to blog. ;-) Since Virtuas is a sponsor, and I really like Rails technology, I felt like it'd be a fun meeting to attend. I wasn't disappointed.

The meeting was held 3 blocks from our offices at the downtown Tattered Cover. The first presentation was by Doug Fales, and he talked about his new soon-to-be-launched site called WalkingBoss. With this site, he integrates GPS Data (GPX files) and Flickr photosets to allow you to easily plot your trips on a map. It looks very easy to use, and somewhat inspired me to get a GPS device, and possibly a new (smaller) camera. Doug's blog has more in his most recent post. Unfortunately, I don't see that his blog has permalinks, so this might be hard to find in the coming weeks.

The 2nd talk was Ruby Meta Programming and was presented by Ara Howard. Since I don't know a whole lot about Ruby, this talk was over my head, but somewhat interesting nevertheless. There was about 20-25 people that showed up for this meeting and I found it to be a much younger and more down-to-earth group than the local DJUG. Furthermore, almost everyone went out for beers at the Rock Bottom afterwards, which is a lot different than DJUG (10-15 out of 75-100 usually go). Good meeting, good group of guys. Thanks Fernand!

Posted in Open Source at Jun 16 2006, 07:37:20 AM MDT 1 Comment