Archives: October 2005

OnJava.com: Technologies that may challenge Java’s dominance

OnJava.com have an article by Bruce Tate looking into the future at technologies that may either replace or pave the way for upcoming new technologies that may replace the current ‘new Cobol’, which is Java.

Number one on the list and used throughout the article for examples, is, no surprise, Ruby, and the Ruby on Rails framework.

If this framework does not make it big in the next year or so then it will be interesting to look back to see what else changed as a direct result of the impact that RoR is making, because this technology is sure beginning to pick up some momentum.

(Page views: 27)

Ruby on Rails his mainstream IT news

News.com has an article about Ruby on Rails this morning, bringing RoR into the mainstream news, and possibly giving it the attention that I think it deserves in terms of simplifying web application development.

The article gives an overview of the deverloper, David Heinemeier Hansson, and a brief overview of what RoR is about. This should move RoR onto the radar of significantly more people, and may start up more interest in this relatively new framework.

(Page views: 26)

Java only uses pass by value

There is a discussion on the JavaLobby site about an article written on the javadude.com site explaining how Java only uses ‘pass by value’, and never ‘pass by reference’.

I’ve know this for a long time and blogged about it here in my Java section with what I think is a clear explanation of the sematics of pass by value verses pass by reference.

The point is, although Java has references (everthing that is not a primitive is a reference), all parameters to methods are always passed by value. There is no pass by reference in java. The confusion is in the names being used here, because references are actually passed by value.

If you don’t understand this, look at how parameters are passed by reference in C, and write some code that swaps a parameter passed for another, and how it changes the value being pointed to by the orginal parameter before it was passed to the method. You cannot do this in Java. Java only passes by value.

(Page views: 25)

Article: ‘Component Inheritance in EJB2.0′ – making excuses for the flaws in EJB2.0

This article on ‘Component Inheritance in EJB2.0′ on the java.net site attempts to give an explanation and make excuses for why the EJB2.0 spec is so fatally flawed. This is an interesting article because of the spin that the author takes – it almost sounds like he is making excuses for the flaws in the EJB2.0 spec and to justify why it is actually ok.

The author makes a statement that the reason why Entity Beans do not have inheritance is because they are misunderstood and are actually ‘componenents’ and not objects. Well a component can be different things to many people, but an Entity Bean as a component is a very fine grained component if you ask me. The author states that therefore it is ok that Entity Beans do not inheritance because a component does not represent state of an object.

This is nonsense. An EntityBean is intended to represent an Entity in a system. An Entity, as an Object, has State and Behavior. When I model my application, I identify types and subtypes and the relationships between these types and implement them as Classes. The reason why (one of the reasons why) EntityBeans are flawed is that I cannot implement EntiyBeans to represent the data model that I have jsut described – this type of data model is natural to implementing an Object Oriented system using an Object Oriented language such as Java. To have a persistence mechanism that does not support features which are core to the language I am using to implement my system is just nonsense. This is the main reason why the EntityBean part of the EJB2.x spec is flawed.

The POJO approach in Hibernate (and other ORM tools) is the correct approach in my opinion, and the reason why this approach has now been adopted for the EJB3.0 spec moving forward. Don’t make excuses for why EJB2.x is wrong; accept that it is wrong and move on – there are better solutions out there.

(Page views: 26)

Nostalgic Computing – buying an Atari 1040ST on eBay

During college in the early 90s I had an Atari ST computer. At the time PCs (286s and 386s) were pretty expensive (I only knew of a couple of other students on my BSc Computing course that had Intel based PCs).

The Atari ST was a 16bit machine, using a Motorola 68000 CPU (same as the Mac at that point in time), and came in two main flavors, the 520 had 512k RAM, and the 1040 had 1Mb RAM. Both has a 720k doublesided, double density floppy disk drive, but no harddrive. The OS (TOS) booted from ROM, and you loaded programs and games from floppies. At the same time the Amiga was the main competitor in the same range of machines, but I think the Atari was more popular in Europe, whereas I think the Amiga was more popular in the US. The ST was originally launced in 1986, so will be 20years old next year!

I couldn’t resist bidding on a 1040ST the other day when I saw a few going on eBay, and managed to win one with a color monitor for 50 bucks. Can’t wait until it arrives and to unpack it and set it up. Not sure what I’m going to use it for at this point (other than re-living some classic ST games), but I may look into getting an ethernet adaptor (some sites have a DIY convertor to add an Ethernet card) and getting it set up to browse the web and access email.

What I found interesting was that the last model in the ST line, the ST Falcon030, is pretty rare, and if you can find one still sells for hundreds of dollars. Not bad for a computing relic. The TT030 although is hard to come by. I would have bid on either of these but couldn’t find any at the time.

