<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/css" href="/stylesheets/rss.css"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
  <channel>
    <title>Assembla Blog: Category Open Source</title>
    <link>http://andy.blogs.assembla.com/articles/category/open-source</link>
    <language>en-us</language>
    <ttl>40</ttl>
    <description>Wetware - Men among the Machines, by Andy Singleton</description>
    <item>
      <title>Lessons for Hyper-Agile product development</title>
      <description>&lt;p&gt;Recently we were called upon to build and launch a new Web product with a hard deadline in a seasonal business.  By the time we started our work, only three months remained until the planned launch date.  It was a big system.  Our mission was to build a new and greatly enhanced version of a product which had taken 15 months to build in its last iteration.  So, we had a benchmark.&lt;/p&gt;


	&lt;p&gt;In this case, we ran more than four times faster than a similar project implemented last year with older tools and development methods.  We also came in on-time and under budget, and we ended up implementing features faster than we could figure out how to use them.&lt;/p&gt;


	&lt;p&gt;How did this happen?  Want to try this at home?  I will share our lessons below.  Good luck.&lt;/p&gt;


	&lt;ul&gt;
	&lt;li&gt;Don&#226;&#8364;&#8482;t do things that take time to arrange&lt;/li&gt;
		&lt;li&gt;Don&#226;&#8364;&#8482;t get dragged down by old code&lt;/li&gt;
		&lt;li&gt;Establish the data schema&lt;/li&gt;
		&lt;li&gt;Pile on with new team members&lt;/li&gt;
		&lt;li&gt;Use a ticket list / work queue&lt;/li&gt;
		&lt;li&gt;Build something now, even though we know we will have to rebuild&lt;/li&gt;
		&lt;li&gt;Don&#226;&#8364;&#8482;t split the codebase into components&lt;/li&gt;
		&lt;li&gt;Daily releases instead of stabilization periods&lt;/li&gt;
		&lt;li&gt;Make a usage dashboard&lt;/li&gt;
		&lt;li&gt;Web services are your friend&lt;/li&gt;
		&lt;li&gt;Hire users as product managers&lt;/li&gt;
		&lt;li&gt;Don&#226;&#8364;&#8482;t create obstacles: Users provide the data&lt;/li&gt;
		&lt;li&gt;Documentation on a wiki&lt;/li&gt;
		&lt;li&gt;Find the one thing people will use&lt;/li&gt;
	&lt;/ul&gt;&lt;h2&gt;Here is the expanded version, for people who actually do this for a living.&lt;/h2&gt;


	&lt;h3&gt;Don&#226;&#8364;&#8482;t do things that take time to arrange&lt;/h3&gt;


	&lt;p&gt;We get big time savings by not moving people around.  Travel takes time to arrange, and it takes time to do.  People should be working, not moving, and they should start now.  I don&#226;&#8364;&#8482;t do interviews.  I found that even arranging a phone interview takes five to seven days &#226;&#8364;&#8220; a big chunk of a 70 day project.  Instead, I let people start work and I evaluate their work later.  I also don&#226;&#8364;&#8482;t set up conference calls for the product team.  In my observation, time spent on the phone is a good indicator of communication problems, and is best avoided by improved management and communication.&lt;/p&gt;


	&lt;h3&gt;Don&#226;&#8364;&#8482;t get dragged down by old code.&lt;/h3&gt;


	&lt;p&gt;I believe in doing a lot of research and trying to adapt existing open source code, as an alternative to diving into new development.  We spent a week of our precious schedule taking a in-depth look at open source alternatives.  We considered a system with a friendly academic license and $4M worth of development behind it.  What we found was big, complicated enterprise software with lots of heavy baggage.  We talked to people who were adding to Sakai, and found that they were typically taking 8 months to do things that I thought should take a month.  We discarded the existing product for the same reason.  We moved on to a more agile architecture and never looked back.  I had to change my thinking because, in the new world, it often is faster to build from scratch.&lt;/p&gt;


	&lt;p&gt;Rails is simpler than java for this type of application, and the build was much faster as a result.&lt;/p&gt;


	&lt;h3&gt;Establish the data schema&lt;/h3&gt;


	&lt;p&gt;It is easy to add to a data schema, but difficult to change it.  I sometimes visit old clients and find that the people, products, and code that I knew are long forgotten, but the data schema remains.  Data schema is the one piece of up-front design that we do before diving into the build.&lt;/p&gt;


	&lt;h3&gt;Pile on with new team members&lt;/h3&gt;


	&lt;p&gt;It is possible to bring in a lot of new team members and let people pick their own tasks. Using this technique, we were able to triple our output in three weeks.  This approach is the exact opposite of the &amp;#8220;Mythical Man Month&amp;#8221; recommendation, which holds that adding new team members imposes a cost of learning time and management time which will delay a project that is on a short time schedule.  In my experience, adding team members &lt;span class="caps"&gt;DOES&lt;/span&gt; delay a project, if you need to guide them and manage them.  The pile-on method works if the new developers are good and can find their own way.  We are helped by our &#226;&#8364;&#339;inspired by open source&#226;&#8364;? methods, which were developed to serve large teams with loose central management, and the fact that some of the new developers are very good.    We can weed out the rest a few weeks later.&lt;/p&gt;


	&lt;p&gt;An obvious related lesson is to work with good people.  I am not even going to put it in the list of lessons from this project because it is far from a new lesson.  A good developer seems to be about 5 times as productive as an average developer.  In this project, there were several cases where a team member spent 2 weeks working on something, did not finish it, and then found it replaced by something our best guy finished in 2 days.  Given the potential gains, most project managers don&#226;&#8364;&#8482;t invest enough in recruiting and retention.&lt;/p&gt;


	&lt;h3&gt;Use a ticket list / work queue&lt;/h3&gt;


	&lt;p&gt;We put all of our tasks, bugs, and new requests into a list of &amp;#8220;tickets&amp;#8221;, often called a work queue.  We use Trac.  In fact, we use &lt;a href="http://www.assembla.com"&gt;Assembla.com&lt;/a&gt;. We sort the tickets by priority and milestone, so the tasks from the next milestone are on top of the list (queue).  It&#226;&#8364;&#8482;s easy to figure out what to do.  Just look at the list of tickets and pick something near the top.  You can try to adopt a more rigorous agile methodology, but you will find that it is hard to improve on this simple and effective technique.&lt;/p&gt;


	&lt;h3&gt;Build something now, even though we know we will have to rebuild&lt;/h3&gt;


	&lt;p&gt;We started building copies of the old product, and copies of features that we saw in other products, before we even had a coherent visual design or plan for the new product.  Then we ripped out a lot of the guts and rebuilt it.  This was still faster than waiting around for a coherent design and product plan.  Why?  In this new environment, development is faster than product management.  From a product management point of view, it is faster to ask for changes than to figure out what the product should do from scratch.  It takes forever to build something that is unknown, but if you know what you want, builds are fast. So, the two steps (copy and redesign/refactor), with clear instructions for each, are faster than one build from a blank sheet.&lt;/p&gt;


	&lt;h3&gt;Don&#226;&#8364;&#8482;t split the codebase into components&lt;/h3&gt;


	&lt;p&gt;In this application we needed several types of servers that were different &#226;&#8364;&#8220;a permissioned application, a public portal, and a central user registration server.  We lumped them together in one repository and one application with configurable &#226;&#8364;&#339;roles&#226;&#8364;? that turn features on or off.  This made the code a bit more complicated.  However, it made other aspects of managing the app &#226;&#8364;&#8220; setting up developers, testing, staging, deployment &#226;&#8364;&#8220; a lot simpler.&lt;/p&gt;


	&lt;h3&gt;Daily releases instead of stabilization periods&lt;/h3&gt;


	&lt;p&gt;In a normal Web 2.0 style release, you just run beta releases of increasing quality, until you are ready to do a bigger announcement.  In this case, I didn&#226;&#8364;&#8482;t think we had time for such gradual stabilization.  I initially recommended that we do a code freeze with a week of testing and stabilization.  The resulting product might not be perfect, but at least it wouldn&#226;&#8364;&#8482;t crash.  We started with a daily release process and no code freeze, and it worked well enough that we didn&#226;&#8364;&#8482;t need to a code freeze and stabilization period.  It&#226;&#8364;&#8482;s not bug free, but we fix the bugs as fast as people notice them.  I now have abundant evidence, from several projects, one of them a big enterprise &lt;span class="caps"&gt;ASP&lt;/span&gt;, that users will tolerate a product which comes directly from developers, every day, with minimal testing, if the time to release a bug fix is less than 24 hours.&lt;/p&gt;


	&lt;h3&gt;Make a usage dashboard&lt;/h3&gt;


	&lt;p&gt;Program a custom dashboard that shows registration and usage statistics.  Everyone on the team will use it every day as soon as the beta period starts.&lt;/p&gt;


	&lt;h3&gt;Web services are your friend&lt;/h3&gt;


	&lt;p&gt;Arranging integration with external systems can absorb a lot of calendar time.  We were able to use &lt;span class="caps"&gt;SOAP&lt;/span&gt; services (easily offered or called in Rails) to make it go faster than I expected.&lt;/p&gt;


	&lt;h3&gt;Hire users as product managers&lt;/h3&gt;


	&lt;p&gt;Product management &#226;&#8364;&#8220; figuring out what the product should do &#226;&#8364;&#8220; became the bottleneck early on and remains the bottleneck.  Using the above techniques, the developers pull requests off the ticket stack and implement them as fast  as we can make the requests.  Our strategy to deal with this is to hire users as part-time product managers, and let them each work with a mockup team to redesign the visual parts of the app.  With the distributed team system, it&#226;&#8364;&#8482;s easy to integrate part-timers like this.&lt;/p&gt;


	&lt;h3&gt;Don&#226;&#8364;&#8482;t create obstacles: Users provide the data&lt;/h3&gt;


	&lt;p&gt;We took out the centrally controlled categories and allowing users to just type their own tags for the content that they entered and shared.  I think we would still be waiting if we had to build our own categories.  We got a surprise when we released with a comprehensive list of US data, and we had immediate requests from dozens of countries.  I now think that users should be able to post additions to any part of the database if they need to.  Why block them?  Sometimes the additions can be released directly, and sometimes they may need to be approved by an editor.&lt;/p&gt;


	&lt;h3&gt;Documentation on a wiki&lt;/h3&gt;


	&lt;p&gt;If your application changes every day, you need to put the documentation on a wiki.  If you set up the documentation wiki early in the development process, you can start linking to it from inside the app, just like embedded help pages.&lt;/p&gt;


	&lt;h3&gt;Find the one thing people will use&lt;/h3&gt;


	&lt;p&gt;If you can find the one feature that people will use and adopt, it makes the whole system simpler.  So, release early and often and watch your dashboard.  Find that thing.&lt;/p&gt;</description>
      <pubDate>Sun, 07 Jan 2007 21:15:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:da8afd4fe43da86e6518be87762f9a97</guid>
      <author>andy@assembla.com</author>
      <link>http://andy.blogs.assembla.com/articles/2007/01/07/lessons-for-hyper-agile-product-development</link>
      <category>Agile Development</category>
      <category>Open Source</category>
      <category>Software Business</category>
      <trackback:ping>http://andy.blogs.assembla.com/articles/trackback/35</trackback:ping>
    </item>
    <item>
      <title>Roadmapping - how your product finds its way</title>
      <description>&lt;p&gt;A startup will often live or die based on its first product release. Did it get released? Did people find it useful? Good roadmapping dramatically improves your chance of getting to &#226;&#8364;&#339;Yes!&#226;&#8364;? on these critical questions.&lt;/p&gt;


	&lt;p&gt;Read about my &lt;a href="http://onstartups.com/Home/tabid/3339/articleType/ArticleView/articleId/1040/RoadmappingHowYourProductFindsItsWay.aspx?navby=Recent"&gt;roadmapping technique&lt;/a&gt; over at th On Startups blog.&lt;/p&gt;


	&lt;p&gt;I think it&amp;#8217;s my most immediately useful post so far.  It&amp;#8217;s a technique that has helped me work with individual entrepreneurs, my own products, venture funded companies, and giant corporations.  I gave it to Dharmesh at On Startups because he has a much bigger readership that could benefit from this technique.&lt;/p&gt;


	&lt;p&gt;So, &lt;a href="http://onstartups.com/Home/tabid/3339/articleType/ArticleView/articleId/1040/RoadmappingHowYourProductFindsItsWay.aspx?navby=Recent"&gt;check it out&lt;/a&gt;.&lt;/p&gt;</description>
      <pubDate>Thu, 28 Sep 2006 21:43:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:f53ef6be4c89f9ab6a969e508844bde8</guid>
      <author>andy@assembla.com</author>
      <link>http://andy.blogs.assembla.com/articles/2006/09/28/roadmapping-how-your-product-finds-its-way</link>
      <category>Agile Development</category>
      <category>Open Source</category>
      <trackback:ping>http://andy.blogs.assembla.com/articles/trackback/27</trackback:ping>
    </item>
    <item>
      <title>Jon Udell Podcast: - A conversation with Andy Singleton about building global teams</title>
      <description>&lt;p&gt;&lt;a href="http://weblog.infoworld.com/udell/"&gt;Jon Udell&lt;/a&gt; included me in his Friday podcast series this week with &lt;a href="http://weblog.infoworld.com/udell/2006/05/19.html"&gt;a conversation with Andy Singleton about building global teams&lt;/a&gt; . Jon has been putting up with me since 1993, when he edited some freelance articles that I wrote for Byte magazine.  In 2003 he coined the term &amp;#8220;dynamic development&amp;#8221; to describe the work I was doing.  He has recently been commenting on user innovation and the power of human networks to do work beyond open source sofware.  In this conversation, he turns me on to Yochai Benkler&amp;#8217;s &lt;a href="http://www.benkler.org/wealth_of_networks/index.php?title=Main_Page"&gt;The Wealth of Networks&lt;/a&gt;, and he cautions against a &amp;#8220;walled garden&amp;#8221;.  Maybe we&amp;#8217;ll be able to work together on a universally portable user profile.&lt;/p&gt;</description>
      <pubDate>Sat, 20 May 2006 22:53:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:8e9c6a35f9c18220b813a3c8678e5f1b</guid>
      <author>andy@assembla.com</author>
      <link>http://andy.blogs.assembla.com/articles/2006/05/20/jon-udell-podcast-a-conversation-with-andy-singleton-about-building-global-teams</link>
      <category>Agile Development</category>
      <category>Open Source</category>
      <category>Breakout Development</category>
      <category>Innovation</category>
      <trackback:ping>http://andy.blogs.assembla.com/articles/trackback/24</trackback:ping>
    </item>
    <item>
      <title>Project.net - new open strategy and releases</title>
      <description>&lt;p&gt;We have finally announced the new strategy and releases for Project.net, at  &lt;span class="caps"&gt;OSBC&lt;/span&gt; on February 14.  Over the next few months we will release open source, hosted on-demand, and enterprise packages based on this product.  We picked up some nice articles in the press.&lt;/p&gt;&lt;p&gt;&lt;p&gt;&lt;a href="http://www.internetnews.com/dev-news/article.php/3584241"&gt;Internet News&lt;/a&gt;&lt;br /&gt;
