Monday, June 26, 2006

Deliberately making a UI look ugly

The dancingmango has a great post on how he made the UIs in his PowerPoint presentations look like they were drawn by hand. Why would you want to do this? Often when someone not directly involved in day-to-day development of a UI application sees a great looking UI in a doc/slide/demo/etc they assume the development is almost functionally complete. Keeping it ugly is a useful tool to help manage their expectations.

One trick I used to use with Swing applications was to switch the UI skin to the ugly default "metal" look and feel for the demos done during the initial UI development stages, then switch it to the "windows" look and feel towards the end stages of the development.

I wonder if there is an ugly switch for .NET (WinForms)? Should be easy to do an ugly css (plenty of ugly wesites to get ideas from :)).

Saturday, June 24, 2006

More painful than child birth: Cancelling your AOL account

While eating breakfast this morning I heard the sad tale of this guy's attempt to cancel his AOL account. And I thought Time Warner Cable and "The Elephant Man" and the Broadway DMV had a thing or two to learn about customer service.

Wednesday, June 21, 2006

The Rise and Fall of CORBA

The Rise and Fall of CORBA is a good summary of how CORBA never gained general acceptance (Miscrosoft had competing standards, the specs and APIs were overly complex, spec discussions were bogged down in committees) and quickly died when Web Services emerged (MS championed their cause when they gave up on their own DCOM).

Finetix own Charles Alvarez co-authored the CORBA Persistence spec.

My thoughts on why CORBA died as quickly as it did:
  • To do mappings for anything but simple object structures was hard.
  • It took a very long time to standardize the basic API calls (don't get me started on BOA vs POA!) and services. In the mean time if you had used Iona's proprietary APIs then most of the time you couldn't be bothered to port your code to another vendors proprietary API (except when Iona tried to increase their license fees x10 in the early 00'!).
  • The CORBA protocol is binary. XML is at least semi-readable text, which makes it easier to debug. Of course text-based protocols are much slower, but nobody seems to have been able to agree yet on a binary version of XML for web services.
A couple of things I don't agree on the article author with:
  • Security. A number of CORBA vendors support the CSIv2 spec (part of J2EE 1.4 spec, supported by WebSphere and others since appservers use the CORBA on-the-wire protocol IIOP) or simply SSL wrappers.
  • While C# bindings were never officially specified (MS didn't support this effort) a couple of open source efforts did a good job at filling this need: IIOP.NET (which is really cool, allows you to call EJBs from .NET!) and Remoting.CORBA

Tuesday, June 20, 2006

The Java big ball of mud rolls on...

The dudes working on Mustang now tell us they have incorporated their own specially packaged version of Apache Derby into the Java 6 SDK. I don't know why Sun keep adding all sorts of junk into Java that just doesn't need to be there - the classic big ball of mud anti-pattern.

What would be more useful is to trim down the JDK/JRE to a small core package, then provide a dynamic mechanism that downloads libraries when needed. (Maven does a nice job of handling this at compile time.) At a minimum this would allow Java to compete on a more equal footing with Flash on the web tier; nobody wants to wait 30 mins to download and install Java just to see a simple animation.

Sunday, June 18, 2006

Hey dude, no Science in my Religion

Astrophysicist Stephen Hawking said that the late Pope John Paul II once told scientists they should not study the beginning of the universe because it was the work of God.

Hawking, who didn't say when the meeting was held, quoted the pope as saying, "It's OK to study the universe and where it began. But we should not enquire into the beginning itelf because that was the moment of creation and the work of God."

The scientist then joked during a lecture in Hong Kong, "I was glad he didn't realize I had presented a paper at the conference suggesting how the universe began. I didn't fancy the thought of being handed over to the Inquisition like Galileo."

Friday, June 16, 2006

Uncontrollable projects

An interesting post from a Windows team manager on why the Vista release date slipped, despite so many managers putting their reputations / bonuses on the line.

Some of the key reasons:
  • Individual components simple but integration of the components hard (50+ dependency layers)
  • Long approval process for each change (too many cooks in the waterfall kitchen)
  • Windows coders only producing 1,000 lines of code per year (average)
  • Culture of slipping. Nobody wants to hear how long something will actually take to do.

Saturday, June 10, 2006

Google does it again: Roving profile for your Firefox browser

Ever been annoyed that your browser bookmarks, history, cookies, etc are different between work and home, or that you loose useful links when you leave a job? Well, the Google Browser Sync Firefox plugin will keep all of this stuff n'sync for you.

Although with the US govt asking internet search companies for info on what users are searching for, this could make spying on us even easier...

Detox Clinic for Computer Game Addicts

Where was this detox clinic when I was playing Quake, the dizzying Descent or even Paradroid?

It can start with a Game Boy, perhaps given by parents hoping to keep their children occupied but away from the television. From there it can progress to multilevel games that aren't made to be won...

Wednesday, June 07, 2006

Google now does spreadsheets

Looks like Google is continuing its direction of making "office" type applications available on the web with the launch of Google Spreadsheets. Looks like it can read Excel spreadsheets.

The only advantages I can see that Excels has are:

  • Tight integration with Windows, Office and more recently .NET. GoogleSpreads could probably just add hooks to call out to web services to achieve the same thing.
  • Uses the CPU of your workstation to do calculations instead of having to share a remote server. Get a powerful enough server (or grid of servers)...

In finance the only area I've seen Excel excel (pun intended) over, say, the OpenOffice equivalent is that it is more robust doing quants calculations. I hope Google intends to push GoogleSpreads to similiar limits.

Monday, June 05, 2006

7-Zip: Open source does it again

One of the more useful Windows utility programs over recent years has been the venerable WinZip. However, WinZip hasn't added too many new features in the last few versions. I've also lost count the number of companys and individuals I've see who just keep downloading trial versions instead of paying for a license.

Well, you don't have to pay the WinZip "tax" any more. Thanks to the rise of the open source movement, from which many mature frameworks and tools have emerged, the tool to replace WinZip has arrived: 7-Zip. 7-Zip is faster that WinZip or Windows XP's built-in Zip support, has some decent command-line options and like WinZip integrates with the Windows Explorer shell.

Thursday, June 01, 2006

Compiling JavaScript to make AJAX easier

I just came across the new project Narrative JavaScript that attempts to make using AJAX async calls in JavaScript easier by making a small async syntax extension to the JavaScript syntax which you then pass through a compiler to produce the real JavaScript code. This sort of reminds me of the approach of the Google Web Toolkit where you write your UI code in pure Java and then "compile" it the JSPs/JavaScript. Compiling code to JavaScript could become the new fad in AJAX programming.