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

You can also try this same search on Google.

Technical Confidence vs. Fitness Confidence

It figures, just as I'm about to do a major push to get some writing done on Spring Live, I wake up with a cold. It was bound to happen since Abbie and Julie are already in the midst of it. For some reason, I thought I could avoid it.

Three years ago, as I was entering into independent consulting, I could've avoided it. Back then, I was in shape and riding my bike all the time. When I first started as an independent, I had no time to exercise, but I was in such good shape that it took me well over a month to start gaining any weight. That summer was awful - I had no time to exercise and the commute was around an hour. But the pay was awesome and the technology was even cooler. It was summer 2001 and because of my new contract, I was learning all about JUnit, Ant, TDD and Struts.

Reflecting back on that summer, and the past couple of years, I seem to go through various levels of "confidence." There are two extremes for me, and I tend to reside in one or the other. The first is "technical confidence" and the second is "fitness confidence." When I'm coding like a madman, learning new stuff, and deploying release - I'm very technically confident. I don't feel like I need to learn anything new. I feel like I'm on the right track, and I'm generally pretty happy. This is, until I leave the computer. When I start interacting with my family and friends, I start to realize how out of shape I am. In order to get things done, I tend to give up exercising. Part of it is because its easy to give up, and sometimes I just feel guilty leaving Julie to run off and exercise - especially when she's pregnant with a sick kid in her arms.

In order for me to get in shape, it takes quite a bit. In the past when I've been in shape, I usually ride my bike 6 days a week. This is a time consuming effort, averaging about 2 hours per day. However, after I've done this for about a month, my "fitness confidence" starts to rise and I really enjoy being outside or working out. The downside is that when I find time to sit down at the computer, I see a flurry of e-mail and blogs about cool new technologies. My technical confidence plummets.

It's weird. I wish I could find a balance. I wish I had more drive to improve my fitness confidence right now. Unfortunately, many deadlines are looming and I need to sit here in front of the computer to get them done. I definitely need to turn this around. Health is one of the most important things in the world, and I'm so out of shape its pathetic.

Posted in General at Jun 01 2004, 03:01:08 PM MDT 8 Comments

The Last Day

Today is my last day at my current client. It's been a great experience and the last couple of weeks have been particularly enjoyable. We demoed the app I've been building (a Job Posting/Resume Builder) this week and everyone loved it. It's now ready to go into production, so hopefully the "new guy" won't have to do much work. It's unfortunate that it couldn't go into production sooner - but they want to deploy on WebSphere instead of Tomcat, so they'll have to figure that out first.

I was originally scheduled to dive head-first into open source at EJB Solutions next week, but managed to wiggle my way into a week off. I was already planning on taking the 2nd week of June off to work on Spring Live - and now I get 2 weeks! I'm pumped to have two weeks off - too bad I have work to do. Oh well, I expect to work crazy hours and burn the midnight oil a lot. That way, I can spend the days playing with Abbie and giving Julie some much needed rest.

The best part? On Thursday, I'm flying out to San Diego to pick up my new VW Bus. My dad is going to meet me there and we'll be embarking on Raible Road Trip #8 to drive it back to Denver. This weekend I'm going to stock a toolbox to deal with any breakdowns along the way. It should be a good time - I love road trips. So if you don't hear much from me for the next couple of weeks, I'm probably writing or enjoying beers on the patio. ;-)

Mmmm, beeerrrr - have a good holiday weekend y'all!

Posted in General at May 28 2004, 01:18:46 PM MDT 7 Comments

[NFJS Denver] Racing Sheep, AppFuse and Spring

Today, I forgot my laptop at home and therefore didn't get a chance to do any real-time blogging. It was quite nice in fact. I realized I forgot everything about halfway into my drive (30 minutes) and decided it wasn't worth turning around. Therefore, it was a day for just sitting back and soaking it all in.

This was quite a conference. Never have I seen so many great minds and influential Java Gurus in one place. The speakers were awesome, and to make things even better - I got to meet and shake hands with most of them. Who says the community in Java sucks? I'll tell you what - the Java community in Colorado is rockin'! The online community in Java might be a little terse - but the face-to-face community is a different story.

