SmoothSpan Blog

For Executives, Entrepreneurs, and other Digerati who need to know about SaaS and Web 2.0.

Archive for September, 2007

Psst! Have you heard of Adobe Thermo?

Posted by Bob Warfield on September 18, 2007

Okay, I’ll come clean, I have no idea what Thermo is, but I did read a blog post that sounded intriguing:

You will lead a highly motivated team developing an innovative new tool, codenamed Thermo, that will enable designers and creatively inclined developers to easily build rich internet applications and interactive content. “Thermo” will streamline the process of adding interactivity, behavior and motion to creative assets and will work seamlessly with both Adobe’s Creative Suite tools, such as Photoshop, Illustrator, Fireworks and Flash, and with developer oriented tools such as Flex Builder.”

Clearly part of a job posting.  Now for the fun part: let’s guess what Thermo is.  In the spirit of being frequently wrong but never in doubt, I do hereby suggest that Thermo as described above, falls into the category of Magic Ink.  What’s that, you haven’t heard of Magic Ink?  It’s a way cool idea by Bret Victor for enabling visual designers to have a language of their own that adds interactivity to their designs.  The Usability Institute has a somewhat less scholarly post on Magic Ink that will hopefully show just how cool this would be.

Today designers are limited to getting programmers to help them add these kinds of features.  A tool that works by example to them them create fully interactive user interface would be awesome.  It’s not so hard to imagine either.  Anyone who has played with a really slick CAD program such as Rhino3D or Ashlar’s Vellum has seen drawing with constraints.  These constraints work to make it easier for you to create great drawings faster and more easily.  There’s also a whole world of Parametric CAD that does similar things. 

Now let’s reverse the process.  Imagine that we’re taking the drawing and defining constraints to control its dynamic behaviour.  A slider consists of 2 images.  One is the background and the other is the movable part.  Constraints would tell us to keep the movable part inside the slider’s track, and would also tell us how the slider can be grabbed and manipulated.  Further declarative code would tell us how to interpret the slider’s position to update a variable.  The whole thing could be completely interactive.

Work like this has been going on for a long time.  The first one I remember seeing was a Smalltalk program called “Thinglab” which was all about constraint oriented simulation.  I remember thinking at the time, “What a cool UI design tool that would make!”

If I’m wrong on what Thermo is, don’t be surprised, but the vision I describe is something someone ought to build.  If I’m right, be very very excited.  It will unlock a lot of cool new territory to the non-programmer world and put it in the hands of talented designers.  Thanks to Ted Patrick for starting this line of random speculation in my head!

Related Articles:  I was right!

Posted in ria, user interface, Web 2.0 | 5 Comments »

Logic+Emotion On Web 2.0 Personality Types + Roundup of Personality Posts

Posted by Bob Warfield on September 18, 2007

I’ve been writing about Web 2.0 Personality Types for a while now.  Logic+Emotion has a post up on a very similar concept involving web users as navigators, explorers, and engaged participants.  If you want to successfully target the broadest audiences on the Web, you have to think in behavioural terms.   Here is a list of the posts from this blog on the topic:

Part 1 introduces Web 2.0 Personality Types.

Part 2 maps existing web properties such as Google and Flickr into Web 2.0 Personality Spaces.

Part 3 shows how to target the individual Web 2.0 Personality Spaces.

In addition to the three part series, there’ve been a number of posts that show how the direction taken by many Web 2.0 properties and users makes sense when viewed against the Web 2.0 Personality Space model:

Imagini takes the bland social network look of a Facebook and recasts it into a boldly pictorial face for those who are more visual than verbal thinkers.

Dell’s Web 2.0 strategy touches a number of Personality Spaces.

A misunderstanding of what Twitter is all about comes from failure to consider Web 2.0 Personality Spaces that don’t appeal to you.

Will Google’s Video Ads alienate an audience brought up on clean textual UI?

Flickr expands its Personality Space footprint

Twitter and Fred Thompson’s Presidential campaign expand their Web 2.0 Personality Space footprints.

Another behavioural post worth looking at is the Psychology of Web 2.0 Persuasion.

Late addition:  check out Design Shack for a web UI that wants to know which style you prefer.

Posted in saas | 1 Comment »

