20090430 Thursday April 30, 2009

☞ Freedom, Flu and Gordon Brown


technorati del.icio.us digg slashdot
20090429 Wednesday April 29, 2009

links for 2009-04-29


technorati del.icio.us digg slashdot
20090428 Tuesday April 28, 2009

links for 2009-04-28


technorati del.icio.us digg slashdot
20090427 Monday April 27, 2009

links for 2009-04-27


technorati del.icio.us digg slashdot
20090426 Sunday April 26, 2009

links for 2009-04-26


technorati del.icio.us digg slashdot
20090421 Tuesday April 21, 2009

links for 2009-04-21


technorati del.icio.us digg slashdot
20090420 Monday April 20, 2009

Java Needs A Cloud Profile

Sun and Clouds

Back in 1995 I was a huge fan and advocate of Java - at IBM - because it provided developers and deployers a universal layer that promised to reduce the lock-in caused by platform differences. The JCP went on to define a limited number of Java profiles and in the areas where the market has stuck to them we've seen great things happen. And in the place  it hasn't - Java ME - we've seen messy fragmentation that's held the market back. We risk the same thing happening in the Cloud if we don't define a Java Cloud Profile soon.

Slashdotted

Just before the Easter break here in the UK, I made a passing remark (in a link roundup and on Twitter) to the fact that Google has added Java support to their App Engine cloud hosting product. I did so because I've been associated with the Java platforms ever since I helped get IBM to support them before joining Sun (where I haven't really been involved with Sun's Java team).

To my surprise, a journalist decided this was big news and wrote a story implying Sun was "slamming" Google. That in turn led to a discussion on Slashdot where a whole lot of people asserted a whole lot of things based on the assumption my pithy micro-blogging comment was a treatise on Sun's behalf as well as on a weak grasp of Java standardisation, politics and history. Gah. Now I'm back from Oslo, I've time to comment properly.

Delighted

To be clear, I am delighted Google are supporting the Java platform on App Engine. Doing so grows the opportunity for the whole Java community. It allows a great deal of existing code to be re-used and offers use of a wide range of additional programming languages. It is a great solution to the problem many of us have had for years, that Java hosting is hard to find and hard to use when you do. GAE/j is a good thing and I welcome it, especially if it grows Google's engagement with the open source Java community.

Moreover, it seems entirely likely that Google's approach here to "subsetting" is simply because they haven't yet gotten around to making everything safe in their sandbox, not because they have some deep philosophical belief that those things should be removed. Reports I have seen suggest they have largely used a SecurityManager implementation (although there are some worrying reports also of people getting ClassNotFoundException for core classes). If they've simply made a temporary, pragmatic, resource-driven decision, we should all encourage them to work towards full compatibility as they head out of alpha. That doesn't change my reaction to the general issue, though.

Fragmentation Risk

My reaction related more to the fact that we can't afford as a community to leave this just to happen. While pragmatic innovation is a good thing on the part of an individual developer or even a diverse community, in the hands of a rich, powerful corporation it can - even unwittingly - quickly become market manipulation. That's why the JCP has striven to prevent unilateral subsetting. I can't speak for Sun - I am nothing to do with Java strategy at Sun - but I believe the Java community needs a new, agreed Java cloud profile.

If we allow each cloud provider in turn to define their own subset, we will be left in the same ugly position we have with Java on mobile phones where the common specification doesn't go deep enough and forces applications to be refactored for every different platform. On the cloud, this equates to having no freedom-to-leave - you'll be stuck with a price ticket if you ever want to move platforms.

Community Solution?

I was already worried about that topic and think we need a common set of APIs for provisioning in the cloud (Tim has started), a common way to abstract data storage and an abstraction layer so that applications written for the cloud can move freely between providers. Java would be perfect for this last item - but not if every provider has a different subset. That's the real meaning of "compatibility" in a Java context - not needing to refactor for equivalent deployment in different places.

