Friday, October 19, 2007

I was cleaning up an old laptop recently, organizing all my applications. In my clean up I checked out some of the lists of open source applications people use and pimped myself out with the latest - Miro was a good one I just picked up for podcast, while Juice I tried and dropped. This is just my list of useful applications and way to keep the links in one place for future reference. I found good stuff in this post and the comments as well.

Standard Applications

Being creative

Listening In Keeping Up


And for that friend who asked for some utility stuff for windows which was open source

Can you match icons to the application name? (All of the images already link to correct project homes).

Friday, October 5, 2007

It's great to be in amazement. His excitement, his wonder of the colors. Of course he ran around the rest of the afternoon pretending this was a web shooter and that he was spiderman!
Posted by Picasa

Saturday, September 1, 2007

A Random Walk Down Wall Street

Just finished up the book "A Random Walk Down Wall Street". It is required reading for my finance course, first few chapters anyway. Started it while on vacation and could not really put it down. I would call this book an excellent perspective, must read before you try to game the market.

However, just to add my 2 cents.
1. The market would not be a random walk if it were not for all the schemes people attempt. Each scheme forces the market to be random. I believe the systematic risk of a any given stock is based on the risk of the leadership of such company. Strong leadership, strong business. Read "Good to Great" to understand. The measurement of risk based on numbers at best (in my opinion) can only be used to predict some for of short run direction. As this information is no better than a chartist and any scheme would just serve to further "A Random Walk".

2. I did not see "Game Theory" discussed at all in the book, though I am sure there must be something out there on the topic. My guess is that unsystematic risk driven by plain old schemes, behavioral finance theory and even arbitrage are no more than forms of game theory. The real scheme would be if everyone learned from each other and played some form of tit-for-tat game theory. However with combination of independent and institution players and the global competitiveness this would not be possible.

As it relates to risk vs return, higher risk in the market only produces more returns for those in control of the risk. If others now your risk they can play against it (sounds game theory to me).

Moral of the story?
a. Long run thinking will be productive, assuming everyone else is coming up with schemes.
(corollary - There could be a situation of long run game theory which destroys you and the market)
b. Short run schemes can pay off, but its not much better than luck and gambling. Even the greatest theory could be undermined with others playing game theory against you. And hence timing of taking your money would just be luck.

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


List of widget based Systems

Widget Platforms

Widgets Tech

  • HTML
  • 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....

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

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 #

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

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?

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...
- - i find the slight to be slow way too often
- rubyforge - as i play with ruby more often i peak here (typically using gem)
- - 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.
- - found some good stuff there
- - 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 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

Friday, June 22, 2007

Multi-sided Platforms for Business or Software

The paper about Multi-Sided Platforms published by Andrei Hagiu sparked my thoughts about technology platforms vs market platforms and how they relate to each other. Two sided markets of buyers and sellers are most efficiently brought together via a platform, for example the stock market is a platform which has been replicated globally. I think most impressive about the stock market is first it was a platform which leveraged people, and now one driven by technology.

A market platform strives to gain economies of scale the more which is driven through the platform the more you reduce cost. Andrei's paper talks about both reducing the search cost and transaction cost. The paper does not go deeper to understand which software platforms/frameworks can best be used to drive down search and transaction costs. I would suggest the foundation for building a market platform based on technology would have to start with some form of middleware. I however think this can be used to look back in time to consider the market dynamics of J2EE, .NET, Corba, and IMO continues to plague the scripting languages vs structured languages (maybe perception, but none-the-less).

What I learned from Andrei's article is that providing a typical platform which offers economies of scale is only considered a single sided platform. Single sided platforms are business as usual, you sell a product and leverage a platform by which to sell this in greater scale.

A TWO sided (and specifically I refer to a two sided market) builds a platform which aims for economies of scale and positive indirect network effects. The latter to me is more buyers more sellers, more sellers more buyers and a big giant snowball from there. The stock market, Amazon, and your local supermarket are two sided markets. They bring product X to consumer Y in a market place. Technology geared towards two sided markets include the Integration Platform and Enterprise Services Bus (Producer and Consumer).