Imagini Stakes Out A Unique Web 2.0 Personality Space for a Social Profile

Posted by Bob Warfield on September 18, 2007

I went to try Imagini thinking it was a “Visual Personality Test” based on the Information Aesthetics blog post I’d read.  There’s more to it than that, and I like this crazy site.  It’s another take on the Web 2.0 Personality Space idea I’ve been cogitating on for some time.  What’s different is the extreme visual focus versus something like Facebook.  Ironically, the personality test aspect is where I came up with Web 2.0 Personality Spaces. 

Give the thing a try, its fun.  You’ll be asked a series of questions and the answers involve picking from photo thumbnails that best match your reaction to the question.  At the end, a profile pops up based on your answers.  It’s a really slick looking thing, much cooler than the profile I have over on Facebook, for example.  The interesting thing about it is whether the visuals combined with the personality characteristics float your boat.

When I compare this to my recent experience with Yahoo’s Mash, I like Imagini a lot better.  It seemed fresher and more interesting.  Of course, maybe I’m just a more visual thinker and Mash was too textual.  Andrew Chen recently analyzed Mash’s viral loop and his comment was that Mash makes you work to hard to set up a profile for a friend.  Imagini falls back on the tried and true method of emailing you friends to create the viral loop.  They claim to have 4.5 million folks who’ve signed on so far.  They’ve also borrowed a tactic from my Guerrilla Platform Tactics playbook in the form of Widgets.  They’ll create a custom widget for you which they then encourage you to go and embed in MySpace or yor blog.  It’s a clever way to leverage the investment and contacts you may already have on another Social Network.

Posted in user interface, Web 2.0 | Leave a Comment »

What the CMO Wants from Web 2.0 Systems Management: A Negativity Early Warning System

Posted by Bob Warfield on September 18, 2007

Enterprise Systems Management is all about Bob the CIO knowing that his IT systems are online and doing the right thing.  Products like Tivoli do this with elaborate monitoring and control panel capabilities for the On-premises world of Enterprise Software.  Presumably, there is an emerging market to do this for the SaaS world as well, since the CIO still needs to know that his SaaS applications are online and doing the right thing.  Savvy SaaS vendors will start thinking about what sorts of Web Services are needed to facilitate this and savvy entrepreneurs and other product innovators will set about providing it.

What about the needs of Karin the CMO with respect to Web 2.0?  Despite her worst fears, Karin has unleashed the Web 2.0 genie because she knows what a powerful force collaboration can be for her company.  In order to sleep better at night, it seems to me that Karin needs a management tool too.  One that tells her all is reasonably well in the 2.0 world and nothing too terrible is happening.  This tool is harder to build than the Systems Management tool, but it is potentially capable of averting a greater catastrophe by preventing an unintended release of negative information or other PR gaff from spreading too far.

I got the idea for this one reading Steve Hamrin’s Outsourcing and Call Center blog.  Steve notes that with the Web 2.0, “The Whole World is Watching.”  He’s absolutely right when he says that for starters, there are sure to be benefits for organisations that conduct themselves in the most ethical, transparent ways, but that still doesn’t eliminate the need for Business 2.0 to have sophisticated monitoring systems in place to understand very quickly who is saying what about them in the Web.

Some companies have evidently already dealt with this problem.  Steve goes on to tell the story of the Standard Charter Bank.  Evidently he had a terrible customer service experience with them, blogged out it, and was a bit shocked when they called him up to repair the relationship.  That World is Watching bit cuts both ways:  The World is Watching You, so You Had Better Watch the World.  If you can spot a disgruntled activist who is passing on his negative experience, you may turn them around as Standard Charter did with Steve.  What better way could their be to demonstrate that you really care?

A potent monitoring solution is not necessarily an easy thing to come by.  There are so many Web 2.0 Personality Spaces to keep up with.  Not all of them are even available to Google directly.  And even if you Google, how do you go about sifting through all that information?  I’d never heard of Standard Charter Bank, which is a leading bank in Asia, Africa, and the Middle East, but they have 2.2 million hits on Google.  Bank of America has over 10 million hits and Dell Computer has 112 million.  Clearly tasking someone with just taking a look at search results every now and again is not the answer!