Ugh - I just had one of those "write a huge long paragraph and then lose everything" moments. Who was at fault: a combination of IE and Roller. I accidently hit the back button and Roller kicked me back to the login page. When I clicked the forward button - Roller/IE didn't return me to my post -> hence I lost everything. Sometimes I hate webapps. Time to finish the rest of this post in an HTML Editor where I can hit Ctrl+S all the time.

The first session I attended this morning was Dave Thomas's Herding Racehorses and Racing Sheep. Thanks to Carl Fyffe for recommending it. The first part of it was about how developers have different levels of expertise and how they learn. Novices are productive and learn well if they have a specific set of instructions. This is in contrast to Experts - who are more efficient if they're given freedom and lack of rules. Most folks in the room considered themselves Experts. Dave estimated the room's average was 4.5. From there, we proceeded to talk about the fact that most developers think they're smarter than they really are. Lastly, Dave touched on Personal Knowledge Investment and how we all need to take time to invest in our own knowledge. It's your #1 defense against offshoring. You know its working if you still have a job at the end of the year. You know it's really working if you're doing what you want to be doing, programming in your preferred platform. This talked rocked and I highly recommend it.

After that I attended Rick Hightower's TDD for the Web Tier. It was a good talk and I learned about jWebUnit. This tool is similar to HttpUnit, but it simplifies the API. It has the same functionality as Canoo's WebTest - allowing to easily test interactions on a web page. It looks like a great way to test your view layer, though I prefer Canoo. The main reason is because Canoo Tests are a bit simpler to write - especially if your QA folks are writing them. I had some success with this at Comcast - where our QA guy actually wrote quite a bit of XML to test our webapp. Rick also covered Cactus fairly extensively (with examples) and a I learned some things about Cactus I didn't know. Cactus's beginXXX is for setting up client parameters, testXXX is for executing and testing server-side code and endXXX is for testing the client side response (i.e. an HTML page). Rick definitely has a lot of experience with test-driven development and has motivated me to learn to use my IDE more for testing. It's simply faster and therefore will make me a more efficient developer. Rick was saying that he uses AppFuse with MyEclipse all the time. He says he hardly ever has to restart Tomcat and he can easily run XDoclet on a single file. The update for Eclipse 3.0 M9 is due out in a week - I might have to make an effort to get AppFuse to be MyEclipse-friendly then.

Julie and Abbie showed up for lunch and Abbie got to run around and wink at all the boys. It was cool being able to introduce them to all my "Java buddies."

After lunch, there was an Expert Panel Discussion where we talked about all kinds of topics: Hibernate, Personal Knowledge Investment, Tools/IDEs and of course, .NET. From there, I attended Rick's talk on AppFuse. It was great to hear Rick's perspective of AppFuse. When I talk about AppFuse, I tend to talk a lot about the reasons I created it and how it came to be. Then I talk about the technologies it uses. Rick talks more about his experience with it and how you develop applications with it. He had a lot of code to show and the talk went really well. Then again, I'm biased. I've never heard Rick speak before this weekend, and I have to say - he's a lot better than I expected. He has a lot of humor and experience in his talks and was quite enjoyable to listen to. I hope to work with him someday, that'd be a good time. If anyone is learning more about AppFuse, and you're local - I'll be talking about it at the Denver JUG and Boulder JUG next month. I also plan on releasing AppFuse 1.5 and AppFuse Light this week.

For the last session of the day, I attended Rod Cope's Easy Enterprise Applications with JBoss, Hibernate, AspectJ, and XDoclet. Rod is going to be my new boss in a week, so it was definitely cool to hang out with him this weekend. Rod is a good speaker, but his presentation wasn't teaching me much, so I left. He was talking about how extracting 75 lines of Hibernate code (many try/catches, lots of transaction/rollback code) into aspects can save you a lot of time. I don't use aspects, I use Spring - and my Hibernate methods are typically 1-3 lines of code. I'm sure if I'd stayed, I could've learned more about AspectJ - but frankly, it doesn't interest me that much.