&lt;a href="http://news.com.com/Open+source+The+newest+competitive+tool/2100-7344_3-6038725.html"&gt;News.com&lt;/a&gt;&lt;/p&gt;
    &lt;p&gt;This relaunch of Project.net has been a long time in the making, since I first discussed it with Roger Bly, the president of Project.net, last May.&lt;/p&gt;
    &lt;p&gt;At the time, Roger was wondering how Project.net could go to the next level.  The company had a nice product and a few good enterprise customers.  However, it was too small to thrive in the increasingly brutal enterprise selling cycle, as described in my article&lt;a href="http://corp.assembla.com/modules/wordpress/index.php?p=9"&gt; Is the Enterprise Software Licensing Business Dying?&lt;/a&gt;&lt;/p&gt;
    &lt;p&gt;I discussed with Roger some opportunities that Project.net could take advantage of:&lt;/p&gt;
    &lt;ul&gt;
&lt;li&gt;Many of their best customers were doing some kind of customization.  However, Project.net did not have any kind of shared source or open source licensing or process in place to serve those customers.  They didn&amp;rsquo;t have any strategy in place to take advantage of open source marketing, community resources, and customer innovation.&lt;/li&gt;
    &lt;li&gt;They were making most of their money on the bigger deals, over $100K, and really didn&amp;rsquo;t have any way to benefit from serving smaller groups.&lt;/li&gt;
    &lt;li&gt;They built a nice Web-based, multi-tenant application, but they did not offer any kind of &lt;span class="caps"&gt;ASP&lt;/span&gt; or on-demand service.&lt;/li&gt;
    &lt;/ul&gt;
    &lt;p&gt;Over the next six months we worked together to design a new strategy and get the company sold to &lt;span class="caps"&gt;ICS&lt;/span&gt;, which was willing to put in resources to back the new strategy.  That deal closed in December.&lt;/p&gt;
    &lt;p&gt;Then we set to work rebuilding the development team and process as an open-source compatible global team and process.  It was an amazing experience, during which we looked at 130 candidates, selected 11 for competitive trials, and were amazed when 9 of the candidates turned out to be great.  Now, we have guys from 7 countries working together every day.&lt;/p&gt;
    &lt;p&gt;The results from the sales and marketing process have also been great.  Leads, renewals, and sales are running ahead of expectations.  There has been a surge of interest in Project Portfolio Management solutions, and all of the players are benefiting.  Project.net has a bright future in this space.&lt;/p&gt;&lt;/p&gt;</description>
      <pubDate>Fri, 17 Feb 2006 12:17:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:ce8150dc6913a96b70111246ea1c2d3b</guid>
      <author>andy</author>
      <link>http://andy.blogs.assembla.com/articles/2006/02/17/project-net-new-open-strategy-and-releases</link>
      <category>Open Source</category>
      <category>Software Business</category>
    </item>
    <item>
      <title>Notes from the Government Open Source Conference</title>
      <description>&lt;p&gt;The &lt;span class="caps"&gt;GOSCON&lt;/span&gt; event was a great success, with about 200 attendees, about twice the expected turnout.  Below are some observations that might be relevant for for Massachusetts.
