Do You Own Your iPhone?

There were some dark times a few years back, when big studios sued old ladies for downloading music illegally. When this failed, they have tried blocking us with DRM technologies. However, DRM was ineffective and drove customers away, so music stores mostly abandoned it.

I was quite hopeful. I thought customer demand and copyright owners have reached a new working equilibrium. I’m not so sure anymore. Consumers are in a much worse position compared to where we were twenty years ago. Once, when you bought a book, you owned it. When you bought software, you owned it. When you bought hardware, you owned it. Well, this may not be the case anymore.

You Do Not Own Your Books

Sometime in July 2009, buyers of Orwell’s literary masterpiece 1984, found that the e-book they have purchased has been erased from their Kindle devices. Is this legal? Well, it depends:

Amazon’s published terms of service agreement for the Kindle does not appear to give the company the right to delete purchases after they have been made. It says Amazon grants customers the right to keep a “permanent copy of the applicable digital content.”

However, in a lawsuit settled not two months after the incident:

In the settlement, Amazon promises never to repeat its actions, under a few conditions. The retailer will still wipe an e-book if a court or regulatory body orders it, if doing so is necessary to protect consumers from malicious code, if the consumer agrees for any reason to have the e-book removed, or if the consumer fails to pay (for instance, if the credit card issuer doesn’t remit payment).

So, the answer is still “no,” you don’t own the digital books you download. Though I can understand the reasoning behind some of the exceptions Amazon lays out, Amazon still maintains control over your e-books. It is not the same as having a book all to yourself once you leave the bookstore.

This means you do not own your books. You are licensed to read them, of course, but you do not own them. Not in the sense you were used to with our old paper books, the ones you lent to our friends.

You Do Not Own Your Software

I’ve been fuming at the mouth for the past few weeks after I’ve read this little piece on Slashdot:

A federal appeals court ruled today that the first sale doctrine is “unavailable to those who are only licensed to use their copies of copyrighted works.” This reverses a 2008 decision from the Autodesk case, in which a man was selling used copies of AutoCAD that were not currently installed on any computers. Autodesk objected to the sales because their license agreement did not permit the transfer of ownership. Today’s ruling (PDF) upholds Autodesk’s claims: “We hold today that a software user is a licensee rather than an owner of a copy where the copyright owner (1) specifies that the user is granted a license; (2) significantly restricts the user’s ability to transfer the software; and (3) imposes notable use restrictions. Applying our holding to Autodesk’s [software license agreement], we conclude that CTA was a licensee rather than an owner of copies of Release 14 and thus was not entitled to invoke the first sale doctrine or the essential step defense. “

In short: you are licensed to use the software, but it is not yours. Even if this ruling only holds for AutoCAD today, I’m sure the rest of the industry (and gaming in particular) will promptly follow suit with “improved” licenses.

You Do Not Own Your Hardware

Microsoft banned 1 million users from Xbox Live. These users were banned because their machines have been altered to allow them to play pirated games. While this it is legitimate to fight pirates, is the act of modifying the Xbox an act of copyright infringement? That depends:

“With hardware, you can do pretty much anything you want with it. There are very few rules that apply. You buy it, you own, you can take it apart, and that’s perfectly fine,” she explained. The problem is that no one simply modifies the hardware. “It becomes complicated with modern hardware because it’s combined with firmware, the embedded software.”

So, our ownership of the Xbox is partial, at best. This gives Microsoft the right to do more than ban us from the online service they provide after purchase. It gives them the right to cripple your Xbox, or even remove the software remotely, rendering the hardware useless:

Your Banned 360:

  • Cannot go on Xbox Live
  • Cannot install games to the HDD
  • Cannot use Windows Media Centre extender
  • Cannot be used to get achievements from backups without corrupting your profile

Next in stores: Apple kills jail-broken iPhones. LG shuts down TVs that played pirated movies. Toyota pulls the plug on car modifications.

