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.

Java is more complicated than .NET ... unless you use AppFuse

From Java to .NET, Back To Java Again, My Little Impression of The Two:

Having said all these, integration of various java projects together really do take a lot of Java people's time, it's no joke, but it's not desperate. For example, the open source project "AppFuse" does a fantastic job integrating various frameworks for us, I strongly encourage everyone to give it a shot and see how much time it saves you.

So which platform do I like? My impression is Java offers a lot flexibility and choices, but at the same time introduced the "Paradox of Choices", having so many things and integrate them together is no easy task, it simply overwhelm the human brains. .NET on the other hand is in a controlled environment, less choices, but easy to develop.

In other words: Java development is way more complicated than .NET ... unless you use AppFuse. ;-)

Posted in Java at Feb 20 2007, 09:25:15 PM MST 5 Comments
Comments:

Hey Matt, Thanks for the linkie, if i knew you would've clip me, I shoud've done some spell checks. :) Anyway, thanks for the great work you did. I was going to start from scatch using Eclipse, Mave 2 and manually integrate spring/hibernate myself, but then I just went with Appfuse (a bit reclutant at first, but gladed I did it), god knows how many hours you saved me. Btw, I just posted my blog yestoday, how did you found me? I'm just curious..

Posted by Liming on February 22, 2007 at 12:51 AM MST #

I have done Java development for about 8 years, including several Struts projects, two small JSF projects, and one AppFuse project (JSF, Oracle XE). I've done C# 2005 and ASP.NET 2.0 development for about 2 years and found it to be much more productive than Java. .NET 2.0 has a flat easy learning curve and is sufficiently powerful. Java on the other hand has been in turmoil because of the diverse choice. I cringe at the multiple options available, even from SUN. It's a "paradox of choices" indeed.

To do my AppFuse project I had to go through the single biggest and most painful learning curve to date. It was partly because I made the wrong choices. JSF & AppFuse 1.x did not mix well - mixing JSTL and JSF notations in one file is simply not a good idea. Deviating from the norm and using Oracle as the back end also caused some major headaches. After I successfully finished the project, I took the stylesheets and screen layouts and redid the project in .NET 2.0 in about 75% the time, with no pain. I admit I didn't have the same 3 layers of unit testing in place, nor some of the admin features so this comparison is not completely fair. However, the user functionality was the same. I'm not bashing AppFuse, but I would recommend that people do not deviate from the most popular configurations and not choose JSF or Oracle. It seems that when you remove the choice, your chances of success with AppFuse improves!

The diversity has hurt Java. If only SUN could settle on a persistence API 3 years earlier, or a WEB framework, or even an IDE! How's a programmer to know if they are supposed to pick NetBeans or Sun Studio Creator? (Or Eclipse, or IntelliJ, etc)

I think the "beauty" of Visual Studio 2005 is that it delivers the "all-in-one" solution. I was able to buy one book to learn about everything from presentation components to persistence and I didn't have to spend time evaluating Mavin vs. pure Ant, etc. I think some of the similar solutions, for example JDeveloper, may create similarly productive work environments because they also package everything together - removing the "paradox of choice".

I'm not a purist or religious advocate for either technology. I just want to use the tool that makes me the most productive (so I can burn less fossil fuels to get my job done!)

More ranting is here.

Anyway, I just wanted to share my experience.

Posted by Hans Loedolff on February 22, 2007 at 10:12 AM MST #

Don't agree with the last comment :) I've never used Visual Studio 2005 myself but I saw a demo yesterday and did not like it. Mainly because it had nothing that I hadn't seen before. Compared to IntelliJ, well, what can I say? The speaker was using the re-sharper plugin... and said that he couldn't live without it.

Personally, I don't like environments that "pack everything together". I think it's just bloat ware, but that's my personal opinion. But as always, I think it's good that they exist so you can make a choice. JDeveloper could be the best choice for example to rapidly prototype a UI.

Speaking of choices, I think that's precisely the strength on the Java Platform. Agreed, you have to do extensive research at times in order to find the right combination of approaches (read frameworks) but so what? There's no combination of tools/frameworks/platforms that can make you productive in all possible scenarios. So, you always have to prepared to make that choice.

Posted by Manuel Palacio on February 23, 2007 at 08:09 AM MST #

so with AppFuse you can have the simplicity of .NET and the wealth of choices of Java, looks like a tagline, isn't it? ;)

Posted by magomarcelo on February 26, 2007 at 07:02 PM MST #

I haven't done any .Net apps, but JDeveloper does indeed present a fairly encompassing set of productiivity options. Most people dismiss it out of hand because it's an Oracle product. Sad really.

However, I find that IDEs which can do a lot (via Wizards, auto-generated code etc) are often abused by inexperienced developers. So there is also the paradox of ease of development vs. ease of maintainability.

Like someone once said: the best tool for the job is your brain.

Posted by rmch on August 26, 2007 at 12:13 PM MDT #

Post a Comment:
  • HTML Syntax: Allowed