Aug 30

Sick of Ant? Not ready for Maven? How about Java::Build

Builds, Java, Tech No Comments »

There is definately a group of people that are a bit sick of Ant. This is a general “I don’t want to code in XML” problem too. Some are making the leap to Maven, with all of its b# builds. Others are just going back to the basics.

Philip Crow has just added Java::Build to CPAN.

He writes:

“Java/Build version 0.01

In my shop, we grew tired of using Ant for builds. We wanted to script,
and as the O’Reilly book on the subject points out at length, Ant is not
a scripting language. We wanted variables, loops, conditionals, and
subroutines, to name a few things. Eventually we decided to move to a
Perl based build system. This is the result of that work.

Ant provides one essential feature:

It uses only one JVM

In our builds, this issue is only important for compiling. All of the
other tasks are uncommon enough that starting a new JVM for each one is
not prohibitively expensive. (It is possible to add to Java::Build::JVM to
use its JVM for additional tasks, but we haven’t needed to yet.)

By using Java::Build::JVM, you get one JVM which you can keep using
for compilation throughout your script.

Java::Build::Tasks provides some useful helper functions. None of them
are essential, but they seem to make our scripts easier to write and more
consistent. The tasks currently include: jar, signjar, read_prop_file,
update_prop_file, build_file_list, and what_needs_compiling (the later uses
time stamps to decide which class files are missing or stale).”

Aug 29

AOP Discussion: Gregor, Rickard, Bill, MarcF, Mike, and more

AOP, Tech No Comments »

AOP is getting more and more air time. There is an interesting thread that has sparked out of Bill Burkes Tech Talk on TheServerSide. Although it does tend to get a little personal (although hidden behind ;) and :)), it is good to read. I personally have bought more into the Gregor way of looking at AOP. It isn’t just interception :) I can understand Bill’s point, where he says that he starts off by talking about that with developers as they can “get it”, but they really do need to note that this is exactly what is being done.

Coming from the world of science, I totally get the idea of being told “this is the way it is”, and then a year later being told “you thought it was like that, now you can learn the way it really is”, and then the next year …

However, it has come across from some of the JBoss guys more like “no, AOP == Interception, don’t look further”. This is just wrong. People can delve into the world of AOP via JBossAOP and just use the semantics that they have available to them, that is fine. One of the things that I love about AOP is the fact that people can incrementally get into the technology.

Cameron called AOP “Already Over Promised”. This is something that the AOP guys are constantly fighting against. Gregor et al are NOT saying: “Use AOP everywhere, it is a silver bullet”. That is far from the truth. We are still learning where it makes sense to use AOP, and where it makes sense NOT to use it, and keep to OOP. AOP complements OOP, and should be used together. Where you find cross cutting concerns that you can represent cleaner in AOP, go for it. Hell, if you just want to play with it and use it in dev, but not production, knock yourself out. I would bet that in time, people will be joining the train at different stages, just like we saw with OOP.

As Ron mentioned, right now AOPs “killer app” seems to be middleware (like OOPs was UI), but as we learn and improve, we will start to see cross cutting concerns all over the business design.

Let’s keep talking about these things, and see where it goes!

Aug 27

Aslak announces new XDoclet2 info

Tech No Comments »

Aslak emailed information on XDoclet2, and at its core is Generama, a picocontainer that is the framework at the core of XDoclet2. XDoclet2 itself is just a few plugins that use Generama. XDoclet2 allows you to use wither Jelly, or Velocity as the templating languages. This should enable many more templates, as people don’t have to learn the proprietary XDoclet templating API!

[follow the link below to read Aslaks email]

Continue reading »

Aug 21

Wireless Networks in all Hiltons

Tech, Wireless No Comments »

James Duncan Davidson talks about running into a wireless network at a DoubleTree (which is a Hilton chain).

They are putting in wireless networks in every Hilton. When I talked to someone at a DoubleTree in Cambridge,MA, they told me that they hadn’t worked out the “how to charge” people yet (don’t know why it is hard…), so for now it is free!

So if you are in a Hilton (or sub-hilton chain), find the hhonors SSID :)

Aug 18

JDO 2.0 Kickoff Meeting Success

Tech No Comments »

I had the pleasure of being part of the JDO 2.0 kickoff meeting in D.C. last week. Since this meeting was a pre-JCP thing, everything that was done/said is public, and hence I could release a report on the meeting.

The report discusses the feel of the meeting, and goes into details on the technology that is going to try to get into JDO 2.0.

For example,

- JDO/R: O/R mapping standardization
- Query updates: Enhanced JDOQL, SQL support, named queries and more.
- Detach/Attach API