Linda Hamel,  Massachusetts &lt;span class="caps"&gt;ITD&lt;/span&gt; general counsel, was a star of the show.  There is a consensus that Massachusetts has set the &amp;#8230;&lt;/p&gt;&lt;p&gt;&lt;p&gt;The &lt;span class="caps"&gt;GOSCON&lt;/span&gt; event was a great success, with about 200 attendees, about twice the expected turnout.  Below are some observations that might be relevant for for Massachusetts.&lt;/p&gt;
    &lt;p&gt;Linda Hamel,  Massachusetts &lt;span class="caps"&gt;ITD&lt;/span&gt; general counsel, was a star of the show.  There is a consensus that Massachusetts has set the standard for open standards policy making.  A lot of people wanted to learn more about Massachusetts&amp;#8217; policy, and I spoke with a Red Hat VP who had just gotten back from Malaysia with a report that &amp;#8220;they didn&amp;#8217;t want to hear about Red Hat.  They wanted to hear about Massachusetts.&amp;#8221;&lt;/p&gt;
    &lt;p&gt;&lt;span class="caps"&gt;BRINGING STATE AGENCIES TOGETHER&lt;/span&gt;&lt;br /&gt;
About half of the attendees were from various Oregon government agencies, and the crowd included a number of agency CIOs.  The event delivered value for the state of Oregon as education, a way to agree on the key issues, and venue for organizing relatively sophisticated joint efforts.  I suspect that Massachusetts could get a lot of value from a similar, locally targeted event.&lt;/p&gt;
    &lt;p&gt;&lt;span class="caps"&gt;ECONOMIC DEVELOPMENT&lt;/span&gt;&lt;br /&gt;
