Thursday, September 28, 2006

Java API whine

My pet peeve of the day: I want a new method added to array objects.
Object resize(int newSize)

Ideally this would be something like
T[] resize(int newSize)

but Java's templates don't really provide support for that that is worth it... so I'd prefer the first. While I'm complaining, I'd like Microsoft to add it to .Net as well.

Why? Because when you care about performance, ArrayList/Vector just don't cut it. I've seen some dramatic performance improvements by moving from ArrayList to object arrays. And when the value is something like 'int' which isn't an Object, you have no choice anyway. At least .Net Generics got that right. If that resize method was there I could replace code that looks like this:

... important stuff ...
... important stuff ...
if (index == array.length)
Foo[] temp = new Foo[index*2];
System.arraycopy(array, 0, temp, 0, index);
array = foo;
... important stuff ...
... important stuff ...

with this:
... important stuff ...
... important stuff ...
if (index == array.length)
array = (Foo[]) array.resize(index*2);
... important stuff ...
... important stuff ...

Some people will complain that I dropped the curly brackets, blah blah blah. That resize in only there because the builtin libraries are slow! It isn't topical to the code and hand and should be a small and insignificant as possible. That simple resize() method allow me to write it in a way that is out-of-the-way. That is how it should be.

I can dream, can't I?

Friday, September 15, 2006

The future of the Wiki

If you haven't seen it, System One is the most impressive attempt at evolving the Wiki I have yet seen. I've had a long history of interest in leveraging computers to augment out abilities. Some old examples I played with were Remembrance Agent and Dashboard. GMail has some similar idea, although it is mostly used for advertising.

Google has shown how powerful a simple search based association can be. System One applies to personal productivity what Google applies to advertising. I'd love to have the same functionality for email, etc. Even better would be something equivalent for software development... One of the tricks that they still need to figure out is how to manage the UI. The current era of these UIs are very mouse heavy. I want to be able to get those benefits without leaving the keyboard. That would really make my day.

Thursday, September 14, 2006

Microsoft Zune Announced

After months of buzz, Zune was officially announced today. Lots of mixed review, as could be expected. The most interesting coverage I found was Engadget's interview with J. Allard. It wasn't until reading that interview that the WiFi and music sharing functionality started to click for me. I'm a bit of a music freak, and love sharing recommendations with people. The 3 Plays or 3 Days bit is brilliant. My question, is when the song is deleted, does it leave a trace behind? I'd love if it remembered what song it was, so I could go and buy it. I need to read more about the Zune store before I consider buying anything though. I'm picky about sound quality and DRM... If it is all play-for-sure... I'm just not interested.

Tuesday, September 12, 2006

Peter Write says bye bye Microsoft

So painfully true... I sympathize.

Sunday, September 10, 2006

Windows Application Icon

I was working on cleaning up my app-runner to share out the source code and have run into a problem.  I can get the window and exe to have my custom icon, but when I alt-tab, the default Visual Studio app icon is there.  How do I replace that with my icon?  Do I need a specific size/depth icon?  Anyone else encountered this?

Friday, September 01, 2006

Microsoft Exec Rewards

I remember hearing about this via MiniMicrosoft, but now it is official.  From the Seattle Times:

Microsoft's top 900 leaders got almost $317 million in company stock Thursday, the first installment in a compensation plan meant to reward them for the company's performance during the past three years.

As an ex-Microsoft employee and current shareholder, all I can say is WTF? 

Lets see... what has Microsoft done recently: Vista is collosally late, over-budget, and under-delivering.  WinFS came, randomized all of SqlServer devision, cost the company untold dollars and was then quietly put to pasture.  Visual Studio 2005 did finally ship but was also late, and is still just playing catchup to Java community.  Avalon, the next generation of application has went through countless re-architectures, re-orgs, and has become little more than a better WinForms.  MSN has done well, but the MSN/Windows-Live naming is a total fiasco, and well... HotMail still sucks.

So what did these executives do to deserve this compensation?  I'm sure some of them do truely deserve it, but as a whole, this just further proves to me that Microsoft is a sinking ship.  (A-la IBM circa 1995...)

Toying with Vista

I installed Windows Vista on my home PC the other day.  (I've always loved playing with the latest and greatest toys, so it is surely a sign of my age that it has taken me this long.)  I've only just played with it a bit, but enough to form some definite opinions.

  • I'm not a huge 'Aero' fan.  It feels gratuitous without really providing much useful improvement.  I'm not against updating the UI, but the goal should be improved clarity and usability.  New eye-candy should surve a purpose.  As an Apple PowerBook owner, I definitely agree that XP's UI needs an update when compared against OS X's Aqua UI, but I'm not sure that Aero really hits the sweet spot.
  • The new Start menu with it's built in search is excellent.  I'm not sure it will convince me to abandon my little 'Runner' app, but if it were there in XP I doubt I would have been motivated to sit down and write Runner.
  • Yet another Control Panel reorg... sigh... I feel like every major Microsoft OS release includes some significant changes to the Control Panel.  I haven't used Vista enough to know if it finally brings things up to OS X levels of simplicity and usability, but I doubt it... so why change so much?

As that machine is really just a file store and iTunes server, I don't have much use for improved search, or many of the other changes.  I'll write up further opinions when I get time to try out Vista some more.


When Vista ships, I'm not likely to be in any rush to upgrade.  If I buy a Windows laptop when I get around to my next laptop upgrade cycle, I'll probably be forced to buy Vista, and that certainly won't kill me, but I doubt I'll be clamoring for any of its new features.  I still think I prefer OS X's simplicity and consistency (and useful eye-candy, such as Exposé) on one end and Linux's extreme flexibility at the other end.  Microsoft is stuck in the middle, by the nature of business/enterprise market pressures.