Saturday, December 17, 2005

The final installament of my three part series, "Ten books an open source programmer needs to have on the shelf."

It's been my hope to introduce authors you might not be familar with or books you might not know. So you won't find Eric Raymond, Bruce Perens, or Richard Stallman. While these guys are arguably important people in the free software movement, the books I am have focused on with this list that are actually useful in running a business and an open source project. While the ideological foundations of free software are of supreme importance, if you are already running an open source project, you are undoubtedly are pretty familar with those ideas. So I am trying to offer these as a resource to help your project and business succeed.

  • Joel on Software: And on Diverse and Occasionally Related Matters That Will Prove of Interest to Software Developers, Designers, and Managers, and to Those Who, Whether by Good Fortune or Ill Luck, Work with Them in Some Capacity

    Ok I have to admit I am a big of fan of Joel Spolsky. While he has spent a ton of time at Microsoft writing software, it doesn't change the fact that at Joel understands the difficulty of writing software, he understands how to do it well and his advice is almost uniformly always right on. Joel know software and software development. His book is full of great ideas whether you run an open source or closed source software company.

  • User Interface Design for Programmers. One of the areas that open source/free software lags behind it's in user interface design. This shouldn't come as a surprise really. User interface design is really hard work. It requires attention to detail and more importantly it requires that the programmer realize that other people use their software. This is especially difficult for open source programmers as they often start their project to scratch an itch. This means that they are usually active users of their own work. This also creates a problem, namely "it works for me" syndrome. As the first user and undoubtedly the more experienced user on your own software, you understand the fundamentals and why you made the choices you did in UI. A new user will not have this knowledge and will come with existing assumptions about UI and how your program should work. This little book has great advice on interface design and will certainly improve your software. I personally believe that UI design is one of the last areas where free software needs to improve. Let's be frank though - only one company has really succeeded at UI design and that's Apple. It's not easy, but just following the basics of this book will improve your software.

  • The Art of Computer Programming, Volumes 1-3 Boxed Set by Donald Knuth. Let's be frank if you don't have these books you are missing a deep understanding of computer science and algorithms. Need a sorting algorithm? Read Knuth. These books are a hard read and they will take time. The journey is well worth and you will come out with a deeper understand of computer science as a result.


