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.
You searched this site for "grails". 129 entries found.

You can also try this same search on Google.

What's Next

It's been three weeks since I joined the realm of the unemployed. Fortunately, I didn't stay unemployed for long. In fact, after writing the aforementioned post, I received 5 offers the next day. Of the opportunities I received, the most interesting ones were those from companies interested in hiring the whole team. Not only that, but LinkedIn hired me back as a contractor through the end of the year. The goal of the LinkedIn contract: finish up projects that my team had started in the previous months.

At the end of the first week after the LinkedIn layoffs, we all had individual opportunities, but we also had two team opportunities. The following week (last week), I flew to NYC to meet with one potential client while the other potential client flew to Denver to meet with the rest of the team. After flying to NYC, I traveled to Mountain View to do some on-site work at LinkedIn. At the end of the week, it seemed like most of the remaining tasks at LinkedIn could be done by someone else. I told them I thought it was best that I move onto other things, while staying available for support questions. On the way to the airport, I spoke with both our team opportunities. Following those conversations, I was very pumped about both projects and confident about pending offers. You can imagine my disappointment when my flight was delayed for 5 hours.

After a fun weekend with Abbie, Jack and friends, I woke up Monday morning without a job and it felt great. However, things changed quickly. Monday morning many opportunities landed in my inbox: a 3-day gig this week (helping write open-source training), a 1-week gig in December (evaluating how well Tapestry 5, Wicket and Struts 2 integrate with Dojo/Comet for a client in Europe), a 1-week training gig in Europe next year and a 3-month gig for the whole team. I accepted all these opportunities and am very happy I'll get to work with Jimbo, Country and Scotty again next year. The 3-month gig should be a lot of fun. We're helping build a SOFEA-based architecture that leverages appropriate client technologies (to be determined) to build a kick-ass web application. I look forward to talking about the technologies we use and things we learn along the way.

Costa Rica, courtesy of Rob Misek So the good news is I've entered The Golden Period. The Golden Period is when you don't have a job, but you do have a start date. Unemployment is absolutely blissful during this time. The Golden Period exists a couple times for me over the next 6 weeks.

I'll be traveling to Costa Rica tomorrow for a best friend's wedding. I'm leaving both my laptop and my iPhone at home. Next week, I'll be loving life with my parents in Costa Rica and Panama. The following week, I'll be working on AppFuse all week and hope to make great progress on developing 2.1. Then I have the 1-week Web Framework Analysis gig, followed by 2 weeks of vacation in Oregon. My Golden Period begins this afternoon (for 3 weeks) and happens again over Christmas (for 2 weeks).

Yeah, life is good. Damn good. :-D

Posted in Java at Nov 26 2008, 03:19:18 PM MST 12 Comments

Colorado Software Summit 2008 Wrapup

Snowman in Keystone Last week, I attended the Colorado Software Summit in Keystone and had a great time. Not only was the weather beautiful and the food delicious, the sessions I attended were awesome. If you ever get a chance to go to this conference, I highly recommend it. It's like being on vacation and learning with a bunch of old friends.

Yan Pujante also attended this conference and documents his experience, photography and presentations in Colorado Software Summit 2008.

Below is a list of my entries for all the sessions I attended.

For next year, I think the conference should shorten its sessions (from 90 to 60 minutes), invite more speakers and cut the price in half (to $999 per person). How do you think the Software Summit could be improved?

Posted in Java at Oct 28 2008, 11:03:23 PM MDT 2 Comments

Building Rich Applications with Appcelerator

This afternoon, I delivered my Building Rich Applications with Appcelerator talk for the 3rd time at Colorado Software Summit. When I first proposed this topic, I hadn't used Appcelerator and saw this as a good opportunity to learn more about it. I'm glad I did.

IMO, Appcelerator is a lot like Dojo in how it parses pages and turns HTML with special attributes into JavaScript widgets. I can't help but think a pre-compilation step would be nice to speed things up. I like Appcelerator's extensive Widget Library, and I especially like that they re-use many widgets rather than re-creating their own. Finally, I really dig the "SOA in a browser" approach where everything is a message and you can easily publish and subscribe to events - on the client and server. Below is my presentation, please let me know if you have any questions.

