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.

It's good to be home

After a week and a half on the road, it's awesome to be home. JavaOne was a great time, but pretty exhausting too - and I didn't even go to any sessions! After attending the Ajax Experience, all the JavaOne topics seemed like old news. Actually, I was motivated on Thursday, but when I tried to register using the schedule builder, all sessions were full. Hot topics of the week were GWT, Avatar in JSF and Java EE. I do hope to checkout GWT sometime, but it'll probably take me a month or two. I'm booked at clients for the next couple of weeks, and after that I'd rather just enjoy the summer than work 12-hour days. As far as AppFuse 1.9.2, that's high on my list - but it'll probably take me a couple days to complete since I'll be doing it at night.

The Tangosol/SolarMetric party didn't disappoint, and Geronimo Live was a smashing success. There's a bunch of pictures (and video) posted on the Virtuas Travels Blog.

I arrived home Friday afternoon and the fun hasn't stopped. Softball game yesterday, followed by 3 BBQs and a night of playing with the kids on a friend's swingset. Today, we went to the 12th Annual VWs on the Green show. Unfortunately, it was 90°F, so we didn't last long. I'd like to say I got some good ideas for my bus, but in reality I chased Abbie and Jack around the whole time. Below are some pictures from the show today. As for my bus, it's in the shop, but no work has begun. I need to visit them this week to get something in writing so they can start doing body work.

Giant Bug and Jack Can we run up the hill Dad?

Thing with Tracks Kids love buses

Jack is pooped Nice black and white

Nice Porsche Wheels Abbie and Jack

Posted in General at May 21 2006, 03:10:40 PM MDT 2 Comments

Wine Country

While last week's Ajax Experience was a good time, it didn't hold a candle to the fun I had this weekend. I closed down the Thirsty Bear and Kate O'Brien's Friday night with Mats, Carlos and a few others. Saturday morning, Mr. and Mrs. Crazy Bob picked me up and we headed up to Napa Valley.

hans fahden The first place we headed was Hans Fahden, which is a small winery in the northern part of Napa Valley. It was strange at first - no one was there, not even someone to serve us. Then a guy showed up, grabbed a bottle of wine and proceeded to give us a tour of the place. For the next hour, we toured his "wine cave" and beautiful gardens. Whenever our glasses were empty, he filled them up. The owner has spent the last 30 years building a spectacular garden with trees, flowers and even a couple of ponds. The gardens are so beautiful now that they've become a hotspot for weddings and have hosted over 800 since they started doing it. It was one of the most beautiful places I've ever been and we couldn't have asked for a better host.

From there, we went to another private tasting, where they kept our glasses filled until we refused. At this point, my toungue could no longer taste the wine, but my brain assured me it was good. After hitting one more winery and sweet-talking our way in (they were closing), we headed back to our hotel to meet up with Cameron and the Tangosol crew.

We had an awesome dinner with several more bottles of wine, then headed to the bars in downtown Santa Rosa. Two hours later we called it a night, much to Crazy Bob's chagrin. He's a big fan of downtown Santa Rosa. Yesterday we drove back to a beautiful day in San Fransisco. I spent most of the day working on AppFuse 1.9.2 (preview, status) and while I didn't finish, I did manage to get a good night's sleep.

This morning, I checked into The W, which is right across the street from JavaOne. The location rocks, the accommodations are swanky, and life doesn't get much better. This afternoon I have meetings with customers, followed by some AppFuse development, followed by JavaOne festivities.

As far as missing Mother's Day (yesterday) and Julie's birthday (Saturday), I'm still not in the dog house. Julie and kids have been living it up in West Palm Beach and having a great time. Today they're heading to Disney World. Sounds like they're having more fun than I am. ;-)

Posted in General at May 15 2006, 10:43:31 AM MDT Add a Comment

At the Giants Game

After Patrick's talk this morning, I attended Alex Russell's talk on Dojo in depth (download presentation, blog coverage). I didn't write up a blog post because the juice was gone on my laptop. After plugging in, I checked my e-mail to find a message from Patrick in my inbox.

Subject: At the giants game

Sucka! If you want to go, my buddy has two extra tickets just sitting here.

So now I'm at the game, using their free wifi to write this post. It's a beautiful day - warm in the sun and cool in the shade. We're in the shade, first level by first base, and I'm drinking a beer. Giants are up 9-0 over the Cubs. Life doesn't get any better than this. ;-)

Posted in General at May 11 2006, 03:01:19 PM MDT 1 Comment

Livin' it up in NYC

I'll admit, this week has been exhausting. There's nothing like doing consulting 9-6 everyday for a client - especially when you're presenting or talking 90% of the time. My final presentation I delivered to the client was 600 slides. Yikes!

