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.

It's a Powder Day, but there's no way to get there

It's a sad day in Denver. It's also a "locals' paradise" at the Colorado ski resorts. Most hills received around a foot of fresh powder last night, but there's no way to get there. I-70 is closed at Georgetown (which excludes Keystone, Breckenridge, Vail and Copper). Berthoud Pass (the road to Winter Park) is closed as well. Sniff. :-(

Posted in General at Feb 08 2008, 09:02:48 AM MST 3 Comments

There is no "best" web framework

From Mike Clark's blog, I learned about a number of TED Talks. As a fan of Malcom Gladwell, I was drawn to What we can learn from spaghetti sauce. In this talk, he talks about the research that Howard Moskowitz did for spaghetti sauce and how it changed the food industry forever. Here's a couple of quotes I wrote down:

"When we pursue universal principles in food, we aren't just making an error, we are actually doing ourselves a massive disservice."
...
"The difference between coffee at 60 (% satisfied) and coffee at 78 is the difference between coffee that makes you wince and coffee that makes you deliriously happy."
...
In embracing the diversity of human beings, we will find a sure way to true happiness.

Can this thinking be applied to web frameworks as well? What if it's not about choosing the best framework for your type of application? What if it's all personality related?

» Read more and comment on Javalobby.

Posted in Java at Feb 06 2008, 03:04:24 PM MST

How many years of experience do you really need?

DHH in Years of irrelevance:

Programming platform experience is like knowing your way around the kitchen. Where are the knives, what size plates do we have, and what spices are available. It's very useful for getting things done without having to search high and low for every little thing. But it's also an asset with a cut-off point of diminished returns. Once you have a reasonably good idea where things are, it's no longer the bottleneck in your culinary performance.

Like chefs, like programmers. Peopleware quotes a study that six months seemed to be the cut-off point for programmers. Once they had six months under their belt, the platform knowledge was no longer the bottleneck in their abilities.

That sounds about right to me.

I have to agree. I also think that total years of experience in the software industry plays a huge part in an engineer's knowledge.

The World is your Oyster However, that's not always true either.

I interviewed a PhD this week that had an incredible amount of experience and knowledge, but all his platform knowledge was dated.

Years of Experience in Software + up-to-date platform knowledge = the world is your oyster.

Posted in General at Feb 06 2008, 10:20:45 AM MST 2 Comments

Grails 1.0 and JRuby on Rails on WebSphere

A couple of interesting things happened today that relate to my Grails vs. Rails quest for knowledge.

The first is that Grails 1.0 was released. This was apparently a huge event as it swamped Codehaus' servers for a couple hours. This morning, it was pretty cool to shake Graeme's hand and congratulate him on the release. I also got to meet Jeff Brown for the first time. Who needs to go to a conference when you get to talk to these guys at work? ;-)

Secondly, I found an article by Ryan Shillington that shows how to deploy a Rails application to WebSphere. To me Rails + WebSphere seems like the last thing a Rails advocate would want - but who knows. In my experience, most developers that use WebSphere don't do it by choice.

For companies that have invested a lot of time and money into the JVM as a platform, it seems like Grails is the clear winner over Rails. However, the line gets blurry when you start talking about JRuby. I think JRuby will get there, but I don't believe it's there yet. If you look at the two major JRuby on Rails success stories (from Oracle and Sun), they've had to fix performance issues as part of their projects. With big companies investing in the platform, it's highly likely performance will be fixed in the near future. I believe both the Groovy and JRuby teams have said performance enhancements are their top priority for their next releases.

I think the biggest news related to performance of dynamic languages on the JVM is the new Da Vinci Machine project.

This project will prototype a number of extensions to the JVM, so that it can run non-Java languages efficiently, with a performance level comparable to that of Java itself.

Dynamic languages on the JVM seem to have a very bright future.

I got involved with Struts and Spring just before their 1.0 releases. Is it simply a coincidence that I happened to start looking into Grails right before its 1.0 release?

Posted in Java at Feb 05 2008, 11:32:12 PM MST 1 Comment

Groovy, Rails needs Components, RIA Frameworks compared and faster WebTests

Here's some interesting snippets I found while reading blogs today:

  • Stop writing plain old Java code. Groovy obsoletes plain old Java. We ought to just say "Java 7 = Groovy" and move on. -- Stuart Halloway
  • So far my experience is that I love the Ruby language and don't want to go back to doing Java except when/if I need to to pay the bills. But Rails I'm not as sold on. Mind you I'm not here to bash on Rails, there are some great things there and other people have done a fine job of praising them. But there are some things I definitely miss from Tapestry, and the most significant one is components. -- MysteryCoder
  • If you're looking for maximum control over presentation and the best possible appearance for the finished product, I would say Flex is probably the way to go. If you're a Java developer using Java on the server side, or you just can't stand the thought of having your app run in the Flash player and would prefer JavaScript, GWT is probably going to work out very well for you. Open Laszlo is going to offer a great deal of platform versatility, but at the expense of some polish and features available in the other two frameworks. - Kevin Whinnery in Three RIA Platforms Compared: Adobe Flex, Google Web Toolkit, and OpenLaszlo
  • A new experimental feature of WebTest allows to specify the number of threads that should be used for the tests what can bring enormous speed improvements without modification of the tests. -- Marc Guillemot

To summarize: use Groovy over Java, Rails needs components, Flex is the best RIA framework and WebTest keeps getting better. These aren't my words, but I don't see much fault in them either.

Posted in Java at Feb 05 2008, 12:30:34 AM MST 6 Comments

Powder Day at Steamboat

Photo of the Day @ Steamboat Today is going to be simply awesome:

Snow Report
    * Time: 02/02/08 05:00 am
    * Conditions: Powder
    * Lifts: 16/18
    * Trails: 163/163
    * 24 Hour Snow: 14"
    * 48 Hour Snow: 27"
    * Base: 78"
    * Total: 322"

I'm staying 30 minutes from Kremmling (at "The Farm"), so fresh tracks are an excellent possibility.

Posted in General at Feb 02 2008, 06:21:05 AM MST Add a Comment