As the report states, I was very impressed by how the meeting went. The vendors were not acting against eachother, but rather together. Four of them got together in a sub-group to work on the O/R mapping side of things, and worked into the night on it, giving eachother a lot of insight into their own systems. I am very excited about JDO 2.0 now.

TSS Discussion of JDO 2.0: Lot’s of changes discussed at the kickoff meeting

Aug 18

Microsoft running Linux?

Tech No Comments »

It is quite interesting to checkout Netcraft from time to time. If you look to see what is running you will find this.

“The site is running Microsoft-IIS/6.0 on Linux.”

I wonder if they switched to Linux since they knew that some viruses were kicking in on Aug 16th.

I wonder how many linux machines were needed to handle the load compared to the windows boxes :)

Or course, netcraft could be faked, and they aren’t running linux at all. Naaah.

Aug 17

Back from being stuck in NYC, after JDO meeting

Personal No Comments »

I have had a very interesting week+. I have travelled a lot more than I would have liked, and had the misfortune of flying via NYC when coming home to Boston (on Thursday night) after the JDO pre-expert group meeting. I landed just after the power went out, and then went through a process od trying to find: another flight, rental car, train, car service, or horseback ride to get out. The hotels were even filled.

I spent hours at the airport, and was getting ready to sleep there for the night (not a nice thought, especially since there were cockroaches all over the floor at LaGuardia). Then my mobile started to work a couple of times, and a GREAT friend made a sacrifice. She came to get me (from a LONG way away). As soon as the bridges were opened for traffic, she came over, picked me up (along with another woman who always wanted to get to Boston) and we drove all the way back to Beantown.

It was a rough night, but I was SO happy to get home the next morning, and NOT having to sleep in the airport, or fight for flights the next morning. One of the weirdest sites was seeing the manhattan skyline, all black, silhouetted with the night sky behind. In these times you really appreciate how much you become attached to technology. It was driving me nuts that I was so out of touch from anyone/anything. Very scary. Thank god people were well, and this wasn’t another 9-11 or anything like it.

Aug 06

Book review: AspectJ in Action

AOP, Tech No Comments »

I read Ramnivas’ AspectJ in Action (Manning). I thought he did a really good job on it, so I wrote up a book review on TSS. I am hoping that there will be more and more “real world”/practical AOP books as time goes on (and people get to test it on real projects!).

Aug 05

Tangosol releases Coherence 2.2

Tech No Comments »

Tangosol have released 2.2 of their great Coherence product. We will definately be upgrading TheServerSide to use this new version. Since I live 5 mins from the Tangosol offices, I can even walk over for support. How great is that!

Some of the new features:

- Application caches can be completely configured using XML deployment descriptors, even for complex multi-tier cache infrastructures. Cache server processes are now supported out-of-the-box, allowing applications to select among in-process, out-of-process and near-cache models at deployment time.

- Applications can define custom cache-eviction policies, in addition to the built-in LRU, LFU and LLRFU (Logarithmic Least Recently/Frequently Used) algorithms. Caches can also be be configured to automatically overflow to disk, to limit memory consumption for extremely large caches and to handle unpredictably large data requirements.

- Configurable thread pools are now provided to ensure the scalable performance of Coherence-based Grid Computing Architectures, Paritioned Caches, parallel-distributed cache queries and database-backed caches.

- Cache statistics, from evictions all the way down to the clustering and network layers, have been standardized and their coverage dramatically expanded.

Read more info on TheServerSide

Go directly to Tangosol Coherence

Aug 05

Apache Geronimo: Apache Initiates open source J2EE project

EJB, Java, Open Source, Tech 1 Comment »

Apache has created Apache Geronimo (for now), a J2EE implementation that they “promise” will run the TCKs from Sun! The most interesting part of this is who they have gotten involved in the project:

(the projects in parens are projects where they commit)

* Bruce Snyder (Castor JDO)
* Dain Sundstrom (JBoss)
* David Blevins (OpenEJB)
* David Jencks (JBoss)
* Geir Magnusson Jr. (Apache)
* Greg Wilkins (JBoss/Jetty)
* James Strachan (Apache)
* Jan Bartel (JBoss/Jetty)
* Jason Dillon (JBoss)
* Jeremy Boynes (JBoss)
* Jim Jagielski (Apache)
* Jules Golsnell (JBoss/Jetty)
* Richard Monson-Haefel (OpenEJB)
* Remigio Chirino (JBoss)
* Simone Bordet (mx4j)

That is one great list, and if they work on it, it must succeed right? Even if Apache is running it? (heh just kidding!).

It will be interesting to see how they package everything together (how they will use the other Apache projects… like Tomcat, James, etc).

I wish them all well, and look forward to a good J2EE implementation some time soon!

Go to the TSS thread that has the emails that have been sent out, which explain a LOT of the thought behind this.

What do you think? Comment here and at TSS!