Choosing the final and most important book that should be in every open source programmers shelf has been difficult. I truly believe that if you are going to run an open source project this book will prove exceedingly valuable.
  • Producing Open Source Software : How to Run a Successful Free Software Project Ken Fogel who has worked on CVS and Subversion version control systems has produced a great book about the complexities on not only software development but open source software development with it's distributed teams, IRC, mailing lists and project management. he book covers a great deal of ground, giving excellent advice on a wide range of topics: selecting a license; maintaining a mailing list, defect tracking system and version control repository; providing a website; interacting with committers; dealing with technical people; gathering consensus; and understanding important project management concepts. If you only get one book on my list this is the book to get.

    Related Posts:
    Part One: "Ten books an open source programmer needs to have on the shelf."
    Part Two: "Ten books an open source programmer needs to have on the shelf."
    Part Three: "Ten books an open source programmer needs to have on the shelf."
  • Tuesday, December 13, 2005

    10 Books An Open Source Progammer's Must Have Part 2

    In Part 1 of this series we covered numbers 10 through number 8 in our hit parade of books every open source progammer should have. One of the real problems I have been having with a countdown approach to these numbers is that I am having a really really hard time ordering these books in relative importance. So I will just provide them in the unordered list format.


    • Open Source Licensing by Lawrence Rosen is the guide to understanding the vast number of open source licenses that have sprung up over the past 10 years. Rosen's book educates the programmer in simple, easy to follow English. This especially important for chosing a license for your own project or wanting to reuse the work of another project in your own open source project.

    • Succeeding with Open Source It's nearly impossible to start an open source business with out working with company that's going to have some reservations about open source or simply not familar with open source culture this book can help you educate your potential customers. I would suggest keeping multiple copies to educate a potential customer as a leave behind. This gives a business a methodology for assessing the maturity of an open source project.

    • The Business and Economics of Linux and Open SourceIf you are an programmer deploying open source software in a traditional corporation, you will face a different set of challenges than traditional open source programmer. Integrating traditional open source development into a corporation caqn bring benefits but the process must be managed. He first attempts to provide a functional model for an organization developing software, focusing on enabling an open source process as opposed to a conventional development model. This model may assume a large set of developers and may come out of the blue (it is presented then discussed), but it clearly demonstrates how much of a cultural change it requires to fully reap the benefits from an open source process, and how much other corporate functions such as marketing and HR have to adapt accordingly.


    Next post I will cover the last four books you should have. These are the most important four books and you will definitely need these.


    Related Posts:
    Part One: "Ten books an open source programmer needs to have on the shelf."
    Part Two: "Ten books an open source programmer needs to have on the shelf."
    Part Three: "Ten books an open source programmer needs to have on the shelf."

    Monday, December 12, 2005

    Ten Programming Must Have Books - Part 1

    Well it's getting close to the end of the year. That's when everyone's coming up with a list of one sort or another. I have decided to throw out my opinion on 10 books that should be in every open source programmer's library. Naturally they will be available for purchase in the Thinking Monkey Shop. This list isn't definitive, not complete at all and will certainly reflect my personal biases. So this means NO complaints. If you don't like the list, please feel free to compile your own list and I will either link to here on this post or make a more complete resource guide. Of course this my annual PLEASE support this blog drive so IF you don't have these, get'm here.

    In classic top ten countdown style I will start with #10 and work my way up to #1. Given the length of this post I have decided to split it into three parts. So without further ado here's #10

    #10 - Linux(R) Quick Fix Notebook (Bruce Perens Open Source) - Prentice Hall Publishing tapped Bruce Perens, noted Linux guru for a series of books. The great thing about this book is that contains nearly everything you will want to set up but don't do often enough. Let's be frank here. Setting up and troubleshoot file servers, mail servers and web servers are not fun and unless you do it every day, you are likely to forget some crucial step to secure the web server etc. It's full of handy useful tips for things that you don't do often enough to remember but when you do them, it's a very good idea to do them well. Let's face it - you are a programmer and don't always have in long term memory the best configuration for a web server.

    #9 - Linux Cookbook. Yet another O' Reilly's book that underpromises and over delivers. Helpful if you are just running a data center or just a single webserver. The cookbook format delivers very precise instructions with great writing. The humor delivered with this book makes this enjoyable and highly useful.

    #8 - The Art of Project Mangement - If you are an open source programmer, you will at some point do project management. It cannot be avoided especially in the beginning of the project or when there are just a few developers. You can do this well or you can do what everyone else often does and wing it. For the project it's much more helpful to do this well. I look at project management this way. Remember the wagon wheel with spokes radiating from a central hub? Project management is that hub and without it the whole thing rattles and will certainly not work. Scott Berkun's book is well written, engaging and far from the typical dry project management book. Berkun is a former Microsoft employee He worked at Microsoft from 1994-2003, on Internet Explorer 1.0 thru 5.0, Windows and MSN. Say what you want about MS, those were the true heydays of MS development.

    Thus ends part 1 of my three parter on 10 must have programming books.

    Related Posts:
    Part One: "Ten books an open source programmer needs to have on the shelf."
    Part Two: "Ten books an open source programmer needs to have on the shelf."
    Part Three: "Ten books an open source programmer needs to have on the shelf."

    Friday, December 09, 2005

    Writer's Block, TV, Tidbits, Nightstalker staked!

    To be completely honest I have been suffering from a horrific case of writer's block. So I am taking the oldest remedy for it - Just writing untill the post takes a direction. There are several things I know I am definitely going to cover. You can see them up in the title there.

    First off the last thing in the list - the cancellation of the ABC series The Nightstalker. The fans of the show of course were pretty rabid about it. I wasn't. For example Spotnitz's cancellation post on his blog is his notice and a few comments lamenting the demise of the show. - Not a single online site devoted to saving the site. It's not entirely surprising. I watched 1 episode boy was the formula off on the show. The Kolchak formula formula is different from the X-Files formula. Instead they adapted a version of CSI group of characters. This introduction of Team Kolchak was a mistake but it reflected Spotnitz's late X Files experience with john Dogget, Monica Reyes, and Dana Sculley.

    I found the plotting solid on Nightstalker and the writing also strong. Stuart Townsend's performance was reserved but I suspect that was quite intentional. His character development was to have taken several seasons for the looks of it. I thought worked with Kolchak was that he wasn't a true believer ala Fox Mulder. He was a reporter. He didn't have connection to the Unknown through the death of his wife. He knew about as much as the every day guy when he started the episode (although each episode is told after the fact but story unfolds chronologically). This means the viewer's enlightenment and encounter with the unknown occurrs at roughly the same time it occurs with Kolchak. Kolchak is more of an every man than a Fox Mulder (who I may need to remind you was an Oxford trained serial killer profiler). Mulder was steeped in the unknown and more than equipped to quickly puzzle out things. Kolchak often consulted a whole range experts, professors and scientists. His character archetype was distinctly different, funnier and older.

    I had my doubts about the ensemble approach with the Kolchak it appears that my fears were well founded. There is a silver lining in all this - You can now get the original series on DVD. For years fans have requested them on DVD, yet Universal couldn't be bothered to issue them. The new series made them get off their butts and actually release them on DVD. You can buy Kolchak - The Night Stalker here and Amazon will ship them to your door.

    Sunday, November 20, 2005

    DHL Strikes Out

    I just started a network of blogs about three months ago. It's time consuming to find authors etc - I am not certain exactly how people are going to scale this to a business model but you can bet since Weblogs Inc has been sold, you are going to see a ton of these blogging businesses starting up. Well to monetize the blogs I used everyone's favorite contextual advertising, Adsense. I recently passed the threshold for payment and eagerly awaited my Google check. Google in it infinite and computational correct wisdom mailed my check to my my AdWords Account mailing address. This was undoubtedly part of the Great Google migration to a Unified Field Theory of logins. (Google had users that had seperate logins consolidate them). This meant the check was going to an address that no longer existed ;-)

    So I requested a new check. Google gladly shipped a new check immediately. They did so using the world class shipper DHL! DHL a company which has only recently entered the consumer shipping space. Previously they were a business to business shipper which is where I think they should have stayed. I waited roughly one month for payment. Then I thought maybe I should write Google. I did so and here's what I got back.

    Hello Brian,

    Thank you for your email.

    After reviewing our records, I can confirm that your reissued September payment was mailed on Oct 11, 2005. For reference, your DHL tracking number is 9683572813. Please visit www.dhl.ie to track the package.


    So I go to DHL.com and look it up

    10/24/2005 6:03 pm Returned to shipper. Santa Fe, NM
    10/12/2005 1:04 pm Delivery Attempted.
    Please Call 1-888-273-8876. Santa Fe, NM
    8:49 am Arrived at DHL facility. Santa Fe, NM
    2:38 am In transit. Los Angeles, CA
    10/11/2005 10:19 pm Arrived at DHL facility. Los Angeles, CA
    11:53 am In transit. London, United Kingdom
    8:35 am Arrived at DHL facility. London, United Kingdom
    4:39 am In transit. East Midlands, United Kingdom
    10/10/2005 10:19 pm Arrived at DHL facility. East Midlands, United Kingdom
    8:14 pm Departing origin. Dublin, Ireland
    4:03 pm Picked Up by DHL.

    So apparently DHL attempted delivery on the 12th and shipped it back on the 24th. I called DHL to find out what happened. I know I was in for a rough time for it when the DHL customer service rep said this

    "Sir, we held the package for thirty days in Santa Fe. The address was incorrect."


    Here's a basic customer service problem. I have access to online tracking information. I can read a computer screen as well as the next guy. Doing simple math I can see that DHL received the package on 10/10/2005 and it arrived in Santa Fe on 10/11/2005. So by any sort of math we are looking at 13-14 days, certainly not thirty. I then pointed this particular fact to the rep on phone, she then said "The address was incorrect." I then confirmed the address with her and not surprisingly it was absolutely correct.

    This is strange. Why would a customer service rep lie directly to me? She knows I can view the tracking data to see that the package was held for 13 days, not 30 as she stated. This is what I like to call the "deny all wrongdoing" method of customer service. This has grown more common. With companies' lawyers increasing providing input of every aspect business process, it has become easier to simply lie to customer than to provide customer service. By lieing or misdirecting the customer the company is hoping to lessen any exposed liability by failure to perform. It seems like since Iran Contra, the mantras of "I don't remember" and out and out lieing are becoming all too familar.

    I then requested if they could send the package back to me, perhaps via US Mail. They said they could not and requested I contact the shipper. So off to email Google I went. I got the following response from Google on November 15, 2005.


    Hello Brian,

    I have just spoken with DHL and the shipment will be rerouted to you. They unfortunately could not explain why they only attempted delivery once before returning the package. The should leave a note when they attempt delivery and try a couple more times.



    So the package arrived safe and sound on my doorstep the next day? Nope. Instead DHL holds on the package and then redelivers to the wrong department at Google. Eventually the right department finds the check and mails it via UPS. It arrives the next day after two months of attempted delivery by DHL.

    Clearly DHL dropped the ball as well as Google. But what actually happened, I don't know but here's my guess. Las Vegas, NM is roughly 61 miles from Santa Fe or 122 round trip. The DHL driver in Santa Fe saw the address on this slim letter envelope and then said, "I will wait until I have more going to Las Vegas." When nothing materialized he then sent the package back rather than actually deliver it.

    Here's a note DHL. If you are going to be in the consumer shipping business, you don't actually get to decide what packages are important and which are not. As far as customer service goes, more transparency is better than none. Simply telling obvious and easily disproved lies, has the opposite effect on the customer you may think it has.

    If you don't want to deliver a package, don't accept a contract to do so. Or just stick the big container shipping that was your previous business model.

    Wednesday, November 16, 2005

    Dell Customer Service Strikes Again; DHL Strikes Out

    This post is about customer service or rather the complete lack of customer service that I have continued to notice with many companies. I have had such a horrific experience over the last week that you can expect a whole series of posts about this issue about a Dell, DHL, Godaddy (and that's why I haven't posted in nearly a week). Last week I had a Dell 750 power supply drop dead. Of course it was the machine I had taken out of the cluster and doing mail service as well as some web hosting. (All of my current blogs EXCEPT this one were on the machine). Naturally I called the data center to request a re-boot, at first I assumed Apache had hung. The technician at the data center noticed that the machine didn't come back on nor did the panel lights come on. I had him quickly check wiring and everything seemed alright. So I called Dell. As you might imagine this is where things begin to go south.

    After wading through the voice mail prompts, a pleasant Bangalore voice tells me I have dialed the wrong number for customer support. I check the web site again. Nope it's the right number, it's just the wrong number for support. So Dell's customer service number was wrong on the web site. After being transferred again and then again I actually speaking with a customer service representative.

    Here's the first part of the conversation.

    "Are you in front of the machine sir?"

    Well no. This machine was purchased by me and then delivered to the data center by a Dell technician. I am not sure why Dell doesn't understand that.

    Here's my response,

    "No it was delivered to my data center in Los Angeles. I have had the local technician attempt a re-boot. He checked the cables and the panel lights have not come on."

    "Could you have him give us a call from the machine?"

    "Why?"

    "Because we would like him to take the machine apart and reseat the cards."

    "Well I had him check the wiring, the machine isn't booting and the panel lights aren't coming on. I think it's the power supply."

    "Well we need to check the cards to be sure."

    This is Dell hiding it's unwillingness to respond as a response. It's pretty passive aggressive. It's a rackmounted server in a data center, installed by a Dell technician. If the cards aren't properly seated in the machine, isn't the manufacturer's error? Why should I troubleshoot the problem? Because Dell doesn't want to respond to the contract I signed with them. Rackmounted machines

    So I told them I would call them back after the technician had done the requested action. I waited ten minutes and called them back.

    "No Dice. What now?"

    "We will dispatch parts tomorrow. We have missed our shipping window for today."

    "Ok great."

    See I have a next day service contract with Dell which is what I thought would be sufficient response time. At the time the machine was part of a cluster so a single machine failing wouldn't be too big of a deal. My mistake when pulling it out to host blogs and mail - I would pay for it in lost revenue.

    So I called Dell bright and early the next morning. This is the real kicker. Dell had shipped parts but they wouldn't arrive until tomorrow. This takes my next day response had makes it a two day response.

    I called Dell pretty livid. In that conversation I found out the following.

    1. Dell uses a just in time model for service. In short they stock NO parts in Los Angeles. That's right. One of the largest computer markets on the West Coast and Dell doesn't stock parts locally.

    2. The shipping of the part is the triggering event for the service tech. NOT the original call to customer support. So I should have demanded the tech ship the parts that day. However I didn't know that they didn't stock power supplies for Dell Poweredge 750s locally nor that the shipping of the part was the triggering of the service technician. Dell's next day service response is actually next day after the part has shipped from Texas. So not next day service but rather

    3. The shipping cutoff is 4:30 Central Time. This means my service call placed at 5:36 Mountain, 4:36 Pacific (where the machines are actually located) doesn't actually count. Doesn't it make sense that you should keep the same hours as your customers for a company of Dell's size? Shouldn't customers in California expect when you place a service call for next day response DURING normal business hours that you will get next day response.

    After this little fiasco (the technician arrived and guess what? It was the power supply) I decided to up my service contract with Dell. So I called their service contracts division. This is also very revealing. Ordering an additional service contract will void my current contract with Dell. This contract which runs through 2007 would essentially be money thrown away. The new contract would run one year. It would actually be cheaper to buy a brand new machine with a new service contract.

    I guess that highlights Dell's actual intention =-> sell more machines. Here's a better idea Dell. If you wanna sell more machines, how about a two pack with heartbeat running in the bios? You would sell two servers instead of one, get fewer customer services calls due to higher availablilty and your customers would be happier.

    This post is getting too long so next time DHL strikes out.

    Monday, November 07, 2005

    Web 2.0 - Google Adsense's role

    Well the buzz about Web 2.0 has gotten deafening at this point. In Silicon Valley hundreds of start-ups have Web 2.0 plastered repeatedly in their business plans. Sadly though most of these start ups will end up in the same bin with many of the dot coms. The process will take longer as the start-ups are much smaller, much more agile and more likely to become on going concerns but a lot less likely to become the home runs that VCs want. A lot of people have focused on AJAX, XML and open based standards as the factor in releasing the flood gates of innovation. I would argue another important (and obviously over looked) factor is the Google Adsense program.

    Google Adsense allows a small group of developers to develop a cool web application, launch it and not worry about how to monetize the application. If this seems perfectly normal, let's go back to the mid nineties and remember how advertsing was sold on the web. If you were a start-up that had a media focus such as an online magazine (now we call them blogs or even just web sites) you needed to build into the site a spot for advertising. You then needed to put together an advertising sales teams who would sell ads for that slot. Congratulations! You have just added $1,000,000 in salary and benefit costs for a five person sales team to your previously small start-up.

    This meant that you needed to chase VC or angel funding in order to generate revenue. Later you could outsource this ad sales function to someone like Double Click which was costly also. It also meant that a start-up spent a lot of time chasing deals. During the Dot Com heyday, advertsing revenue deals occurred left and right and were announced with much fanfare.

    In many ways the chase for revenue skewed the business activity of the start-up. A ton of time was spent chasing revenue or VC dollars in order to buy ads to generate or chase more dollars. As a result too little time was spent on product development. I realize this a BIG generalization but why else didn't Geocities, AngelFire and the other free hosting providers evolve into blogs? I mean they were in the web publishing business. Why? Because all those providers were to busy cutting deals to jam more ads into their web application without actually paying attention to what their customers (ie the people setting up those free web pages) wanted.

    In a start-up dollars are limited every dollar that is going into sales isn't going into product development. With the advent of Google Adsense, developers can begin generating revenue from the initial launch of the product from the very beginning. While this revenue might not cover salaries or the costs of hosting the application initially, they can certainly function as seed capital for developers. Furthermore as the Adsense network can be seamlessly added to site, it means that developers who are working on their own time or part time can spend more time with the application. There is no need to add expensive and largely unproductive sales staff. Google handles the entire process. In many regards Google Adsense IS AN OUTSOURCED AD SALES FUNCTION.

    This allows a small team of developers to focus on product development, without the distraction of a sales team. And that's a key factor in the growth of web application start-ups.

    Technorati Tags:

    Tuesday, November 01, 2005

    SCO final puts up

    It's taken 2.5 years and a ton of posturing in the press but SCO has finally submitted to the court a document purporting to list what copyrighted material that was lifted SCO Unix and placed into Linux. The five page document and another placed under seal which contains the full detail of the 217 seperate violations. I don't doubt that Linux and SCO Unix have code in common. Both are based in part on BSD - certain components such as the X-Windows system are provided under a BSD license which means that SCO undoubtedly has exactly the some code as Linux. This is taken from their own filing as their attorneys state,


    "Some of these wrongful disclosures include areas such as an entire file management system; others are communications by IBM personnel working on Linux that resulted in enhancing Linux functionality by disclosing a method or concept from Unix technology," SCO said. "The numerosity and substantiality of the disclosures reflects the pervasive extent and sustained degree as to which IBM disclosed methods, concepts, and in many places, literal code, from Unix-derived technologies in order to enhance the ability of Linux to be used as a scalable and reliable operating system for business and as an alternative to proprietary Unix systems such as those licensed by SCO and others."


    The key quote here is "from Unix derived" technologies. SCO is once again asserting a rather strange copyright claim, namely that any work inspired by AT&T Unix is theirs. This dubious legal theory seems quite strange considering these issues were resolved in the case. UNIX Systems Laboratories against Berkeley Software Design. In order for SCO to claim these copyrights, they are going to have to overturn this settlement. For a while that was their legal strategy but apparently their attempts have fallen on deaf ears. By December 22, 2005 IBM will have a response to the sealed motion. I suspect that this is going to go as well as the SCO VS DaimlerChrysler

    Wednesday, October 26, 2005

    Open Source CRM, Siebel, SalesForce

    One of the initial successes in web based software was in sales force automation software. SFA was long dominated by the Siebel Systems, founded by Tom Siebel, a former Oracle executive. SFA shares the same problems that traditional ERP software shares; it's expensive, it's slow and it's a pain in the ass to set up and install. On top of that, sales force automation isn't a particularly difficult thing to do. I mean managing contacts and appointments with reminder notices? Not too hard as the paper version of this software (ie the organizer & calendar have been around for years). So this particular piece of ERP software was ready for webifying almost immediately. So whenSalesforce.com launched it took a huge chunk of the "on demand CRM" marketshare closely followed Rightnow Rechnologies. I am not sure of the purpose of artificially segmenting the market in this way into software and on demand market segments. These two market segments are certainly collapsing into each other.

    Salesforce started out like many web based application companies by going after the middle market (companies 50-500 million in annual sales). This market typically has been underserved in the ERP software market cause it's too damn expensive with the typical seven figure depolyment costs. Netledger did this same approach with accounting software. I used their software until they wanted to charge me $399 a month - at which point I thought I would buy a copy of Quickbooks. So going after the middle market is a pretty good strategy. Typically these guys have customers and money to spend but not enough to really justify the big boys selling their software in a more scaled down shrink wrapped version.

    So entering an underserved market and getting some customer wins are good way to prepare yourself to move into the Fortune 2000 - which everyone's business plan in the ERP space calls for. (Why anyone would want to sell to the Fortune 2000 is beyond me. They are notoriously stingy, demanding and the sales cycle is roughly 2 years. I once read a business plan which called for selling to the middle market to build credibility to sell the Fortune 500 (please note I use Fortune 500 & Fortune 2000 interchangably. Fortune 500 is US companies only and Fortune 2000 is the same type of companies world wide.) After selling several Fortune 500 accounts, they would use this credibility to move down market to THE MIDDLE MARKET. I pointed out that they would have better luck building credibility in the middle market and selling there since they weren't asking for enough money to actually complete a Fortune 500 sales cycle.

    The problem of course for these software vendors is as I see it two fold. First off many of the functions they are replicating aren't particularly hard to do in software (contact lists? calendaring? contact management?) Web enabling these in software isn't that hard at this point. I am sure when Tom Siebel founded Siebel in 1993, CEO thought it was a pretty cool idea. Apply the same business management processes to ERP to sales and you turn all your sales droids into copies of your top performing. Hey maybe you can convert anyone into a effective sale person, thus eliminating the incredibly expensive commissions that your very best performers earn. Well your top performers remained your top performers and you weren't able to commoditize the position of salesperson.

    This brings me to the real crux of this post. SFA & CRM are relatively easy to do. There is very little in the way of barriers to entry. There are a number of open source software packages which capture about 80% of the functionality of the Salesforce.com. SugarCRM is well on the way to being Siebel killer as 80% of the functionality is about all most customers need. Sure it might cost about the same to customize but you avoid the dreaded vendor lockin and the vendor upgrade treadmill. Open source is well on it's way to commodizing yet another software market segment.

    Of course what's bad for Siebel is also bad for salesforce.com. With commodity software kicking butt, it's just a matter of time before someone takes the SugarCRM code and ports it to a web application to compete with salesforce. In fact that's exactly what is happening

    Articles to Read
    eWEEK Labs Review: SugarCRM's Sugar Professional 3.0
    Open-Source Building Blocks Available

    Thursday, October 20, 2005

    Marginal Competence - The unfortunate future of America

    I have on the past occasion written about the pitfalls of outsourcing especially the particular exeperience I have had with Dell. Well after recent experience with another customer service snafu, it got me thinking about the outsourcing, the WalMart effect, under employment and the future of the American workers and American companies in general. The summary is simple, it's not a pretty happy future.

    There are multiple trends vectoring toward a step decline in both the quality of the workforce in America and the product of that workforce, American goods. The first vector is the disalignment of the goals of the worker and the company he works for. Let's take an outsourcing example. Outsourcing 1st term customer service functions to firms in India and the Philippines creates a problem because the firms you are out sourcing to and your firm don't have the same economic interests. The outsource customer service firm has an interest in quickly completing calls so that their call numbers look good. They also have an interest in expanding their customer base of out sourced customer support firms.

    Misalignment of goals is a common problem in customer support telecenters when they are run internally. Very often promoting people based on the number of calls they close, rather than a measure of customer satisfaction based on the call is always a bad idea. Yet this is a common practice in the industry. Outsourcing this function 1st tier customer support to another company in another country almost always decreases customer satisfaction. In fact I challenge anyone to provide one single example where customer satisfaction has improved as a result of outsourcing. Your goals as a company (satisfied customers) and their goals (high call answer count) are at odds. At best your outsourced firm is marginally competent at service.

    Another vector contributing to decline of the American company that the goals of the worker and goals of the company are no longer as closely intertwined as they once where. Chronic underemployment is a problem throughout the economy. This leads to workers holding multiple jobs in order to make ends meet. Loyalty to the company and to the product that the company produces, is diminished. This means workers are increasing more loyal to themselves, or at least they must balance the multiple jobs pulling them in multiple directions. This most certainly has a negative effect on productivity.

    Managers often tolerate the decreased quality because their management directive are to reduce costs. Hiring another worker who would work full time would incur costs. Replacing the under performing worker would also incur significant costs (training etc). Managers are often recognize that they cannot demand the same quality of a fully employed worker they can of a part time worker. They may think they might be able to but I would argue any worker worried about eating or making rent is going to be a lower quality worker.

    This under employment is a corollary to the Wal Mart effect. Ruthlessly cutting costs means quality at some point begins to decline. Only so much inefficiency can be extracted from a supply chain before you begin skipping on quality of materials. When your only tool is a hammer, everything looks like a nail. Focusing only cost controls means that managers place less importance on other qualitative factors. Anyone that shopped at WalMart would concur, the quality of goods is simply lower. (We have a WalMart here in Las Vegas. I have stopped certain types of goods there such as electronics).

    Living with marginal competence of work means that anyone who can beat your cost of goods and labor. This creates a race to the bottom for wages, and raw materials. One good test for this would be the mean failure rate for consumer electronics. Are electronics more or less reliable as a whole now or 10 years ago? I haven't done that research yet. I will do it and report back.

    Technorati Tags:


    Monday, October 10, 2005

    Google & Sun - The Slow Bleed

    A lot of bloggers have been writing about the implications of the recent Sun Microsystems and Google alliance. I believe this alliance is still the formative stages so it doesn't mean too much right now. I think Google's approach is going to be avoid going directly at Microsoft Office. Why? Because it's the previous generation of technology and not wholely appropriate for the web as it's so document/desktop focused.

    As a recent article article in The Register quotes Brin as saying,

    “I don’t really think that the thing is to take a previous generation of technology and port them directly,” said Brin. However distributed thin web applications allowed you to do “new and better things than the Office package and more.”


    Well clearly Mr. Brin realizes the value of a web application is the fact it's on the web. This provides quite a bit of value by itself. As Office is so desktop centric and pretty document centric, porting Open Office to the web would be silly. Why? Because too much developer time would be spent web enabling the very boring and none too useful document centric features. The next generation of collaborative applications will be web focused and web centric which creates the value in and of itself.

    Clearly Mr. Brin understands Google's place in the software universe. If Google suddenly buys Jotspot you will know they are quite serious about de-throning Office by changing the paradigm of collaborative work. I have long argued that the thing that is going to de-throne Office won't be a poorly made clone but rather a new way of working. Given Office's desktop/document production focus it's unlikely to make a radical shift. The MS Office product manager more than likely talks to MS Office customers about features. He doesn't talk to people who might be using an entirely different paradigm of work flow.

    How does the slow bleed work? Well by capturing the customers of the neqw subversive work flow paradigm, they slowly over years bleed customers away from Office toward the new collaborative paradigm. This will take a few years (I would guess till 2018 or so) but eventually the Office market will evenutally come to resemble the mainframe market - slow, steady and a lot smaller.

    Thursday, October 06, 2005

    DMCA - A legal crutch to your competitive edge

    One of the common tactics that has come since the passage of the Digital Millenium Copyright Act is to use it for customer lock in or ot lock out competitors. This has happened mostly in the consumer electronics sector but it happens in the software sector as well.

    DMCA @ EFF is a good starting point for looking at some of the cases. I am most interested in the companies using copyright infringement to prevent companies from entering their market. What do these cases have in common? Well typically companies will encrypt a portion of their signal or communications and then claim that de-crypting is a violation of the DMCA. We have seen several companies take this approach.

    • Blizzard v. BNetD is the most dangerous to the software industry. Essentially three programmers. As it currently stands this makes reverse engineering of software largely illegal. Three programmers clean roomed the data stream the Warcraft Server and the Warcraft client. The traffic was encrypted so Blizzard envoked the DMCA. The current decision could have a chilling effect on people wanting to have compatible.
    • Lexmark vs. Static Control and Chamberlain vs. Skylink are two of the most egregious uses of the DMCA and they share the common approach of attempting to stifle competition. In the Lexmark case they wanted to quash competing after market toner and in the Chamberlain case it was a competing garage door opener.


    The last two are great example of quashing a competitive threat. While the courts rejected both cases, they certainly saddled their competitors with some serious legal fees. Sadly this strategy is a relatively for a company to enact but it certainly is a bad idea for the company that decided to cloak a part of the software in encryption and cut the competitor off with a lawsuit. Relying on a lawsuit is a very dangerous as the company is no longer competing, it's litigating. Using litigation is a fine tactic for stifling a competitor but it's long term effects on a company culture of innovation is disastrous.

    Why compete if you are in a dominant market position? You can just encrypt and litigate your competition seeking to interact with your software or hardware. I expect that litigation will become the favorite tactic of entrenched software vendors feeling the hot breath of their open source replacements. But litigation ignores a crucial aspect of competition. Your competition would not be gaining traction in the marketplace if some feature or functionality that they need. By suing your competition, you might make the mistake of not listening to your customers. By buying a competing product or service your customers are sending a very clear message. Listen to it.

    Technoratic Tags:
    DMCA
    Competition
    Lexmark
    Static Control
    Chamberlain
    EFF

    Friday, September 30, 2005

    Changing perspectatives in business

    One the most difficult things in business is changing your perspectative in order to understand a new paradigm or perspectative. Business have tendency to see things through the established paradigm that has served them. This tendency is especially reinforced in successful companies largely because of their success. So when they look at a rapidly changing marketplace such as the technology industry, they have a tendency to look at through "previous paradigm colored" glasses.

    IBM was unable to grasp the importance of the personal computer revolution. They licensed the OS from a small but successful computer software company. Had they realized the importance of the coming revolution, they would have bought Microsoft outright. However IBM was in the mainframe business and they never thought these underpowered lightweight machines would take off as they did. They were largely a heavy iron company, and saw the world through those ideas. They never envisioned the network effects of the PC revolution with it's cheap PCs, putting computing power everywhere.

    In many ways Microsoft is in a similar position tha IBM was in in 1981. While they have a monopoly on the desktop PC market similar to the market that IBM had in mainframes, they don't quite seem to understand the paradigm shift that is occurring. Google on the other hand does understand it. It's funny to watch comments on recent slashdot story about Google patents. MS still sees everything through the lenses of the Windows monopoly. Everything is about the desktop and tying web services to the Windows desktop. This is a solid approach as it continues to support the current monopoly. It's also the safe approach which makes it unlikely to succeed in the long term.

    Companies that take advantage of paradigm shifts are the ones that stand to benefit the most from the paradigm shift. MS right now is simply trying plug a hole in the dike to protect the Windows monopoly. By protecting the Windows monopoly, they are missing out on the key characteristic of this transformative revolution right now in computing.

    "The network is the computer" was a key marketing slogan of Sun Microsystems for years. The slogan was designed to sell Suns larger systems to corporations. Google has realized that dream by building the world's largest web computing platform. It's built the ultimate mainframe system so scalable, they can serve hundreds of millions of requests daily. The Google platform takes the Sun slogan and makes it reality. It's a platform a company can use to build in application, and not really worry about scability.

    Microsoft's response to this is likely to be two fold. First off they will expand their service offerings to include a web services component. Secondly they will attempt to couple those services very tightly with the Windows desktop. What they will not do is build the massive application server that Google has already built.

    Microsoft will always have the desktop PC monopoly. The importance of that monopoly will certainly decrease just as the mainframe market didn't disappear with the PC, it just wasn't the only market.

    Thursday, September 22, 2005

    Google - The Network?

    Recent Google moves have left quite a few analysts wondering "What are they doing." The four billion dollar secondary offering, buying up unused dark fiber on metropolitian markets to a recent job opening that you will provide leadership on product vision and execution of projects that enable using Google's search and advertising technologies to enhance users’ Television viewing experience. Analysts have pondered these moves and concluded that "they need the fiber to roll out a WIFI network for their search", to stave off competition from a "hard charging" Yahoo. I see these moves and I see the end game for Microsoft. I must hand it to the guys at Google. They run at tight ship (it's still a small company really) filled with really bright people. They are all about the far right side of the Bell Curve.

    The enormity of what Google is attempting so far exceeds the vision of the analysts that cover them that they simply cannot do justice to what they are doing. Many analysts think Google is in the search business. They are not. They are in the knowledge business. I alluded to this in a previous post comparing MSN search and Google search. If you take a close look at all of Google acquisitions, it's alway about a knowledge based company such as Blogger, Keyhole etc. Even their support of Wikipedia can be seen through this lens.

    Another important thing to remember about Google is something that many people often miss. Google's most important assets are its people and the world's largest computing platform in the world that they have built. When I say the largest, I mean so large that no one really knows how large. Many people have speculated about the number of servers that Google runs. Most people guess 100,000. Most people are wrong. Google runs the world's largest single server at the Googleplex. As far as the number of machines, that's largely irrelevant as the computer system that Google has built can instantly be scaled simply by adding more machines. I would guess at this point they are adding machines all the time and 400,000 - 1,000,000 machines might be closer to the mark. How do I know this?

    I don't but here's the reason why I think so. Gmail is Google's consumer mail application. When it started, it initially offered one gigabyte of storage. This was revolutionary at the time. Eventually Yahoo mail caught up and then Google upped the ante to 2.5 gigabytes. Now however when you visit Gmail you notice that the amount of storage that they allow is always changing. It's always increasing! This make competing with Google for storage next to impossible. Yahoo and Hotmail must use traditional provisioning methods to increase the amount of storage. Increasing the amount of storage a customer has requires purchase of equipment, planning and when the day come to announce your new HUGE storage capability, Google has beaten you because their system allow them to seamlessly add machines. Their cluster at this point is so tuned, they actually can tell you how much your storage will be increased to every second.

    For a little more explanation, lets look the way most web applications are designed to be scaled up. Most applications usually have a load balancer, a set of hypertext servers and database servers. Scaling these requires adding machines and effectively tuning the engine as it were. You can add multiple load balancers etc. You get the picture. Google's derivative of the Linux operating system and the Google File System are structured from the ground up to seamless allow new machines to be added to the cluster without the huge startup time and rollout. This is may not look it, but it's a very very hard thing to do. When MS purchased Hotmail, they attempted to migrate to the system to Windows. This took several attempts and had several severe outages. Since MS is pretty much wedded to running the Windows operating system, I imagine their server rollout is pretty much what I described. Why? Because every MS announced web project I have seen such as the MSN Virtual Earth has crashed when posted to slashdot.org. I have never seen any Google service crash under any load. That's because their application runs on a platform that can seamlessly add machines to scale it.

    This is a huge advantage structurally & culturally for Google. Let's take a look how Microsoft (and actually almost all companies who are not google are doing this). You develop the great new MS Earth. You send a PO over to procurement for 150 machines to support it. They approve it and you or someone will install it at the MS data center. Presumably MS has a group dedicated to maintaining these boxes up at Redmond. But see the difference? Your machines are your machines. To get more of them if your service is successful you will need to request another 200 of them from procurement with a reminder that you are exceeding your budget. If the service is really successful, you might need more but you have blown your budget out, and now you need to go upstream to order more. Microsoft is relatively flat still so this is possible. But you see the problem right, every project with it's own cluster, doesn't match the economies of scale that Google has built into their application. In fact each division instead is fighting for resources. There is some indication that the recent Windows re-org will attempt to address this problem. Initial indications are that Microsoft is attempting to blend the software and services to drive demand for the software. Once again they are failing to grasp the paradigm shift. That's another blog post.

    Since Google has approached their system differently, each division gets to take advantage of the economies of scale in the platform. Adding additional machines adds makes everyone's application more robust. This means everyone enjoys a fundamentally robust platform to develop Google applications.

    So what does this mean for Google's recent moves? Well let's imagine a Google set top box that has DVR functionality. Additionally this box operates as an additional node in the Google Network. All the dark fiber Google is purchasing allows them to delivery VOD (video on demand), telephony and HDTV with the greatest of ease. With the Google cluster of machines they can easily scale the VOD services without the tremendous expense that VOD start ups have typically have. In one fell swoop Google scales it's network, enters the home, and becomes the convergence of the typical internet and home entertainment. The killer feature driving adaption by the consumer of this brand new cable network? All on movies ever made on demand supported by the Google cluster. Google doesn't have own the end consumer either. They can partner with cable companies to provide them the platform. Google set top box is coming. Why else hire someone with set top box experience? Why hire if you aren't going into the home? VOD is solid match with Google's platform, namely the largest most powerful machine in the world. Most VOD business plans read like this. Buy 30 Million dollars worth of machines, sell services to the cable companies, hope burn rate doesn't kill us. Google is already in the wholesale business, namely wholesale search. They could easily roll out a VOD service as a wholesale service with "Powered by Google" as the slogan. Every new customer sold on the service would make Google computing platform that much more powerful (remember the economies of scale above). No single cable company could afford to build the computing platform that Google has built. It makes perfect sense for them to resell the platform.

    Sounds too huge? Sounds too impossible? Remember Google has a history of nearly impossible things. When they announced 1GB of free email on April 1st, everyone thought it was a joke because it was a huge amount of space. Right now they offer nearly 3 GBs of free email space. That's more than 3 times the space in less 18 month. Only Yahoo has been able to respond with a half way competitive offering. Hotmail is still offering just 250 megs of email. Remarkably just two years ago 350 megs was unheard of in the free email space. Now it's just not competitive. Of course after the innovation it seems easily but some papers like the NY Times thought that much space would have an adverse effect on the search engine. Notice any Google outages lately?

    Google is has built the world's largest computing platform. By extending that platform into the home through a set top box, they can offer features and killer applications that companies like Microsoft aren't even thinking about. By changing the paradigm, Google can not only rule the web, but also the digital home.


    Technoratic Tags:
    Google
    Microsoft

    Tuesday, September 20, 2005

    Open Document Standards

    I have intentionally shyed away from blogging about the Katrina disaster so instead I have pulled back to look at recent trend in government. This trend away from closed document formats and towards open document standards. This has been typified by the recent moves by the State of Massachusetts recent adaption of the Open Doc standard for public information. A Microsoft blogger wrote a post about it and then immediately got shelled by the developer community. He got shelled for spouting silly nonsense like this.


    "The Office applications are very large, and while most people only certain features, each person uses a different set, and in the end all features are used. Trying to lock out those documents and forcing people to lose data and functionality is not really a great idea."


    Unless of course maximum interoperability is your goal. I notice this doesn't stop MS from supporting plain text formats, RTF, WordPerfect etc. In this case interoperability isn't the goal of Microsoft but rather customer lock in so supporting an open standard which would allow free transferability of files is to be avoided at all costs. Supporting the Open Doc standard allows Microsoft's customers to easily defect to a competing product (Open Office)

    The adaption of the Open Doc Standard is only one in a large group of recent defections away from closed and proprietary file formats.

    Internationally this seems to be spreading. I spent some time poking around the world to see what people and governments especially are up to with open standards documents.

    *After the tsunami hit Thailand, the government found that information sharing was nearly impossible. Each NGO (non governmental entity) and branches of the Thai government used different data and document formats. The Thai government responded by creating a common website for registering missing persons and began making the move to open file formats.

    *Denmark's E-business Initiative is creating a fully implemented, centralized, ordering and invoicing process based on open standards. Expected savings 160 Million Euros.

    *Argentina's national tax agency implemented a project to allow access by agencies and enterprises to its unified taxpayer database. The model was based on W3C standards together with other well developed standards for security.

    *Chile - The government will develop an electronic information exchange platform that will be web-based on top of open standards (XML for data exchange; SOAP and web service). Stage One will encompass the five largest public agencies. All agencies are to be eventually included.

    *India is using open technologies to promote growth. The eBiz project will create a framework for providing hundreds of government to Business (G2B) services of federal, state and local agencies through a single portal.

    *Sau Paulo Brazil - The state goverment implemented a web based system for inventory of all existing information technology assets. The system also track software licenses, ICT professionals and communication's resources across government.

    *The Netherlands - It recently established a Standardization Council and Standardization forum to accelerate development and use of open standards. The Netherlands has had a explicit policy for support of open standards since 2003.

    *European Union - The European Union's Interchange of Data between Administrations program has middleware solution based on a set of generic specifications for exchange, dissemination and collection of data. The eLink toolkit, one of the first implementations of the specification, has been based only on open source components.

    *Japan - The Government of Japan has developed software procurement guidelinesthat dictate that open standards and open document formats shall be given priority in government procurement.

    *Chile - The government has issued a decree setting an open XML standard as the digital document format across government. All public agencies and services are required to format documents in XML. They are currently rolling out a three stage deployment across all governmental entities.

    *India - The goverhment is developing an online service for the 600,000 companies currently incorporated in the country. Online services will include: registration of companies, payment of statutory fees, filing of tax returns and charges.

    *Denmark - The country's CareMobil project uses an open specification and generic business case for the use of mobile technologies in home care for the elderly.

    And these I found with just a few hours work on the web. While the city of Frankfurt Germany abandoned their Open Office project, it's clear that other governments are forging ahead, realizing that in a networked environment, open standards and protocals can provide the maximum benefit. Open standards tend to be network robust, therefore less brittle than proprietary standards. Furthermore as the ecosystem expands, this will increase demand for open document standards.

    Monday, September 12, 2005

    How viruses may end the Office monopoly

    One of the interesting side-effects of Microsoft's lack of focus on security is that it may end up accelerating the loss of their Office monopoly. The current primary vector for the spread of viruse is the email. How I miss the days when you got a virus by physically inserting a floppy disk into someone else's computer? It made getting a virus similar to getting a real STD. You knew you did something wrong. You took a floppy put it in SOMEONE else's computer, it got infected with something nasty and then you put it in your machine. Coitus Floppyius.

    Well now since the vector has changed to email, how has this impacted Microsoft Office? Well initially we were passing Word documents, Excel spreadsheets etc. Well those are served as vector for viruses. While the documents themselves might not serve as a vector, attachments do. So sys admins have been screaming that you should not click on attachments from people you do not know. The message then became, "Do not click on attachments." As the next round of viruses came from someone you know since once a machine became infected, it immediately emailed everyone in the address book.

    How does this impact the Office monopoly? Well since Office has a desktop focused design, (it's really designed for a single PC user and producing pretty documents). It's not really designed for highly distributed, highly networked workforces. Because of the rampant spread of viruses via attachements, people have been told not to open attachments. (This doesn't change the fact that SOMEHOW people are still doing it).

    People however, still need to collaborate on document production, and actually do work. It's still possible to mail attachements back and forth. Sys admins can isolate and then run antiviral software on the stored attachments. In fact this sort of quarantine is quite common in today's IT environment.

    Passing Word documents served as a reinforcing function for the Windows monopoly. Clearly passing documents around this way is not the ideal way to do this. A centralized document respository, with versioning built in is the way to go. In all fairness to Office, it can indeed do this in all Windows house. On the other hand a Wiki can do this just as well, is web based and easily accessible by a distributed workforce and is completely virus free.

    In fact a number of companies such as Jotspot have arisen to offer a replacement. Wikis can offer collaboration without the painful process of sharing Office documents. While the current state of wikis doesn't really focus on presentation on the same way Word does, it does focus on collaboration to a much greater extent which is the high value portion of collaborative work.

    By forcing users away from passing random documents around to a more centralized document repository, the door is opened for another paradigm of document prep and collaboration. A networked approach doesn't reinforce Office, it undermines it. Of course the guys behind Office might well realize the power of networked collaboration as they bought Groove Networks to provide that magic grail of secure, safe, P2P collaboration.

    Technorati Tags:





    Monday, September 05, 2005

    FLOSS Business Models

    One of the constant themes since the free software movement has hit the mainstream is how the can you make a software business successful when you don't charge per se for your software. This is a nonsensical argument on several levels. First off the philosophy of the Free Software Movement doesn't prohibit you from selling your software! They only require that you make the program and it's source available. Strangely people make the rather silly assumption that by making your software available freely you will undercut demand for the commercial version (ie the one that costs money). This is one of the strangest calculations I have seen people make in regards to the free software movement. For example here's a telling quote from the open source section of Wikipedia

    Making money through traditional methods, such as sale of the use of individual copies and patent royalty payment, is more difficult and sometimes impractical with open-source software.


    Yet there is no real explanation why this is often said, nor anything other than anecdotal evidence that it is true. Nothing prohibits the GPL model from selling individual licenses. When a corporation or individual purchase a piece of software they are not simply purchasing a single license, they are also purchasing access to support and the help desk and most importantly upgrades.

    Software acquistion costs represent a tiny fraction of the cost of ownership of software. Most companies when purchasing a piece of software look at the after installation support and integration costs. They look at the support costs. They look at the help desk costs.

    The above article seems to bemoan the relative lack of FLOSS companies operating in todays markets. But the challenges facing any FLOSS software company is no different than any closed source company. Indeed, it seems to me that starting a closed source software company is an inherently riskier proposition especially when chasing customers in today's markets. For example for a corporation to buy a piece of closed source software from a relatively new vendor is next to impossible as the risk that vendor will go out of business is far too high. Source code escrow will be required at least along with 2-3 years of financial data. Perhaps even a completion bond.

    With an open source company may have these same challenges as well but availability of source code acts a risk mitigator for the CIO considering purchasing the software. Indeed if I were starting a new company and my market required selling to companies larger than 25 million in annual sales, I don't see how any approach other than an open source one gets you in the door. Getting source code out of escrow with a company in bankruptcy (a very real concern for any start-up company these days) is next to impossible.

    The simple fact is that there is almost no difference between an FLOSS company and closed source company. They face the same challenges for adaption in the market. The FLOSS company has the advantage that they can use the open source nature of the company as a marketing tool to acquire customers, mitigate risks for their customers. Let's face it. Starting a software company is a risky proposition. Many of them are bound to fail. Being an open source software company just makes it easier to succeed.

    Thursday, August 25, 2005

    Great MS Blog - from a former employee

    This post is an especially great one about why a break up of Microsoft would have been a good thing.

    Wednesday, August 24, 2005

    Where are the MS web startups? How Microsoft is losing innovative developers.

    There was a recent post by Joel Knauss' Bnoopy Blog It's a great time to be an entreprenuer about how now is the best time to start up. He cites several key factors


    • Hardware is 100X cheaper
    • Infrastructure software is free
    • Access to Global Labor Markets
    • SEM (Search Engine Marketing)changes everything

    What's interesting to me is the infrastructure software component. It's almost uniformly the case that these start ups are running on the LAMP (Linux, Apache, MySQL, PERL,PHP) software stack instead of the Microsoft stack. At first I thought perhaps it was merely my bias that prevented me from finding them. Companies like Flikr, Jotspot, Blogger etc all uniformly have adapted the LAMP stack to launch their new products.

    So I went in search of the web start ups that are using the MS stack. I started at Microsoft. It seemed to me that partnering with Microsoft is a good way to get a ton of publicity that a start up so desperately needs. Here's how I approached the problem. I assumed that Google is inifinitely better at searching Microsoft than MS is. Actually they about the same. I used the search term "startups" in a site restricted search. I came across this Business Startups at Microsoft. Since I am looking for startup success stories, I clicked on the Startup success link. Eventually I ended up here I suggest that you spend some time there. I have spent several hours there and it's apparent that Microsoft's venture arm is still quite busy and active, making Microsoft a good partner. It's also apparent that every single one of those start-ups are traditional venture plays (ie see a market, go after it.) Not a single start-up highlighted by Microsoft is truly innovative new service that change the way that people use the web. In part this is because those sorts of start-ups are quite rare, everyone want to make the next Flickr. Most of the start-ups on the Microsoft page are selling software to the Fortune 500, very often to improve some part of their Microsoft architecture.

    I suspect that real reason that there is a relationship between the very best developers (those most likely to develop a world beater application) are developing on the LAMP stack. This crucial loss of the far right hand of the Bell curve for MS doesn't bode well for the MS stack. As has often been noted, programmers on the far right hand side of the bell are often 10 to 100 times more productive than programmers in the middle. With the loss of these free range developers, it will only continue to extend the ecosystem of open source software and the LAMP stack.

    Technorati Tags:



    Best practices for the Linux Home Office

    Linux has a great set of articles on the best practices of running a home office on Linux. Find Part One, Choosing an ISP, Part III - Protecting your data.

    Technorati Tags:


    Monday, August 22, 2005

    Beginning of the End For Middleware Companies

    "The Apache Software Foundation is expected to launch on Monday an open-source integration server project, part of a bigger effort to create a full suite of Web services infrastructure software."

    Building upon the Apache project is a natural extension of web services. As Apache is the market leader on the web (63% of the total market, this will drive further adaption of Apache in the enterprise by moving up the value chain by commoditizing previously valuable parts of the software spectrum.

    "Chappell said that the Web services "intermediation" capabilities of Synapse are not directly competitive with commercial integration products, which offer more features.

    "This will provide the architectural components that could be used in the broader scope of an ESB or be used in Web services management products," Chappell said. "

    This is the beginning of the end for typical middleware companies. These are companies like Tibco, SeeBeyond etc. Why? While the commercial products offer "more features" those features are largely unused. CIOs want a unified look on their data across disparate systems. By offering that functionality at a significantly lower price point (free beer, free speech), they will lose the lower end of the market first. Eventually the feature set of Synapse will be sufficient to allow them to be used where a typical Application Integration software package maybe used.

    For more information on Apache web services
    Synapse

    Technorati Tags:


    Sunday, August 21, 2005

    Blinding of the Giant

    I was reading an article about Bill Hilf, Microsoft's Linux Lab manager, when several things struck me as strange. First off Bill Hilf was hired in January 2004 from IBM. Before that Microsoft had no Linux lab. I find this remarkably telling. For years MS has been waging a FUD war on Linux yet apparently had blinded itself in the process. They assumed their initial FUD would be stop Linux in it's tracks and a deeper understanding of linux and open source wouldn't be necessary. So they didn't even bother setting up a lab to see why their customers were using Linux.

    Another telling quote from the CIO of Microsoft,

    "As a policy, I don't run anything that competes with Microsoft," Microsoft CIO Ron Markezich said in a December interview with CNET News.com. "My goal is to make sure Microsoft products are the best products in the world. It's an easy choice for me, in that sense, to run Microsoft technology. We don't run Unix. We don't run Linux. We don't run Oracle. We're 100 percent Windows, SQL Server."

    No offense but if you don't run your competing products, how on earth are you going to make your products the best in the world? If you don't know what your competition is doing, how can you make a strong case that your product is better. The Oracle example is quite telling. Oracle is the leader in databases. If I were a CIO thinking about moving my mission critical application to SQL Server, I would want more confidence that Microsoft is a superior product (just a equal product means why would you switch?)

    It seems to me that INTENTIONALLY blinding yourself because it wasn't built here is a particularly poor strategy, especially in an environment where you are selling the superiority of your products over the competition.

    Part of the problem is the MS philosophy of eating your own dog food. Through the use of the product internally, you can drive improvement of that product. There is however downside to that approach, namely you blind yourself to the potential advantages that your competitors may have.

    Technorati Tags:


    Friday, August 19, 2005

    Fewer Defects Found in Latest Linux Kernel

    "An analysis of the latest Linux kernel has found that it contains fewer critical defects than the previous version, despite an increase in the amount of code, a source-code analysis firm said Wednesday."

    Coverity noted that there were six major potential critical defects six months ago. In this latest kernel release,2.6.12, those critical defects were cleared up. Score one for the open source methodology.


    Technorati Tags:


    Thursday, August 18, 2005

    Lloyds - Insuring Open Source

    In a move that removes yet another barrier and FUD point from Microsoft, noted insurer Lloyds of London has moved to offer indemnification for open source software for IP claims.

    "A Lloyd's spokeswoman was unable to confirm details, but St. Clair said the insurance would initially cover the open-source LAMP stack, which consists of the Linux operating system, the Apache Web server, the MySQL database and the Perl, PHP and Python scripting languages. Other open-source products may be added in future depending on market demand."

    This is important on several fronts. First off it indemnifies one of the most critical components in the growth of Linux, the LAMP stack. We are seeing adaption of Linux largely because of this stack. New web services company are constantly built on this stack all the time. By offering indemnification Lloyds believes the IP stack of Linux is relatively clean. This is another vote of confidence for the transparency of Linux and the open source development process.

    Much has been made the role of patents, OSRM commissioned a study that Linux infringes on potentially 283 patents. Here's the dirty little secret in software development today. Since they have allowed software patents nearly everyone's software violates someone else's patent. That's the truth. The fact that Linux potentially violates only 283 patents should be a good sign.

    Right now everyone with a significant patent portfolio usually signs a cross licensing agreement with each other. The real question is what is going to happen once one of these large patent holders decided that they need to more effectively monetize their patent portfolio? It's hard to say. However attempts by relatively small patent holders (15-20 patents) to monetize somewhat dubious patents have not been hugely effective. While they do generate some revenue, no one has become a billionaire doing it. Indeed certain groups have banded together to fight patents, pooling their resources.

    Getting this sort of indemnification for Linux and the entire LAMP stack is a great sign. Getting closed software indemnified at all is next to impossible. Most software companies like MS self under-write their indemnification policies. The last time I tried to get a closed source software solution indemnified, I was unable to do so. This is one of the most critical developments for Linux for continued acceptance in middle level companies and the Fortune 500.

    Technorati Tags:




    Tuesday, August 16, 2005

    Firefox Adaption Stalls

    The early adaptors have all moved to Firefox apparently. It looks as though 8% is Firefox's natural open source market share. I wonder if the new Mozilla corporation will help drive adaption by giving corporations someone to talk to. That's a pretty common request among CIOs. Trying to gain market share against a product that ships with every single machine in the world is fairly hard. I use it and I find it a pretty good product. Of course now that the IE team is re-constituted and working away, MS will ship a product that's just good enough.
    Technorati Tags:


    License Issue & Success of an Open Source project

    One of the things recently discussed at OSCon was the proliferation of open source licenses. As more companies begin to open source some of their applications, their corporate attorneys often feel the need to re-write and redo licenses that have effectively been done.

    "Referring to 63 approved OSI licenses and another 100-200 "floating around," Levin echoed others from the FSF and elsewhere in calling for a reduction in licenses. "We want to reduce any possible objection, concern, or friction point with using open source licenses," he said. "There are truly an unnecessary group of licenses which have been created because of lawyers' needs to justify their existence or because companies have a narcissistic need for differentiation. The slight variations are more often than not an overreaction by zealous lawyers."

    I knew the moment that OSI started accepting licenses to approve that this problem was going to happen. Everyone wants their own licenses, even if it's just their own spin on the BSD license. We licensed under the Sleepycat for Xao and it seemed to work fine.

    The problem that the proliferation of licenses creates confusion over the usage of the particular program especially in a situation where you want to build a new set of services on top of an existing set of open source programs. The confusion of parentage of such a chimera makes it impossible to decide which license to use and for developer to understand what rights they retain to the code. That's why it's pretty clear that the open source projects that succeed have clear relatively easy to follow licenses.

    When I say success, I mean successful at attracting outside developers to the project . By using one of the traditional open source licenses that is well understood by the developer community, allowing them to understand exactly which rights they are giving up and which they are retaining. While your corporate counsel may want to write their own, I can assure you that someone else has covered all the issues you are facing.

    One way to determine your license is to take a look at the business purpose for open sourcing your software. If your intent is to develop a community around your software, chose a well known license. (Sleepycat, BSD, GPL, Mozilla)

    If your purpose is to have an "open source" product and most of the developers are going to work internally on your project, feel free to write your own. Just don't expect a whole lot of outside developers to contribute. Without a clear delination of rights, developers are much less likely to work on a project. Why waste the time?

    Technorati Tags:


    Saturday, August 13, 2005

    37 Signals - An example of the future of software

    Salon recently had a great article about small start up in Chicago called 37 Signals. The name is derived from the Seti project of the number of signals received that could be from intelligent life.

    This is a small company with exactly five employees, all programmers. When the dot com work began to dry up they started looking around for another revenue source. They found one in the web based project management tools they had built to manage projects internally.

    They took their project management software and began offering it as web service that anyone could use. Their software is intentionally limited in feature set to minimize the learning curve. As anyone who has used, MS Project knows, the learning curve on modern project management software is HUGE. MS Project is the market leader in this market but 37 Signals has a great shot at achieving significant market share. There are several reasons for this.


    • The old WordPerfect study. It's pretty simple. Word Perfect found 90% of the users use roughly 10% of the features. That means that for most people, Textpad is more than sufficient for their needs. Without the huge investment of learning the program, most users can be more productive more quickly. Spend more time working and less time working with management tools. Here's their philosophy,

      "We believe software is too complex. Too many features, too many buttons, too much to learn. We build products that do less, work smarter, feel better, let you do things your way, and are easier to use."

      You know what, they are right too.

    • It works simply with a browser. 37 Signals is a big advocate of Ruby On Rails and with AJAX are able to provide a solid user experience. As it's browser based it's platform independent so it works pretty much the same for everyone.
    • MS Project is built on the MS stack. In other words to use the full features of Microsoft Project you need Microsoft Office Project Server. In short, you really need to be a Microsoft shop. 37 Signals can work on any modern browser. These means no license management and no head ache. Project is still far to desktop-centric to be thinking this way. Furthermore a radical change like this would require MS to knife the baby and think outside the box. MS is too busy thinking how can we lock them in. This lockin requires that companies work around Microsoft instead of the other way around.



    Projects and companies like this won't appear on the radar of Microsoft. Since they don't ship software, they don't really appear on the Project's product manager's radar. When they do appear, MS will undoubtedly put out a product spec sheet touting the number of features that Microsoft Project has. This is missing the point entirely. MS Project has too many features to be used effectively now. The learning curve is far too steep and it's far to MS centric to effectively compete.

    Companies like 37 Signals are going to continue to flourish. It's a great time to be an entrepreneur. That's the subject of my next post.

    Technorati Tags:


    Monday, August 08, 2005

    Why HP is doomed

    I rarely forecast doom for a company. However if my recent experience with HP is any example, the company is doomed. I was looking for 2 laptops to be used in my web mail station project (anyone wanting information on that project should look at Thalasar Ventures I will post updates there). As these are going in a web mail station, they are certainly going to be beat to death. So I considered Dell (the old standby). They were offering a great deal on the 1200s. But I got suckered by the great ads HP is now running. When I added in the price of wireless and support, HP turned out on top at least in price. HP has always stood out in my mind as a high quality provider. So away I went to HP TV. After placing my order, I wondered why I didn't recieve an email confirmation of the order. So I quickly called HP to find out. After speaking with a customer service representative, it became apparent that when I input my email address for confirmation and login, I typed .con instead of .com. The customer service rep of course said it was my fault for making a typo. I then thought back to my team's own software development work in open source ecommerce in 1995/1996. Email address verification (that the email address added followed the form of a valid email address) was added in our SECOND alpha release in 1996. Later we added functionality which checked that the email address actually routed and was deliverable. HP doesn't have the first basic functionality nine years later. They don't bother to check to see if an email address is valid with the order!


    The funny thing is this email login is how you are identified as a customer at HP. So when I requested they change it (ie correct it so I can actually communicate with them, I was told this was impossible. Why is email address verification such an impossibility for HP? Could Broadvision (there ecommerce software provider recently taken private) be so inflexible? Is their It infrastructure so brittle?

    It doesn't bode well for a company. I had a similar problem at Dell. They were able to quickly consolidate accounts under a single login. If HP's IT infrastructure is so brittle how can they expect to compete?

    What struck me as even stranger is that the HP rep didn't think it strange that their ecommerce application doesn't validate email addresses and thus account signons. I guess Carly really did kill the culture of innovation at HP.

    Monday, August 01, 2005

    Art of The Demo.

    One of the projects I had introduced to the guys at Highlands University was nearing completion. Anthony the project lead called me into their office to go over the project and make sure we hit it with the work order. So with work order in hand we started. Unfourtunately the programmer had been working on the site that day so it kept breaking. I recoginized the error was a simple one and told them I wasn't in rush for the project and I could come back tomorrow. I also realized that me sitting there put enough pressure on the programmer so he was unlikely to find the error. Just better to come back when he had time to find the missing bracket (which indeed was the error). So the next day I returned and with work order in hand we go through the site. I thought about the demonstration I saw, which was pretty straightforward, and how many times I had to give a similar demonstration for clients when we completed a project. So I though perhaps I could distill some rough guidelines for a demonstration. Now most of my demonstrations were done for a web site but with a little imagination you can expand them to include product demonstrations as well. Here's Brian's Rough rules for demonstration.

    1. Control the demonstration. This means that you shouldn't allow the client to side track the demonstration with questions. This means simply saying,"That's a great question. I would like to handle questions when we get to the end." Make sure though that you write down the clients' question or note it. I suggest writing it down as your mind will be focused on the demonstration. Keeping a question notepad is one way to do it. It is also useful for writing down short notes when the application doesn't quite work as expected. Also don't let the customers randomly monkey around with either the equipment or the site. If you want the customer to try a feature, show the customer the feature you want to demonstrate, show them how to do it and then let them do jsut that feature. It's a product ask for it back so that you "may continue the demonstration".

    2. Know your click path. For this latest demonstration we used the work order to drive the feature demonstration. This can sometimes cause problems as certain features are related to each other. It's often more natural to demonstrate certain capabilities when they are clustered together. Find out what will naturally go together when you practice the demonstration. If you are not the developer, then have a developer in the room when you do your first practice session. Some of this advice will actually be helpful as they point out how features may be clustered together.

    3. Declare the system "Gold." This is a hard one for developers to resist. Quite often they think they can stuff a feature or finish in time for the demonstration. If developers are working on features before the demonstration you can expect that demonstration to go poorly. If all the promised features are not in this demonstration, let the customer know early so as to minimize the expectations.At some point declare that all work must stop so that you can prepare for the demonstration.

    4. Set the expectations. This is an important part of any demonstration. As a demonstration can happen at any point in the development process especially in the XP, you should set the expectation on what the customer is going to see. If demonstrating a specific module, state it at the beginning of the demonstration, "This demonstration will only be covering the customer profile and profile management features." Customers are always going to want to see more so remember point #1.

    5. Practice the demosntration. A demonstration is a form of public speaking and you would never think of giving a speech without practicing it once. By practicing the demonstration in front a single person (preferably a developer familar with it) you will certainly feel more comfortable with the system.

    6. Developers often do not make the best demonstrators. Why? Because they are extremely familar with the internals of the system they are demonstrating. So they may make leaps or even be tempted to make changes during the demonstration. Remember point #3. No more features.

    7. The missing feature. Sometimes you just don't have everything you need for this demonstration. If you forget to mention this during the expectation setting phase of the demonstration, you might be able to get away with dreaded,"In the final version of the system, feature X will happen this way. I am sorry we weren't able to get ready for this demonstration." Of course that feature might not be in the work order, but you can bet the customer will certainly want it. At the final demonstration, the customer will certainly the feature as you mentioned it rather than how the contract reads.

    That's all for now. I will update this from time to time. It will be nice to re-visit it now and again.

    Tuesday, July 26, 2005

    How not to introduce open source

    A recent article on Slashdot covered the topic of how to discuss open source software within the context of the a business. As most of these discussion often do, it focused on the "openness" or availability of the source code as the primary introduction point. I think at this point in the development of open source software, focusing a discussion on the availability of the source code is a waste of time. For small businesses an esoteric discussion over which open source license (GPL vs FreeBSD) is a confusing waste of time. Discuss how this meets the business needs, not the availability of the source code.