I snuck out of the room and went to the 2nd half of Spring in Action by Craig Walls. I met Craig for the first time at this conference and I thoroughly enjoyed talking with him. He seems to be a very easy going guy and he definitely knows a lot about Spring. I learned some different ways of writing controllers - extending the Abstract Controllers, rather than using the Controller interface and SimpleFormController. It was interesting to see how flexible Spring is and how his way takes about the same amount of code as the way I'm doing it. It was a good talk and I look forward to downloading his sample app. Hopefully he'll post a link soon on his blog. I'd be happy to host a demo.

What a great conference. I left with a headache today because my brain was so full.

Posted in Java at May 23 2004, 08:59:31 PM MDT Add a Comment

Recovering

Yesterday I got inspired to get myself out of this funk and go to a local VW Show with the fam. I woke up, took a shower and almost passed out. Probably from standing up more than I'm used to - or the dizziness that constantly surrounds me. After resting awhile and popping a pain killer, we jumped in the car and headed out to Golden. The show was awesome and I saw lots of nice buses and bugs - and even joined the Colorado VW Bus Club. I felt dizzy most of the time, still no appetite - but nevertheless - I was active. It felt great. I spent the rest of the day on the couch with passing fevers.

This morning I woke up determined to go to work. After waking up, I headed into the living room with breakfast. Julie took my temperature and said it was around 101. So I popped some Tylenol and decided to rest for an hour before heading into the office. After resting and taking a cold shower - I got dressed and headed into the office (40 minutes North). I was sweating so bad - I guess from the fever breaking - that I had to take a towel with me for the trip. Anyway, to make a long story longer - I made it to the office and worked most of the day w/o any issues. I also managed to submit my two weeks notice to my current client. He wasn't surprised and said he'd been expecting it sooner or later.

So where am I off to? EJB Solutions - the inventors of Out-of-the-Box - for a 3-month contract. I grew to love Out-of-the-Box after my last Linux install and I'm very excited about working on a product I love. Here's the best part. I asked them what I might be working on for the first month. Here is their response:

...updating sample applications, especially those using Hibernate, XDoclet, and Struts to bring them up to date with the latest versions, recommended idioms, beef them up, etc.

Sounds like fun, eh? I'm pumped and can't wait to start in two weeks! Another intriguing factor for me was I can ride my bike into the office (when I do go in) and it's shorts and t-shirts all summer. Denver summers + riding bike to work + shorts and t-shirts allowed at work = a very happy Java Developer. The contract is scheduled to end when Raible #2 is born (Labor Day Weekend - September 3rd). After that, I'm taking a month off to be a good Dad and hopefully I'll be able to find another contract starting in October.

As far as my illness and contributing to open source, I've come to realize that my body is capable of amazing feats. Sleeping 2-3 hours a night, coding 20-some hours per day. But it's no life for me. However, it was a life I was planning on living all the way until Spring Live is finished in late June (right before JavaOne). I'd still like to finish the book by then, but it's going to take a serious shift in priorities. Which basically means, drop everything and work on the book.

I'll probably still try to get AppFuse 1.5 documented and released by the end of the month - but then I really need to virtually abandon all my open source contributions. It's just the only way I can see to pump out 150 pages of Spring stuff in 1 week off + a bunch of late nights. I still plan on blogging a lot b/c when I'm busy I tend to blog more. I think AppFuse could use the lack-of-development for awhile - it wouldn't hurt to stabilize the code-base over the summer.

Posted in General at May 17 2004, 08:56:54 PM MDT 6 Comments

Bleeehhhh

It's been a week and a half now since I started feeling sick. Don't worry, I'm not dead. We used to live out by the intersection where the accident happened and one of our old neighbors drove a blue Dodge Durango. Hopefully they're OK. Regardless, this is a tragedy that my words surely cannot help.