A multi-sided market (to me) is "something Z" interacting with "product X" delivered to "consumer Y. An example... Happy Meals! In the most current form, Sony Pictures is delivering the message about their movie Surf's Up (something Z), which is interacting with McDonald's food products, being consumed by children (probably not a good thing). In this example "Happy Meals" is the platform, it is the repeatable process. A multi-sided market has economies of scale and multiple network effects.

And finally a multi-sided market "technology" platform enables "something Z" to be created (and arguably deployed) based on the model (both data and services) stored within in "product X". I believe examples of multi-sided market "technology" platforms include, mobile providers, gaming systems and Though I would argue that some of these technology platforms are more OPEN/FREE MARKET driven than others (BREW in the mobile space is annoying). Also, just offering web api's does not make you make a multi-sided market technology platform! You must also provide the ability for "something Z" to be deployed in/on/around your platform.

Tuesday, June 19, 2007

Creating a Tag Cloud

First I was very frustrated, I was attempting to figure out how to generate a 'field' cloud from a lucene index. I was googling '"tag cloud" generator lucene' and I just could not find my way. My view is google at times is losing the simplicity of it's core strength. I wasted some time, but eventually attempted to search in google's blog search and finally found a collection of "tag cloud" generators. And finally found a java cloud generator as a starting point. And that while interesting as it is fully integrated into hibernate is used to generate a cloud from the index created behind the data within your application.

So... I gave up and built it myself, but got a head start from two projects
a. Luke, Lucene Index Toolbox. Great tool for working Lucene. On the first page there is a list of terms, so I started by reviewing that code base.
b. A good PHP example with some basic CSS and leveraging of SPAN tags, also reviewed the PHP code to see how they randomize and divine strength of item within cloud.

I chose to crawl from my blog and indexing a few times -topN 2000, so not a very large crawl, but enough to generate the dataset. And from that data the cloud on top which is based on the 'content' field, and if you scroll all the way to the bottom there is a cloud based on the site field.

I will post the code once I get it cleaned up. If you need it sooner just let me know.
Here is the example cloud I am able to generate.

 products    software    real    main    blog    tools    links    source    business    news    services    search    policy    privacy    documentation    community    contact    service    view  

Wednesday, June 13, 2007

Book Review - Audio Books

I 'listen' to audio books on tape/cd/audible. For a period of time I had a commute of almost an hour each way and for that year of time listened to over 50 audio books. At this point I have listened to about 100 and I just bought two more today ( The Dip: A Little Book That Teaches You When to Quit (and When to Stick) by Seth Godin and "Codes of Power" ). First the list of 5 audio books in my collection which come to mind immediately.

1. Ten Things I Wish I'd Known Before I Went Out into the Real World by Maria Shriver is a great reflection on life. When I first read it I was caught off guard how good it was.

2. Good to Great: Why Some Companies Make the Leap... and Others Don't by Jim Collins I am more of a fan of the biographies from Jack Welch and other leaders, but I thought this was a testimony to execution.

3. Night by Elie Wiesel is a story of the Holocaust and while always painful to read about should not be forgotten.

4. Leadership by Rudolph Giuliani - Just love his persistence and execution, a very detailed oriented person. These are the type of business and leadership stories you learn the most from.

5. Bobby Fischer Goes to War: How A Lone American Star Defeated the Soviet Chess Machine (P.S.) by David Edmonds - I 'listened' to this book while painting my son's room (when we has a newborn) a little over three years ago so it just always pops to my head and I enjoyed it.

Here is my current collection of audiobooks (some I had given a rating a few years back), if you want an opinion or start a thread on a book just let me know.

