Wednesday, July 25, 2007

Welcome to the Widgets web

It started innocent, I came across widgetbox and said sure I can write a widget. 7 Blidgets, 2 remote SWF widgets, and 2 social shout out widgets later I was wondering more about widgets. (Obligatory link to wikipedia). So did a little digging and found the following ( this is what I found, let me know if there is more )

  • 9 Platforms for widgets
  • 3 main technologies for web widgets
  • 10 desktop widget systems
  • 12 Million in funding I can find,
  • 2 Companies internally funding platforms (Fox and Vendio)
  • Mark Cuban funded one of them (undisclosed amount)
  • Mobile widget providers are popping up (found 3 but did not look that hard)
  • W3C? is driving a standard for this
  • 2 Widget conferences

And I found one great post which lays the whole thing out.

My Take I have not written widgets yet for all the platforms, though I think the simplicity of widgetbox enables creation, distrubtion, management with just knowledge of the basics (html and/or javascript). Want to go deeper then write some flash. I am impressed with yourminis, but not so much for the widget platform, rather for the potential of a "Social Desktop".

Most of the folks in this space are concentrating (at least from my perspective) on the ad network, I am not sure if the intention is to be the ad network or be the a channel for the ad network and claim a slice of the pie. They each seem to promote the number of widgets deployed, which I guess represents the amount of web-space they have access to. Bigger your network bigger your valuation. It also seems their biggest distribution is the blogging universe and the social platforms likes facebook/myspace. Myspace has SpringWidgets? , Yahoo has widgets, Google has theirs, MS has theirs, Apple has something, and note for most of these there is not only a widget concept but a layer which enables you to integrate closer to their core platform. I would expect (probably already exists) a widget platform which has default integration with MyFace? and one which is focused on 'mashups', maybe a QED-Mashup-Widget-Maker. I figure that a good exit for these companies would be acquisition by a core social or similar platform, widgets are important to a platform (because they offer front sidemulti-sided market platform dynamics). There is definitely one platform / company which is seems to resonate across all widget makers, "Adobe, all your widgets are belong to us."

I am by far not an expert on widgets, just writing my impressions so far.

Widgets I wrote, writing, or just playing with

WidgetBoxWidgetsIWrote

List of widget based Systems

Widget Platforms

Widgets Tech

  • HTML
  • FLASH
  • JAVA

Common Desktop Widget Systems

Mobile Widget Systems

Browser Extension

Standards for Widgets

Widget Conference

Widget Business Model conversations and observations

Monday, July 23, 2007

HP Acquires Opsware... don't they have Novadigm?

I heard the ground rumbling all the way from the valley today.. The blast of emails about HP and Opsware where my tsunami. Major props to Opsware for growing and executing on the business plan. More consolidation in this space is never surprising, but it does seem like we have an oligopoly in this market. So much so it is controlled by the 'Big Four' as they market refers to them.

But what surprises me is a few years back HP acquired Novadigm and in this article even questioned how would the relationship with Opsware and Altiris (acquired by Symantec) continue. The question I wonder is why couldn't HP/Novadigm execute in the space.

* Maybe the answer is the target markets are different and they are complementary and now they could take on the market.
* Maybe HP made the wrong bet, and 120+M for Novadigm is an excusable rounding error.
* Maybe it was the leadership/execution and now there is different leadership from the top through their software division.

Short term I think this is a good move for HP, they keep shaking up the software organization enough no one will ever figure out if they executing well or just keep falling forward. But they have enough of the forward momentum they have solidified their spot in the Big Four for some time.

So.. WHO, really WHO, is left in the mid market do anything unique?

Thursday, July 19, 2007

Lucene Tag Cloud Generator

I wrote a tag cloud generator for Lucene, examples of it include
The generator is written as Nutch Plugin for no good reason ;)

I build the cloud from reading the lucene index and pruning it down. It is pruned down by a junk words file which can be used to control how it gets pruned down.
Once I build the list I run a javascriipt file passing in the results, and then the javascript outputs the cloud.
There are a few files to all of this....

JavaSourceCode
The source code requires lucene. Though I wrote it as a Nutch plugin, it does not depend on Nutch.

JunkWordsFile
The junk word file contains terms, and some options.
The options are baked into the code.

The words do not support regex, they are just matched.
Options inlucde

-numbers - ignore numbers
-smallwords - skips words with three or less chars
-dashes - ignore terms with dashes
-# : comments are also supported with #

JavaScriptFile
This file converts into HTML and uses CSS to dress the cloud.

CloudCssFile
CSS file is modified off an example i found in a php tag cloud project.

Tuesday, July 10, 2007

Enterprise 2.0 Slideshare Read-Through