Oregon has been developing an economic &amp;#8220;cluster&amp;#8221; around open source.  They view it as a source of jobs and have put some state resources behind it, including official economic development staff with slick brochures.  I have two different impressions of this effort.  The first is that the number of jobs is very modest &amp;#8211; at most 200.  If dropped into the larger Massachusetts software industry, the job count wouldn&amp;#8217;t be statistically perceptible.  On the other hand, the synergies really work and the gears meshed.  I met with the &lt;span class="caps"&gt;CEO&lt;/span&gt; of Compiere, who had just moved his company from Connecticut to an incubator in Portland, a short walk from the conference.  The conference was organized by the Open Source Lab at Oregon State University, hosted by Portland State, attended by stage and local agencies, and populated with local small open source companies.&lt;/p&gt;
    &lt;p&gt;&lt;span class="caps"&gt;PROCUREMENT&lt;/span&gt;&lt;br /&gt;
There was discussion of procurement processes.  The Oregon Department of Transportation &lt;span class="caps"&gt;CIO&lt;/span&gt; stood up and asked &amp;#8220;how can I get these guys (Compiere) to respond to an &lt;span class="caps"&gt;RFP&lt;/span&gt;?&amp;#8221;  One obvious observation is that open source software is so cheap that the vendors can&amp;#8217;t afford to respond to &lt;span class="caps"&gt;RFP&lt;/span&gt;&amp;#8217;s.  By design, the software is bought, not sold.  The open source model often requires that users do more of their own evaluations, which requires specific internal skills, or consultants who do research.  The requirement to consider open source as a possible route to &amp;#8220;best value&amp;#8221; is useful to balance this extra effort.  Bigger projects will require integrators who should be expected to respond to &lt;span class="caps"&gt;RFP&lt;/span&gt;&amp;#8217;s.  A two step process seemed attractive, separating software selection from integrator selection.  In the first step, the agency is free to select open source software without any bidding process, since that step doesn&amp;#8217;t require any expenditure.  Then the agency finds three bidders for the integration job.  I made a note to work on lining up a quorum of qualified integrators for the more complex open source packages.&lt;/p&gt;
    &lt;p&gt;&lt;span class="caps"&gt;SHARED PROJECTS&lt;/span&gt;&lt;br /&gt;
