Archives: January 2006

IndicThreads: Interview with Rails creator

IndicThreads.com have an interesting interview with Ruby on Rails creator, David Heinemeier Hansson.

One of the most frequent questions regarding Rails is “is it ready/suitable for Enterprise Applications?”. Hansson replies: “we have a conscious mission to avoid things with enterprise labels. To me, enterprise is not about technology or best practices. But all about legacy, complexity, and doubtful value”. Interesting answer.

(Page views: 18)

IBM announce free version of DB2

In an attempt to attract developers to the DB2 database, IBM have announced a free version of their flagship database engine, DB2.

The free offering, ‘DB Express-c’ has the same features as the commercial version, but is limited by the hadrward it can be deployed on. The limitations are quite high though – it can only be deployed on a PC with upto a maximum of 2 processors (single or dual core), and 4GB RAM. There are no limitations on the database size.

(Page views: 23)

OnJava.com: Interview with Java Podcasters

OnJava.com have 2 interviews on their site this week with two people who regularly publish a Java/programming related podcast.

The first is with Dick Wall who co-hosts the Java Posse podcast, and the second is with Michael Levin who hosts the Swampcast.

I’ve listened to several episodes of the JavaPosse podcast asd it’s well worth a listen – they cover a wide range of Java related news stories and have people on for interviews. I haven’t heard the Swampcast yet, but will take a listen some time soon.

(Page views: 19)

History of the Hard Drive – in pictures

News.com have a neat gallery of pictures showing the evolution of the hard drive.

The gallery has pictures ranging from the first hard drive, a 24″, 50 platter monster, which had a capacity of, wait for it, … 5MB, through the first mainframe harddrive that a single human could carry (in 1982), to 1″ microdrives from Hitachi. Interestingly, the 1″ microdrive appeared in 1999 but did not find a mass market until the iPod Mini just last year.

(Page views: 26)

AJAX: another wax and polish for your browser?

Sun released Java Studio 2 yesterday, their Java IDE based on Netbeans 4.1. As well as the usual Java editors, wizards, GUI builders, they added support for building AJAX (Asynchronous Javascript and XML) type web applications.

News.com has an article today commenting on the fact that the tools vendors are currently tripping over themselves to rush out products to support AJAX web application development. IBM have a proposal for the ‘AJAX Toolkit Framework’ for Eclipse, so expect to see AJAX support in Eclipse some time soon.

The concept of AJAX is nothing new, it has just attracted a lot of attention recently as the next new thing. I’ve seen AJAX type functionality on websites for a number of years. I worked on several prototypes for functionality for a web based product in around 1999/2000 that used asynchronous messaging and data retrieval in the browser. One approach was a Java applet in the web page that used JMS to subscribe to a Topic, so that the user of the page could receive instant notifications from the application and have them appear in the page, without having to refresh the current page.

The second approach I worked on was the hidden frame type solution. The main page has some Javascript triggered on events in the page to call functions in the hidden frame. THe hidden frame can submit itself back to the server and retreive data which when loaded can then be displayed by the main page. We used this feature to implement ‘dependent dropdowns’ (where data in one dropdown is dependent on the selection in a first dropdown) on pages without having the main page submit and refresh.

The problem with all these approaches is that this type of user interaction was easy to implement with Client/Server type applications. It is easy to implement with fat-client desktop apps. The web browser is none of these things, and yet we’re bending over backwards trying to make it appear to the user as if it is a desktop client/server application. Despite all the promises and benefits of web-based applications, we’re trying to make our web apps behave as it they are not web apps. Seems kind of ironic?

I think we are close to seeing another shift in application deployment topology; I think we’re coming to the end of the web-based ‘thin’ client era. Yes, we’re currently struggling to make the ‘rich client’ approach work with the limitations of current features of the thin client (ie the browswer), but this can only go so far. I think we will start to see an increase in thick-client desktop applications again, because, and lets be honest, if the client is looking for a rich, compelling user experience, then this is a whole lot easier to implement using thick client, desktop based applications that it is with the current features available in browsers.

Yes, we know there are limitations to deploying desktop based applications (version control, distribution and installation), but this is something that can be improved. Java Web Start goes a long way to reduce these issues, and is a much underused and under appreciated technology in my opinion.

So, yes, rich client is currently the ‘big thing’ for web application development, but let me let you into a secret – we used to do that years ago with desktop/thick client type apps… and its a whole lot easier than it is in the browser.

(Page views: 26)

IE7 screenshots and code find way onto Blog site

eWeek.com reported yesterday that screenshots of IE7 have been posted on the web, and also for a limited time a download of beta code (although this was later removed).

Major changes in the browser are security enhancements and the addition of tabs for browsing multiple pages, similar to what Opera and Firefox have been providing for number of years now (I remember seeing tabbed browsing in Opera back around 2001/2002 and thought it was an awesome feature).

Seems like MS feels a need to keep up with the Joneses.

(Page views: 15)

Using Lucene to index Code

This is an interesting project if you have some spare time to play with this – Lucene is a facinating open source project from the Apache stable that builds and searches full text indexes.

OnJava.com have an article showing how you can use the Lucene engine and API to build a facility to index and search source code. It would be interesting to compare how this is similar/different from the source search facility in Eclipse, as I believe the search facilities in Eclipse are also based on Lucene.

(Page views: 20)

Intro to StAX XML API

DevX.com have an introductory article to using the StAX XML API. Whereas the DOM API loads the entire document into memory and treats it as a tree structure and SAX parses the document one-time on the fly, pushing events to document code when matching nodes are found, StAX takes a different approach, somewhere between both. StAX treats the XML as a stream, and can pull content from the stream on demand, when needed.

(Page views: 18)