Posted in Java at Oct 22 2008, 04:18:42 PM MDT 9 Comments

Happy Birthday Jack!

Jack's birthday was last Thursday (August 28th) and only now am I getting a chance to wish him a Happy Birthday on this blog. I told you it was a busy week last week. ;-)

Happy Birthday Jack!

On his birthday, I picked him up from Kindergarten at 11 and let him run the show for the day. Needless to say, we had a good time.

Jack on his 4th Birthday At the Zoo

4 and still loves trains Mmmmm... Ice Cream

On Saturday, we had a party to celebrate at my house. It was a great time with many old friends and lots of crazy kids.

Sophie and Jack - both 4 Jack's Birthday Cake

Ready for the Piñata Candy!

I woke up to quite the disaster area the next day. I was also quite impressed when Abbie showed up with her ears pierced.

A Disaster Area Abbie's New Earrings

The rest of the weekend I spent quite a bit of time enjoying A Taste of Colorado. When work began on Tuesday, the week intensified as I was the "Release Owner" for LinkedIn this week. We made a number of backend changes to reduce statefulness and improve performance. I'm proud to say it was one of the smoothest releases I've been a part of, mostly because of the high quality people involved.

As far as my schedule for the rest of the year, it seems like I'm going to be busier than ever. I have to complete my presentations for CSS this week. In two weeks, I'm speaking at the Colorado Springs Open Source User Group Meetup. The following week I'm heading to Munich for Oktoberfest. If I live through that, I'll be implementing Memcached, speaking at CSS, hunting with my Dad, celebrating Abbie's birthday, traveling to Costa Rica/Panama and keynoting the JavaEdge Conference in Israel. If you happen to be in Colorado Springs, Munich, Mountain View, Keystone, Montana, Costa Rica, Panama or Israel in the next few months, maybe we can enjoy a beer together. Cheers!

Posted in General at Sep 05 2008, 06:37:33 PM MDT 2 Comments

Presenting Web Frameworks of the Future Tomorrow in Denver

Tomorrow (Thursday) night, I'll be doing an encore presentation of my Web Frameworks of the Future at DeRailed. If you're in Denver and would like to hear me ramble while drinking a beer, join us at Forestroom 5 at 6:30.

After the last few days, I'm happy to report I should be in good enough condition to pull this off. If you're curious to learn more about my experience at OSCON and this presentation, please see my writeup on the LinkedIn Blog.

Posted in Open Source at Jul 30 2008, 09:56:17 PM MDT 2 Comments

My OSCON Aftermath

Last week, I had a great time at OSCON '08. However, I've been paying the toll ever since. For the 5 days prior to OSCON, I stayed up late working on my presentation. I was furiously trying to develop an application with Rails, Grails, Flex and GWT. In the ~30 hours I spent developing the application (Rich Resume), I was able to finish the Rails and Grails pieces, but didn't get much farther than "Hello World" with Flex and GWT.

Even though I had my kids the weekend before OSCON, I still managed to get 4 hours of sleep each night. The next couple nights were no better. On the day of my presentation, I started to feel sick. Luckily, it didn't affect my talk and it never really hit me until the next day. On Thursday, I woke up with swollen tonsils and the feeling of an oncoming cold. I attended the conference on Thursday and went to bed early to get lots of rest.

On Friday, things weren't improving, but they weren't getting any worse either. My family and I attended the Oregon Brewers Festival and had a great time. Yes, I actually survived taking my kids to a Beer Fest for several hours. That evening, we stayed the night at the Kennedy School and thoroughly enjoyed ourselves. Again, I went to bed early as the kids and I had a 7:30 AM flight the next morning.

On Saturday, I started to lose my voice and my cold was still bearing down on me like an avalanche. I drove up to Vail for a friend's wedding on Saturday night. Of course, I stayed up too late and drank too much, but I did have a heckuva a good time. ;-)

When I woke up Sunday, I was in bad shape. The hangover wasn't bad, it was the body aches (from the cold) and the fact that my right eye was draining and it hurt to open it. A friend had to drive me home because I couldn't put my contacts in. I went to bed when I got home (around 5) and didn't wake up until noon the next day (Monday). I called in sick yesterday and went to the ER in the afternoon (I couldn't find a doctor who'd have me). The doctor in the ER said it was Pink Eye and gave me some drops to make it better. I came home, took a nap and crashed for the night a couple hours later.

