Tuesday Feb 17, 2009

Ordinarily, my Inbox is full of anything but heartwarming emails, but last week I was gratified to receive a photo of four Sun Rays atop health worker desks in Butaro, Rwanda. The photo, sent by Erik Josephson of the Clinton Foundation's HIV/AIDS & Malaria initiative, shows the pilot setup for rural health clinics that former president Bill Clinton envisioned when he made his TED 2007 wish to ...
"... build a sustainable, high quality rural health system for the whole country."
- Bill Clinton, March 2007

Sun provided these Sun Ray 2's and the supporting servers as part of its commitment to support the TED Prize that year. To actually see the Sun gear in situ makes all the planning and logistics and weekly conference calls over the past 18 months suddenly all worthwhile. The site in the photo is one of two pilot locations in which the infrastructure will be tested in live clinical situations over the next month. Pending the results of the pilot, this model infrastructure will be rolled out to an additional 70+ clinics and hospitals across rural Rwanda.

The pilot phase of the project, currently being administered by Partners in Health and The Clinton Foundation is set to begin in the villages of Butaro and Kinoni on Monday. The systems infrastructure, comprised of the Sun Ray 2, Sun Fire X2100 server, and Solaris OS, were selected by the project steering committee to serve up the healthcare worker desktop environment. The selection criteria reflected the goals of the project as well as the relatively austere conditions where the healthcare facilities are located:

  • Electricity is scarce and not terribly stable in rural Rwanda, so the Sun Ray 2, which consumes about 4 watts and is an entirely stateless device, is a good fit for the workstation. Attached to each Sun Ray is a low power 15" display which brings the total power consumed by each workstation to less than 25 watts. On the server end, the X2100 is the lowest power server available from Sun. The total electricity demand for the primary IT infrastructure in a typical clinic - 7 workstations (Sun Ray and display), 1 server, 1 network switch - is less than 500 watts.
  • These facilities do not have extensive protection from the heat and dust that are common in Rwanda's rural villages, so reliable systems that will hold up to extremes is important. The Sun Fire X2100 is a reliable workhorse with good serviceability. Combine that with the Sun Ray's zero moving parts (except keyboard and mouse) and you have about the most reliable setup possible. Every clinic and hospital will inventory one spare Sun Ray, so if one does fail it's a simple replacement to put that workstation back into service - no installation or configuration required. Just attach it to the network and you're back to treating patients. Spare X2100 servers will be inventoried in Kigale, so a server failure will require that the replacement be dispatched to the facility for replacement.
  • Rwanda is a fledgling economy. The ICT infrastructure upon which the healthcare system and other critical social services are built must be sustainable and low cost. Any dependence on proprietary commercial products would effectively impose a tax on growth and leave Rwanda's infrastructure at the mercy of foreign commercial enterprises. So, wherever possible, free and open source products were chosen. The Solaris operating system, the Gnome desktop environment, and the Open Office productivity tools fit the bill, and nicely complement the medical records software to be used in these clinics, OpenMRS.

OpenMRS and Africa's Health Workforce

OpenMRS is an open source application, written in Java, that was conceived by Paul Biondich at the Regenstrief Institute. It is designed expressly to address the need for electronic medical record keeping in the developing world, but also to serve as a framework for building generalized medical informatics systems. The Rwandan government selected OpenMRS as a key component of their healthcare scale up effort.

A few countries in sub-Saharan Africa, Rwanda among them, have set a long range vision for national economic and social advancement. Vision 2020 is Rwanda's development strategy to achieve or even surpass developed world standards for national government, rule of law, education and human resources, infrastructure, entrepreneurship, and agriculture. OpenMRS and the supporting open source and energy efficient technologies from Sun contribute toward the infrastructure as well as the human resource goals of the plan. These tools will help to expand the pool of workers capable of delivering critical forms of healthcare by providing a standard protocol and reference resources to community members and paraprofessionals employed in health worker roles, thereby alleviating dependence on highly trained medical practitioners for routine diagnosis and procedures. Estimates from the development community and the UN indicate it would take more that 20 years for sub-Saharan countries to reach the 2.5 health workers per 1,000 people ratio to be consistent with UN targets, assuming they even had sufficient training capacity to matriculate that many doctors and nurses. Instead, OpenMRS helps to change the equation and make it possible to expand health care services much faster than would be possible in a traditional public health model.

