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.

How do you get up to speed on Rails and Grails quickly?

What's the best way to learn Rails and Grails and satisfy one of my New Year's Resolutions (read more) at the same time? Books:

Thanks to connections with publishers, I was able to get PDFs of most of these for free. The only ones I paid for were the beta books (Groovy Recipes and Programming Groovy) from the Pragmatic Programmers. I doubt I'll read them all, but I've had fun so far.

I polished off Getting Started with Grails in a few hours. I expect to finish Rails for Java Developers this week. I used to hate reading PDFs, but I've enjoyed reading these books. A 30" monitor might have something to do with it.

After honing my Grails and Rails knowledge, I hope to become a GWT and Flex Ninja. For those GWT and Flex experts out there, what are the best books for those technologies? By "best", I mean the most advanced and up-to-date.

Posted in Java at Jan 31 2008, 11:29:19 AM MST 10 Comments

What a forecast!

Mary Jane - Derailer Run This weekend, I'm planning on heading up to the hills for two fun-filled days of great Colorado skiing. Since it snowed a bit in Denver tonight, I figured I'd check the weather forecast:

Thursday Jan 31, 2008: 3 to 4 inches of accumulation
Friday Feb 01, 2008: 3 to 5 inches of accumulation
Saturday Feb 02, 2008: 3 to 5 inches of accumulation
Sunday Feb 03, 2008: 4 to 7 inches of accumulation

Sweet.

Friday Update: It looks like we'll be skiing at Steamboat tomorrow instead. Checkout their Straight Talk Snow Report from this morning:

Snow Report

    * Time: 02/01/08 05:00 am
    * Conditions: Powder
    * Lifts: 16/18
    * Trails: 163/163
    * 24 Hour Snow: 18"
    * 48 Hour Snow: 22"
    * Base: 77"
    * Total: 308"

Steamboat Straight Talk Snow Report: 2/1/08

Good Morning to you, indeed!

Remember earlier in the week when we had a loud, brash, windy storm 
roll through the mountains and bring us snow? Last night while no one 
was looking, a quiet storm tiptoed in like a whisper, under the cover 
of darkness, and silently dumped a foot and a half of the choicest 
"Champagne Powder" while we all slept. All over town, people woke up, 
looked out their windows, and let out a "Holy Cow"!

I could write this report with fill in the blanks, as in... My first 
run down___________ (insert any trail name) was sweet. I got face 
shots the whole way. Then I skied over to the __________(insert a run) 
trees and the snow was just blowing over my head.

I think you get the picture. The whole mountain is in epic condition.

On one chair ride, my chair mate said, "You know it's a good day, when 
you hear Monkey noises coming from the forest." Everywhere folks were 
hootin' and hollerin'.

Weekend warriors, don't despair, there is plenty powder left to be 
skied tomorrow.

Have fun. Be safe. Look out for your buddy. Peace.

Straight Talker
Kat Murphy
Grinning like a Chimp
Telemark Skier

:-D

Posted in General at Jan 30 2008, 10:24:21 PM MST 3 Comments

Is there room for both Rails and Grails in a company?

For the last week, I've been knee deep learning more about Rails and Grails. The reason is because I think developers (and companies) are going to have a hard time deciding which framework is best for them. The real question is: do they both do the same thing or are their different applications for each? Is "Grails vs. JRuby on Rails" a "Struts 2 vs. Spring MVC vs. Stripes" argument - where they're all so similar it probably doesn't really matter which one you choose?

Of course, the Stripes folks will object, but I really don't think it's that much better than Spring MVC 2.5 or Struts 2.1. Sorry guys. ;-)

If it is a Spring MVC vs. Struts 2 type of argument, then it seems to make sense for a company to standardize on one -- don't you agree? Does it make sense to allow both frameworks in a company if they're so similar?

Google has had much success in restricting its allowed programming languages to C++, Java, Python, and JavaScript. Shouldn't other companies do something similar? It seems like a good idea to restrict allowed web frameworks to a few as well. For companies with successful Java infrastructures, it seems logic to allow one Java-based web framework and Rails or Grails for getting things done as fast as possible.

Here's the sticking point: Ask any Rails developers and they'll say Rails wins hands down. Ask any Grails developers and they'll say Grails is the easy choice because it builds on top of Java's strong open source projects. Blah, blah, blah - where's the objective voice that's identified the "sweet spot" for each?

The Relevance guys, particularly Stuart Halloway, has a post about How to pick a platform. The logic in this post seems to imply that both frameworks do solve the same problem - just in different ways. Stu seems to recommend Rails for most applications, because Ruby is a better language. He says Grails might win if you have "an established team of Spring ninjas".