A Passion to Win (Sumner Redstone) (8/10)
A theory of relativity (8/10 - novel)
Alexander Hamilton
And if you play Golf, you are my friend
Anthony Robbins - Get The Edge
Anthony Robbins - Personal Power
Best Practices Building your business with Customer Focused Solutions
Big Picture Investing
Bobby Fischer Goes To War
Brian Tracy - The Luck Factor
Brian Tracy - The psychology of Selling and The Art of Closing Sales
Buffetology (9/10)
Built To Last (8/10)
Codes of Power
Daniel Goleman - Emotional Intelligence
Denis Waitley - How to build your child's self esteem
Dianetics (L. Ron Hubbard)
Dip - Seth Goldin
Don't send a resume
Execution (CD) - Larry Bossidy & Ram Charan - 8/10
First Son
Good business
Good To Great (8/10)
Grammar Smart (CD)
Gravity (Science Fiction)
Harvard Business Review - March 2004
How to become a Great Boss
How to become CEO
How to Challenge yourself and others to greatness
How to get started in real estate investments (3/10)
How to read a person like a book (5/10)
How to supervise people
Joys of Yiddish
Leadership Rudolph W. Giuliani
Life Strategies (Dr. Phil) (3/10)
Lightposts for living (1/10)
Lives of Moral Leadership (7/10)
Lord of the Rings (CD)
MacArthurs War
Maps in a mirror, Short Fiction of Orson Scott Card (Science Fiction)
Masterthinker - Dr. Edward Debono ( 1/10)
Mavericks at work
Me and Hank
Moby Dick - (8/10)
Multiple streams of income
Mystic Places (2/10)
Napolean Hill - The Science of Personal Achievemen
Nicholas Nickleby
Night, Elie Wiesel
Often Wrong, Never in Doubt - Donny Deutsche
On Negotiationg (Mark McCormack) (8/10)
Our lady of the freedoms
Pattern Recognition
Pocket MBA Series - Analyzing Financial Statements
Pocket MBA Series - Growing and Managing a Business
Pocket MBA Series - Leadership and Vision (7/10)
Pocket MBA Series - Sales and Marketing
Pocket MBA Series - Tracking and Controlling Cost
Principle-Centered Leadership - Stephen R. Covey (8/10)
Profitable Growth is Everyone's Business
Purple Cow
Six Days of WAR
Six Sigma -
Somebody's gotta say it
Staying street smart in the internet age
Stephen Covey - Living the Seven Habbits
Ten Things I wish I knew before I went out into the real world - Maria Shriver (9.5/10)
The alchemy of finance
The E Myth revisited
The Essential 55.
The Explosive Child
The Fabric of the Cosmos
The Four Pillars of Investing (CD) (8/10)
The Goal
The Google Story
The great unraveling (8/10)
The innovators Dilemma
The intelligent investor (7/10)
The Japanese Art of War
The lexus and the olive tree
The Long Tail
The No Asshole Rule
The portable MBA in Economics
The Power of Intention
The Richest Man in Babylon and the Magic Story
The roaring 2000s investor
The Secret of Shambhala
The secrets of great investors
The sonnets (Shakespeare)
The Virtues of Aging
The Wild Blue
Tom Jones
When you come to a fork in the road, Take It! - Yogi Berra
Wherever you go there you are
Winning with the Market

Tuesday, May 15, 2007

Down Ruby Down.

Rails vs Java

That was dumb! So 'Rails' is a packaged framework and server....
I think that's called an application server. I remember the packaged c/java application servers circa 1997. First they are simple, then they bloat, and then they float. After all that you learn what worked and what failed, you build it modular because all needs are not created the same. Then you learn that inflexibility is more economical than flexibility, so you package it with different configurations. You learn what configurations are demanded the most and you start to move resources to those projects and bloat those all over again. Then comes ruby to make believe like it's saving the day, but really it's just trying to get you to begin all over again.

I am not against Ruby, just not sure it will not have the same problems.
And GEMS within ruby is a psuedo-rpm'ish package/installation system.

And I do believe that the simplest form of building web applications has not yet emerged. I am still trying to understand why the template engine approach was not the cure-all.

Wednesday, May 2, 2007

No more school books!

This is just not right, I am sitting in class listening to my professor speak about macro-economics and throwing out terms out left and right. As he chats up a topic, I write some notes (using google docs). I then toss the term into search, and typically get a hit at wikipedia. I toss the link into my notes and quick read the the first paragraph. The definition is a match to my professor's description and has quite a bit more supporting details. He mentions "Sealed Air" and their special dividend, quick search and wala "Sealed Air Case Study".

First, wow. What's changed since the time I did my undergrad. Wireless! Fedora! Online Services! it's just amazing to think what will happen when these solutions are productive. The combination/impact of social tools and knowledge/content tools has to be the beginning of a new set of productivity capabilities by which we educate ourselves. I remember being ahead of the curve XX years ago as it relates to using tech at school, but now it's becoming almost productive. Awesome.