In essence, the four workstations in the photo represent a new model health system, not only for Rwanda, but potentially for many other countries in the developing world.


Related Reading:

Sunday Feb 08, 2009

In the maelstrom of preoccupations that kept me awake last night, self-service in the cloud was a strangely prominent theme. A sad commentary on my slumber time, I know, but it was eerily coincident with news of OpenSolaris freed from a special registration process - when I woke this morning I found this announcement in my Inbox:

News Flash for Our OpenSolaris 2008.11 on Amazon EC2 Users!

We are happy to inform you that the latest OpenSolaris 2008.11 Base AMIs on Amazon EC2 in the US and Europe are now available to you and your users with no registration required! Please stay tuned for more OpenSolaris 2008.11 AMI stacks coming soon for you to quickly access. The registration process for pre-OpenSolaris 2008.11 AMIs is still in effect.

For your reference, here are the AMI IDs:
OpenSolaris 2008.11 (US) 32-bit AMI: ami-7db75014
OpenSolaris 2008.11 (Europe) 32-bit AMI: ami-6c1c3418

To read about what's new in OpenSolaris 2008.11, please visit the OpenSolaris Web site.
OpenSolaris on EC2 had been available for months, but it was cloistered behind a registration process that involved waiting for a human to get back to you with approval of your request. But no more. Now OpenSolaris on EC2 is a first class citizen with all the other *nix and Windows distros, available self-service to anyone with an AWS account.

Saturday Mar 29, 2008

More evidence that Sun's open source strategy is serving Sun's growth objectives came in my Inbox this week.  

The founder of a pre-startup company developing a specialized SaaS offering replied to my cold-contact inquiry about their business:

"We're big users of Solaris - we've standardized on Solaris 10 for our systems, and rely heavily on DTrace and ZFS - it's great that it's all open source (well, free-as-in-beer is probably our primary motivation at this stage)."FSF Patron

Two things about his response are strong validations of Sun's strategy.  First, no one from Sun had any prior business contact with this company, afaik.  Second, he goes on to say,

"...  We'll be considering Sun hardware, and we'll also be thinking about support contracts..."

which is precisely the market behavior Sun is trying to drive with it's open source strategy. 

It would be hard to draw any conclusions about the effectiveness of a $15B company's strategy from one such response, but this is not an isolated case.   The frequency and relevance of "pre-company" contact with Sun is sky-rocketing.  These are organizations that are incubating businesses and have yet to spend significant IT dollars.  They're looking to avoid technical debt and brace for break-away growth.  They want to embed efficiency and reliability in their architecture.  They want to get started at the least cost possible.  Sun is redesigning itself to serve these objectives, and it's working.

And today at the CommunityNext conference in L.A., the CEO of Real Time Matrix, Jeff Whitehead, repeated the theme to 200+ entrepreneurs who are launching media companies on the web:

"We started on Linux.  We hit a wall ...  Now we're on Solaris.  We use Sun's Coolthreads servers.  We saw a huge performance gain ... We needed to make this switch to succeed." 

No sooner had I captured that quote, when a message pops up in my Inbox from another startup founder here at CommunityNext:

"... I'm really looking forward to a potential relationship with Sun. Our architecture and technologies certainly seem like a good fit."

Our initial introduction was through a discussion about our open source technologies, specifically NetBeans, OpenSPARC, and OpenSolaris.  He wanted to know if he could run Erlang on these technologies.  Answer: yes, he can.


