Showing posts with label apis. Show all posts
Showing posts with label apis. Show all posts

11 November 2012

Linux Foundation's Jim Zemlin on the New Lock-in

Last year, I interviewed the head of the Linux Foundation, Jim Zemlin, about his own career, and about his organisation. That interview took place at the first European LinuxCon, which was held in Prague. This year, it took place in Barcelona, and I took the opportunity to catch up with Zemlin on what had happened in the intervening time (disclosure: the Linux Foundation paid for my travelling and accommodation while I was there.)

On Open Enterprise blog.

10 March 2009

Guardian Leads the Way (Again)

At a time when most newspapers are talking doom and gloom, the Guardian is instead *doing* something - and thriving (maybe there's a correlation?). Here's its latest shrewd move:

The Guardian today launched Open Platform, a service that will allow partners to reuse guardian.co.uk content and data for free and weave it "into the fabric of the internet".

Open Platform launched with two separate content-sharing services, which will allow users to build their own applications in return for carrying Guardian advertising.

A content application programming interface (API) will smooth the way for web developers to build applications and services using Guardian content, while a Data Store will contain datasets curated by Guardian editors and open for others to use.

So far, so conventional. Here's the important bit:

The Guardian is positioning its Open Platform as a commercial venture, requiring partners to carry its advertising as part of its terms and conditions, while BBC Backstage states clearly that its proposition is for individual developers designers and not for "big corporates".

This is the future of content, which will be made available freely, but revenue-generating features will be bolted on to it as above. (Disclosure: I occasionally write for the Guardian; but not much.)

30 December 2007

A Bit of a Shindig

One of the great things about open standards is that anyone can implement them - including those in the free software world. An obvious candidate for this treatment is the new OpenSocial set of APIs from Google, and here's an Apache project doing just that:

Shindig will provide implementations of an emerging set of APIs for client-side composited web applications. The Apache Software Foundation has proven to have developed a strong system and set of mores for building community-centric, open standards based systems with a wide variety of participants.

A robust, community-developed implementation of these APIs will encourage compatibility between service providers, ensure an excellent implementation is available to everyone, and enable faster and easier application development for users.

The Apache Software Foundation has proven it is the best place for this type of open development.

The Shindig OpenSocial implementation will be able to serve as a reference implementation of the standard.

31 October 2007

Google's OpenSocial

Or should that be Open Social? - That's what a certain Marc Andreessen (now, where have I heard that name before?) calls it, and he should know:


My company, Ning, is participating in this week's launch of a new open web API called Open Social, which is being spearheaded by Google and joined by a wide range of partners including Google's own Orkut, LinkedIn, Hi5, Friendster, Salesforce.com, Oracle, iLike, Flixster, RockYou, and Slide.

In a nutshell, Open Social is an open web API that can be supported by two kinds of developers:

* "Containers" -- social networking systems like Ning, Orkut, LinkedIn, Hi5, and Friendster, and...

* "Apps" -- applications that want to be embedded within containers -- for example, the kinds of applications built by iLike, Flixster, Rockyou, and Slide.

This is the exact same concept as the Facebook platform, with two huge differences:

* With the Facebook platform, only Facebook itself can be a "container" -- "apps" can only run within Facebook itself. In contrast, with Open Social, any social network can be an Open Social container and allow Open Social apps to run within it.

* With the Facebook platform, app developers build to Facebook-proprietary languages and APIs such as FBML (Facebook Markup Language) and FQL (Facebook Query Language) -- those languages and APIs don't work anywhere other than Facebook -- and then the apps can only run within Facebook. In contrast, with Open Social, app developers can build to standard HTML and Javascript, and their apps can then run in any Open Social container.

What this shows, for the nth time, is that the future history of computing is about the race towards openness, and that the company that opens up the most - as in totally - wins. Google seems to get that, even if there are still a few dark corners of its soul that could do with some sunlight.

22 October 2007

Microsoft Opens Its Gritted Teeth

I didn't write about Microsoft's capitulation to steely Neelie earlier because the open source aspect seemed unclear. Trust Matthew Aslett to dig up the official details of her announcement:

I told Microsoft that it had to make interoperability information available to open source developers. Microsoft will now do so, with licensing terms that allow every recipient of the resulting software to copy, modify and redistribute it in accordance with the open source business model.

I told Microsoft that it should give legal security to programmers who help to develop open source software and confine its patent disputes to commercial software distributors and end users. Microsoft will now pledge to do so.

I worry that there's some wiggle room here - just what exactly is "the open source business model"? - but given the soundness of its thrashing, maybe Microsoft really has given up fighting the EU. Let's hope.

I suppose it's worth pointing out the huge symbolism of this win. Microsoft, a company built on black box nature of its code, and on using its proprietary interfaces to lock out competitors, has been forced to open up those interfaces - something that would have been unimaginable ten years ago. So deeply has openness now entered the system.

26 September 2007

Open Authentication

Sounds sensible:


The OAuth protocol enables websites or applications (Consumers) to access Protected Resources from a web service (Service Provider) via an API, without requiring Users to disclose their Service Provider credentials to the Consumers. More generally, OAuth creates a freely-implementable and generic methodology for API authentication.

An example use case is allowing printing service printer.example.com (the Consumer), to access private photos stored on photos.example.net (the Service Provider) without requiring Users to provide their photos.example.net credentials to printer.example.com.

(Via O'Reilly Radar.)

10 July 2007

It's the Platform, Stupid

If you needed proof that operating systems were really irrelevant these days, try this:

When Facebook announced its platform, a set of application programming interfaces (APIs) and services that allow outside developers to inject new features and content into the Facebook user experience, Facebook, in essence, became the Social Operating System. Historically, the creation of an operating system, or a platform, has led to a new economy which includes a marketplace of applications.

The AppFactory provides funding, technical and business resources to help entrepreneurs identify, build, and monetize the next generation of applications. Since AppFactory investments are really bets on people and concepts, Bay will use an aggressive timeline and fast-track approach to awarding AppFactory funding. An entrepreneur's time is best spent developing the application and experimenting with variables that affect adoption, virality, and usage, while exploring reasonable theories about monetization.

That is, we're no longer looking at the OS-independent browser as a platform, but as a browser-independent social network as a platform - insulating the user even further from the operating system. What's next, an ecosystem based around a Facebook app? (Via TechCrunch.)

25 June 2007

Opener Than Thou

What's interesting about the news that LinkedIn is going to "open up" is that it is happening as a direct result of competitive pressure:


He told me that over next 9 months LinkedIn would deliver APIs for developers, ostensibly to make it more of platform like Facebook, and create a way for users who spend more time socially in Facebook to get LlinkedIn notifications.

In other words, once somebody in a space starts opening up, its competitors simply have no choice but to follow if they want to keep the developers with them - absent unnatural constraints like lock-ins born of long-standing monopolistic behaviour....

28 May 2007

MySpace - Closed, Facebook - Open

A little simplistic, perhaps, but it captures the spirit of the direction of both outfits, I think. Certainly, Facebook's decision to provide an API to third-party developers should provide a perfect test of the closed vs. open approach. I don't use either, but my money's (obviously) on Facebook. Should be interesting.

30 April 2007

Of Modules, Atoms and Packages

I commented before that I thought Rufus Pollock's use of the term "atomisation" in the context of open content didn't quite capture what he was after, so I was pleased to find that he's done some more work on the concept and come up with the following interesting refinements:

Atomization

Atomization denotes the breaking down of a resource such as a piece of software or collection of data into smaller parts (though the word atomic connotes irreducibility it is never clear what the exact irreducible, or optimal, size for a given part is). For example a given software application may be divided up into several components or libraries. Atomization can happen on many levels.

At a very low level when writing software we break thinks down into functions and classes, into different files (modules) and even group together different files. Similarly when creating a dataset in a database we divide things into columns, tables, and groups of inter-related tables.

But such divisions are only visible to the members of that specific project. Anyone else has to get the entire application or entire database to use one particular part of it. Furthermore anyone working on any given part of one of the application or database needs to be aware of, and interact with, anyone else working on it — decentralization is impossible or extremely limited.

Thus, atomization at such a low level is not what we are really concerned with, instead it is with atomization into Packages:

Packaging

By packaging we mean the process by which a resource is made reusable by the addition of an external interface. The package is therefore the logical unit of distribution and reuse and it is only with packaging that the full power of atomization’s “divide and conquer” comes into play — without it there is still tight coupling between different parts of a given set of resources.

Developing packages is a non-trivial exercise precisely because developing good stable interfaces (usually in the form of a code or knowledge API) is hard. One way to manage this need to provide stability but still remain flexible in terms of future development is to employ versioning. By versioning the package and providing ‘releases’ those who reuse the packaged resource can use a specific (and stable) release while development and changes are made in the ‘trunk’ and become available in later releases. This practice of versioning and releasing is already ubiquitous in software development — so ubiquitous it is practically taken for granted — but is almost unknown in the area of knowledge.

Tricky stuff, but I'm sure it will be worth the effort if the end-result is a practical system for modularisation, since this will allow open content to enjoy many of the evident advantages of open code.

09 April 2007

Coincidence? I Don't Think So....

Last week I noted a highly partial piece of writing that leapt to Microsoft's defence over its dispute with European Commission. And what do we have here? Why, a highly partial piece of writing that leaps to Microsoft's defence over its dispute with European Commission:

the Commission alleges that Microsoft has established "unreasonable" prices for its protocol licensing of its server technology in Europe. The Commission characterizes Microsoft's proprietary server software protocols, which is protected by patent, copyright and trade secret law, as containing "virtually no innovation." The Commission then remarkably concludes that everyone in the industry, nonetheless, "needs" Microsoft's protocols, and that Microsoft should provide them "royalty-free." What the EC demands in the end is that Microsoft make its intellectual property available to its competitors for free.

Now, where have I heard that before? Oh, yes:

The heart of the commission's theory, to quote its press release, is that "there is no significant innovation in the interoperability information" supplied by Microsoft and "hence the prices proposed by Microsoft are unreasonable." On this basis, the assertion is that Microsoft may charge only a nominal fee for the 10,000 pages of technical documentation it has provided and may face fines of up to 2 million to 3 million euros a day if the company does not yield.

The commission is silent on some inconvenient truths. European and U.S. patent offices have awarded Microsoft 36 patents for the technology in these interoperability protocols, and the company has an additional 37 pending applications being reviewed by patent offices around the world.

In order for technology to be patentable, it must be novel, "non-obvious," and make a technical contribution—in short, it must be innovative. What's more, trade secrets and knowhow also are valuable intellectual property, valued independently of their patentable character and protected by law and precedent internationally and in the EU. Indeed, the World Trade Organization's TRIPS agreement, to which all EU 27 member states are bound, expressly protects undisclosed information as a form of intellectual property, different from but co-equal with patents.

Uncanny: it's almost as if they were part of a concerted campaign, or something.

04 July 2006

Wine is Not the Only Fruit

Many people have heared about Wine - which describes itself as follows:

Wine is an Open Source implementation of the Windows API on top of X and Unix.

Think of Wine as a compatibility layer for running Windows programs. Wine does not require Microsoft Windows, as it is a completely free alternative implementation of the Windows API consisting of 100% non-Microsoft code, however Wine can optionally use native Windows DLLs if they are available.

Less well-known, though is FreeDOS, which does something similar for MS-DOS. This project has been going for ages (there's a good history here), and now it seems almost done. Quite whether the world needs an MS-DOS clone is another matter, but it's good to see it reaching fruition.