From the Canyon Edge -- :-Dustin

Wednesday, January 20, 2010

LCA2010: Day 3, Wellington, New Zealand

The day started with Benjamin Mako Hill's talk on Antifeatures, about technologies that are artificially hindered copyrights and market segmentation. The lyrics to Happy Birthday are actually still under active copyright. Mako has a satirical website that shows the ridiculousness of this:

The first example of an antifeature is paying to not list your phone number in the phone book. Who here has paid to have their phone number not listed? Spammers pay the phone company to get lists of phone numbers, and you pay the phone company to not give it to them. Absolutely ridiculous. He talked about Gator, the "most successful spyware in history". You could pay OEMs to not install this crap on your computer. All in the name of market segmentation--different people pay different amounts for basically the same software. The Gator episode was 10 years ago ... surely things are different now... Slide shows: Windows Vista (Starter, Home Basic, Home Premium, Vusiness, Enterprise, Ultimate). Vista Basic can only run 3 graphical applications simultaneously. The goal was to make a barely functional, crippled Windows and offer it at almost no charge, but it was so bad, you really had to buy the upgrade.

Some cameras charge more to support the raw image format. Surely compressing the image using jpeg compression is more work (all images start out raw). Most of us here have bought a printer for $100, and then subsequent ink cartridges for $75... Modern print cartridges actually have some silly, copyrighted code in the cartridge that makes it basically impossible (illegal) to buy cheap refills. The XBox is a simple PC engineered not to run another OS (specifically, Linux). TiVo, same thing. Computers are ultimately perfect copy machines -- much effort has been spent in the last 20 years trying to make PCs less perfect copiers. Who here hates the DVD "unskippable track"?

Phones are the most pervasive computers in the world, and almost every one is locked by a SIM card. Who here had an OpenMoko? "It didn't do a lot of things, but some of the things it didn't do were pretty great", quote-of-the-day by Benjamin Mako Hill. DRM is basically the mother of all antifeatures. There are currently over 10,000 people employed in the DRM industry. You can submit your antifeatures at:

I experienced a pretty crappy antifeature on my way over here... I had a total of 4 flights to get from Austin to Wellington. Austin -> Houston -> Los Angeles -> Auckland -> Wellington. Although I didn't know it when I booked my travel, I happened to be in Houston the day before my flight started. For this reason, I called Continental to ask if I could just "skip" my Austin -> Houston leg. I wasn't asking for a refund. Just to print my boarding passes as normal, tear up the AUS-IAH boarding card, show up in Houston with my ID and my other 3 boarding passes, and commence my journey. The Continental agent told me that this would cost $700 in addition to the $2500 that had already been paid for my fare. I would have had to pay Continental $700 to not take a flight. Effing retarded.

Next, I attended The Kernel Report by Jon Corbet (which actually hit Slashdot today). He list 7 challenges facing the Linux kernel:
  1. Vitality - Andrew Morton famously said that he expected the number Linux kernel patches to drop off at some point, implying that one day we would "finish" this kernel project (Sep 2005, 2.6.14 release). Changesets are still increasing, in fact, at a rate of 144 changesets per day, 7330 lines of code added per day. In the last year, the kernel has added: GEM, ext4, staging tree, wireless USB, KMS, btrfs, squashfs, wimax, 4096 cpu, tomoyo, integrity measurement, nilfs, radeon r6xx/r7xx, perf counter, userspace char devices, kmemleak, radeon kms, kernel shared memory, dynamic ftrace, drbd, tcp cookie transactions, nouveau.
  2. Scalability - in June 1996, Linux 2.0 added support for 2 CPUs. Today, Linux supports 4096 CPUs! Problem areas: 10G ethernet for large packets okay, not for small packets though; SSDs with 100K ops/sec are on the horizon. Scalability is a 2-way street; scaling down is important too, with so many of us here with root on our phone. The amount of resources required to run our kernel is increasing, fortunately behind Moore's Law (at least for now).
  3. Storage - Ext4 - better perf, many limits fixed, ext3 compat, still stabilizing. Btrfs - is a totally new filesystem, performance, full checksumming, snapshots, is likely the Linux FS of the future. SSDs - poor performance over time.
  4. Visibility - What do we want to know about what our system is doing?
  5. (????) - Real time is important for gadgets (sound, music), but also financial services.
  6. Containment - Virtualization. Containers, more efficient, trickier to implement, in progress, still a long ways to go.
  7. Hardware - Nearly universal now. Support more hardware than almost any other OS now. Few remaining problems are in graphics and network adapters, -staging tree is helping.
Corbet suggested that LKML is now friendlier than the Ubuntu mailing lists.
Note: At the time, I took offense to Jon's comment, calling it a "potshot" against Ubuntu. Per a private conversation with Jon, he was referring to a really nasty ubuntu-users@ thread. I consider the ubuntu-devel@ and ubuntu-devel-discuss@ lists to more akin to LKML, as developer/developer or user/developer communication. The latter two lists are tightly governed by the Ubuntu Code of Conduct, and in my experience, are much friendlier than LKML, historically. Jon assures me that he meant no offense to Ubuntu with his referenced comment.
Thankfully two other speakers today (mako and mjg) mentioned the Ubuntu Code of Conduct as being both important and effective in the Ubuntu community.