Limo Even while this week was tough, I did manage to have a good time. I have a couple college buddies that live here, so they're always fun to hang out with. Wednesday night, we all met up at one guy's house for dinner and reminisced about the good ol' days. Last night, I hung out with my relatives from Beacon.

After finishing up with my client, I met my Aunt Mary in the lobby of the New Yorker Hotel. We walked outside, and when I started hailing a cab she said "What are you doing? I got a limo!" "WTF?!", I said out loud. I turned around to see Mary had brought my cousins along and they'd rented a limo for the night. Needless to say, we had a great time riding around, eating a fancy dinner and ended the night with champagne and cheesecake in Little Italy. It was truly awesome and definitely made my whole week.

Now I'm at the airport bar in Laguardia, sluggin' down a few before I head back to Denver. The next couple weeks are guaranteed to be hectic - I leave on Wednesday for the Ajax Experience, followed by JavaOne the week after. While traveling to clients isn't the most glamorous job in the world, getting paid to learn about Ajax/Java for two weeks in San Fransisco isn't a bad gig. ;-)

Posted in General at May 05 2006, 02:34:36 PM MDT 1 Comment

Gas Prices

Denver Apparently gas prices are way up. I wouldn't have known this, but the lady cutting my hair the other night mentioned it. I think I've filled up my car 5 times this year. The only thing I use it for now is Ski Trips and Airport Runs. Ahhhh, the joys of a bicycle commute and living in the center of town. Of course, on days like today (when it's starting to snow), it's nice to be able to work from home.

Posted in General at Apr 24 2006, 06:22:50 PM MDT 11 Comments

6 Years

April 22, 2000 Today is Julie and I's anniversary. It's hard to believe we got married 6 years ago. Actually, looking at Abbie and Jack, it's easy to believe it's been that long - they grow up awful quick. The fun part about this day is reflecting back on our wedding day. We got married in West Palm Beach, Florida - and had quite the turnout. It was a "destination wedding" as they call it, and we had friends and family fly in from all over the country. We made everyone fly down early (Wednesday) and had a golf tournament, went fishing on Julie's step-dad's boat, and lost money on a gambling cruise before our Saturday wedding. It was so much fun that we've been trying to think of an excuse to do it again.

Posted in General at Apr 22 2006, 03:56:21 PM MDT 7 Comments

Free Wireless along 16th Street Mall

First of all, I'm amazed that my Tips for Productivity and Happiness at Work generated so much traffic. It even ended up on digg.com for crying out loud. 800,000+ hits on Saturday alone. Yikes! yikes

While today's story won't help you get disconnected and enhance your productivity, it might enhance your happiness at work. If you work in an office like I do, where you can work pretty much anywhere, you'll be happy to know that Denver's 16th Street Mall now has free wireless. That's pretty damn cool - especially since our offices are on the mall. Hat tip to Greg, who sent me this article in an e-mail.

Update: I forgot to mention, I'm pretty damn impressed that Roller was able to handle all the traffic this weekend.

Posted in General at Apr 17 2006, 10:27:46 AM MDT Add a Comment

Tips for Productivity and Happiness at Work

Every so often, I get asked what my strategy is for "getting things done". This morning, I had a short session of mass productivity, and on my ride into work, got inspired to jot down a few tips productivity tips. Keep in mind that I grew up in the back woods of Montana with no electricity and I'm mostly Irish.

  • Write stuff down. The first and most important means to getting things done is to keep a todo list. I keep mine on Ta-da List and update it daily, if not hourly. My two most important lists are "When I have time" and "This Week". I regularly re-order "This Week" for the current day.
  • Quit reading e-mail and blogs. One of the ways I can tell I'm in uber-productive mode is my unread (or starred) mail piles up and I haven't read any blog posts (or blogged myself) in a couple days. I like GMail because I can easily star an e-mail after briefly skimming it. For some reason, flagging e-mail in Thunderbird or Mail.app doesn't work for me - I rarely go back and find those e-mails. With GMail, I'm always conscious I need to revisit starred messages.
  • Work on open source late at night, with a beer on your desk. While I do get the opportunity to work on open source at my day job, I still find that I'm most productive at night. Maybe this is because no one bugs me via e-mail or IM, or maybe it's just because the world is asleep. The strange thing is I often find myself motivated at 3 p.m. for my 11 p.m. workload. However, when I get to 11 p.m., I'm not motivated to work on anything. I've found that cracking open a beer at 11 when I start helps me focus and quit worrying about all the other computer-related tasks I need to do. Also, on beer #2 or 3, you'll start to forget what time it is and really start getting things done. NOTE: this isn't for rookies. If you're a lightweight and get hammered on two beers - just go to bed when you start coding with one eye shut. It helps to sleep in the next day after doing this. If you finish off a six-pack before going to bed, it's probably best not to check your code in - you're probably going to spend the next day fixing it anyway. Regardless, this is a great way to get started on a new feature because you're less concerned about the details and more concerned about the big picture. I've also found that "bug fixing juice" can be great for fixing bugs - it gives you a different perspective on the problem. I told you I was Irish didn't I? ;-)
  • Work disconnected. To further facilitate not checking e-mail or reading blogs, I've found that going to a coffee shop w/o connectivity is my most productive environment. They have liquid motivation in the form of coffee, and you can feed your brain with breakfast/lunch or some kind of snack. My most productive days are the ones where I show up at my local Einstein's (bagel shop) at 6 a.m., have two cups of coffee, and work with my headphones on. After the coffee and uber-productivity, I often have an awesome ride to work and barely notice the miles. NOTE: I've found that I'm more productive writing code late at night and authoring articles/books in the early morning.
  • Listen to music while you work. Some noise-cancelling headphones and your favorite music can do wonders for your productivity. Of course, earbuds work just as well - whatever makes the music sound good. Good music can really help you "get into the groove" of what you're working on, regardless of whether it's writing or coding.
  • Work long hours on Monday and Tuesday. This especially applies if you're a contractor. If you can only bill 40 hours per week, working 12-14 hours on Monday can get you an early-departure on Friday. Furthermore, by staying late early in the week, you'll get your productivity ball-rolling early. I've often heard the most productive work-day in a week is Wednesday.
  • Avoid meetings at all costs. Find a way to walk out of meetings that are unproductive, don't concern you, or spiral into two co-workers bitching at each other. While meetings in general are a waste of time, some are worse than others. Establish your policy of walking out early on and folks will respect you have stuff to do. Of course, if you aren't a noticeably productive individual, walking out of a meeting can be perceived as simply "not a team player", which isn't a good idea.
  • Sleep. While working late nights can be productive in the short term, doing it consecutively will burn you out quickly. Getting a good night's sleep can often lead to greater productivity because you're refreshed and ready to go.
  • Work on something you're passionate about. If you don't like what you're doing for a living, quit. Find a new job as soon as possible. It's not about the money, it's all about happiness. Of course, the best balance is both. It's unlikely you'll ever realize this until you have a job that sucks, but pays well.

To follow up on that last point, I think one of the most important catalysts for productivity is to be happy at your job. If you're not happy at work, it's unlikely you're going to be inspired to be a more efficient person. Furthermore, if you like what you do, it's not really "work" is it?

Here is some general advice I give to folks about jobs and careers. I realize that I'm biased here because I have a good job and I've been fairly successful in my career. However, I also grew up with virtually nothing, and learned all my computer skills on my own. Therefore, I believe that anyone can be successful (meaning: happy with that they do, and financially stable at the same time) if they put their mind to it.

  • If you're not happy at work, quit. I got into contracting early-on in my career (6 months out of college), so I got spoiled with good rates early on. It was also the late 90s, so you could easily switch jobs if you didn't like the one you were in. However, I've always had the policy that if you hate your job for more than 2 weeks, quit. It's just not worth it. Some people enjoy bitching about their jobs and complaining about their co-workers, so this doesn't apply to everyone. However, if you're truly miserable - quit. I've done this a couple times, and it's always led to better opportunities (even if I had to wait 3 months). Julie's done it once or twice and it's always worked out for the better. Once she even got a 20% raise by quitting her traveling-consultant gig with KPMG and going back to her old company, Qwest.
  • Always try to be a contractor before a full-time employee. This especially applies to younger folks who don't need the security of insurance for the family, stock plans, etc. Contractors typically make 50% more than full-time employees and tend to be excluded from company politics that might make the workplace difficult to deal with. While you won't get billable vacation time, you will get the freedom to take however much vacation you want - as long as you get your stuff done. The higher rates can generally make up for the unbillable time while on vacation. However, if you travel too much for fun (or conferences, etc.), it's likely your year-end salary will equal that of a full-time employee. If you make good money as a contractor, you'll also get the opportunity to start your own company (to save money on taxes). This can be a great learning experience. The biggest fear that folks have about "going independent" is they'll have a hard time finding their next gig. If you're productive and blog about what you're doing, this shouldn't be a problem. I haven't had an "interview" since 2002 and haven't updated my resume since then either. Networking at your local JUG and conferences is key.
  • Don't work at a company with a two-week vacation policy. I've never worked at a company with a two-week vacation policy, and I hope I never will. The two full-time gigs I've had in my career have had no vacation policy. This is usually only found in startups - but it generally amounts to "get your shit done, and you can take off all the time you want". My parents both work for the BLM (government agency) and they get 6 weeks off a year. Furthermore, they can earn "comp time" (more days off) by simply working overtime. If you have the ability to take time off whenever you want, it'll likely lead to you being more motivated to work long and hard - b/c you know when you finish that project, you're heading to Cancun for a week.
  • Don't travel if you have kids. If you're single, traveling for work is pretty cool. New places, new people to meet - and seeing the world can be very cool. If you have a spouse, it's likely your desire to travel will decrease, but it's still not that bad. If it helps your career, it's probably a good move. It also helps to save money since everything you do is generally expensible. When Julie and I first met, she traveled 100% and made $20K more per year b/c of it. When you have kids, everything changes and traveling sucks. You miss their first steps, and when they get to toddler-age, they'll want to go with you. Hearing your daughter say "Daddy, can I go with you?" can be heart wrenching when you're leaving on a Sunday afternoon to spend a week with people you've never met before.
  • Ask for more responsibility. If your job sucks, but the company is pretty cool - you may want to ask for a shift in responsibilities. I was once an HTML Developer at a .com. It sucked because we were constantly waiting on the Java Developers to fix bugs we found in their code. Finally, I got tired of waiting and asked my boss to show me how to fix the Java bugs. Granted, I wrote some pretty horrendous code at first, but my boss and co-workers helped a lot and w/in a year I was doing 80% of the Java Development.
  • Most things can be learned by reading. If you want to learn something new (for your current or next career), the best thing to do is read. The world's knowledge resides in books and you can learn a lot. Of course, the best way to retain that knowledge is by doing, but reading is a great first step.

Those are my tips, many of them off the top of my head. I may add more as time goes on - but hopefully this helps in the meantime. Please share yours if you have any.

Posted in General at Apr 14 2006, 11:24:28 AM MDT 55 Comments

First Avalanche Game

Last night, my mom and I took Abbie and Jack to their first Colorado Avalanche hockey game. Jack's a huge hockey fan - has his own stick and everything - so we figured they'd both enjoy it. We had nosebleed seats (2nd row from the top), but the kids definitely enjoyed the game. 6 goals in the first period probably didn't hurt. The only problem was they kept screaming "Go DU!" - much to the chagrin of the all-too-serious Avs fans around us. ;-)

Posted in General at Apr 12 2006, 03:37:38 PM MDT 2 Comments

Carpal Tunnel

Anatomy of the Hand Every month or so, after working a long-ass week, my left arm usually starts hurting as if I have carpal tunnel. Usually, I go get a massage and it feels better the next day, or a few days shortly after. The Massage Therapist always asks me if I've been diagnosed with carpal tunnel, to which I reply "No." They also ask me if I have tingling in my hands or forearms, and I always tell them "No, I just get a dull pain in my forearms when I work a long week." So I've never really had carpal tunnel AFAIK, just symptoms every month or so.

That all changed this week. I started noticing the dull pain in my left forearm at TSSJS, and I started noticing the tingling in my left hand yesterday. I've never had tingling before. Furthermore, last week was a pretty light typing week (but I might've played cards too much ;-)). So now I'm worried; I'll probably get a massage this week and I have a chiropractor appointment next week. The only think I can think of that might be causing the tingling is: 1) riding my bike to work, or 2) the cheap-ass crappy keyboard I have at work.

I went to the Apple Store and CompUSA to get an ergonomic keyboard tonight, but had no luck. The Apple Store only sell the standard Apple keyboard and CompUSA only sells black Microsoft keyboards. The M$ keyboard's will work, but it seems wrong to hookup a Microsoft keyboard to a MacBook Pro with a cinema display. I have a meeting in South Denver tomorrow morning, so I'm going to stop by Micro Center. Hopefully they'll have something good.

Carpal Tunnel is a scary thing as a programming professional. It's one of the few things that can put you out of commission as a programmer. It looks like I'd better start taking it seriously if I want to keep slingin' code for the next 10 years.

Related: Carpal Tunnel in May 2004.

A Week Later: I went to a repetitive motion specialist yesterday. They said that hand surgeons hate them b/c they can solve most issues. They worked my left arm and hand, and expect everything to be better with a couple more treatments. It already feels a lot better, but I'm also doing stretches every hour - which helps a lot too.

Posted in General at Mar 28 2006, 09:25:53 PM MST 40 Comments