More on Sun's Open Source strategy:


Sunday Mar 09, 2008

Back now from DrupalCon, I'm parsing all that happened last week in Boston.  For me it was a whirlwind, interrupted by a plethora of hassles, including a nasty head cold, keyboard and trackpad on my MBP crapping out, a crashed demo, and several hours separated from my Treo while it rode around in the back of a Boston cab.  All that negative energy converging on me was more than offset by the positive vibe at the four day conference.  The kindness of the cabbie who drove crosstown to return my phone helped too.

One of the highlights for sure was spending time with a new Sun colleague, Brian Aker from MySQL.  We had breakfast at Henrietta's near Harvard Square before his keynote on Wednesday.   I asked him about the merger with Sun, what's next for MySQL, and how he'd like to see our field organizations work together.   He said the merger has been pretty well received and there was a general appreciation at MySQL for Sun's commitment to open source (something I hope will rub off on Brian's Slashdot amigo Chris Dibona, who conspicuously left Sun off of his Tuesday keynote list of companies that "get" open source).  There is a tradition of collaboration between Sun and MySQL too, which Brian indicated ought to help smooth the integration.   Lot's of his work is going into memcached these days, particularly in the libmemcached client.  He cleared up a misconception for me regarding Innodb: since Innodb is GPL'd, the risk of Oracle smothering it is nil - the community is driving it, and it's not the dead end many had feared.   What's next?  Don't expect to see MySQL 5.1 until 2009; do expect a maturing and further specializing application of the MySQL engines MyISAM, Innodb, BDB, and Archive; and plan for an adoption ramp for DRBD.  Brian had some great advice for Sun's field engineers: get familiar with MySQL technology by taking advantage of the many training resource available at MySQL.com.  MySQL University is a great place to start, (be sure to catch Brian's talk on EC2 March 29).  I also caught some good audio one-on-one with Brian after his keynote which I will post separately, along with his advice on scaling up your database.

RDF and Semantic Web were topics of much conversation and at least one BoF session.  With the addition of RDF modules in Drupal 6, developers can mashup data from multiple sites in very interesting ways.  If Web3.0 is massively distributed data mining, indexing, and mashing it all up, then Drupal is positioned to be the portal for this convergence, as Dries Buytaert resolutely declared in his Monday keynote

I gave a talk on running Drupal on Sun, with some help from Chris Cheetham from Project Caroline, at the end of the day on Wednesday (slides at right).  As luck would have it, my demo froze up, but I did manage to show Drupal running in a Solaris Zone, and DTrace to count function calls from Drupal.  Chris's demo of Drupal deployment to Project Caroline went much smoother.

Another highlight was awarding the grandprize Sun Fire T1000 server to the winners of the Showcase Site competitionPingVision won it for their work on Popular Science Magazine.  Congratulations to Kevin Bridges and the rest of the crew at PingVision.

There was a lot of support for the next DrupalCon to be held in Hungary this fall.  It will be hard to top the Boston event, but I know this community will do their best to have the best one yet.



Tuesday Feb 19, 2008

Whilst installing Drupal 6.0 on Solaris Express Developer Edition (SXDE) 1/08 I ran into a few glitches with the brand new Webstack, which makes it's debut in this build of OpenSolaris.  (SXDE is Sun's distro of OpenSolaris.  It's the best way to get access to all the latest stuff in a relatively feature complete distro of OpenSolaris without having to build the whole O/S yourself.)  With the advent of Webstack integration you don't need a separate download to get all the AMP stack integration and optimizations previously only available in Coolstack.

The executive summary of the solution to the Drupal 6.0 install glitches is:

  1. Edit  /etc/php5/5.2.4/php.ini  to add '.' and Drupal's base dir (/opt/drupal-6.0, in my case) to PHP's include_path:
    include_path = ".:/usr/php5/5.2.4/include/php:/opt/drupal-6.0"  
  2. Spoof PHP into thinking it's using an older MySQL client:
    ln -sf /usr/mysql/5.0/lib/mysql/libmysqlclient.so.15 \ 
    /usr/mysql/5.0/lib/mysql/libmysqlclient.so.12

    Now, with these fixes in place, I have the advantages of the Service Management Framework (SMF) and DTrace, plus an AMP stack compiled with optimizations for Solaris and the processor architecture (AMD64, in my case). 

    If you're interested in a more detailed account of the glitches and fixes, read on...


    The first glitch prevented the Drupal index.php page from rendering, and appeared in the apache error_log as:

    PHP Warning:  include_once() [<a href='function.include'>function.include</a>]: Failed opening 
    'includes/install.inc' for inclusion (include_path='/usr/php5/5.2.4/include/php'

    which was remedied by adding '.' to the include path in include_path in /etc/php5/5.2.4/php.ini

    include_path = ".:/usr/php5/5.2.4/include/php" 

    Then, proceeding to the database setup, MySQL gave an error:

    "Client does not support authentication protocol requested"

    This was easily resolved by the procedure posted on http://dev.mysql.com/doc/refman/5.0/en/old-client.html, but that's a compromise on MySQL password strength, so not ideal.   This allowed me to proceed to the next glitch, which apache error_log explained as:

    "ld.so.1: httpd: fatal: relocation error: file 
    /usr/php5/5.2.4/modules/mysqli.so: symbol
    mysql_set_local_infile_handler: referenced symbol not found"
    After much hair pulling, Sriram pointed me to the solution he worked out for the same problem with MediaWiki installation:
    ln -sf /usr/mysql/5.0/lib/mysql/libmysqlclient.so.15 \
    /usr/mysql/5.0/lib/mysql/libmysqlclient.so.12

    and another addition to include_path in /etc/php5/5.2.4/php.ini to add Drupal's base dir

    include_path = ".:/usr/php5/5.2.4/include/php:/opt/drupal-6.0" 

    Turns out that spoofing the library name like this also solved the "Client does not support authentication protocol ..." problem too, so I'm back to full MySQL password strength.

    After these three simple but obscure fixes it was all clean sailing.  I now have Drupal running in six zones across two separate instances of SXDE 1/08 using the latest Webstack. 

    Wednesday Jan 30, 2008

    I'd never seen the reference outside of Sun before today, but there it was, in the conference program for DrupalCon Boston :

    *AMP

    Describing the Site Building track at the conference, the program lists track topics, including, "Drupal and *AMP, a systems levelDrupalCon Boston logo view".  The asterisk clearly denotes a substitution variable, which had previously been the constant "L", preceding the abbreviation for Apache-MySQL-PHP/Perl/Python.  This is a clear tip of the hat to Solaris.  The new acronym, presumably pronounced star amp, bestows equal opportunity status to Solaris and Linux within the Drupal community.

    I expect there will be plenty of interest in Solaris and other Sun technologies at DrupalCon, which convenes March 3-6 at the Boston Convention & Expo Center - the news of Sun's intent to acquire MySQL did not go unnoticed, and high profile sites running on Solaris are turning up frequently.  I guess that's why my Inbox has been overflowing with correspondence from the Drupal community.

    Sun is a Gold sponsor of DrupalCon Boston.  We'll be handing out Solaris Express DVD's and we're giving a Sun Fire T1000 server to the winner of the Drupal Showcase competition.  I'll be a panelist in the Performance Tuning session, and I'll also be presenting some Solaris deployment techniques and best practices similar to what I presented at a DrupalCon last September in Barcelona.  I'm hoping we'll also have a contingent from Project Caroline to let the community in on the next big thing in Web2.0 development platforms.  As if all that from Sun wasn't enough, rumor has it, MySQL Director of Technology, Brian Aker is going to keynote the conference.

    This blog copyright 2009 by downstream