Copyright as in The Right To Copy

Somewhere along the way we have lost the sense of ownership. In the digital world, every use produces a copy. Thus, every use requires consent by the license owner.

I understand the need for copyright protection by law. Piracy, distributing the work as is and wholesale possibly for a profit, is not to be condoned. I just want to point out the price we pay to keep the rights of the few protected. Everything we “buy” is actually lent to us under stern limitations (must remain connected to the Internet,  must enter credit card, must use this hardware USB device, must not sell, must not modify).

Copy rights are important, but what about the rights of ownership and property?

I’ll leave you with Larry Lessig, advocate for copyright reform and the worlds coolest lawyer:

On Websites & APIs

A few weeks back, I attended Startup Weekend in Israel. Startup Weekend is a gathering of people of all sorts – coders, designers, marketers and the like – that join forces for one intensive weekend to create something out of nothing. While most groups spent most of their time discussing business plans and polishing presentations (which was a disappointment for some of the more talented developers in the bunch), our team spent almost all of our time developing a new internet service.

What’s In A Service?

Developing a new service in 48 hours is not an simple task, especially for a group of ten people who have only just met and have widely varying skill sets. We wanted to take one commercial area, which we felt was badly served by existing sites, and revamping it. Creating, in two days, the open source seed that could later be used to take over the category. In Israel, the worst served segment is of classified ads, so that is what we were aiming for.

Here’s a list of what we had in mind:

  • Insert a new item (for example, a car or a cellphone)
  • Different displays and properties for each kind of classified ad (cars are different than cellphones)
  • Filter many items (according to properties of the item)
  • Search
  • User registration and login (via existing services, such as Facebook Connect)

To make things more difficult, we had ambitious goals about creating the front end of the service as well:

  • Develop not only a website, but also mobile applications (mainly, iPhone and Android).
  • Translate to several languages.
  • Test several, completely different,  design concepts and user interfaces. We really wanted to make a radically better website. Aside from the graphic design, we had several ideas about comments and Facebook integration that were pretty cool. We also had ideas about mixing UI concepts from price comparison sites as well as classified ads sites.
  • Use real ads, taken from competing sites (which, in Israel, is probably legal since classified ads are considered too utilitarian to be protected by copyright law).

The Open Website API

Building several clients to the service required extreme separation of responsibilities. In most existing frameworks (it’s slightly better in Ruby on Rails than in Django), are built on three layers: the data model, the controller or view and the template.

The data model defines what data objects are used in the system. We’ve built a simple generic model for a classified ad, and a set of meta-models that define the properties expected for each type of item.

The controller or view is responsible for fetching the data required for this action. For example, in order to create a new ad, I need the list of expected properties for this type of item (a car). The controller is responsible of all the heavy lifting (such as fetching data, validating input correctness, etc.). We created the controllers for our main actions, quite simply.

The template defines the way the page layout. It is responsible for rendering the way the website looks like (the HTML). This is what we found most cumbersome. First, each template is tied to a URL. This meant that we couldn’t have two HTML clients without splitting a lot of code. Then, the mobile client needed an API, which required a third branch of controllers and templates to render the objects for the iPhone.

This just wouldn’t do. Instead, we decided to create the API once, and use it for everything else. That means that on the server side we only had to develop the API, and not even a single HTML page. Then, we could have written as many clients as we wanted, each with a completely different flow, look and feel. The web clients were just html with some ajax, that didn’t have to be on the server. The iPhone app was just as simple to develop. No code was duplicated. I was surprised at how fast we have iterated ideas.

