Archive for the ‘grid’ Category

TheServerSide.com in Barcelona - Day Uno

Wednesday, June 27th, 2007

We are doing the European TSS show and I thought it would be fun to do some daily posts like I did for JavaOne.  I have noticed some interesting cultural differences between European techies and us Americans.  First of all, they don’t care about slinkys as much here.  We couldn’t keep our free slinkys on the table at JavaOne, here people always look at them and keep walking.  We have given some away, but people always laugh at them like they’re ridiculous.  A couple British people take them, but they always ask first which is also uncommon.  So to summarize:

1) Americans:  love slinkys, will try to trick you to get one for free, aren’t bringing them home for kids (that’s a lie they want it for their office to play with)

2) British:  partially amused by slinkys, will apologize for thinking of taking one, bringing them home to make fun of Americans

3) Germans:  think slinkys are foolish, will stare at you silently if you offer them one, may take one home to show kinder (children) how silly Americans are

4) All other Europeans:  think slinkys are part of our product, don’t realize they are toys, may take one home to beef up their car’s suspension

As for Appistry’s software however, there is a lot of interest, especially by GigaSpaces employees.  (I know they monitor use of their company name on blogs so this is a meta-joke to see if I can get their CEO to come say "Hi" to me.)  But seriously the crowd is full of architects and developers and they like to discuss how to scale Java appllications on commodity hardware.  They always ask great questions that show that they are engaged and are thinking about our solution.  From that perspective all the countires are on the same page, they don’t like complexity and expense.  Offering a simple easy to use product that cuts processing costs by an order of magnitude makes sense no matter where you’re from.

-jasen

That depends on what the definition of Grid is

Friday, May 25th, 2007

I have been doing some reading and a few weeks ago I came across an article by Corey Klaasmeyer on JavaWorld’s website.  He discusses the original definition of what a "grid" is with some of the history.  For example he quotes Ian Foster and Carl Kessellman from The Grid: Blueprint for a New Computing Infrastructure as saying, "A computational grid is a hardware and software infrastructure that provides dependable, consistent, pervasive and inexpensive access to high-end computational capabilities."

By this definition Appistry’s EAF qualifies.  But then Corey goes on to discuss the evolution of the definition and how Ian Foster has defined 3 requirements for being considerred a grid.  According to Ian a grid:

  1. Coordinates resources that are not subject to centralized control;
  2. Uses standard, open, general-purpose protocols and interfaces; and
  3. Delivers nontrivial qualities of service.

So Appistry again easily meets 1 & 3 above.  However 2. is debatable.  We have our own xml based meta-data syntax that we use to coordinate task execution.  We have discussed exposing this as WSDL and BPEL (which would be much more verbose) but then at least it would be "standard".  We are based on good old TCP/IP and UDP/IP so that sounds like general-purpose protocols to me.  So basically if I provided a set of XSLT transforms from our succint meta-data syntax to WSDL and/or BPEL would that then make us a true grid by Ian Foster’s definition?

Corey and I met for lunch today and discussed this idea and other things over awesome food at Illegal Pete’s in downtown Denver.  Ultimately I think we both decided that Appistry isn’t the purist form of a grid, but that we were compatible with it.  We also discussed the industies move toward using the term "grid" in a larger way in the market place.  Fuzzy’s blog discusses this concept and refers to others who attempt to define the classes of grids that exist in the market place today.

We don’t like to call our product an application server or a cluster because that term has so much baggage.  If we just call it a grid then its not clear how we are different than the efforts of the original father’s of grid computing.  So we’ve settled on the term "virutualized grid".  It would be cool to hold a vote to see how developers and architects describe software in this space.  Maybe Slashdot could do a poll.  I would vote for Cowboy Neal Grid.

-j

Open source vs. commercial software

Friday, May 18th, 2007

I just read an interesting thread over at Panic from Fuzzy’s blog.  Here is the thread…

My favorite commenter Cameron Purdy of Tangosol/Oracle engaged in a friendly exchange with Fuzzy about the economics of releasing software as open source rather than keeping it closed and charging for licenses.  I am a big open source advocate and I proudly wear my OpenBSD shirt in public.  However I have never worked for an open source software company.  I don’t think that many people do actually.

