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 "matt". 1,142 entries found.

You can also try this same search on Google.

Denver's No Fluff Just Stuff begins today

Denver's No Fluff Just Stuff begins at noon today. I'm pumped since I've tried to go the last two and never made it. It looks to be a very fun weekend with lots of knowledge stuffed in my brain that I'm sure to forget in a week or two.Anyone got any suggestions on sessions to attend? If prefer sessions that have interesting topics and good speakers - but I'm open to anything. I plan to go with the flow moreso than to try and learn everything I can.

Speakers I'm looking forward to: Brian Boelsterli and Rick Hightower. Brian is a mentor of mine that I first met in May 2001. We commuted together for 6 months and I learned a lot about independent consulting, fatherhood and agile development from him. Rick is also a good friend and of course I'm gonna be interested in his talk on AppFuse!

Posted in Java at May 21 2004, 05:43:22 AM MDT 5 Comments

XDoclet vs. JSR 175

Rob Kischuk has a post where he describes what a Struts Action might look like using JSR 175 annotations.

@StrutsAction(
  @ActionMappings({
    @ActionMapping(
      path="index"
      @ActionForwards({
        @ActionForward(
          name="success"
          path="index.jsp"
        )
        @ActionForward(
          name="failure"
          path="error.jsp"
        )
      })
    )
  })
)
public class IndexAction extends Action {

As I read it, I though - "holy crap is that ugly!" Isn't the XDoclet version a bit cleaner?

 * @struts.action path="index"
 * @struts.action-forward name="success" path="index.jsp"
 * @struts.action-forward name="failure" path="error.jsp"

I'll admit, I don't know much about JSR 175, except that it is designed to replace XDoclet. However, I don't believe that it will generate code like XDoclet does - but rather it will allow your Java code to describe metadata using doclet tags. So what good does that do? Does this mean all my metadata and configuration stuff is hard-coded into my source? With XDoclet, I realize that a lot of this stuff is hard-coded into my source, but at least I can change things by changing an ant property and rebuilding - or changing the generated XML files. Why is JSR 175 better than XDoclet? I guess I just don't see the beauty of it. More typing and uglier javadocs aren't that appealing to me.

Posted in Java at May 19 2004, 11:12:29 AM MDT 7 Comments

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

Weekend Releases :: XDoclet 1.2.1, Tomcat 5.0.24 and Cactus 1.6

While many folks were oohing and awwhing over how EJB 3.0 will make their worlds easier and app servers viable again - some folks continued to get things done:

BTW, thanks to all the Symposium Bloggers - with all the good reporting, I felt like I didn't miss a thing.

Posted in Java at May 10 2004, 10:45:03 AM MDT 3 Comments

You know you've made it when...

You know you've made it when you've been biled! Sweet - thanks Hani!

Matt "Proud to be an Asshat" Raible

Posted in Java at May 05 2004, 07:00:09 AM MDT 2 Comments

[ANN] AppFuse 1.5 Beta Released!

This release has lots of modifications that I've been meaning to make for quite some time. Specifically (1) removing the dependency on j2ee.jar and (2) removing Struts from the services layer. I also made improvements to Spring and its context file loading so you should be able to run unit tests from your IDE.

Other notables include full i18n support (with translations in Dutch, Brazilian and Chinese), improved setup-tomcat target (no additional JARs needed now), and an option to use Spring's MVC framework instead of Struts. If you'd like, you can read more about my conversion from Struts to Spring. Enjoy!

BTW, this upload was a little hefty for java.net at 12.5 MB - because of the iBATIS and Spring MVC option. My browsers (Mozilla and IE) kept timing out and I was getting a "Not enough space" error. To fix this, I had to increase the timeout on Mozilla. Here's the steps I went through:

  • Type "about:config" in the address bar.
  • Type "timeout" in the filter field and hit Enter.
  • Change "network.http.keep-alive.timeout" to 600 (10 minutes). The default is 300.

Posted in Java at May 04 2004, 03:57:41 PM MDT 10 Comments

Sucking off my bandwidth

While digging through my stats today, I found a site that's sucking off my bandwidth: http://laptops.inreview.com. Not only are they using one of my pictures from this post, but they're simply linking to my site - rather than copying the image locally. Those bastards! ;-)

I've sent them an e-mail, let's hope they have the courtesy to remove my image. I wonder how many other images of mine are being used on the web? I realize that if I put up an image on this site, it's likely to be copied and used on another site. I don't really care so much about that - but I would appreciate an e-mail asking permission, as well as the decency to copy the image to your local server.

Posted in The Web at May 03 2004, 03:23:32 PM MDT 50 Comments

Creating column indexes with Hibernate

One of the best ways to speed up your application's performance is to create or optimize indexes in your database. On my current project, when we created our database on the AS/400 last week, the DBA noticed that there weren't any indexed created. I expected this and said I'd do some research on creating indexes with Hibernate. Thanks to Gavin, it turns out to be quite simple. Let's say you have an XDoclet tag on a column you want to index. Currently it is:

@hibernate.property column="username" not-null="true"

If you're using Hibernate's <schemaexport> task, you can add an index on this column to your mapping file and it'll create the index when creating the database. To add an index, it's as simple as changing the above XDoclet tag to:

@hibernate.property
@hibernate.column name="username" not-null="true" index="index_name"

Now the hard part comes. Which columns should you put indexes on? From what I've heard, it's the ones that you use in where clauses of your queries. I expect one or two per table is sufficient (??). One thing I'm not sure of is: should id columns contain an index?

Posted in Java at May 03 2004, 12:06:44 PM MDT 11 Comments