Watching tech videos on youtube gets boring real quick. No offense to the speakers, being one of them, most are not that exciting. The points made can be summarized pretty quickly and better absorbed through the presentation material, which was worked on for a longer period of time than the presentation itself (sometimes). I am getting to be a fan of SlideShare and recently dove into quite a few slideshare presentations about Web 2.0.

Good Reads
By far #1 - Wikinomics



Meet Charlie - Quick read, but message is we are all going to work online.
Dissecting Blogs - 63 slides, but broken down fairly well. Always good to learn from others experiences.
Community Hotbeds (Jams) : Any insight into IBM is worthwhile, but slide 30 of 47 was interesting. Creates a visual network of connections via your emails. Within a large company I think this information would be valuable to understand how and who people interact with. Maybe even used to automate building networks.
Sowing the seeds of Enterprise 2.0 - Good visuals in a preso, will be using this style myself. But I like this quote in defining 'enterprise 2.0' "The future has already arrived. It's just not evenly distributed yet"
Enterprise 2.0 Case Study - Great style for 172 slides! Found this to be motivational.


Somewhere in the middle of the road
Enterprise 2.0 - Trying to make the jump from web 2.0 to enterprise 2.0 by adding the concept of the tacit media. I am not sure I follow, and from what I do grok, not sure I agree.
Enterprise 2.0 : Folks working on defining Enterprise 2.0, but still does not have me convinced in the definition.

Don't rush to read.
Enterprise 2.0 Keynote - Wiki this, wiki that, but I think the message is 'distribution is disruption'.
Enterprise 2.0 - 3 slides on saying Web 2.0 in the enterprise is Enterprise 2.0. Not sure I buy this one.
Social Software - It's in German but found some interesting sites/links in there.
YouPlus - pitch for youplus?
Moss vs Mediawiki - I just suggest taking a look at the wiki comparison site.

Link for the full list on Slide Share is here.

Sribd has a collection of Web2.0 documents, but unorganized and many are not worthwhile.

Sunday, July 8, 2007

Where do you search for code?

I was looking for some open source projects which incorporated integration into a web service. Searching for things on google is just getting weaker, so I started with phase two: search the repositories. Here is what I search... Do you search something else?

Sourceforge.
The master of all projects Sourceforge is always my first location. Usually find something there and typically gets me going.

After this it's more of a list and less of an order...
- java.net - i find the slight to be slow way too often
- rubyforge - as i play with ruby more often i peak here (typically using gem)
- Apache.org - Can you guys add a 'project' search. The generic google search is OK, but how about a search which returns a project and it's major links.
- codehaus.org - found some good stuff there
- code.google.com - Can you just return a list of projects instead of the junk?
I am sure there are some more repos i have used to search, but those are the main ones.

I also use Koders.com and recently started playing with Krugle as well (Thank you for returning a project list, I like this one).

How do you find a project?

Sunday, July 1, 2007

Review Google Video- How to design a Good API?

Watched a google video by Joshua Bloch on "How to design a Good API". Great nuggets, something all should listen to every few years.

1. Start with Requirements and a short Spec (one page is ideal)
Man, I do agree with this. When I see a requirement doc coming which is more than a page I get nervous. But he also reflects on a what a requirement is and promotes thinking in generalization rather than fixed implementation. Very important for API developer, but to his point important to all developers. He does caution on overusing this principle to justify over engineering.

2. Prototyping good. Write Plugins. Write Example Code.
Code early, Code Often. Nothing better than doing.

3. You need a lead!
APIs can get over constrained, over engineered, designed by committe, and just plain messed up without direction and decisions. You need an architecture and architect to make decisions and now when to commit.

4. Real world use will flush out bad.
Hmm... it will also at times propagate bad behavior. And he does suggest that as well. I do think there is a whole in his thought process as it relates to longevity of platforms and APIs. I think that whole is that one constraint is time.

5. Name everything as long and obfuscated as possible.
Ha.. Just getting your attention. Of course he said name it simple, name it smart. Code should read for a 5th grader.

6. Document Religously for Reusability
Not sure I agree with this one in absolute. I think someone who documents sets the right tone and probably delivers better code, but I don't think that drives adoption/reusability. Too many things we all use has NO documentation. Though, I 100% agree better documented is probably just better code.

7. And as he suggest the biggest nugget (and I agree) "When in doubt leave it out".
My background and experiences have me brain-trained in this, once an API is published it's there for life. The CTO I worked with at Bluestone software had a straightforward approach to enforcing this: Change an API and you must change your name on every document you every created since birth, once that is completed you can change the API.

All in all this should absolutely be taught in high school computing as part of the basics.

Many more nuggets to review, but here are some other links and blogs about the topic
Blog Search