I called in sick again today. I woke up around 9 this morning, took a nap 10 minutes later and finally woke up around 1:30 this afternoon feeling halfway decent. The body aches aren't nearly as bad as they were and my eye is no longer draining.

The worst part of this whole thing is I lost my glasses a couple months ago so I've been living w/o good vision for 3 days. I can read things 12 inches from me, but watching TV doesn't work too well. Since I can't wear my contacts for 7 days, I hopped on my bike and rode to the nearest LensCrafters to get a new pair of glasses. Those are scheduled to be done in the next 5 minutes (I'm typing this at the Apple Store in Cherry Creek Mall) and I'll finally be able to see again.

Lessons Learned: Sleep is important, get lots of it. Don't get Pink Eye and a cold at the same time. If you wear contacts, make sure you have a backup pair of glasses for when you get Pink Eye.

Posted in General at Jul 29 2008, 06:08:58 PM MDT 5 Comments

OSCON 2008 Wrapup

This week, I attended OSCON 2008 in Portland, Oregon. I talked to someone who thought the conference had a very small Java presence. I noticed this too, but that's how it's always been. Interestingly enough, they also thought it had a small Ruby showing. I guess Perl, Python and PHP will always dominate OSCON. Of course, there's nothing wrong with that. I've always admired OSCON for the diversity of developers and languages.

Below is a list of my entries for all the sessions I attended.

If you attended OSCON, did you enjoy the show? What was your favorite session? I'd love to hear other's impressions of the conference and how it could be improved.

Posted in Open Source at Jul 25 2008, 10:05:08 AM MDT Add a Comment

[OSCON 2008] Web Frameworks of the Future: Flex, GWT, Grails and Rails

Below is the presentation I'm delivering at OSCON today. Unfortunately, I had to remove slides on GWT and Flex to fit w/in the 45 minute time limit. I hope to expand this presentation in the future, as well as continue to develop the side project I'm working on using these technologies.

Posted in Open Source at Jul 23 2008, 04:25:23 PM MDT 19 Comments

GWT and REST

I've posted two message to the GWT Google Group in the last couple of days. However, new member messages are moderated and neither has shown up yet. I'm reposting my questions here in hopes of getting some answers.

Is there a way to easily use a REST backend with GWT? I tried GWT-REST. It works, but it seems to be centered towards Rails (I'm using Grails) and it suffers from the SOP issue.

JSONRequest looks promising for cross-domain support, but I can't get it to work either. The provided examples work, but not my simple hello world that returns:

{"response":"Hello World!"}

Also, the example implementation only has GET support, not PUT, DELETE or POST. I can post my REST backend on the public internet if anyone is interested in seeing the issues I'm having.

Thanks in advance for any advice.

Posted in Java at Jul 21 2008, 10:31:58 AM MDT 14 Comments

LinkedIn has the Biggest Rails app in the World

From the LinkedIn Engineering Blog:

LinkedIn loves Rails Bumper Sticker started as a small experiment in August, 2007. Facebook had released their development platform while we were hard at work on our own. We were curious to experiment and discover some of the characteristics of an application platform built on a social network and to see what, if any, learning we could apply to our own efforts. After noticing that professional and business-related applications weren't flourishing in the Facebook ecosystem, a few of our Product folks put their heads together while out for a run; one engineer, one week, and a few Joyent accelerators later, Bumper Sticker was born.

We'd be lying if we said that anyone was prepared for the kind of success Bumper Sticker has had since then - though we should have expected it, given the excellent Product team here at LinkedIn. Here's a quick snapshot of Bumper Sticker statistics at this moment: Read More »

The "biggest Rails app in the world" claim comes from this video.

In addition to having a kick-ass RoR team at LinkedIn, we also do a lot with Java and love our Macs. Why wouldn't you want to work here?

If you find a gig you like, or simply have mad programming skills, contact me and I'll see if I can hook you up. And yes, we are hiring at LinkedIn Denver.

Posted in Java at Jun 24 2008, 01:25:16 PM MDT 5 Comments