What’s it good for:

  • Complete API – by default, there’s an API for everything. There isn’t anything on the website that can’t be easily implemented on any other client. It makes the website very open for developers, without requiring any special treatment.
  • Complete separation of functionality from design – the server side was responsible for authentication, data validation and simple access paths to the data. The client is responsible for the flow, and user interface. Each client can be completely different, tailored for the device it is used on (think: web vs. mobile). There were hardly any limitations on what a client could do, because the API was so basic.
  • DRY code – write once, use everywhere
  • Third party friendly – having an API is important for another reason. Think of the Twitter API and how it helped create the Twitter ecosystem (something they are fighting today). For an open source website, this is an only an advantage. You want as many people plugging in and creating something new on top of it. Over time, the best ideas will merge, and community will benefit from the competition, while not wasting resources duplicating the data layer.


  • Slower loading times – pre-rendered HTML will always be faster to load. Do people care that gmail takes a few seconds to load, every time you open it? Not really, because it’s so useful. And with smart client side caching and some clever ajax pre-loading, you can cut this time down significantly.
  • Command & Control issues – does the project include a client? If so, which one? How do you chose which client is “official”, or best? If not, does it mean you need two packages to install the website? How do you manage a list of clients? Where’s the data? Is it free and portable?
  • Security and tampering – when you have a very open API, you are vulnerable. There’s a fine line between being open, and being so open that you endanger the data integrity.

Rapid Development, Distributed Development

There are two special cases where this method can show itself to be especially useful.

The Lean Startup:

A startup in its most early stages is an organization trying to build an unknown solution for an unknown problem. It is a team of people, trying to find both a business problem and a solution to such a problem. This is called the product/market fit. The lean startup mentality dictates that the early stages of the startup should focus on learning.

Having an open website API is a great way to learn. First, it’s a great way for A/B testing and iteration of ideas. Second, there’s a real chance for serendipity. Your users will create clients for themselves, thus telling you what they need, and why they love your service.

The Open Source Website:

We’ve all heard about open source code projects, but an open source website is a much rarer creature. I’ve talked a bit about the reasons why it’s so difficult last year. The open website API liberates the project in several ways. The biggest pain point of the open source API is the data. A website without data is useless. By having the data in one central place, there’s great opportunity for innovation on the client side, having several open source clients developed with ease. In any other way, you wouldn’t be able to fork the website’s look and feel without copying all the data as well (think: Wikipedia).

I’d love to hear what you think. What other pros and cons are there? Would you want to see more open source websites?

Open-sourcing Stuff 2.0

Open-source is much vaster than software only. Concluding the argument I’ve started last week, I want to explore the final frontier of open-source: the physical world.

Making stuff used to be hard and expensive. In order to be efficient & competitive in the market, you needed big and expensive machines and you needed to mass produce. The barriers of entry were very high. The cost of building a factory was amortized over the vast amount of items produced. These assumptions are no longer true.

Jay Leno has a 3D scanner and 3D printer combination that can print parts for his car collection, parts that are impossible to find. The equipment costs a few thousand dollars, something that is easily affordable, if not by you, than by your local businesses. Toyota will fabricate parts for your car at your local garage. At the closest IKEA, you’ll be able to get custom furniture, created for you on the spot.

Collaborative design is the key to the future

The economic implications of production proliferation are huge. Just-in-time production will remove the need to store or ship anything but raw materials, and yet, every shop will have anything in stock just for you. The impact on global worming, etc. is all good, but the major change in our lives will come from the personal innovation of stuff. Stuff 2.0.

MIT has a project called FabLab, which builds $20,000 small fabrication labs all over the world. These labs allows the local inventors solve local problems:

My colleagues at MIT’s Center for Bits and Atoms and I developed fab labs as a modest outreach project to provide access to prototype tools for digital fabrication. These labs unexpectedly spread to communities around the world, from inner-city Boston to rural India, from South Africa to the north of Norway. Read more

They’re being set up in these places because of an instrumentation and fabrication divide that lies beyond the digital divide, because of a desire to measure and modify the world as well as access information about it. Fab lab projects are developing antennas for wireless data networks, computer terminals to connect to those networks, solar and wind turbines to generate energy, and analytical instruments for agriculture and healthcare. Fab labs are also attracting and training students, and incubating businesses.