Second, no more school books. With all this content, this access, shouldn't we teach without paper? Shouldn't the education system save millions of dollars by leveraging these resources? So, down to the basement I go looking for an old text book. I find an old algebra book and check out a few sections
* Equations and Inequalities in One Variable *
and find "Paul's online math notes"
and Math TV (a subscription service)
and Analyze Math
and a presentation done in the Missouri Rockwood school district [ppt]

Well needless to say the content is out there, it's available. Some good, some bad, but it's out there. I think the program/curriculum teachers use are separated from the content anyway, so why not use this widely available to content married to the curriculum. I realize this statement is naive as many smarter folks have been thinking about this, how to marry social networking with practical education. For me today I felt it was all connecting and felt somewhat productive in it's use.

Friday, April 6, 2007

Marketing Project - Local Auction House

Last semester I took the 500 level marketing course for my MBA. We were required to do a psuedo business plan. Of couse I wanted to do one on open source software however we were barred from doing something related to work. While at first annoyed by this, I enjoyed tackling a problem not related to the everyday stuff. Suggested by someone with a background in art and auction houses we noodled on the idea of the auction house. We figured we could tackle this problem with three parameters (a) it has to be regional (Philadelphia) but high end (b) goal is to increase revenue over three years and (c) we needed to bring in folks which where potential future auction house attendees.

Our assumptions about the existing auction market is that it catered to higher income folks typically without children in the home anymore. So our sites were set on regional high-income with families. After thinking about this post the assignment, I realize we could have been further fine grained, in that what age bracket should the children be in and what psychographic behaviors might we want. These things would further help refine the target segment and ability to reach that audience.

The idea then was to introduce a second set of auctions for the auction house to run focusing less on antique art and collectibles, but more on unique items relevant for the decoration, design, and placement within kids environments. We are not talking about toys or items they get the pleasure of breaking ( I have two boys I know the pain ), but items which are treasured used to create a unique environment. Our suggestion was a mixed product line of items 55% art, 25% toys (collectible), 15% clothing (unique, regional designer), 5% misc (leveraging traditional product line).

Realizing that a regional auction house prides itself on brand, tackling the second product line has to be done with the same screening and passion for excellence. The goal is not to increase revenue by just bringing in more feet, but attracting folks with the eye for excellence and potential future auction house goers.

Realize, this was not a scientific study, nor did time allow us to become super-experts but we did have some fun with it. Marketing Plan.pdf

We had four good resources of information
1. Demographic information. On this topic you have to love the government they sure keep track of lot's of information. We used American Fact Finder and the American Community Survey. The information valuable to us (and just interesting i guess )
* about 200,000 folks 25-34 years of age in the Philly area
* about 200,000 folks 35-44 years of age in the Philly area
* And of those 400,000 folks about 19,000 earn greater than 100,000$

2. National Association of Auctioneers Was a great source of information about the auction house. Lot's of good stats in there about how much is spent on auctions, differences between live and web, differences between regions and information on type of products sold at auction.

3. Past sales of an auction house. Pook and Pook has information online of all past sales. We aggregated that information from 2003 to present.
- median for items (referred to as a lot) sold was about 700$
- each year they sold from 5600 to 8000 items sold
- prices ranged from less than 100$ to almost 500,000$
Interesting for me was the range in prices of items sold. While their public auction prices are disclosed they probably do other work as well which is not part of the standard auction process.

4. Attended live auction. This was a great experience. Regardless of the fact I was trying to understand the auction process and the auction crowd the event was a lot of fun. If you have not attended a live art and antique auction you should. As for the auction process I learned quite a bit including that there are four sources of bids
* book - people who write in bids before the event.
* floor - people who live attend the event
* phone - folks who can dial in via the phone to make bids on items
* web - they are connected via Ebay's live auctioneer tools to take bids directly from ebay.
My experience was the HIGH priced items were typically purchased by folks on the phone, rather than the floor.

All in all it was a great experience, both the project and learning a little about the auction process.

Sunday, February 18, 2007

Ice Skating and Persistence

Another week of ice skating with my son, but it was THE day. The day which he let go of my hand and made his own way. He let go and went round and round the rink. He fell a few times, got up and said - "No big deal, you get up and you try again". I skated behind him the rest of the time, my eyes tearing up with joy. I had made him a promise, when he skates the rink by himself he gets a hockey jersey. We left the rink went right to the store and bought that jersey.