This is a great enterpreneurial opportunity for someone to build a search engine that searches for negativity.  It seems to me that a negativity early warning system would be very useful to companies concerned with customer satisfaction.

Failing such a search engine, what else can be done?

First, the worst kind of negativity is internal negativity: bad messages emanating from within the Enterprise itself.  This sort of thing involves a much smaller set of sources that are potentially easier to monitor.  Think about getting a system in place perhaps built around mashup tools that can track these sources.  I’m not necessarily talking about your already buttoned down mechanisms such as press releases, look to the Web 2.0 mechanisms.  If you have forums, blogs, and other less process-oriented means of communication, put some monitoring in place around those areas.

Second, don’t overlook the human element.  Make it possible to anonymously communicate negativity and make sure it really is anonymous.  Reward folks for calling your attention to outside sources of negativity.  Make sure that your mechanisms for collecting the sources of negativity don’t turn into a percieved witch hunt.  You really do want to hear the bad as well as the good.  If the bad is misinformed, you want to educate it not eradicate it.

Posted in Marketing, Web 2.0 | 2 Comments »

Picks from the TechCrunch 40

Posted by Bob Warfield on September 18, 2007

Lots of stories about this interesting conference because so many story writers are there.  Below are my picks from the first day of the TechCrunch 40

Session 1: Search & Discovery

Powerset:  Understand the difference between a noun and a verb.  Hmmm.  Seems like we knew how to do that a LONG time ago.  What’s new here?  Is it just that nobody had gotten to it?  Sounds cool, I’m always open to better search.  I do remember reading an article where people presented the same search results under different names and Google got a 25% better relevance rating than the other services even though they were all the same result.  Can you say “search placebo” anyone?

Faroo:  Watch what people do in their browser and use that to decide how to rank search results.  Cool.  Not sure why Google can’t just watch what people click on, though they only get to see that first click.  Doh!

Session 2: Mobile & Communications

Cubic Telecom: Flat rate cell phone calls from anywhere in the world to anywhere in the world.  Who wouldn’t like that?  Seems like the old guard will fight dirty to kill it though.

Ceedo:  Carry your PC personality on a USB key, pop it into any PC and have what you need.  Remove it and leave no trace.  Cool!

Session 3: Community & Collaboration

None of the Session 3 products turned me on.  Too bad, there’s a lot of potential in the category.

Session 4: Crowdsourcing

Cake Financial:  Crowdsource investment ideas.  When you are interested in a stock, see what other stocks folks interested in your stock bought.  Compare your performance against family, friends, and top investors, all without disclosing your net worth, actual shares owned, and so forth.  See what users with better results are trading today.  The ZDNet folks liked this one too.

Ponoko:  Design a product and Ponoko will manufacture it for you.  So far, it seems to be focused around laser cut products made from acrylic or wood, but you can do some surprising cool things with this.  As some will now, CNC machine tools is my hobby so Ponoko appeals, though I’m not sure how good a business it will really be.

Posted in venture, Web 2.0 | 1 Comment »

7 Tactics for Building a Guerrilla Platform on the Web

Posted by Bob Warfield on September 18, 2007

Guerrilla Platforms are all around us, often lurking closer than we suspect until one pops out and grabs our attention.  I’ve blogged before on platform adoption strategy and on Marc Andreesen’s platform theories, but I felt the topic needed another kick, this time focused on subtlety. 

Platform adoption is a viral phenomenon, and the most successful viruses are those you don’t know you have even caught until you’ve gone on to infect many others.  A virus that is too strong, too virulent, will burn itself out before enough can be infected.  In platform terms, that means a platform that takes too much up front investment is likely to burn itself out before it can really take root.  A Guerrilla Platform cruises just beneath the surface building up momentum until one day everyone wakes up and wonders how a platform has suddenly appeared where there seemed to be none before.

Stowe Boyd talks about Building in Openess, and gives us some good ideas on how to create a Guerrilla Platform:

Centralized Platforms are bad, because they are closed and give someone a monopoly, says Boyd.  I submit that most often a centralized platform will be preceeded by a Great Application.  It is the art of misdirection, “Don’t mind that platform, these are not the droids you’re looking for, focus on this Shiny Object.”  Let us call the Great Application/Great Platform bait and switch Tactic #1.  Facebook used this mechansim by offering a Shiny Social Network at first and then unveiling a platform.  Note that a centralized platform need not be Andreesen’s Level 3 type, where the app is hosted on the platform.  It just needs to have sufficient controls so they app only runs on the closed platform and developers have to write for that platform.

Distributed Protocols are better, where disparate platforms agree to communicate via some common standard.  But it’s hard to achieve that agreement unless market conditions are right and it is particularly hard to profit from having created the standard, which must usually be given away and owned by some governing body or working group.  Still, you may need a platform to become established for other reasons.  Hackers do it for pleasure.  Some combination of the two may have resulted in the iPhone being hacked and protocols released for things like accessing the accelerometer or unlocking to change service providers.  I’ll call Giving Away an Open Distributed Protocol Tactic #2. 

Stowe’s “Interlinked” architecture I’d call a Bridge Architecture.  Bridges use a middleman to do the impedence match, freeing disparate platforms from having to support a common protocol.  The Bridge Architecture is classic Disintermediation.  You have to love that big long word, once the favorite of VC’s during the last Internet Gold Rush.  The tactic here is to offer something that makes you the middle man between the consumer and some other platform or service they favor.  If you’re a good middleman, the consumer gradually loses touch with the original platform.  At the appropriate point you announce with a flourish that the original is no longer even needed because you are the new platform and you can give the consumer everything they always wanted and more.  Voila!  The original platform has just been “disintermediated.”  Boy, that’s gotta hurt.  What’s an example?  Dave Winer’s fears about Feedburner and RSS are all about the potential for Disintermediation.  All those RSS feeds are all going through one central choke point in Feedburner, and that makes it possible for Google (which owns Feedburner) to contemplate mischief.  It gives them an unfair advantage.  We’ll call the Bridge Architecture Tactic #3.

In keeping with the Guerrilla Concept, there is also the Marketing and PR aspect.  Talk down your platform.  Don’t speak of world domination.  Focus on solving a few key problems and helping out.  If the platform has more power than that, let others discover it.  Toss a few rocks into the bushes nearby to help them find their way.  Tactic #4 is Talk Down Your Platform.

How about creating a Slippery Slope?  The carnivorous pitcher plant makes it easy for insects to get started entering, but the further they go the harder it becomes to back out.  You create a situation for your platform where someone does a little bit, gets excited, does a bit more, and over time they get completely hooked.  This involves minimizing the friction getting in and maximizing the network effects and lock-in aspects.  Scoble got totally locked into using Google Reader because he’s built a ton of personal metadata around it.  Tactic #5 is minimize the friction to enter and maximize lock-in to create a Slippery Slope.

Quid pro quo literally means “something for something.”  In this case, it would be the tactic of offering something that benignly enrolls the consumer into being an unwitting platform supporter.  Napster let people download music if they hosted the content for others to download.  Facebook is flirting with offering storage space if you use their platformSprint will put a box in your home to extend their wireless network.  Open Source gives you free software in exchange for adoption, but there are other ways they monetize your adoption.  Beware quid pro quo, it can become a form of lock in if you are too dependent on the quid, if you pardon my pun.  Quid pro quo is Guerrilla Platform Tactic #6

Tactic #7 is insert breadcrumbs in the other guy’s platform that draw customers back to you.  Widgets are an interesting game of tug-of-war when used in this way.  They’re like double agents.  In theory, the platform owner has created a platform by granting the largesse of allowing widgets in order to make their own platform stronger.  Yet, sometimes a player can insert widgets into a platform to drain attention back over to their own platform.  Witness Amazon’s use of widgets that can be embedded on blogs and the like.  Also, I know an awful lot of people who build something smallish (more than a widget but less than a full app) on Salesforce’s AppExchange largely to generate sales leads so they can get those customers onto their own products.  I would call this kind of strategy a “partial disintermediation with a shot of quid pro quo”.  Or, we can just label it Tactic #7:  Use Widgets or other bread crumbs to pull people off another platform and onto your own.