Next, I attended a Survey of Open Source Databases by Selena Deckelmann. In 2005, there were basically 5 open source databases -- BerkelyDB, MySQL, PostgreSQL, SQLite. Today, there's 50+. She conducted a vast survey, asking a dozen or so questions of ~50 different open source database projects. See the results at:

Ted Tso gave a talk on Ext4 -- the 5th such talk by Ted in the last year and a half. It's quite interesting to see how the talk has evolved from design level to the implementation retrospective that this talk was. This talk was absolutely standing room only. Since I was standing, I didn't take notes. Basically, Ted cased a couple of the most critical bugs that were found, how they were found and fixed.

The next talk was on The Linux Community by Matthew James Garrett. It wasn't a technical talk at all -- it was all about the soft skills and relationships in the open source community. He notes that there are lots of different communities in the Free and Open Source community, each with their own definitions, and different rules for inclusion and exclusion. He showed a picture of the 2009 Linux kernel summit, followed by the UDS Barcelona group picture.

Matthew notes how much hostility there (still) is in the Linux community. He quotes himself from 2004, having said "**** on my ****" on a public mailing list. He also quotes a recent saga harassing girls that in the Linux community.

Matthew notes that that Ubuntu introduced the Ubuntu Code of Conduct to avoid some of the failings of the Debian Project, which can be summarized with, "Be excellent to one another" -- Bill and Ted. The Ubuntu Code of Conduct has made Ubuntu users part of the community in a way that's unique among distros. He asks, "What do we want our community to be?" He seems to suggest that we need to be far more open and welcoming. Question from Martin Krafft, "What changed in you, Matt, between 2004 and now for you to speak on this?" He responded that he's had a change of heart, realizing he work with people without screaming at them. Applause from the audience, and Matthew says that the applause is bizarrely touching. :-)

I really enjoyed the next talk on Teaching FOSS in Universities, by Andrew Tridgell and Bob Edwards. It's not just about programming, or how to use Linux. It's about how to format and submit a patch, join a project, start a project, run a project. They taught a CS Masters class, with a combination of practical and theoretical training, trying to get students involved in real projects, and to understand the FOSS community. The audience asked if they used Jono Bacon's book Art of Community. Tridge said "No, not really", but did use Karl Fogel's book, Producing Open Source Software, (and mentioned it several times in the talk).

Their lectures included:
  1. Intro to FOSS, getting started in a project, using source code management
  2. History of FOSS, FOSS licensing, FOSS and the law
  3. FOSS project governance, FOSS and business, FOSS motivation
  4. Samba case study, FOSS distros and platforms, FOSS culture
  5. Starting a new project, FOSS tales, release early/often
The Lab work included:
  1. Install a FOSS project (a2ps), contribute to one of 5 suggested projects
  2. Finding a FOSS project, getting in touch
  3. Project work
  4. Project work
  5. Video presentation on the experience
I asked if this really needed to be a grad level course, and if it could be taught as an undergraduate course to teach some FOSS skills a bit earlier in the student's academic career. Tridge answered that he thinks this could be a 2nd or 3rd year course, easily. After they taught the course, they found Greg DeKoenigsberg's Teaching Open Source course.

What can you do? Approach your local uni! Drop a line to a FOSS friendly lecturer. Help with the TOS textbook. See:
The most entertaining, hilarious talk of the day was about the World's Worst Inventions, by Paul Fenwick (in a mad scientist costume). This talk is brought to you from the L.O.O.N.I.E.S. the League Of Overambitious New Inventors, Engineers and Scientists. The presentation was a series of funny old ads things like cocaine pills for headaches, asthma cigarettes (not for children under 6 years old). There were some great slides on really bad toys. The feed-me cabbage patch, from 1996, had one-way metal rollers in the mouth of these dolls. They came with some plastic, fake food. But when the food ran out, refills were expensive. So kids fed this dolls all sorts of things. Particularly, hair, fingers, and siblings. These were the ultimate zombie dolls :-)

Anyone remember melty beads? My sisters had these things that could be melted into keychains. Rather than using heat, Bindeez used water to fuse together. Unfortunately, they replaced one chemical with another that was 10x cheaper. The problem was that the cheaper chemical was actually GHB (yup, Liquid Ecstasy). Kids nibbled on the beads and were entertained for hours before being pulled from the market.

In the '50s, good parents could buy the Atomic Energy Lab for their enterprising young scientists, complete with a Geiger counter and, with real uranium samples!

The image that brought the house down was US Patent #4320756, Fresh-Air Breathing Method and Device. Yikes!!!

And finally, a modern one you can buy straight off of today, the Laptop Steering Wheel Desk.

What a great talk, and a nice way to end a highly technical day.

There was a showing of Code Rush there at the conference--the story of Mozilla opening their code. The movie itself is a free download under the Creative Commons, so I downloaded it, and I'll watch it later, perhaps on my flight home.

Instead, I attended a screening of Peter Jackson's The Lovely Bones at the Embassy Theatre. This was poignant for a few reasons. Wellington, being the home town of Peter Jackson, and also being the Hollywood of New Zealand, a good bit of the movie was produced here. My new friends at Weta Digital did the digital effects rendering for the film (again, on a 5,000 node Ubuntu server farm). And the Embassy Theatre is phenomenal! Huge seats (with brass name placards on each), a perfect screen, perfect sound, very fancy.

Finally, I submitted a few more images for today's Photo Competition, of the Waterfront quadrant. For your enjoyment ...