The killer application of personal fabrication labs, in spite of what I’ve mentioned before, isn’t what you will be able to buy at wallmart. It will be what you will produce for yourself. Personal fabrication will allow you to create products for a market of one.

You can buy such equipment at home, for about $2,800. This open-source 3D printer, or “fabber”, can replicate itself. So if three thousand dollars are too steep for your pocket, you can organize a small purchasing group. You buy one fabber and just replicate it for all other members. The price of a fabber can be reduced to the cost of materials.

I think that the fabrication revolution will change our lives in ways that are as profound than the Internet, and it has started yesterday.

How To Open-Source Data

Open-source has changed the world.

I’ve looked for a good definition of open-source and all I could find were references to open-source software. I like to define open-source in a broader manner. In this definition I refer to “a construct” as a target product of an open-source project. Today, most construct are pieces of software, but they can also be toasters, printers or even cars. Also, note that I will use a GNU-like approach to open-source. Obviously, there can be many flavors to it.

“Open-source” is an approach in design, development and distribution of a construct. Anything can be defined as open-source if it follows the following attributes:

  1. The design of the construct is available with any distribution of the construct. The design can be changed by any one, pending that the new design also be available with any distribution of the new construct.
  2. Development methods are available with the distribution of the construct. The development methods can be changed by any one, pending that the new methods also be available with any distribution of the new construct.
  3. Any one can distribute a construct based on the design and development methods stated above.
  4. Use of patents is prohibited, as patents conflict with the notions of free distribution (free as in free speech, not as in free beer).

The reason why software is the most open-sourced field is because it is easiest to open. Software is nothing more than information and information is easily copied, shared, changed and redeployed. Software developers needed a way to share their software, so they’ve developed it. We are lacking the frameworks to open-source pretty much anything else, because software developers don’t need it and the those who need it can’t build it.

We need open-source websites

A friend of mine started an open-source project to data-mine government data. The group of people attracted to this type of project is extremely diverse. Only a small minority of the people are real developers. Some of them will code a little, if they absolutely have to. Most of them just want to help organize the data, tag it, sort it, describe use cases and influence the development. But they can’t.

Here’s what you need to do to use the software: you need to download it, download and install python, django, MySQL, and a bunch of other open-source prerequisites. Then you need to configure everything to work on you computer. Then you need to run the program once to build the initial data sets. Once you have the data in your database, you can either query it directly or open a web server locally and browse it. Oh, and it only works on Linux, of course.

Without a centralized website where the data resides, changes to the data cannot be shared. Data cannot be tagged and it cannot be sorted. Observations about the data (oh, look, there are more environmental actions taken this year than the previous year. How interesting!) are not shared and are therefore lost.

The closest example I have to an open-source website is Wikipedia. The code is free, the site is online, you can change the data, you can change the code, you can download and distribute copies of the data and the code. Also, the community dictates the development of the site. The prominent users are not the developers.

Do it yourself (here’s a start-up idea for free):

An open-source website, unlike open-source software, is the best way to create a project that focuses on a combination of data and functionality.

  1. The project has a community. The community needs tools to collaborate. They need to discuss the current status of the project and describe its future. Today, the best tools we have are wikis. Open one.
  2. Host the data online. Have a centralized database that anyone can reach, take, query and change. The last part is tricky. How can you allow change while preventing damage to the data? Well, I never said it was easy (but nothing worth while ever is). The most important part is querying the data. The community will share information they found in the data on the wiki, but they’ll also share the queries (and improve them over time).
  3. Build a website. Most likely, this website will be similar to many crowd-sourcing websites out there, and for good reasons. This is where most people will look, and some will touch the data. However, your site will differ from others in one important aspect. It will be open. Developers will be able to add new features (a new button, a new page). Designers will be able to change the look and feel of the site, to make it better. People will add new queries to the data. I can’t think of any process or framework that can make this effortless. Can you?
  4. Open it up. Allow any one to take, change and redeploy the site and the data.