Summary of Guerrilla Platform Tactics

  1. Launch a Great Application that has a thinly concealed platform attached.  Defer announcement of the platform until the Great Application is well established.
  2. Give away a distributed open protocol that’s suitable to create a platform around.
  3. Be the middleman that matches disparate protocols between services to create a Bridge Architecture.
  4. Talk down your platform.  Focus on solving a few key problems and helping others out.  Give away those first couple of keys to prime the pump.
  5. Minimize the friction to enter and maximize lock-in to create a Slippery Slope.
  6. Offer Quid pro quo.  Give away something to platform participants that enrolls them as unwitting platform supporters.
  7. Use Widgets or other bread crumbs to pull people off another platform and onto your own.

Posted in platforms, saas, Web 2.0 | 3 Comments »

Two New Platform Types for Marc Andreesen, How the Salesforce Force Relates, and Some Dissenting Views

Posted by Bob Warfield on September 17, 2007

Pmarca recently wrote an excellent blog post that dilineated what he sees as the three kinds of platforms you meet on the Internet.  Briefly, they boil down to:

Level 1, an “Access” API.  The key thing for level 1 is the developer’s code lives outside the platform.

Level 2, a Plug-in API.  Here, the goal is to add functionality by plugging an extension into an existing app.  Facebook has a plug-in API.

Level 3, a Runtime Environment.  In Level 3, the developer’s code runs inside the environment.

These distinctions are very programmer specific, but Marc says that in the end, only the programmer’s opinion matters.  More on that in a moment.

Let’s tease these apart a little bit first.  Another way to look at it is how visible the 3rd party developer’s code is, and this seems to be a little bit of what Andreesen is striving to articulate.  With an API, the code may hardly be visible at all within the platform.  You’d go to the developer’s site, perhaps, to see something tangible as a user.  With a Plug-in API, a little bit, the tip of the iceberg, may be visible within the platform.  Call it a “widgets” approach, if you will.  With a Runtime Environment, its all about developers being able to build first class applications of their own on the platform.   Andrew Chen helpfully points to the viral possibilities that open up for 3rd parties if they can immerse their code in the fast running waters of user adoption that may already exist for a successful platform.  This becomes stronger the further up Pmarca’s Level 1, 2, 3 food chain you go.

That distinction, in a nutshell, is what I think Pmarca is most focused on because it tells the message of why his startup Ning has a great idea and other things like Facebook are inferior to it.  It’s because Runtime Environments give programmers maximum expressivity, and if programmers are the only opinion makers who matter (according to Marc), won’t they prefer the platform that maximizes their expressivity?  Of course, the penultimate (I love that word, sorry) conclusion (pointed out by Fred Wilson in his blog and Read/Write Web in a post) is that the web itself is the Uber Platform that must be the most attractive to all the alpha geeks.

Let’s talk about a couple of alternate platform possibilities.  Depending on how you want to look at it, they may not be alternates at all.  I can see how to fit them into Pmarca’s framework.  However, to me they feel qualitatively different, so I call them out on their own.

The most obvious platform I’m looking at is creating a language.  Ruby on Rails is a platform.  Java is a platform.  They appeal to programmers, you can program all sorts of things in them, they are platforms.  Postscript is a platform.  It’s a language.  You can build printer drivers, Adobe’s Acrobat, and more around Postscript.  Languages are powerful platforms if you can get people to embrace them.  I would argue they’re more powerful than either Level 1 (API) or Level 2 (Plug-in) style platforms, and are fully on a par with Level 3.  However, they are not Level 3 because Marc has gone on to talk about the code running within the Level 3 platform ala Amazon Web Services so that developers don’t need to worry about hosting. 

Imagine with me for a moment that someone built a language that was all about Web 2.0 stuff.  It wouldn’t be Ruby, which is all about doing CRUD with web UI’s.  It wouldn’t be Java, which I view as a portable assembly language that’s probably overused for everything else.  Picture a language that is uniquely focused on the needs of Web 2.0.  One that would uniquely empower programmers to create new and Web 2.0 offerings as well as to hook into what’s already there.   Perhaps it would be something really different like Yahoo’s Pipes on steroids, or maybe its just another redo of the modern curly braced language as a Web 2.0 scripting language.  If it really worked well, it would be adept at hooking into all the Web 2.0 Personality Spaces.  It would be easy to define whatever sorts of Trust Fabric your community preferred.  It would be highly collaborative and very facile at tying into all the standard feeds and services already out there.  It’s fascinating to consider!

