recursive-remote-login

Trippy.

Posted in geekery at October 4th, 2009. No Comments.

Pretty big news in the Java world today.

Open-source with a business model company, Terracotta, acquired Ehcache, the very popular caching library.

The creator and maintainer of Ehcache, Greg Luck, had these things to say about the acquisition:

What this means for Ehcache Users

  • Ehcache remains under the Apache 2 license
  • New feature development is accelerated with the addition of a team of engineers working full-time on Ehcache
  • I am full-time on Ehcache. I have not had the time I would have liked to devote to Ehcache (I have been doing a miserly 10-15 hours per week for the past 6 years) but now I do. Look out!
  • Ehcache extends its standards support. There are multiple emerging standards in this area and I plan to work with the community to lead further standardisation efforts. A lack of time has been my biggest obstacle in doing more on this to date.
  • Ehcache gets new hosting at ehcache.org with state-of-the-art forums, source control and bug reporting. The changes will happen slowly and carefully.
  • File release at sourceforge.net is retained
  • Maven deployment to oss.sonatype.org and Maven Central is retained.
  • Distributed caching via Terracotta is seamless. Ehcache users can have full confidence that they can start single node and scale as high as they need to with Enterprise features.
  • Enterprise support, training and professional services for Ehcache. I have provided these for a few years now, but now we will have the full Terracotta organisation behind them with the usual SLAs.

What this means for Terracotta Users

  • Ehcache APIs will replace Terracotta distributed cache APIs as a single caching interface / standard for Terracotta distributed caching
  • a single-node version of Terracotta ala Ehcache will be available for the first time
  • Full freedom to run on the latest version of Ehcache at all times, knowing it will work with Terracotta
  • Single vendor support structure for caching interfaces / libraries as well as their scalability / reliability runtime.
  • the investment protection of standards

It’s pretty cool to see open source companies like SpringSource (recently acquired by VMWare) and Terracotta making big moves. I look forward to seeing what’s next for these guys.

Posted in geekery at August 18th, 2009. No Comments.

Working with JSON all day and implementing my own URL shortening app, diminutiveurl.com using Base32 encoding, I really admire Douglas Crockford’s smart and simple approach to these topics.

I stumbled upon Crockford’s talk on the JSON Saga, where he tells the story of how JSON came about. He is a really smart guy and a talented speaker. Check out the video:

Posted in geekery at August 14th, 2009. No Comments.

It’s been awhile since I updated this and big things have happened since.

Cutting to the chase: On June 20th, 2009 I married the lady of my dreams, Patcharee Phongsvirajati.

The wedding ceremonies took place at our houses and the reception was held at Foxchase Manor.

Check out some photos taken by a few of the many photographers:

Photography by Mac Pham, my cousin:

Photography by the Pros:

Photography by Cau Duc, my uncle:

Posted in personal at August 5th, 2009. 3 Comments.

Last night Google announced Java support on Google App Engine.

After a bit of toying around, here are my findings.

The Eclipse plugin is pretty slick. Deploying and build is simple.

The dev server that you spin up locally looks to be jetty under the hood.

Objects intended for storage are JDO annotated and after compiling, you run the .class files through the DataNucleus Enhancer which adds additional metadata so Google can map it to BigTable. The Eclipse plugin automatically performs this step for you after compiling. The examples provide a bunch of ant macros to help facilitate building/deploying.

One issue that I had was that the project was building with Java 1.6 and I would get an error after compiling:

Caused by: java.lang.UnsupportedClassVersionError: Bad version number in .class file

Even though they say they support Java 1.5 and 1.6, I guess this doesn’t work on the Java 1.6 for the Mac. Switching the build to 1.5 allows the DataNucleus Enhancer to run successfully.

Even though they are using JPA, some features have not yet been implemented or supported ( see http://code.google.com/appengine/docs/java/datastore/usingjpa.html#Unsupported_Features_of_JPA)

Overall, I like what I see so far and think this would be great for quick prototypes of web apps/services.

Going through the tutorial, my awesome Guestbook application has been created and deployed.

Posted in geekery, java at April 8th, 2009. 5 Comments.