Bistro!
Alexis Moussine-Pouchkine's Weblog
public enum Topic { Java, GlassFish, Tools, Sun, InFrenchInZeText, SDPY }

20040805 jeudi août 05, 2004

Subversion

subversionLately I've been helping on the translation (from English to French) of the Subversion book from O'Reilly (a new generation Version Control System). Actually, it's the Open Source project official documentation and the book is free at http://svnbook.red-bean.com/. This is an interesting concept for O'Reilly. I wonder if  the translated version will be free online as well. I think the times are tough for book editors (may blog on this sometime after also reading this).

Subversion is meant to be a successor to CVS. It's available at http://subversion.tigris.org. So far the experience has been fun because quite different from my day job but it is also hard for me to comment on the technical merits of Subversion. The main difference with CVS is that directories are first-class citizen, not just files. Most of the Subversion improvements over CVS are based on this. I haven't been thru this part in great details, but the Client/Server support requiring Apache's APR (Apache Portable Runtime) seems a little overkill to me... Although there are several Java clients (1, 2, 3, 4), I still wish Subversion was more Java-friendly (with, say better ANT integration).

Here are a few thoughts and questions I came across:

How many Content Management portals actually use a version control system under the hood (like CVS or Subversion)? On a similar note, since versioning is cheap with Subversion (no content duplication), would it make sense to use it for some sort of history of a website?

Obviously I've been wondering why it wasn't written in Java (maybe not a technical decision given the OS interaction needed by the tool isn't beyond Java's capabilities). Also, if Mono existed when Subversion developments started, would it have been used?

How many Open Source projects actually use Subversion today? At least one at Apache. I guess this book doesn't really cover OSS development best practices (how is it better than CVS for OSS?).

Have OpenOffice (for document versioning) & N1 Grid SPS (Application Provisioning, former CenterRun) considered using it?

I'm not through this book, but so far I believe not every Open Source project has such good documentation.
Also nice to see an Open Source project be well accepted in Microsoft land.

( août 05 2004, 04:05:36 PM CEST ) Permalink Comments [2]

Summer homework (NetBeans & Tiger)

NetBeans 4.0 Blogs are usually a good place for reviewing new stuff. The issue for Sun employees is that it's tough to review non-Sun products because you can be accused of biased criticism. But it's also hard to review home-grown products for the exact opposite reasons.

So I settled on things I had to do (sort of my summer homework): NetBeans 4.0 (the post-Eclipse release), Tiger (JDK 5.0) new language features, and the O'Reilly "Java 1.5 Tiger" book. So this is really meant  to be a review of this combination and this is only the first post.

I've had Tiger installed for a while but mostly played with its experimental monitoring tools (sort of the successor to
jvmstat) as well as with the new Ocean/Synth look-n-feel. After picking up the latest netBeans 4.0 Q-Build (I did try using NetBeans 3.6 and managed to do quite a bit, but 4.0 has proven to be so much better), I went on to download the book's companion source code which comes with an ANT build file to compile and build the book examples. NetBeans 4.0 smoothly created a project based on this archive and custom ANT script. The project system is now fully built on ANT which makes its targets (build, compile, clean, ...) available outside the IDE, allowing nightly builds and easier sharing with other developers.

The other good surprise was the IDE look-n-feel (tiger's new Ocean/Synth lnf certainly helps) and the window manager enhancements (some things remind me of Creator), it's really neat. See these snapshots (click to enlarge) :

nb_snapshot
nb_snapshot


Back to the project I just created. ANT being so integrated in the tool, I first had the feeling that it was the only way to go even for running a simple file, which I though was overkill. This prooved to be wrong, you can use a "Run File" or "Debug File" menu. There's also the clean notions of a platform (set of libraries) and a project properties (a compiler, an interpreter, a debugger, etc.). A platform and project settings are now first class citizens and not buried in the tool's options. For those using NetBeans today, note there's no more "mounting" to do. Those that were used to it will probably miss the feature, not everyone else ;-).

Having created this new project, I was all set and ready to develop/run/debug my Tiger examples. No extra step needed to use the appropriate compiler and options to recognize the new syntax, to provide code completion, etc. You can use NetBeans 3.6 to develop with Tiger, but this is where I found using the latest version was so helpfull.

Chapter 1 was a pretty soft introduction to Tiger new language features, I'm off the Chapter 2 (Generics!). More here as I move along.

So far so good, very good. ( août 05 2004, 10:57:01 AM CEST ) Permalink


GlassFish Podcast
Get GlassFish V3
Support GlassFish Enterprise

Today's Page Hits: 1276




bea conference glassfish groovy ips java javaee javafx javaone javazone jug mysql netbeans openesb openoffice opensource paris performance pkg podcast presentation sdpy spring sun swing techdays tips updatecenter v3 webservices
Links