The other one that tickles the back of my brain is the idea that having a sufficiently powerful infrastructure creates a platform that is not centered around programmability or even technology, but it seems to me that it does let people do in a flexible way things that the platforms creators had not evisioned.  It lets 3rd parties profit from those doings.  It has the viral characteristics that so many platforms have.  And it is somehow more than an application, though I will be the first to back down in the face of strong opposition and admit that these beasts are perhaps not-quite-platforms.  Let me give some examples:  eBay.  Is it a platform?  It has API’s, so maybe it’s just a Level 1 platform in the Andreesen School of Platforms.  Let’s go further afield.   Peer to peer networks.  Was Napster a platform?  Hmmm, its kinda like eBay isn’t it.  Neither fish nor fowl. 

Here’s a way to think about this platform type:  can you create a platform without requiring the “application creators” to program?  Can the manipulation of information itself constitute a platform?  Is a Wiki a platform if you don’t program it?  Does WordPress have a blogging platform if you take away the widgets?  If these things can constitute platforms, it seems to me the friction of adoption is much less.  Perhaps we call them proto-platforms and recognize that they don’t flower into real platforms until the requisite API’s/Plug-Ins/Runtime Environments/Languages are available to complete the metamorphosis.  Perhaps you have to trick the application creators into programming when they really don’t think that’s what they’re doing.  Spreadsheets are the most widely used programming language on the planet because they trick non-programmers into being able to program almost before they realize it.

Now on to the other thing that has nagged at me about Pmarca’s post: his idea that only programmer’s matter for platforms:

lots and lots of people have opinions about platforms, but the people whose opinions matter are programmers, and people who can make decisions about what programmers program.

Marc has left himself an out on this one that I assume you clearly see:  “people who can make decisions about what programmers program.”  In my experience as a programmer, that would be the whole rest of the known universe.  Everyone has an opinion about what should be built, but let me tie in as I have promised.  They certainly have a platform in the newly renamed Force offering.  I’ve talked to a lot of people who’ve cozied up to the Salesforce platform, and the impression I get is that most are not building anything of substance on the platform.  Wow!  Now I have to duck for a minute so the rotten fruit flies overhead, before explaining what I mean.

The Force platform is ideal for building a connection to Salesforce’s CRM applications and the associated community.  In this sense, what the Salesforce platform has most often been selected to do is generate sales leads.  People tie into it not because programmers are giddy with excitement about how great the platform is, but because they want a piece of the huge amount of attention and customer activity focused on  Often, the nature of the tie up is use of Salesforce in the Level 1 or Level 2 capacity despite it being suited to Level 3.  This happens because the app had either already been built elsewhere and didn’t need rewriting, or someone (possibly it is the programmers then?) made a decision that it didn’t make sense to build the whole thing inside Salesforce.

Don’t get me wrong–the platform doesn’t stink, but it doesn’t break much new ground either, except in giving you access to data inside and customers who are using  So in this case, one of the biggest Level 3 platforms out there is getting most of its traction from people who make decisions for what programmers program in order to do something that requires very little programming.

Related Articles:

7 Tactics for Building Guerrilla Platforms on the Web

Posted in platforms, saas, software development, strategy, Web 2.0 | 2 Comments »

It’s a Huge Week And We’re Just Getting Started!

Posted by Bob Warfield on September 17, 2007

I’m having a terrible time getting through all the interesting news out there.