I know Stu and believe he does know his stuff (in both Java and Ruby). So is this the definitive guide on which framework to choose? If you have a staff full of Java developers, they should start learning/using Rails rather than doing the easier transition to Groovy, which they pretty much already know?

I don't know what the answer is, but that's what everyone seems to be saying. The problems is, the authorities on this matter (Rails vs. Grails) are often "head honchos" in companies that have a vested interest in seeing their respective framework/platform succeed. Since the Relevance team employs some Grails developers, it seems they're less biased. But who knows.

Is Rails really head and shoulders better than Grails? I don't think so, but I've only been programming with both for a week.

Posted in Java at Jan 30 2008, 11:48:14 AM MST 11 Comments

Don Brown Makes Maven 2 Not Suck

Don Brown spent some time over the weekend Making Maven 2 not suck:

While there are a few (very important, I might add) things Maven 2 gets right, there are a bunch that just suck, yet I use it at my day job (Atlassian) and in Open Source work, so in true Open Source tradition, rather than continue bitching, I'm doing something about it. I'm embarking on a quest to fix all the bits of Maven 2 that really annoy me and waste my time. I hope to get most, if not all, of the changes back into the codebase, but my personal deliverable is a build of Maven 2 that doesn't suck.

On his blog, Don lists a number of improvements he hopes to make. This weekend, he implemented the first three, which concentrates on speeding up remote repository access and downloading of artifacts.

First up, tasks #1-3. I implemented these changes in a bored Sunday afternoon and saw a example build (Struts 2 core) go from 3 minutes, 26 seconds to 2 minutes even, so a little over 40% performance improvement.

Interested, I decided to try Don's improvements on AppFuse. Since it fetches seemingly hundreds of artifacts from Maven's central repository, it seemed like a good testing ground. With a clean repository (rm -r ~/.m2/repository), a 8 MB/sec internet connection and "mvn -Dmaven.test.skip", I achieved the following results with the stock version of Maven 2.0.8:

[INFO] Total time: 7 minutes 40 seconds
[INFO] Finished at: Mon Jan 28 09:02:11 MST 2008
[INFO] Final Memory: 55M/508M

With Don's improved uber-jar, I received the following results:

[INFO] Total time: 5 minutes 17 seconds
[INFO] Finished at: Mon Jan 28 09:10:56 MST 2008
[INFO] Final Memory: 56M/508M

460 vs. 317 seconds = a 31.1% improvement -- Nice work Don!

When he implements #4 (Should support artifacts checked into the SCM in the lib/ directory so no external repository needed), I'll be a much happier Maven consumer. I've always wanted the ability to bundle all of AppFuse's dependencies for offline use like we did in 1.9.x.

Don - I'll buy you numerous beverages in Vegas if you add the ability to run a Maven command to put all a project's dependencies in its lib directory too. ;-)

Posted in Java at Jan 28 2008, 09:28:09 AM MST 7 Comments

Hike up Green Mountain

I can't believe these two actually hiked up to the top of Green Mountain. It must've been the promise of a picnic at the top that motivated them -- or maybe the ice cream afterwards. ;-)

Hiking up Green Mountain Abbie and Jack on Green Mountain

Posted in General at Jan 27 2008, 03:39:53 PM MST 1 Comment

Nice Day in Denver

Nice Day in Denver One of the reasons I love Denver so much is we usually have extremely mild winters. One year, it was 75°F on Christmas Day (no kidding). Back in college, I have fond memories of playing hacky sack outside in January. The last two winters, we haven't been that lucky. Our high temperatures have been mostly in the 20s and 30s for the last two months. Today, we got up to a balmy 53°F and it felt like spring time. Believe it or not, it actually made the news.

To celebrate, the kids and I took a walk to a nearby park and spent the better part of two hours swinging, sliding, playing tag and enjoying the nice weather. Abbie and I wore shorts and never noticed it was winter until the walk home with the sun setting. Tomorrow's high is supposed to be 60°F. You can best most of Denver will be outside enjoying the sunshine - I know we will.

Posted in General at Jan 26 2008, 06:25:35 PM MST Add a Comment

Release Your Inner Hippie With The VW Bus PC

I wonder if I can get one of these in yellow?

Thanks to Jim Head for sending me a link to this.

Posted in The Bus at Jan 26 2008, 10:34:48 AM MST 1 Comment

Traveling to Tahoe, Whistler, Oregon and Vegas

Last fall, I got pretty burned out from traveling so much. Not only did I fly out to Mountain View monthly for LinkedIn, I also attended JavaZone, Colorado Software Summit and ApacheCon US (fun was had by all). In addition, I spent a week in New York teaching a class for GE.