Appistry is not an open source company, although we love open source software and are very careful not to lock in our customers.  I was very impressed with our CEO, Kevin Haar, when he advocated for adding even more features to our product to make it easy for customers to remain decoupled from any of our proprietary APIs.  However, we still charge money for our product and we don’t publish the source code.  But does charging money make us evil?  I don’t think so or I wouldn’t work here.  Fuzzy is clearly a strong open source advocate, but if you follow his argument to the extreme does that mean software should always be free?  Cameron points out that the amount of revenue made at a service company is much lower than a product company.  So are we here in the good old USA now supposed to give everything away because Apache and JBoss do?

I don’t know the answer, I only know that I like writing software for a living, and as long as companies like BEA and IBM are charging for their software and making millions then why can’t everybody else try?  One of Fuzzy’s points was standards, I totally get that.  Being a software architect, I have been careful to leverage standards whenever possible.  But if a product doesn’t lock you in architecturally and has years of intellectual property built up to help solve a problem, why can’t you charge for it?

I don’t think the whole software community wants to work as consultants during the day just so they can code open source apps at night.  There will always be a product market as long as the product 1) works and 2) makes sense economically.  I know full well that as our technology becomes more broad there will be a call to build an open source platform that is similar.  That’s fine, even JBoss doesn’ t have 100% market share.  And it never will, service companies cannot scale to the necessary size so a vacuum will always exist for product companies that can afford to support customers because of their license revenue.  So the waxing and waning of products and OSS will come and go.  But there will always be free software and there will always be commercial software.  That’s just the rules of the game now.

Or not.  If I was any good at making predictions about software I would have bought Microsoft stock back in the early nineties.  What can I say, I thought Windows 3.11 sucked.

-j

JavaOne ‘07 - Day 3

Wednesday, May 9th, 2007

Today started with a keynote talk by the Oracle guys. Cameron Purdy, previously the CEO of Tangosol which is now owned by Oracle, stood up and showed a neat data grid demo.  Interestingly, his main points about reliability and scalability all sounded exactly like what I have been telling people at our booth.  The only difference is he’s talking about data reliability and I’m talking about processing reliability.  I’m still unsure about the Tangosol/GigaSpaces/TerraCotta data grid concept.  It sounds so much like EJB CMP to me.  The problem with CMP wasn’t that it was inside J2EE or on a cluster.  It was that the bigger you scaled, it the more problems you had with either stale data or performance.   If you try to fix the stale data problem by locking data instances on the cache, you now have scalability problems.  I don’t see how the data grid solutions address this.  I think what’s really happening in that space is specific domains are able to use optimistic locking, and therefore the ability to virtualize commodity hardware as a large memory cache works for them.  Maybe I’ll go lurk around their booths tomorrow and see if I can get one of them to explain to me how they address the stale data issue differently than CMP.

I had several good conversations with show attendees today. We didn’t give out as many slinkys as the first day, but they were still popular.  I think we have about 1 or 2 boxes left, so they should be gone tomorrow.  I do end up describing our product to people a lot.  Our concept isn’t an easy one to label.  We call ourselves an Application Fabric, but sometimes we say "virtualized grid", "next generation application server", or "execution platform".  Our VP of sales and I were having lunch and talking about different names we could use that would resonate with developers and architects.  I proposed Application Grid, so maybe we’ll try that out.  I had a booth visitor come up and ask straight out if we were a compute grid or a data grid.  He obviously understood the grid space, but I think compute grid wouldn’t explain what we do to most people.

Tomorrow I’m going to try to find some leftover t-shirts.  I have been so busy at the booth that all I have so far is a couple of pens from the Interface 21 booth.  They hinted at some upcoming ultra cool schwag.  I think we may have to turn this into a competition.  I’ll keep the updates on the blog.  Maybe we can get a bet going and an online poll or something.  I noticed we got a mention on Java the Hutt’s blog today which was cool.

I’m going to go get some food.

later,

-j