Zimbra is being bought by Yahoo for $350M, which changes the complexion on the Desktop SaaS Wars.  I wrote recently about Google, and now Yahoo is jumping in.  I still think Microsoft can be beaten by leveraging the web to give businesses the control over key information that they crave.  This means architecting a configurable Trust Fabric into these tools to give the businesses control.  I’ve heard nothing but good things from friends about Zimbra, more so than about the Google apps in fact, so its an ideal foundation for Yahoo to work from.  Interestingly, Yahoo also seems largely focused on mail with the Zimbra acquisition.  Outlook is one of the most vulnerable applications in the Office suite and its not doing Microsoft any favors either.  See Mark Cuba’s recent defection from the Windows platform over Outlook problems under Vista.  This acquisition should also yield fresh encouragement for investors and entrepreneurs alike about what’s possible in today’s market.  Zimbra’s investors reportedly only had $30.5M in the deal, so they had a nice multiple return.  Time will tell whether this is the first in a series of rapid moves to roll up the nascent Desktop SaaS marketplace.  Zoho is the next logical target if so.  There’s also the inevitable undercurrent that this means mass layoffs at Yahoo soon.  That’s not necessarily a bad thing.  Acquisitions can bring valuable infusions of new blood and new energy that give an organization not only new drive, but a chance to average up on the talent front by cutting at the bottom.  It’s no fun, but it is healthy and inevitable at a firm of Yahoo’s age.

It’s’s Dreamforce week, their big annual user conference.  I’ll write more about it as it unfolds, so far I haven’t seen anything all that exciting.

The TechCrunch 40 conference is in full swing, and there are articles starting to appear that I’m still processing.  It looks like a blast already, though.

Lastly, we’ll see the long awaited announcement of SAP’s SaaS A1S offering, which I’ve already written a bit about on Wednesday.

Big week!

Posted in saas, Web 2.0 | Leave a Comment »

Who Doesn’t Love Java? (You’d Be Surprised! -and- Part 2 of the Tool/Platform Rants)

Posted by Bob Warfield on September 17, 2007

When Sun’s Jonathan Schwartz announced that he was changing Sun’s ticker symbol to JAVA, I wasn’t surprised that a lot of folks saw it as a silly move (nor surprised to see Jonathan being defensive).  Now don’t get me wrong:  I like Java.  My last gig involved prodigious amounts of gnarly Java code in a highly scalable Enterprise grid computing application.  The thing is, I have a problem with the idea that a single language can be all things to all people.   

In addition to Java, I’ve used a lot of other languages, and I thought it would be interested to see who else does too:

GoogleCreated a massive foundation for their massively scalable search engine in C++.  The foundation includes MapReduce (a way to employ thousands of CPU’s and avoid the Multicore Crisis), BigTable (their subsitute for a database), and the Google File System.  It all runs on a few hundred thousand Linux commodity boxes.  To be sure, Google has grown so large they now employ some Java, but C++ is the big enchilada.

YahooPushed into PHP back in 2002 in order to improve productivity and quit “reinventing the wheel”.  Translation:  They didn’t want 70% of their coding to be wasted.  Their presentation on this decision is quite interesting.

YouTubeWritten in Python, a hip relatively recent scripting language.  Google also makes extensive use of Python.

Facebook:  The clever fellows at Facebook are definitely technologists (maybe that’s why they got a platform together ahead of their peers) and built a fancy RPC (remote procedure call) core technology that lets them use almost any language they want.  Shades of Google core tech commitment, eh?  When they talk about what languages are used primarily, Java lands in last place.  The pecking order is PHP, C++, Perl, Python, and Java.

MySpaceBuilt on the Microsoft .NET Stack, so of course no Java there.  Are these boys a glutton for punishment or what?  Yet it proves that it can be done and that it will scale.

DiggDigg is built with the PHP scripting language, which is the “P” (or at least one possible “P”) in those LAMP stacks you hear so much about.

Wikipedia:  Like Digg, Wikipedia was also built on PHP

Amazon:  I was surprised and intrigued to learn that Amazon is language agnostic.  Like Google and Facebook, they’ve invested in some core technology that lets a lot of languages play together freely.  Werner Vogels goes on to say, “Developers are like artists; they produce their best work if they have the freedom to do so, but they need good tools.” 

Flickr:  Everyone’s favorite photo sharing service relies largely on PHP and Perl, with one twitchy systems programming service written in Java. 

Croquet:  A massively multiplayer game environment done in Smalltalk.  Who woulda thunk it?

There are many more, but you get the point:  Some, if not the vast majority, of the web’s biggest movers and shakers have decided not make Java their sole language and others have excluded it entirely!  Sure, the immediate reaction is that there will always be some C++ zealots who prefer their language to Java, but that doesn’t change the list all that much.  What we do see are a lot of “P” languages:  Python, PHP, and Perl.  What’s up with that?