We did make a trip to the Emergency Room on Thursday night (which also happened to be Julie's birthday). We decided to go to the ER because my fever hit 105 and we figured the ER could tell us something about my affliction. After CAT Scans and a spinal tap (among other things), they came to the same conclusion as my doctor on Monday - "some kind of virus, hopefully you'll get better in a week or two." The good news is it's not Menengitis, Mono or West Nile. Wednesday and Thursday of last week were the worst - where I spent pretty much all day in bed. If I was awake, I had a dull-throbbing headache and a fever.

The pain isn't too bad, but the body aches and brain-cloudiness are enough to keep me from working or wanting to do anything. I'm expecting that I'll simply wake up one day and I'll just feel better. I can't wait - I'm tired of having 2-3 fevers per day. I also feel like my todo list is just getting longer with my lack of productivity. Oh well, I'm sure there are some parts of my body that are enjoying the lack of stress.

Posted in General at May 15 2004, 04:23:04 PM MDT 7 Comments

What the hell is wrong with me?

Ever since last Tuesday, I've felt like shit. My sickness has mostly been body aches and dizziness. Body aches like you get when you sleep too much. Dizziness like when you stand up too fast. It started shortly after I finished work on Tuesday and resulted in a 7:00 p.m. bedtime for me that night. The next day, I felt good enough to wake up at 4:00 a.m. and knock out a bunch of code. When I went on a bike ride on Wednesday afternoon, the dizziness started again - fading in and out every few minutes. I was still able to climb the mountain, but I was pretty damn slow. Over the next few days, the dizziness has increased from being prevalent in the evenings to disrupting my whole day.

Yesterday, for Mother's Day, we went out to a nice brunch and I downed a few Mimosas. By the time the meal was over, I was holding my stomach in pain. I cured the pain with an afternoon nap - but woke up with a fever. The fever hung around for a few hours, but eventually broke. Today was more of the same: dizziness, pain in my stomach, body pains and loss of appetite. We figured it was about time I went to a Doctor. We had suspicions - everything from an ulcer to colon cancer. Yeah, Julie kept giggling with the though of a Barium Enema for yours truly.

Unfortunately, the doctor did not have a quick and simple diagnosis of my affliction. He said that I have all the symptoms of West Nile, but it's too early and I haven't seen any mosquitos. He came to the conclusion that its some kind of virus and hopefully I'll be better in a week or so. They extracted my fluids for testing - so hopefully they'll have some more information for me tomorrow. In the meantime, I remain slightly feverish, a little dizzy and my body is engulfed in a dull pain. It's not a crippling illness, just annoying - annoying enough to keep me de-motivated for many computer-related activities. Too bad I have two clients that want releases this week, as well as AppFuse 1.5 final.

If you don't hear from me in the next few days, its likely gotten worse.

Update: The doctor called this morning (the day after the above post) and said all my fluids came back normal. Therefore, they just think it's a virus of some sort. Thanks to all who commented - I wish it was just exhaustion. Unfortunately, it seems to be much worse than that since I tend to recover from exhaustion in a couple of days. Now I'm just hoping that I'll recover before Denver's NFJS.

Posted in General at May 10 2004, 06:23:50 PM MDT 26 Comments

Being an independent sucks

Richard Monson-Haefel seems to hate being an independent consultant. Personally, I love it - but I've only been doing it for 3 years. He's been independent for 5. I hope when my 5 year anniversary rolls around - I'm not looking for a full-time gig. But you never know. One of the things that I see a lot of independent consultants doing wrong is traveling. Traveling sucks - plain and simple. Being away from your family in the name of a higher hourly rate seems stupid. Then again, I've been fortunate enough to always find work in Denver - half of it where I'm working from home. I do realize that a lot of independents don't live in a tech-rich town like Denver, but why don't you move! Actually, the only reason we're still in Denver over West Palm or San Diego is because the contracts keep flowing. If they dry up - yeah, we'll probably be moving closer to the ocean. But if we move and I'm traveling for gigs - what's the point? I guess Julie's happiness (she loves the ocean) plays a part, eh? ;-)

I traveled a lot in March and April, but I don't plan on doing too many more stints like that. I guess June-July might be a bit rough with JavaOne and OsCon, but after that - I hope to stay put. We'll see - let's hope I get lucky enough to continue finding local contracts.

Posted in General at May 06 2004, 05:39:01 PM MDT 4 Comments

Happy Anniversary Julie!

Today is Julie and I's 4-year anniversary. It's hard to believe that 4 years has gone by so fast. That's part of the reason I started this weblog - so I'd be able to document my life and know exactly what I was thinking on a certain date. Unfortunately, if I look back, I'll probably just see that (most of the time), a new Hibernate release came out. ;-)