An explicit goal of the conference was organizing shared projects.  Andy Stein promoted the &lt;span class="caps"&gt;GOCC&lt;/span&gt; in a description of his effort to build a portal for local government.  I suggested that he open up this project in the development stages and he agreed to consider my position.  I met a couple of small companies that support software shared by several states or agencies and want to move it into open source projects.  I offered to help with set up the open development process and prequalify some contractors to work on it.  This should bring some new inventory to &lt;span class="caps"&gt;GOCC&lt;/span&gt;.  We saw shared projects for scholarship administration, medical information, mental health care management, and 211.&lt;/p&gt;
    &lt;p&gt;James McKerr and Scott Kveton of &lt;span class="caps"&gt;OSU&lt;/span&gt; described their experiences with two significant &amp;#8220;community source&amp;#8221; projects, Sakai and Kuali, that the &lt;span class="caps"&gt;OSU&lt;/span&gt; open source lab participates in.  Sakai is a learning management portal for universities, and Kuali is an &lt;span class="caps"&gt;ERP&lt;/span&gt; system for universities.  Both are multi-million dollar efforts.  They described the community source model, which involves establishing a heavyweight non-profit organization to manage development, with founding members committing substantial sums of money ($50K-$700K range, $2.8M in initial grants to Sakai) to build a replacement for complex commercial systems that would otherwise cost $1M+.  I think this model might be too ponderous for many projects, but it seems to work for the universities, especially as a way to attract grants, it has some successful examples, and it allows for ambitious effort.&lt;/p&gt;
    &lt;p&gt;Government &lt;span class="caps"&gt;CIO&lt;/span&gt;&amp;#8217;s are talking about some very ambitious efforts.  For example, Bill Crowell, &lt;span class="caps"&gt;CIO&lt;/span&gt; of the Oregon Department of Human Services, wants to create a community version of a &lt;span class="caps"&gt;SACWIS&lt;/span&gt; system.  &lt;span class="caps"&gt;SACWIS &lt;/span&gt;(Statewide Automated Child Welfare Information System) is the system that states use to manage their child welfare cases.  The system implements a set of 96 federally mandated processes, plus processes specific to individual states.  &lt;span class="caps"&gt;A SACWIS&lt;/span&gt; deployment costs a minimum of $10M, ranging up to an estimated $800M for an upcoming California deployment.  There are 11 states planning new or upgraded &lt;span class="caps"&gt;SACWIS&lt;/span&gt; in the next few years.&lt;/p&gt;
    &lt;p&gt;It turns out that because each &lt;span class="caps"&gt;SACWIS&lt;/span&gt; system is built with federal sponsorship, the code is public domain.  However, it isn&amp;#8217;t generally shared.  The big integrators have their own codebase from their last job that they can extend for a particular state deployment.  Each state gets a system that is built to a custom set of requirements by a big integrator and delivered at a particular point in time.  Then, because it&amp;#8217;s a custom system, there is no upgrade process and no sharing of enhancements, and the system eventually goes out of date.  If there were a shared, living version of &lt;span class="caps"&gt;SACWIS&lt;/span&gt;, with a community participating in a continual upgrade process with contribution of enhancements, it would produce a lot of benefits.  Initial adoption would be faster and cheaper.  The system would be upgraded over time.  There would be far fewer replacement cycles.  Hundreds of millions of dollars would be saved.&lt;/p&gt;
    &lt;p&gt;I sat in a working group that included Crowell, Walter McDonald (who wrote the federal requirements and serves as a requirements consultant for most outstanding &lt;span class="caps"&gt;SACWIS&lt;/span&gt; bids), and a gentleman from &lt;span class="caps"&gt;GGI&lt;/span&gt;-AMS, one of the integrators with a relatively modern version of &lt;span class="caps"&gt;SACWIS&lt;/span&gt;.  The vendors are hesitant to open up, but based on this type of participation, it seems clear that something can happen. &lt;/p&gt;
    &lt;p&gt;A lot of federally funded public domain code would be more useful if wrapped in an open source community process, and that&amp;#8217;s definitely an area where I want to do more work.  Larry Augustin introduced his company, Medisphere, which took the public domain Vista code for managing hospitals (2 million lines of code, $2B invested over 25 years, used in all the VA hospitals) and modernized it for the small and mid-sized hospital market.&lt;/p&gt;
    &lt;p&gt;I got a decent reception for the idea of organizing a user collaborative for &lt;span class="caps"&gt;ODF&lt;/span&gt; adoption, with responsibility for building an MS-Office plugin for reading, writing, and previewing &lt;span class="caps"&gt;ODF&lt;/span&gt;, as well as for providing other adoption resources and processes.  It seems like this would provide a simple route to open document formats for many users.  For example, Jeff Kaplan, who just organized the &lt;a href="http://cyber.law.harvard.edu/epolicy/" target="_blank"&gt;&lt;i&gt;Roadmap for Open &lt;span class="caps"&gt;ICT &lt;/span&gt;Ecosystems&lt;/i&gt;&lt;/a&gt; study, thought some of his participants (open standards supporters from 13 countries) might be interested.&lt;/p&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 18 Oct 2005 15:40:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:694168e882b049e1d76c19a0281b3b93</guid>
      <author>andy</author>
      <link>http://andy.blogs.assembla.com/articles/2005/10/18/notes-from-the-government-open-source-conference</link>
      <category>Open Source</category>
    </item>
    <item>
      <title>Sakai - It&#8217;s the community, not the code</title>
      <description>Sakai is a Learning Management System that provides features for students to interact with their professors and their universities on the Web.