Recall Part 1 of the Tool/Platform Rant Series, which talked about how 70% of the Software You Build is Wasted?  These hugely successful web properties have taken steps to reduce that 70% waste, and while there are many factors that contributed to their success, I believe a desire for increased productivity played a significant role.  The days when these languages were essential for performance are coming to an end too, courtesy of the Multicore Crisis.

There are other ways to skin this cat of over-reliance on a language that’s too low level without giving it up entirely.  Who doesn’t feel like technology gave Google a tremendous edge?  One can argue that C++ isn’t really the language of Google, rather, MapReduce, BigTable, and the Google File System are their language.  C++ is just the assembly code used to write the modules that these other platforms mash up.  In fact, it makes sense to think that C, Java, and C++ are all just portable assembly languages.  By doing this, Google has been able to focus a much greater proportion of its resources to create a proprietary edge for itself.  So have all the others on the list.

It gets more radical:  Amazon doesn’t care what language its developers use.  According to Werner Vogels:

I think part of the chaotic nature—the emerging nature—of Amazon’s platform is that there are many tools available, and we try not to impose too many constraints on our engineers. We provide incentives for some things, such as integration with the monitoring system and other infrastructure tools. But for the rest, we allow teams to function as independently as possible.

You have to ask yourself in light of all this, when are the Curly Braced Languages most and least appropriate?  The decision criteria are shockingly stark:

  • You Need a Curly Braced Language When You Are Building Something Totally Proprietary That’s Critical to Your Business And Can’t Be Built With Any Other Language
  • Run Away From Curly Braced Languages And Choose Something Else Every Other Time

Another thing:  notice the companies profiled above that have created their own Component Architecture Frameworks or Core Technology.  Google has core technology in spades.  Facebook has a system that lets them write components in any language they choose.  Amazon also allows multiple languages so long as a few core functions are adhered to.  Isn’t that interesting?  These guys want to be Polyglot Programmers, and they’re investing valuable resources to make that a reality.  This is all part and parcel of the “meta” thing too.  The realization that to fully utilize computers, you must be facile at manipulating the fabric of the programs themselves, and not just the data they are processing.  Adopting a polyglot view positions these vendors better to offer a platform, because it means they can allow others to use the languages of their choice.  There are a lot of benefits to being language agnostic!

Polyglot Programming is becoming increasingly well accepted in an era when the Curly Braced Languages (Java, C++, et al) bring little to the Web 2.0, SaaS, and Multicored Crisis parties.  Those languages are too low-level.  There is no support there for multi-tenancy, web pages, security, scaling, or any of the myriad of problems one encounters when building a Web 2.0 or SaaS business.  You have three choices:  write all of that yourself and pay the 70% overhead tax or become a Polyglot Programmer and minimize the overhead by choosing the best tools for the task and leaving your Curly Braced Power Tools safely in the workshop only to be brought out when some highly custom proprietary work needs to be done.

Related Articles

ESB vs REST (Another Case for Multi-Language Programming)

Posted in grid, multicore, platforms, saas, software development, strategy, Web 2.0 | 11 Comments »

Bumps in My Internet Journey (Links): September 17, 2007

Posted by Bob Warfield on September 17, 2007

Great post on Lucid Era about the challenges conventional ISV’s face in embracing SaaS

Ben Kepes wonders why MicroISV’s aren’t embracing SaaS more fully.  The answer is they must not understand the advantages.

Tuesday is the best day for breaking out a great new blog post.

Vista forces Marc Cuban to dump his PC and go Mac.  Microsoft needs to take care: its easier than ever to dump your PC these days.

Facebook study reveals users look for Trophy Friends.  Why am I not surprised?  There’s a fair amount of jabber in the blogosphere that maybe your friends on Social Networks are really not all that, er, friendly.  That doesn’t make it any less fun to mess around with them though, it just points to the incurable appetite many have to make new friends.

Learn how to be a MicroISV.  It’s cool when two guys with an Internet connection can build an interesting business.

70% of the code in games is wasted, here’s what you need to make a game platform.  The code waste meme resonates in a lot of places!

Posted in saas | Leave a Comment »

%d bloggers like this: