Innovation


Innovation and Code23 Dec 2007 11:36 am

A Microsoft quote from an NY Times article I’ve already cited has been bugging the crap out of me. It bugged me when I first blogged about this article and it bugged me as I wandered around B&N last night doing the last of my xmass shopping. I wound up in the management section and picked up a book on the top 10 mistakes leaders make. Staring at me as I flipped open chapter 5 was confirmation that I wasn’t nuts.

Here’s the quote that bugged me:

“I’m happy that by hiring a bunch of old hands, who have been through these wars for 10 or 20 years, we at least have a nucleus of people who kind of know what’s possible and what isn’t,”

I’ve lost count of how many times as a software developer I’ve sat down and said “I wonder if this is possible?”. When I created WorkZoo I wondered if it was possible to aggregate all the worlds jobs into a single database - and I got pretty darn close. When I created Geojoey I wondered if it was possible to have a rich pure Ajax application with a client-side MVC model - and it was. When I created LineBuzz I wondered if it was possible to post inline comments on arbitrary text on any web page - yes it’s possible. When I created Feedjit I wondered if it was possible to scale to serve real-time traffic data in a widget. We’re serving almost 100 Million real-time widgets per month now.

I started coding on an Apple IIe and later moved to IBM PC’s so in my youth Apple and Microsoft were symbols of innovation and I wanted to innovate the way they did. Apple’s still doing a great job, but it breaks my heart to see MS floundering like a fish out of water in the new world of broadband, browser standards, open source and dynamic web applications.

Come on guys. Get it together already!! Fire those know-it-alls, hire some new blood and pretend for a moment that the past doesn’t matter and that anything is possible.

Innovation and Startups17 Jul 2007 08:17 am

I’m at open coffee this morning at Lousa’s Coffee shop in Seattle - here early to get some reading in. Come down if you’re free this morning. There’s going to be an awesome group of entrepreneurs and innovators here from 8:30 until everyone leaves (usually after 10:30).

Technology and Innovation and Startups and Code16 Jul 2007 05:55 pm

I run two consumer web businesses. LineBuzz.com and Geojoey.com. Both have more than 50% of the app impelemented in Javascript and execute in the browser environment.

Something that occurred to me a while ago is that, because most of the execution happens inside the browser and uses our visitors CPU and memory, I don’t have to worry about my servers having to provide that CPU and memory.

I found myself moving processing to the client side where possible.

[Don’t worry, we torture our QA guru with a slow machine on purpose so she will catch any browser slowness we cause]

One down side is that everyone can see the Javascript source code - although it’s compressed which makes it a little harder to reverse engineer. Usually the most CPU intensive code is also the most interesting.

Another disadvantage is that I’m using a bit more bandwidth. But if the app is not shoveling vasts amount of data to do its processing and if I’m OK with exposing parts of my source to competitors, then these issues go away.

Moving execution to the client side opens up some interesting opportunities for distributed processing.

Lets say you have 1 million page views a day on your home page. That’s 365 Million views per year. Lets say each user spends an average of 1 minute on your page because they’re reading something interesting.

So that’s 365 million minutes of processing time you have available per year.

Converted to years, that’s 694 server years. One server working for 694 years or 694 servers working for 1 year.

But lets halve it because we haven’t taken into account load times or the fact that javascript is slower than other languages. So we have 347 server years.

Or put another way, it’s like having 347 additional servers per year.

The cheapest server at ServerBeach.com costs $75 per month or $900 per year. [It’s a 1.7Ghz Celeron with 512Megs RAM - we’re working on minimums here!]

So that translates 347 servers per year into $312,300 per year.

My method isn’t very scientific - and if you go around slowing down peoples machines, you’re not going to have 1 million page views per day for very long. But it gives you a general indication of how much money you can save if you can move parts of a CPU intensive web application to the client side.

So going beyond saving server costs, it’s possible for a high traffic website to do something similar to SETI@HOME and essentially turn the millions of workstations that spend a few minutes on the site each day into a giant distributed processing beowulf cluster using little old Javascript.

Innovation15 Jul 2007 02:01 pm

Many entrepreneurs, particularly the MBA set, start with competitive analysis. Sure, it’s a valid approach and you might find a gap in the market that you can easily fill or a product or service that could do with some improvement. But if Larry and Sergei did that before they started playing with the PageRank algorithm, they might not have gotten as far as the first keystroke.

Here’s a list of 98 social networking websites on Wikipedia - in case you’re looking at getting into that space.

Many of Einstein’s most original ideas occured to him outside of academia while at the patent office from 1903 to 1911, including his paper on electrodynamics of moving bodies which proposed the idea of special relativity.

When I chat with friends and fellow entrepreneurs, I’ll throw out an idea and the reaction is often a comparison to other ideas. “So and so is working on something similar” or “you should take a look at such and such”. So existing ideas and products are the departure point for our conversation.

If you’re a developer, your strength is in your ability write original code, not in your ability to analyze the market-place.

If you have an idea and you have the ability to implement it yourself, I recommend developing it somewhat before doing any competitive analysis or exposing it to your friends and family. Just take an extra week to play with it. You might come up with a completely original idea.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License.