I couldn't ask for a better wife or mother of my children. She really is the one for me and I couldn't be a luckier guy. Just for kicks, here's a picture on our wedding day. The funny thing is the picture is from exactly 4 years, 15 minutes ago. We got married at 5 p.m. EDT, and I suspect this picture was taken around 5:45. We'll be celebrating tonight with a babysitter and a nice dinner out.

Posted in General at Apr 22 2004, 03:59:19 PM MDT 2 Comments

Full Time vs. Contract

I talked with some folks yesterday about joining their company as a full-time employee. Their opportunity sounds awesome: using open source tools to develop a product. The opportunity certainly appeals to me. In a sense - I could get paid to work on AppFuse. I could get paid to do the stuff I wake up early and go to bed late for. I could spend more time with my family because I'm doing my "moonlighting" stuff during the daytime.

At least that was their sales pitch.

In reality, no company in their right mind is going to pay me to work on all the open source projects I contribute to: AppFuse, Roller, Struts Resume, Struts Menu and DisplayTag. Sure, they might allow me to work on AppFuse and Roller for a few hours a week, but I can guarantee that I'll still want to contribute to the others - and hence, continue to burn the midnight oil. I've also started to think that the main reason for doing stuff "after hours" is because I spend my evenings with Julie and Abbie - whereas I used to work in the evening.

More than anything, the opportunity really got me thinking about doing full-time work vs. contract work. I've been doing contract work for almost 3 years now - and I've only had 2 months of no work in that 3 year period. So that whole contracting is so unstable has been a myth for me. In fact, I see contracting as more stable than an employee position because I control my own destiny for the most part. NOTE: This post is likely a bit biased because my contract just got extended until the end of the year and I'm working on an AppFuse-based application. In other words, I love my job right now.

The thing I enjoy the most about contracting over full-time is freedom. I am planning to take 7 weeks off in the next few months (3 weeks for Spring Live, 4 weeks for the new baby) - and with a full-time gig, that would be impossible. I also like the ability (again, this is probably because my current client is so cool) to take a week off to attend a conference, or take a few days off to run off and do some training. The fact that I'm not tied down to one client/company is awesome. With the full-time opportunity I'm considering, I feel like I'd be marrying a woman I met just a few weeks ago. I guess most full-time gigs are like this after you've been set free with contracting.

One of the main reasons I'm considering this full-time gig is because I don't know where I want to be in 5 years. Most of my career aspirations have been met. When I started in this industry, I wanted to gain enough knowledge about what I do to speak at conferences and such. I did that last week and it was a blast - but I don't really want to do that every month - especially if I have to travel. Traveling away from my family is no fun - and happiness is more important than anything. The nice thing about the full-time gig is that its centered around a product, rather than services. Services (i.e. consulting) are great - but they're only good as long as I'm capable of working. Developing products that earn money while you're on vacation - that's the ideal situation.

The only thing I don't like about my current contract is that I'm a lone wolf. I'm the only guy developing the current app - which is great, but there's no "team spirit." My favorite job ever had awesome team spirit. This opportunity is a startup, which often leads to team spirit - but they also enticed me with ideas of working with a smart bunch of developers. If you've ever worked with smart people, you know that this is a real treat. Learning from your peers just by going into the office is quite a rush. When someone tries to find their answer on Google before asking you - it's refreshing. But is this worth giving up freedom for?

Another important consideration is compensation. Contracting tends to pay 50%-100% more than a full-time position. Of course, this full-time opportunity has options (which supposedly narrows the gap), but we all know that those rarely come to fruition. And if they do - it usually takes a couple of years. I am well aware that a cool job is waaayyy better than a good paying one, but still - getting paid well is nice.

Lastly, to throw a wrench into everything, someone sent me an e-mail last night suggesting they might (someday) be interested in paying me to do full-time AppFuse development. Heh - now that sounds like the ultimate dream job.

Posted in Java at Apr 21 2004, 04:53:32 PM MDT 18 Comments

Will men become obsolete?

Julie made a predication last night - men will become obsolete in 100 years. Women just won't need them anymore. On Google News today, I found this article: Males Not Needed; Mouse Born from Unfertilized Egg. Could she be right? If the world were full of women, and the male gender died off, I'm willing to bet the human race would perish shortly after from worrying so much. ;-)

Posted in General at Apr 21 2004, 12:43:15 PM MDT 3 Comments