Thursday, January 14, 2010

Prediction for 2010: VMware acquires Terracotta

While at SpringOne2GX back in October, the thought occurred to me that Terracotta would make a really interesting acquisition target for VMware.  VMware has had some pretty amazing virtualization technology for a while, including the ability to migrate live virtual machines between physical boxes, but it has (as far as I know) all been focused on low-level infrastructural magic.  That changed with their acquisition of SpringSource last year, which followed shortly after SpringSource's acquisition of Cloud Foundry.  Now, if you just add Terracotta to the mix, you could make it possible to easily deploy an auto-scaling clustered app to the cloud.  Doesn't that sound interesting?  Add to that the fact that Terracotta has been a sponsor for at least the last two SpringOne conferences in the U.S., SpringSource and Terracotta have already collaborated to build a sample app, and Terracotta brings Ehcache (easy clustered caching) to the table.  Seems like a potent combination to me.

I have no concrete grounds for this prediction beyond the points above, but I wanted to get the idea out there now just in case it actually happens. ;)

Update (May 26, 2010): Unfortunately, with the announcement of SpringSource/VMware's acquisition of Gemstone, my prediction is now unlikely to occur.  Oh, well.  Plenty of others before me have been wrong. ;)

Saturday, January 2, 2010

Problems with NVIDIA GT220 and Windows 7 64-bit

Sorry about the extremely narrow focus of this post, but I wanted to make sure that anyone out there suffering from the same problems as mine knows that they're not alone.

I recently built a computer from parts (more on that another time – I'm not sure how many people would be interested in the details) to use as my primary development machine.  The last time I built a machine was in 1999 or 2000.  A lot has changed in the past ten years.  Fortunately, the assembly/setup process went relatively smoothly, except for problems with one part.  I bought the ASUS-branded version of the NVIDIA GT220 (ENGT220) graphics card from NewEgg.  I'd happily link to their product listing, but that would be rather silly, given that I can't currently recommend it as a purchase.  The card slid nicely into the PCI Express 2.0 x16 slot and my DVI cable attached happily to the appropriate port (this version of the card comes with D-SUB/VGA, DVI, and HDMI ports).  However, when it came time to install Windows 7 64-bit, the problems began.

At first, it was recognized as merely a generic video card – no big surprise, still a bit of a disappointment for a mainstream card that is by no means on the bleeding edge.  My next idea was to download drivers from ASUS's website.  I installed the newest version and rebooted.  Up came the the login screen at full resolution and I thought I was done.  Unfortunately, after I logged in, my screen went totally blank/black.  After much experimenting and many installs/uninstalls, I managed to get the card to work with a slightly older version of the drivers provided by ASUS.  The story would end there, but sadly the problem returned shortly after.  This time, I first did a search on Google for gt220 screen blank, which revealed that others were having similar problems, and not just with the ASUS version.  After reading a blog post and some forum questions and trying several other driver versions, I finally found something promising.  A user on the NVIDIA forums complained that his DVI port had stopped working.  Inspired by that, I tried connecting my monitor via the D-SUB/VGA port instead of DVI.  That worked!  Since then, I've been running for two weeks without a problem.  I can't say I find the solution very satisfying, but at least it worked.

By the way, I'd love to get feedback from other GT220 owners as to whether the solution I described (or something different) works for you.  Please let me know in the comments.

Update (Dec. 10, 2010): I'm a bit embarrassed to admit that I finally gave up and bought a new graphics card with an ATI Radeon HD 5570.  I'd link to the actual card, but I got a great deal on it because it was just about to be discontinued.  So far, it's been great.  It's slightly faster than my GT220 card, consumes less power, has a quieter fan, and (best of all) works on both the D-SUB and DVI ports.  Good luck to everyone who sticks with their GT220!

Monday, December 28, 2009

Handy But Hidden: Collections.newSetFromMap()

I was reminded again today of how much the core Java libraries have grown over the years.  It can be really hard to keep track of all the nice little features that get added in each release.  Today, I was wishing that there was a ConcurrentHashSet class or some other HashSet-style concurrent collection.  Before implementing something myself, I did some searching on Google and found a nice way to solve the problem.  In Java 6 (a.k.a. JDK 1.6), Sun added the utility method Collections.newSetFromMap(), which allows you to pass in an empty backing Map and get out a Set with behavior based on the underlying Map.  So, here is all I needed to do to build a concurrent HashSet:

Set<Observer> observers = Collections.newSetFromMap(new ConcurrentHashMap<Observer, Boolean>());

I also found a bug/enhancement request in Sun's bug database suggesting that this feature should be documented in any core Map for which there is no corresponding Set implementation, such as WeakHashMap and IdentityHashMap.  Given how long I went without knowing the method existed, I wish they'd done it.

Wednesday, December 2, 2009

MorphLabs, the Meta-Cloud Vendor?

Fascinating!  I just got an email from G2iX, the parent company of MorphLabs, inviting me to a webinar (Wed, Dec. 9, 2009 from 11AM - 12PM PST) in which they plan to demonstrate how to "Morph your Data Center into a Cloud Vendor":

Traditional data center and co-location vendors are under tremendous threat in the face of Amazon EC2 and related Web Services, and those providers who’re unable to adapt to some sort of cloud computing model face extinction as competing Infrastructure as a Service products become even more prevalent.

This webinar will demonstrate how the Morph Cloud Computing Platform can help regional data centers transform their business using their existing assets with minimal cost and hardware investments so that they can provide a cutting edge cloud solution to a broader customer base with rates that are more than competitive while still maintaining great profit margin.

For those who are unfamiliar with the company, MorphLabs provides a hosting platform that runs on top of Amazon's EC2 web service.  So, assuming I'm not mistaken, G2iX plans to help data centers other than Amazon's set up the Morph platform to run on their own servers.  My first thought was, "Why would they do that?  Won't this just create competition for MorphLabs?!"  However, once I mulled it over, I realized that if they structure things right, it could be quite beneficial to MorphLabs.  What if these Morph platform deployments simply became new pools of servers to which Morph apps could be deployed?  Viewed that way, it actually sounds quite clever.  I'm almost tempted to attend the webinar, even though it has no direct relevance to me. :)