Something else impressive – when you start searching on Google you never know what you might find – Best Electronics based in San Jose, still sells ‘new in box’ ST computers for around 300 bucks (depending on the model – they currently have a 1040 at this price). The also have a reconditioned TT030 for $600 and a reconditioned Falcon030 for $800. Wow. Thats more than you would get for a decent spec second hand PC that is only 3 years old. Incredible.

(Page views: 45)

Release early, release often…

I mentioned a few days back a very interesting article on the OnJava.com site describing the evolution of the web, being commonly called Web 2.0. There was an amazing fact burried several pages into the article describing the fact that the Flickr website, am online photo album service which incidently is now owned by Yahoo, builds and deploys their code ‘on a good day’ every half hour.

This is an amazing fact and shows that it really can be done. It just goes to show that projects that struggle with their build and deploy processes really are making it hard for themselves with the processes they adopt, and it is possible to be able to build and deploy with an automated process on a very regular bases.

(Page views: 31)

Sony introduce LocationFree media – with PSP support

Sony released released v2.50 update for their PSP handheld gaming consoles which allows PSP to interact with Sony’s LocationFree devices

The update for the PSP allows TV and film content to be streamed and saved onto the PSP for later viewing, and also allows the PSP to remote control the LocationFree device.

I think there is a strong chance that the upcoming PS3 will also be LocationFree enabled allowing it to be a ‘super-Tivo’ like device. There has been speculation the PS3 will come in a ‘media server’ version, and since Sony already has LocationFree devices on the market, it would seem logical that this support is also built in to at least the high end version of the PS3 when it is shipped.

(Page views: 29)

How long will it be before a ‘Ruby on Rails’ type development toolset replaces Java?

The problem with relying too heavily on one development toolset is that you become complacent and ignorant of other advances in the same problem space.

It has been argued that Java is the ‘new Cobol’. Everything around you is implemented in Java, therefore why should you consider any other alternative. The trouble is that you eventually stop seeing even the drawbacks and inherant problems with the tool, and carry on regardless.

Ruby, and in particular ‘Ruby on Rails’ has been getting a lot of press recently due to its ease of development, ease of use, and quick development times. The trouble when new technologies appear is that people tend to cast them aside as ‘not mature enough for primetime’.

The thing is, the Ruby on Rails (RoR) approach solves a lot of the complexity issues that are inherrent in the J2EE type development approach. What if this approach really is superior? What if I can realy develop an application in a tenth of the time I can with J2EE? What if a RoR solution is ready for implementing enterprise solutions?

Could it be possible that RoR or a similar technology could overtake Java and leave it in the dust? I think it’s time we started paying closer attention to other innovations out there, and either learn from them, or jump on the next train, because if the hype is real then Java could already be the next Cobol, and Java developers could be looking at the next 10 years of maintaining Java legacy systems.

This article gives an overview of Bruce Tate’s new book ‘Beyond Java’, which addresses these types of issues.

(Page views: 22)

Web 2.0 – the next generation of the web page

OnJava.com have a great article about where the web and webpages as we have known them up until this point are heading and how web technologies are evolving.

Web2.0 is not any one or a collection of technology standards, but rather an evolved (and evolving) way of thinking about how the web can be used to achieve goals. The changes are subtle but noticible. In most cases Web2.0 encompases how evolving web based technologies are being used to enhance the user experience on the web, with the trend towards collaboration, sharing and community driven sites and community interaction.

For example, mid-90s personal web sites were ‘the thing’ for self-promotion and telling the world about yourself, your hobbies and your cat. Mid-90s personal websites were typically static sites. Today, ‘the thing’ for publishing personal information is the weblog, or blog as it has come to be known. Blogs are now dynamic, growing and living sites, regularly updated with new information as the author updates it. The end goal is somewhat similar, but the use of the internet and web technologies to achieve it has evolved.

This section below is taken from the article “what it Web 2.0″ on OnJava.com site:

Web 1.0  	   	Web 2.0
DoubleClick 	        --> 	Google AdSense
Ofoto 	                --> 	Flickr
Akamai 	                --> 	BitTorrent
mp3.com 	        --> 	Napster
Britannica Online 	--> 	Wikipedia
personal websites 	--> 	blogging
evite 	                --> 	upcoming.org and EVDB
domain name speculation --> 	search engine optimization
page views 	        --> 	cost per click
screen scraping         --> 	web services
publishing 	        --> 	participation
content management systems 	--> 	wikis
directories (taxonomy) 	--> 	tagging ("folksonomy")
stickiness 	        --> 	syndication

In most cases you see that the goal has remained the same, but the evolution of technology has allowed the goal to be achieved in a different way taking advantage of the new technology.

This is an excellent article and well worth a read.

(Page views: 96)