What we need as a global Java community is "Java for Cloud" somehow. Given their good work so far, I'd like Google to show leadership and a commitment to openness by taking their subset to the JCP and offering to join a working group to establish a new Java profile for cloud applications. I hope Sun would enthusiastically engage. I know that there's already some work aimed at Java EE 6 to create a "web profile" - let's get a community effort going here so that innovation means progress and not lock-in.


technorati del.icio.us digg slashdot
20090419 Sunday April 19, 2009

links for 2009-04-19


technorati del.icio.us digg slashdot
20090417 Friday April 17, 2009

links for 2009-04-17

No idea why Delicious auto-post just started working again, but I'm not complaining.


technorati del.icio.us digg slashdot
20090416 Thursday April 16, 2009

Five Ideas To Get FOSS Into Governments

Why is it so hard to get governments (especially local government) to use open source software? Here are some ideas discussed during my keynote today in Oslo at GoOpen 2009 for practical steps various people, from citizens to policy wonks to representatives, can do to help get open source in actual use and delivering on its promise (and I know it's not easy):

  1. Fix the procurement policy. While a policy that says open source is great is a good thing, if you don't change the procurement policy it will have no effect. The best open source solutions result from a two-phase procurement process where the first phase buys prototyping and iterating using software on a white-list of approved elements that can be supported in phase two, and the second phase buys production deployment and scaling. If you have a procurement process that basically defines software as "something you buy a license for" you'll never get the adoption-led benefits of open source.
  2. Publish tenders by default. In most places, it's illegal to specify a vendor explicitly in a generic request for tender. To deal with this, many countries have open procurement policies, but very, very few publish tender documents, so we have a problem. Initiating a scheme like the one Brenno de Winter has in the Netherlands brings the cleansing power of sunlight into the process. Brenno uses Freedom of Information requests to secure tenders and then posts them to a wiki for community review. You could do that too where you live.
  3. Demand the freedom to leave. Often, the cost of migration is used as a barrier to use of open source. But the cost of migration is often caused by being locked in by an existing vendor. If migration costs are cited, so must be exit costs (one of the key changes in the UK open source policy). If you're not willing to demand exit costs are stated, exclude migration costs too. The longer you leave this unchecked, the deeper the lock-in will become and the greater the migration costs for new solutions.
  4. Don't focus on cost savings alone. Any vendor with a decent sales function can cut one-time costs to get you locked in. If you have freedom to use/study/modify/distribute the software you use, you can drive down the costs - freedom can lead to cost savings but cost savings rarely lead to freedom. Making this the rule is a policy decision that your legislature needs to make.
  5. Consider posterity. Solutions that require proprietary formats, DRM as an enabler to tracking, closed and NDA-only interfaces (and many more tactics) - all these things result in systems that lose the reasons why decisions get made and rob future generations of their history. Demand transparency with privacy. That's freedom; secrecy with controlled disclosure is not. Discriminate against offerings that use DRM, unpublished interfaces and anything else that your vendor won't let you publish without permission.
And your bonus idea for added value:
  • Use open standards. What is an open standard? Well, that can take a great deal of argument to determine, but a great rule of thumb is if it could be implemented under all available open source licenses and is actually implemented under one, it's probably open. And if you use the open source implementation, chances are the extra freedoms will help too.
Got more ideas? Case studies? Comment below.


technorati del.icio.us digg slashdot
20090413 Monday April 13, 2009

The "yes I was on the web over Easter" link selection

  • Statebook
    Excellent visualisation of what the government will do with all the data that's being gathered for various reasons. It's not the individual feeds that are directly a problem, it's their aggregation and triangulation.
  • The Beginner's Guide to Creating Virtual Machines with VirtualBox
    Pretty good introduction to virtualisation for Windows users. Especially good reason to use it: make a sandbox with a copy of Windows where you can try out programs without totaling your working setup.
  • Community Leadership Summit
    Funny, I was just discussing with a friend the idea of setting up a mailing list for recruiting community managers when this showed up in my mail from Jono. I plan to attend.
  • Turin Shroud 'could be genuine as carbon-dating was flawed'
    It makes no difference to Christianity or the faith of its adherents, but it's a fascinating story all the same.

technorati del.icio.us digg slashdot
20090411 Saturday April 11, 2009

Lump of Links for April 11

  • The JRE Class White List - Google App Engine
    Whether you agree with Sun policing it or not, Java compatibility has served us all very well for over a decade. That includes being sure as a developer that all core classes are present on all platforms. Creating sub-sets of the core classes in the Java platform was forbidden for a really good reason, and it's wanton and irresponsible to casually flaunt the rules.
    Update: Read my full explanation.
  • e-Voting Fail - Municiple Elections Must Be Rerun in Finland
    Using voting machines, the error rate was 10x that of a normal election. The minister of justice, Tuija Brax, has announced the termination of the trial. She also says that if electronic voting is used in the future, it has to be made more reliable even for a trial, employ a verifiable paper trail, and consider the use of open source software.
  • Police medic in job creation scheme
    No wonder the British police don't want people taking photographs of them. Expect there to be people at future deomstrations specifically initimidating photographers.
  • Sweden targets strippers for tax
    "The search involves tax officials examining websites that feature Swedish strippers, in an effort to identify them and chase them for tax returns. ... 'When we investigated the sites manually it worked better'." Tax inspectors know all the loop-holes. May be the first time in recorded history that applications for jobs as tax inspectors have exceeded vacancies.
  • On Newspapers and Google: What's the Real Problem Here? What Do Readers Want?
    "It is news only if you redefine news as a way to pay the bills. Short term, it might pay some bills, but long term, it kills your news business, because you end up being not very important to anyone and disgusting even yourself."
  • World Builder
    All-round excellent video - visionary futurism, touching story, great video technology. 10 minutes of pure awesome.

technorati del.icio.us digg slashdot
20090410 Friday April 10, 2009

Faith Restored in TripIt But Not In BusinessWeek

I couldn't decide where to write about this though, since the two stories span two blogs, so it's over on my personal blog.

Update April 14: BusinessWeek now looks fixed.


technorati del.icio.us digg slashdot
20090409 Thursday April 09, 2009

Links and comments, April 9

  • Video of police assault on Ian Tomlinson, who died at the London G20 protest
    The guy was unfortunate enough to have the protest in his way as he made his way home from work selling newspapers at Monument (by the Sun office). The video clearly shows a police stormtrooper clubbing him then thrusting him to the ground, from behind. The Sun office administrator warned us about the protest happening and told us of the risk of harm from protestors; we weren't warned that the greatest risk was actually from the police.
  • Copyright assignment and other barriers to entry
    A fine analysis of the issues around contributor agreements. Organisations that require them are either not interested in collaborating with competing co-developers in their open source communities or have allowed legal conservatism to lead their decision process.
  • GPL's cloudy future
    Great article by Jeremy Allison of Samba fame (now at Google) on why the GPL can't guarantee freedom now cloud computing is back in vogue and why AGPL is the only way to promote software freedom. I note that AGPL is considered not-a-license by Google and barred from their properties - go figure.
  • Tree Wagers
    Sun's Java team wants to contribute improvements to the TreeMap code back to Apache Harmony. Tim Ellison, the project lead, had bet £500 that Sun would never do this.
  • The Most Dangerous Person in the World?
    If you want to be made safe by having the government protect you against the most probable risks, this is the guide for you. Spoiler: The government's anti-privacy policies may well be doing exactly this.
  • Going to work on the Hill
    Pia Waugh gets a job advising an Australian Senator on FOSS. Fantastic news, both for Pia and for Australia.
  • Ten principles for a Black Swan-proof world
    Excellent and very readable article by Taleb suggests that Einstein was right to say that the thinking that got us into this mess isn't going to get us out again.
  • Spam overwhelms e-mail messages
    I am amazed that in the reportage no-one has pointed out that it is the failure of Microsoft's own software that is to blame for the vast majority of the problem - security inadequacy leading to zombie Windows accounts leading to botnets. What's more, the end-of-support of XP means no further improvements will be made to the majority of systems causing the problem. Proves once again that when you are aware of your weaknesses you should play from them and not apologize for them. Unless, of course, you have a soul.

technorati del.icio.us digg slashdot