Lake Tahoe, Skiing on Diamond Peak, North Shore Lake Tahoe
Photo from Webshots

At the end of the year, I resolved to travel less and so far I've been quite successful. However, something happened in the last week and now I'm traveling like mad for the next 2 months. This time, I don't think I'll get burned out though. Why? Because this time the travel is more for pleasure than for work - with two trips booked to help satisfy my New Years Resolution (ski more). In addition to a couple trips to Mountain View, I'll be spending President's Day weekend in Lake Tahoe. Two weeks later, I'll be meeting up with some friends at Whistler. Two weeks later, I'll be working remotely at my parent's house in Salem, Oregon. I'll end the whirlwind of traveling in Vegas for TSSJS at the end of March.

I'm really looking forward both ski trips. I've never been to Tahoe or Whistler before.

Posted in General at Jan 26 2008, 09:12:46 AM MST 7 Comments

Shadowbox - a slick Lightbox that supports Flash

Via Ajaxian, I learned about Shadowbox.js. From its creator, Michael Jackson:

A few weeks ago, I was looking for a Lightbox-like script that would allow me to display more than just pictures. In addition to static images, my client required the ability to display various types of movies including QuickTime and SWF. The only script that fit the bill was Lightwindow?a nice piece of work to be sure?but it required the Prototype + Scriptaculous combo and I was already using YUI.

Besides, I thought, it would be really great to have a full-featured media viewing application that was library agnostic. Then, if I need to use a different framework for some particular reason, I can easily switch.

Thus was born Shadowbox?a cross-browser, cross-platform, cleanly-coded and fully-documented media viewer application built entirely in JavaScript.

I've been using Lightbox JS on this site for almost 2 years. The next time I need lightbox functionality for an application, I'll definitely try out Shadowbox. I dig the look and feel. I agree with Ajaxian commentors that rel="lightbox[name]" would be awesome. If it's added, I could theoretically replace lightbox.js with shadowbox.js and I wouldn't have to make any other changes.

View Shadowbox Demos »

Posted in The Web at Jan 25 2008, 09:05:16 PM MST 1 Comment

The future is now -- Java development in 2008

In The future is now -- Java development in 2008, Andy Glover writes:

The year 2007 was full of exciting plot twists, punctuated by growing excitement about dynamic languages, the open source evolution of the JVM, and the rise of Google as a strategic contributor to the Java community. The question is, what does all that tell us about the year ahead?
...
And so, despite some rumors to the contrary, I would argue that Java isn't going anywhere but up in 2008. Rather than peer into a crystal ball and try to divine the future, let's reflect on the major events and trends of the past year. Taken together, they reveal all we need to know about what's ahead in 2008.

He concludes the article with:

An African proverb states that Tomorrow belongs to the people who prepare for it today. Thus, the future of Java (at least for the next year) has already been brewing for some time. The events of 2008 will largely be shaped by the JVM itself, as languages like JRuby and Groovy grow in popularity and eventually gain enterprise-wide adoption. The promise of using Java to develop consumer mobile applications also seems more accessible than it has for some time, given Google's foray with Android and Sun's with JavaFX Mobile. Most of us will also be concerned with leveraging the emerging multicore systems and looking to Java 7's java.util.concurrent packages for answers. Lastly, open source Java and the business model surrounding it will continue to grow.

I agree that learning about JRuby and Groovy is a good way to be prepared for the future. Reading Ola Bini's Practical JRuby on Rails Web 2.0 Projects and/or Stuart Halloway and Justin Gehtland's Rails for Java Developers seem like good ways to get started with JRuby. With Groovy, Groovy in Action has received a lot of good reviews. For Grails, it's a bit more difficult as it's evolved so quickly w/o any updated books. I like the look of Scott Davis's Groovy Recipes, but that won't be released until March.

One thing to note: just because you learn these languages and frameworks doesn't necessarily mean you'll find a new job doing them. In my experience, there's still way more Java jobs than there is Rails or Grails jobs. I sat on a Consulting Panel last night at Denver's Ruby on Rails user group (DeRailed) and this was confirmed (at least for Ruby) by the recruiters on the panel. There were three recruiters and combined they've only seen 2 Rails positions in the last 6 months.

So if you're looking for a new job, I doubt you're going to find one that allows you to leverage your new-found JRuby/Groovy skills out of the gate. However, I do believe you can leverage these tools in your existing jobs and hopefully make your development life more efficient.

Posted in Java at Jan 25 2008, 09:03:18 PM MST 5 Comments