Blue had a good weekend and I implemented a dynamic capability to add new hosts, services, contacts, groups, ... This is an important step for blue, dynamic ability to acquire new inventory and persist it. Next step is to build an addition to plugins so you could start from scratch and just dynamically add inventory - no more brute force configuration. Important point though.... The persisted configuration is done in a nagios format, so you could pick up the configuration and just use it in a nagios installation!!!! This will also allow you dynamically to add nagios configuration files to blue as well.

So both events were excting to me, but only one made me tear up with pride.

Friday, February 9, 2007

RPM, Java and frustration

First in the past 6 months for whatever reason I ditched my windows box and completely living my life on Fedora. There have been some painful moments, but overall experience has been good. After getting into the groove of things I can develop, work and play as always. Open Office is good I just crave for it do more and do it faster. Marcf (blog) has a differnt opinion, and I hear you Marc, it just takes a commitment and ability to forget some of the key strokes engrained in your brain by years of using a single OS (one step back, then two steps forward). So I am now one of the converted, not yet religous, but converted.

Great, and I should probably talk more about my experiences in the conversion, but today it's about RPMs. Not using RPMs, installation of RPMs are GREAT, SIMPLE, QUICK. I have been using yumex and life is pretty good.

As a java developer RPMs feel wrong and more specifically rpmbuild is annoying. And if you suggest jpackage, DON'T. I believe in well defined and slim containers with application isolation. I believe in 'rpm -i' and RUN. I believe that an application should have one requirement - the JVM. I am confused by the desire of jpackage to have all my libraries referenced, leading to DLL hell. I am confused by rpmbuild as a driver for my build system as opposed to a tool for building an RPM. I am confused that the LSB model is pushed all the way up to the application level.

I like the RPM model and in this case would really like to see two things (1) a solid ant integration with RPMs so I could skip 'rpmbuild', 'spec files', 'faking rpm dir structure', ... and (2) RPMs for applications rather than core OS. Maybe something for me to tackle.

So... what did i do/hack for blue...
1. I build my rpm information within ant task
first creating RPM directory structure
second load spec file in rpm/SPECS
third layout files into my 'buildroot' which will be rpm/INSTALL

<mkdir dir="${build}/rpm/RPMS" />
<mkdir dir="${build}/rpm/SPECS" />
<mkdir dir="${build}/rpm/SOURCES" />
<mkdir dir="${build}/rpm/BUILD" />
<mkdir dir="${build}/rpm/SRPMS" />
<mkdir dir="${build}/rpm/INSTALL" />

<copy todir="${build}/rpm/SPECS" file="blue-plugins.spec" />
<copy todir="${build}/rpm/INSTALL/usr/lib/nagios/plugins/" >
<fileset dir="${dist-plugins}" />

2. call rpm ant task

<rpm specfile="blue-plugins.spec" topdir="${build}/rpm" command="--bb --buildroot=${build}/rpm/INSTALL" />

3. the simple spec file!

Summary: Blue Java Plugins, Blue is a port of Nagios to Java
Name: blue-plugins
Version: 0.8
Release: 1
License: GPL
Group: Applications/System
Vendor: Blue
Packager: Richard Friedman
Prefix: %{_prefix}/lib/nagios/plugins
BuildArchitectures: noarch

bla bla bla





Monday, February 5, 2007

HP Acquires Bristol

Another acquisition, this time HP (HPQ) buys Bristol Technologies.

Bristol's Transaction Vision, is defined as follows.
TransactionVision® provides Business Process Monitoring that dramatically increases visibility into your customer facing transactions. Just as you would track overnight packages from origination to delivery, TransactionVision tracks customer transactions throughout their entire lifecycle. [source]

One of the interesting points in their literature, which I found useful, is ability to track transaction information through MQ and J2EE. Having been responsible for a large scale middleware environment using both J2EE and MQ we faced this very problem. We were able to build significant monitoring capabilities around our J2EE platform using some of our stuff and Wily's Introscope. However, as soon as the message left and went to the bus we lost a lot of visibility and information about how much time it spent where. The tools around MQ only provided for us general information. If Bristol's Transaction Vision helps look deeper, than that is good. However, not sure I could have justified more tooling around monitoring MQ as we already had incurred the expense of monitoring our middleware environment. In this case, IBM should have better out-of-box tools for deeper monitoring within MQ. Maybe they do today, it has been a couple of years since I last touched that environment.