I have found one company who provides a platform for crowd sourcing. As far as I can see, the platform is not open-source, which, in my book, puts them under FAIL. Not that I’m against making a buck here and there, it’s just that you have to eat your own dog food.

Does anyone want to start an open-source  project for building open-source projects?

Copyleft (Copyright FAIL)

There has been a transformation in the way we consume culture. Let’s take the news for example. A decade ago, the only way we could get our news was by buying a newspaper at the news stand, or opening CNN. The issues of state were decided by a small select, namely the editors of these papers or news channels. Watching just a few hours on Fox News, CNN or even The Daily Show can show you how much power these editors have in enforcing an agenda, a political wold view.

The Daily Show With Jon Stewart Mon – Thurs 11p / 10c
CNN’s Just Sayin’
Daily Show
Full Episodes
Political Humor Healthcare Protests

This news by broadcasting, news from few to many, has been coined by Larry Lessig as Read-only-culture. Larry Lessig, the coolest lawyer on earth, specializes in copyright laws, specifically dealing with what is considered fair use, public domain, creative commons, etc. If you haven’t heard of him yet, you must see his TED lecture.

Lately, we see a paradigm shift created by the rise of social media. Blogs, and now Twitter, become sources of real time news, commentary and opinions. These are gathering places for us to discuss what is happening in the world. The proverbial water cooler, if you wish. And it is working great. In any given subject I can find a blog that covers the field with greater depth and accuracy than the news. Some reporters have blogs to discuss things that their editors block, which is even better, because good reporters are better at reporting news than unprofessional bloggers. During the time following Iran Election, Twitter was the only source of information. This is what Larry Lessig calls Read-write-culture.

New industries are coming

Talking about the world is our way to feel part of it. It’s deeper than the news. We do it by posting videos on YouTube. We do it by pointing out to music that we love. We do it by editing, and re-editing the media around us. After the news, crowd-sourcing will transform more and more industries.

One of the strongest opponents to the new world order is the music industry. The music industry is governed by a small group of people, that can’t create music, and hold the copyright to most of today’s music. These people have everything to lose by the changes in the economy. The artists can survive without them, by selling direct-to-consumer. In the new world, these people have no added value to the market. FAIL.

That is why the music industry is so against change. They oppose (somewhat legitimately) the unauthorized download of music from peer-to-peer networks (such as Napster, Torrent, etc.), though they act like total sticklers about it, suing their customers left and right. They also oppose mixing and mashing of old music into new music.

Mix & Match and the fair use

Copyright laws protect the owner of rights from blatant copying of the material. The only clause under which public display or performance of copyrighted art is allowed is fair use:

Fair use is a doctrine in United States copyright law that allows limited use of copyrighted material without requiring permission from the rights holders, such as use for scholarship or review. It provides for the legal, non-licensed citation or incorporation of copyrighted material in another author’s work under a four-factor balancing test:

  1. the purpose and character of the use, including whether such use is of a commercial nature or is for nonprofit educational purposes;
  2. the nature of the copyrighted work;
  3. the amount and substantiality of the portion used in relation to the copyrighted work as a whole;
  4. the effect of the use upon the potential market for or value of the copyrighted work.

An example of what I understand to be fair use are the marvelous mash-ups created by Kutiman, which mixes pieces of YouTube clips to create new music.

RIP: A remix manifesto

Saving best for last, I recently saw a movie called RIP: A remix manifesto, which beautifully demonstrates the problems in today’s music industry, and the deep contrast between how the public understands copyright and how the music industry (and the law) understand it.

This is a MUST SEE, and it is all available here, to watch and to remix.

BTW, the media archives of RIP, are hosted by the very awesome Kaltura, which I’ll write about some other time.