Why is Sakai important?  
	&lt;ul&gt;
	&lt;li&gt;It&amp;#8217;s the best example that we have seen of a community coming together to build an industry-specific application.&lt;/li&gt;
		&lt;li&gt;The community has generated real &amp;#8230;&lt;/li&gt;
	&lt;/ul&gt;&lt;p&gt;&lt;a href="http://www.sakaiproject.org/" target="_blank"&gt;Sakai&lt;/a&gt; is a Learning Management System that provides features for students to interact with their professors and their universities on the Web.&lt;/p&gt;
    &lt;p&gt;Why is Sakai important?  &lt;/p&gt;
    &lt;p&gt;&lt;strong&gt; It&amp;#8217;s the best example that we have seen of a community coming together to build an industry-specific application.&lt;/p&gt;
    &lt;p&gt;&lt;/strong&gt; The community has generated real enthusiasm at both the institutional and individual level.  More than 80 dues-paying universities have joined the Sakai foundation, and 400 individuals showed up at the last Sakai conference.  More than $5M has been committed to Sakai development so far.&lt;/p&gt;
    &lt;p&gt;* It&amp;#8217;s a category killer.  It&amp;#8217;s in line to replace a multitude of homegrown systems, and it competes with six commercial products designed for higher education.&lt;/p&gt;
    &lt;p&gt;I had the chance to speak today with Amitava &amp;#8220;Babi&amp;#8221; Mitra, a Sakai board member representing &lt;span class="caps"&gt;MIT&lt;/span&gt;.  He filled me in on the history and the secret sauce.  &lt;/p&gt;
    &lt;p&gt;The project started when representatives of four universities &amp;#8211; &lt;span class="caps"&gt;MIT&lt;/span&gt;, U Michigan, Indiana U, and Stanford &amp;#8211; realized that they were each investing in a homegrown learning management system.  They pooled their efforts, and by the beginning of 2004 had been awarded a $2.4M grant from the Mellon Foundation.  They also began offering an &amp;#8220;Educational Partner Program&amp;#8221; to other universities, supported by the Hewlett Foundation, and started the process of creating a Sakai Foundation with a more inclusive governance structure.&lt;/p&gt;
    &lt;p&gt;They began developing an application on open source foundations.  Development and beta testing proceeded for a year and a half, and now in the fall of 2005, a handful of universities are putting the latest version into production.&lt;/p&gt;
    &lt;p&gt;I want to understand the enthusiasm that universities, more than 80 at this point, have showed for this project.  They commit $30,000 when they join the partner program &amp;#8211; $10,000 per year for three years.  What do they get?  Why do they join?&lt;/p&gt;
    &lt;p&gt;They certainly don&amp;#8217;t join for the code.  The code is available to anyone under a free open source license.  Furthermore, the code is still under development and used only in pilot installations.  Given that the project has been so successful in the 1.5 years prior to a production release, I almost hypothesize that it is important &lt;span class="caps"&gt;NOT&lt;/span&gt; to have a finished application when you start putting a collaborative like Sakai together.&lt;/p&gt;
    &lt;p&gt;Nor do they get significant governance privileges when they join.  The board is controlled by the four original founding universities, who don&amp;#8217;t pay dues and get the majority of the development money.  &lt;/p&gt;
    &lt;p&gt;They get direct support from Sakai&amp;#8217;s small permanent staff &amp;#8211; training, implementation workshops, questions answered, working groups arranged.  Mostly what they get is the membership in the community and a voice in the development process.  Community features include conference admission (a $300 value per person), participation in the members-only discussion lists, and the chance to join the working groups (a chance to work for free!).  Partners are taking the lead in setting up working goups and discussion groups.&lt;/p&gt;
    &lt;p&gt;So, universities and individuals are pouring time and money into a product that they can get for free, in exchange for some advice, participation in discussions, and a chance to do extra work.  Those are real benefits because they belong to a community.  It shows that collaboration is a powerful motivating force.&lt;/p&gt;
    &lt;p&gt;Mitra gave me his opinion of why universities and individuals are enthusiastic about this project.&lt;br /&gt;
	&lt;ul&gt;
	&lt;li&gt;It&amp;#8217;s a hot category.  Universities are just now discovering that there is a demand for learning management systems from their students and professors, and they need to make plans for deployment.&lt;br /&gt;&lt;/li&gt;
		&lt;li&gt;Universities have a bias to control their own code and to share that makes them less enthusiastic about the proprietary products available in this category.&lt;br /&gt;&lt;/li&gt;
		&lt;li&gt;He thinks higher education institutions are culturally unique because they make time for collaboration, conferences, and exploratory projects, and the time and talent wouldn&amp;#8217;t be as available in a for-profit institution.&lt;/p&gt;
    &lt;p&gt;I&amp;#8217;m not sure that I agree with the university-specific analysis.  People in many industries seem to want to collaborate with their peers.&lt;/p&gt;
    &lt;p&gt;There are some dynamics that I would expect to see repeated with other industry collaboratives:&lt;br /&gt;&lt;/li&gt;
		&lt;li&gt;The system directly replaces homegrown software&lt;br /&gt;&lt;/li&gt;
		&lt;li&gt;It&amp;#8217;s a recent but not totally new category of application that the majority of participants have realized they will need to adopt.&lt;br /&gt;&lt;/li&gt;
		&lt;li&gt;It&amp;#8217;s built on open source components&lt;br /&gt;&lt;/li&gt;
		&lt;li&gt;Four founding members seems about right.  It&amp;#8217;s enough to get real savings, but not too many to form a management group.&lt;br /&gt;&lt;/li&gt;
		&lt;li&gt;It starts with a community and not with finished code.&lt;/p&gt;
    &lt;p&gt;There has to be an initial event.  In this case, a $2.4M grant made the project real and gave it the resources to start from scratch, although Mitra says &amp;#8220;it just would have taken longer&amp;#8221; without the grant.&lt;/p&gt;
    &lt;p&gt;On alternative sourcing mechanism that interests me is donation.  The Sakai Course Evaluation Working Group is taking an application that Columbia uses to let students evaluate professors (and that Virginia Tech has modified and deployed), and formed a working group around it with the goal of offering it as a Sakai tool.&lt;/p&gt;&lt;/li&gt;
	&lt;/ul&gt;</description>
      <pubDate>Tue, 27 Sep 2005 20:49:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:1cf9a137d75afae67cb26e127ae89fc6</guid>
      <author>andy</author>
      <link>http://andy.blogs.assembla.com/articles/2005/09/27/sakai-it%E2%80%99s-the-community-not-the-code</link>
      <category>Open Source</category>
    </item>
    <item>
      <title>Democratizing Innovation shows how to make big breakthroughs</title>
      <description>&lt;p&gt;User innovation, in the form of open source software, is one of the most powerful forces in the software business today.  Will this force propel the software industry to yet another phase of bold innovation?  Or, will it cripple commercial R&amp;#38;D organizations and lead to a future of stagnant, commoditized software?&lt;/p&gt;&lt;p&gt;In his book &lt;a href="http://web.mit.edu/evhippel/www/democ.htm" target="_blank"&gt;&lt;i&gt;Democratizing Innovation&lt;/i&gt; (available online)&lt;/a&gt;, Sloan School professor Eric Von Hippel shows user innovation at work in many industries, including sporting goods, surgical equipment, electronics manufacturing, and the 18th century mines of Cornwall.  His finding is that innovations from users are often more lasting and important than innovations from vendors.  Hippel finds that while vendors focus on incremental improvements to known capabilities, users are more likely to come up with new capabilities that have important future uses.&lt;/p&gt;


	&lt;p&gt;Hippel focuses on &amp;#8220;lead users&amp;#8221; &amp;#8211; users with extreme needs that have not yet been encountered by most other users.  A lead user might be a surgeon practicing a new technique, a systems administrator under persistent network attack, or a mountain biker exploring new terrain.  Lead users are motivated to figure out how to build new things with existing products.  And, this book demonstrates, they often have the ability to make substantial progress.  A weekend kiteboarder might be an aerospace engineer during the week.  A surgeon might be able to raise funding to manufacture new equipment.  An electronics manufacturer certainly has the means to make extensive customizations to the equipment it uses on its primary assembly line.&lt;/p&gt;


	&lt;p&gt;In contrast, vendors doing market research for a new product typically focus on their mainstream users.  They make improvements in the speed, size, convenience, availability, usability, and reliability of their products, as typically used.  Each iteration of the vendor product is produced largely by the same engineers building the same product for the same customers, but in an improved version.  That&amp;#8217;s the groove or rut that I see most software companies climbing into.&lt;/p&gt;


	&lt;p&gt;Vendors also segment their users into just a few categories, hoping to simplify their product planning and production by making a high-quality, one-size-fits-all product.  In doing so, they miss what Hippel calls &amp;#8220;heterogeneity of need&amp;#8221;.  Users of a product often have many different needs.  In one survey of Apache Web server administrators, Hippel found that there were 92 different security related functions requested, and that there was no clustering or pattern in their requests.  Some of those requests come from lead users, but they are hard to identify in the vendors aggregate view.&lt;/p&gt;


	&lt;p&gt;The most eye-popping statistics in this book come from a study of product development at 3M, where certain product development teams were coached to use a &amp;#8220;lead user&amp;#8221; method for identifying new product opportunities.  They looked at emerging market trends, and then they identified users that were at the leading edge of those trends (the lead users) and went to them for ideas.  A different set of product development teams used traditional market research and R&amp;#38;D to design their products.  At the end of this study, the traditional teams had generated 41 incremental improvements and 1 major new product line, with forecast annual sales of $18M per product.  The &amp;#8220;lead user&amp;#8221; teams had generated zero incremental improvements and five major new product lines, with forecast annual sales of $146M per product.&lt;/p&gt;


	&lt;p&gt;The software business has both the motivation and the ability to advance with user innovation.  Heterogeneity of need is so high for large enterprise systems that virtually every installation is customized.  User communities have leading-edge collaboration techniques, and communities have substantial programming resources that often include vendor capabilities.&lt;/p&gt;


	&lt;p&gt;Hippel gives us a handy formula for figuring out the build/buy decision.  Assuming that either the vendor and the user can build a product or innovation for the same cost, a vendor spending 50% of non-sales expenses on R&amp;#38;D, with a 25% cost of sales, will need to sell 3 copies of a system before making any money.  If the market is smaller, users will need to pick up the development task.  At a 75% cost of sales, the vendor needs to sell 9 copies.  This calculation, along with the variation in needs, starts to explain why, as the cost of selling a new software license has risen to over 75% of revenue, users have shifted resources from packaged systems to building custom systems with offshore and open source building blocks.  This shifts resources toward user innovation.&lt;/p&gt;


	&lt;p&gt;In this situation, software producers must learn to take advantage of user innovation.  They can provide toolkits to users (for example, source code), so that users can add more value through innovation.  They can share the work of innovation.  They can create processes for bringing user modifications back into the mainline product.  In short, they can be more like open source communities.&lt;/p&gt;


	&lt;p&gt;User innovation works well, but is it in the interests of users or vendors to participate in an innovation community?  Why reveal and contribute code if it just helps the free riders who don&amp;#8217;t contribute?  In the open source world, there may be tens of thousands of users for every contributor.  What explains the increasing volume of commercial open source contributions?  Hippel approaches this question by observing that the &amp;#8220;free revealing&amp;#8221; of important commercial innovation is widespread in many industries.  He cites examples ranging from 18th century mining engineers who started a journal to share advances in steam engine technology, to &lt;span class="caps"&gt;IBM&lt;/span&gt;, which &amp;#8220;after a lag&amp;#8221; recently revealed its important copper interconnect chipmaking technology to competitors.  In most of these cases, free revealing &amp;#8220;is the only practical option.&amp;#8221;  Competitors can reproduce an innovation if they observe it, and patent protection is weak in most fields.  Furthermore, individuals (consultants and developers) often have a strong incentive to freely reveal innovations that advance their careers or their personal missions.  Free revealing increases the pace of innovation and benefits the mission of the innovator.  By controlling the timing and placement of freely revealed innovations, commercial organizations can build up their platforms, their industries, their customer and partner participation, and other types of competitive advantage.&lt;/p&gt;


	&lt;p&gt;Hippel concludes by observing that user innovation and free revealing lead to enhanced &amp;#8220;social welfare&amp;#8221;.  It can make everyone better off.  User innovation is a powerful force that can benefit both users and vendors.  This book helps you understand how it works so that you can make it work for you.&lt;/p&gt;


	&lt;p&gt;&lt;em&gt;This article also appeared in &lt;strong&gt;&lt;span class="caps"&gt;IT &lt;/span&gt;Managers Journal&lt;/strong&gt;.&lt;/em&gt;&lt;/p&gt;</description>
      <pubDate>Tue, 05 Jul 2005 17:43:00 +0000</pubDate>
      <guid isPermaLink="false">urn:uuid:f9eca423589db10fda39af68dea196b7</guid>
      <author>andy@assembla.com</author>
      <link>http://andy.blogs.assembla.com/articles/2005/07/05/democratizing-innovation-shows-how-to-make-big-breakthroughs</link>
      <category>Open Source</category>
      <category>Software Business</category>
      <category>Innovation</category>
    </item>
  </channel>
</rss>