So while Transaction Vision seems to have bridged visibility across some environments, I am still confused as to HP's acquisition. They seem to have quite a bit technology in this space 'Transaction Analyzer' and 'Business Process Insight' being two of them. Does Bristol complete, complement, or replace for them?

Thursday, February 1, 2007

Dell and Systems Management

Earlier this week there was 'Symantec acquires Altiris' and in the latter half of the week I read the article about Michael Dell taking the helm. It was in the article "Can Michael Dell find his Mojo?" on page 4 that they suggest that for Dell (the company) to move ahead it needs to build its strength in systems management. Will this really help Dell? I guess from a purely dollars perspective maybe they gain more adoption because they can complement it with their own systems managmenet software, reduce the cost for large installations and have a more complete one shop packaging for mid to large business. But did it help HP to have OpenView, IBM to have Tivoli?

At some point in time it probably did, but if it is critical to have those type of systems how did Dell get that far? How did they gain a leadership position over HP and IBM? How come IBM sold off the PC business since they had Tivoli (the largest player in systems management). HP's renewed momentum is because of leadership, not because they have Open View. What people want from DELL is the best DELL product and service, how Michael Dell defines the culture of the company will define how they deliver that.

Wednesday, January 31, 2007

Supply and Demand

Currently I am enrolled in the MBA program at Temple and this semester taking the graduate level economics course. This is all good, and professor seems to love the topic, which makes for a fun course.
However, for those thinking about doing your MBA, do it now don't put it off. I have had previous opportunities to go for my MBA before I had kids, and when I had employers that would cover a much bigger portion of the bill. Big mistake it only gets harder and I think you have less time to get the other benefits of networking and socializing that you might get if you can spend more time getting involved.
Also my guess is that if you mapped the value of an MBA relative to age, so your Y is value of MBA vs X being your age, value is much higher the younger you are maybe mid 20's? While this might be true and the value I receive might be diminished, it keeps me learning and that is worth it.

Monday, January 29, 2007

Symantec, Altiris, and the field.

Does anyone know the amount of systems management vendors in business, how many are up and coming, how many have vanished and how many have gone open source ?
Symantec acquires Altiris

And who makes up the top 5 these days? IBM, HP, CA, BMC and now Symantec?

Every time I check out a VC site I find at least one 'management vendor' and let's check out this list from Accel Partners
* Broad Jump (Acquired by Motive, listed below)
* Hyperic (Recently went open source)
* Mendocino Software
* Motive
* Remedy ( Acquired by BMC )
* Wily ( Acquired by CA? )

And to pick another random VC, Mayfield Fund
* IT Groundwork - Open source systems management (nagios ;)
* Cemaphore
* Centrify
* ... getting tired of this ;)

Get it. There are a lot of them, and managing systems is important. There are a lot of ways to do it, and many projects and products are willing to help you ;)

Ice Skating and Coding

Absolutely not related.
I took my 5 year old, ice skating this weekend, first time and he did a great job. But earlier I had spent the morning working on Blue. Some how everyday I get a combination of the real world and my virtual world, life is good.
Synchronized Blue with Nagios 2.7, pretty simple. Also, had someone offer to Maven'ize project blue (, looking forward to seeing that.

Tuesday, January 23, 2007

Blue, a java port of nagios.

Took on this project in my spare time quite a while ago and very excited by the progress it is making. While I am a big fan of nagios there were three things preventing me from getting invovled

a. develop on windows. I tried hard to get things working with cygwin, but had problems especially with plug-in development.

b. build to deploy. I just like to download and run, with as little constraints as possible. I talked to other nagios users in production environments and they had similar desire.

c. java developer. While I can still code in C/C++ I have been developing in java for so long now that I just find my way around a lot quicker. Also, like to leverage what is built into things like jboss, jetty and tomcat and other great projects.

So, what did I do? I rewrote nagios in java, and calling it blue. I rewrote the server, the console and some of the plugins. You can run blue in any combination with existing nagios components and configuration files. However, blue server, console, and plugins out of the box can just run in a self-contained location on any OS.

Stay tuned for a distribution as it is coming shortly.