Strong opinions, weakly held

Tag: Java (page 2 of 2)

Matt Raible on Java frameworks

Matt Raible takes on the argument that the age of Java Frameworks is over. One interesting aspect of the Java ecosystem is that there’s always some new thing out there that we’re supposed to be migrating to. And they’re nearly all just terrible in terms of productivity. Now apparently, we’re supposed to be looking at Java EE 6. I don’t even know what that is, but I’m sure it’s awful. In the meantime, I continue to plug along with Spring and Hibernate, using them in the simplest way I can.

Here’s a snippet from a post on migrating from Spring to Java EE:

Does it all make sense now? Do you know how to solve every problem? Probably not, but when it comes right down to it, using Java EE can be even simpler than using Spring, and take much less time. You just have to find the right guides and the right documentation (which is admittedly a severe sore-spot of Java EE; the documentation is still a work in progress, but is getting much better, save blogs like this one.) You have to turn to a vendor like JBoss, or IBM in order to get the use-case driven documentation you need, and they do have documentation, it’s just a matter of finding it.

Where do I sign up?

How Oracle is consolidating control of Java

Apache committer Jon Stevens says it’s time for the Apache Software Foundation to consider dumping its Java projects. Paul Querna says that developing open source software in Java is a trap because there will be no Java implementations other than the one offered by Oracle.

The piece of news that is triggering this reaction is that IBM has announced it is going to work with Oracle on the OpenJDK implementation and will no longer contribute to Apache Harmony, an effort to create an open source, compliant implementation of Java. In announcing that change, IBM said that they were abandoning Harmony because they believed that Oracle was never going to give them the test tools necessary to certify that Harmony was a fully compatible implementation of Java. This announcement, along with Oracle’s lawsuit against Google, makes it clear that Oracle is not going to support third party implementations of Java. They’re going to discourage them.

As a practical matter for people in the business of developing applications using Java, I don’t think this changes all that much. I use Java every day and I’ve never given any thought to Apache Harmony or the Java Community Process. If this move were to discourage open source activity on the Java platform, it will hurt developers down the road, but my guess is that nearly all open source Jave development is done using the official version of the JDK. That’s not likely to change anytime soon.

At one time, I thought a lot of Java developers would shift to Ruby on Rails. I no longer think that’s the case. We won’t see a mass migration to PHP at this point, either. I suppose we could see people moving to Scala and other languages, but they’re still niche players. So I think Java is going to continue to be what it already is. No longer the belle of the ball, but still the platform businesses use to build their Web applications.

Update: Just read Steven O’Grady’s blog post on this topic.

Miguel de Icaza on Oracle suing Google

Miguel de Icaza has a long post on Oracle’s patent lawsuit against Google that’s very much worth reading. He theorizes that the opportunity to sue Google (and potentially Android handset makers) was one of the reasons that Oracle acquired Sun in the first place. If that’s the case, I don’t see this going away without a lot of money changing hands.

It’s a Maven world

Dave Johnson on why he’s migrating his build scripts for Roller from Ant to Maven:

I was a Maven hater and resisted it for a long time but over the years Maven has gotten much better, it’s well supported in IDEs and as far as I can tell, Maven has replaced Ant as the de facto build system for Java projects. If you want new developers be able to easily build, debug and run your code via command or their favorite IDE then Maven is the way to go, and that’s especially true for open source projects like Roller.

This is my impression as well. I started to create a new, open source Java application the other day, and it occurred to me that for the build script, I should use Maven because it seems like that’s the way everybody is handling dependency management these days. Dave’s post is one more indication that I was probably right about that.

Why do Ruby developers test?

Giant Robots asks the question, Why Do Rubyists Test So Completely? It’s a good question. Developers on other platforms would benefit greatly from the culture of testing that has been established among Rubyists (and especially Rails developers). They have their own list, and I agree with all of the items on it. I have one reason that I’m surprised they didn’t list.

Rails makes it really easy to start testing. When you generate a new Rails application, it gives you a place to put your tests. When you generate controllers and models, it creates skeletal tests for them. Nobody has to sit and wonder, “What should I be testing.” The framework tells you. So the next step is just to fill in the blanks. Then when you want to run your tests, you just type “rake” in your application directory.

Java has JUnit and all of the IDEs have test runners, but beyond that, you’re on your own. What do you test? How do you organize your tests into suites? How do you run the suites? These are all questions you have to answer before you build a testing regime. Individual unit tests are easy to write, but getting it together to really make a habit of testing is a lot more work than it is with Rails.

And in the PHP world, things are even worse. I have never seen a PHP application with a robust unit test suite, although I’m sure they exist.

The Rails approach makes the biggest difference with people who aren’t already committed to unit testing. If you know the value of testing, you’ll jump through the hoops to set up tests, even if it’s a pain. If you’re not yet convinced, then the extra work required to set up unit testing with other platforms prevents people from getting started. It’s very much the deliberate choices the creators of Rails made to encourage and facilitate testing that explain in large part why testing is such a part of the culture.

Links from March 23rd

There are a whole ton of links in the backlog today.

Links from January 23rd

I’m going back to packaging up my del.icio.us bookmarks daily and posting them here.

  • The Black Triangle is an article from 2004 about game development found by Jason Kottke. It describes the disconnect between programmers and users, where users are unimpressed by seeing something relatively simple on the screen, and developers are thrilled at the huge amount of work that into getting that simple thing onto the screen. I’ve found it’s never a good idea to show customers the Black Triangle. It always comes later in the process than they’d think and often freaks them out.
  • waferbaby: The Setup. Interviews with people about their computer setups. I can never read enough of these.
  • New York Times: Gazan Doctor and Peace Advocate Loses 3 Daughters to Israeli Fire and Asks Why. The horrific cost of war.
  • Dr. Saturday: Australian Rules’ blood’s worth bottling. A proposed playoff structure for college football. A more interesting approach
  • Going.com: Newspapers Covering Obama’s Inauguration. A huge collection of newspaper front pages from President Obama’s inauguration. And yes, it still feels weird to type “President Obama.”
  • CSS Newbie: The EqualHeights jQuery Plugin. I’m always looking for better ways to set columns to equal heights on a Web page.
  • Glenn Greenwald: Mohammed Jawad and Obama’s efforts to suspend military commissions. When anyone questions whether the United States tortures people or tortures the wrong people, you can forward them the story of Mohammed Jawad, a teenager captured in Afghanistan who was coerced to confess to killing US soldiers with a grenade. The military prosecutor in his case petitioned that he should be released and ultimately resigned rather than prosecute him.

Links from March 16th and 17th

Spring is a more desirable skill than EJB

The Spring Team blog announces that the Spring framework is now a more commonly requested skill for developers than EJB. About four years ago, I started building applications using Spring and Hibernate, even though much of the industry focus was still on EJB. I thought that the approach that I and a number of other people had started taking was correct, I was a little bit scared about neglecting a skill that so many employers were seeking.

So I went out and bought the book Mastering EJB and read it cover to cover, just to make sure I wasn’t missing something. After reading it, I realized that while I could see that some projects would require EJB, they would not have made writing any application I’d ever worked on easier, nor would they have improved the functionality of any of those applications. So I promptly forgot everything I’d read and continued to use the lightweight libraries.

It’s nice to look back and find myself completely vindicated.

Newer posts

© 2023 rc3.org

Theme by Anders NorenUp ↑