You've likely heard me say (and maybe even sing) that:
"Ubuntu is not just software."
I would like to introduce you to the Five "P's" in Ubuntu
Ubuntu is a:
People to participate in a massive collaborative
Project that creates a rich and solid
Platform that supports useful and freedom-respecting
Products that the whole world can enjoy.
When I was in Budapest at a UDS, Matthew Paul Thomas (mpt) presented a plenary session and introduced me to the concept of thinking about Ubuntu as more than an OS. I am greatly thankful to him for doing that and for inspiring this post. We stand taller on the shoulders of giants.
I’ll be spending the week after next (June 17-23) in London for the annual meeting of the International Communication Association where I’ll be presenting a paper. This will be my first ICA and I’m looking forward to connecting with many new colleagues in the discipline. If you’re one of them, reading this, and would like to meet up in London, please let me know!
Starting June 24th, I’ll be in Ann Arbor, Michigan for four weeks of the ICPSR summer program in applied statistics at the Institute for Social Research. I have been wanting to sign up for some of their advanced methods classes for years and am planning to take the opportunity this summer before I start at UW. I’ll be living with my friends and fellow Berkman Cooperation Group members Aaron Shaw and Dennis Tennen.
I would love to make connections and meet people in both places so, if you would like to meet up, please get in contact.
I usually don't wade into politics, but this hits too close to home to not voice an opinion, and there is a link to Ubuntu.
When I was growing up, I loved the music of Prism , a band that hails from Vancouver. Now that I call Vancouver home, I love them even more. Here's an interesting fact for the space lovers amongst us: "On Sunday, March 6, 2011, Prism's "Spaceship Superstar" was chosen as the wakeup song for the Space Shuttle Discovery crew members." How cool is that? If you love space, please take a listen. It will cheer you up and inspire you before you read the rest of my article.
Late last week some news broke about a different group with a lacklustre name and no musical talent. Terrible musicians who unfortunately stole the name of one of my favourite bands for their pet project - spying. Very disappointing. And, it seems they have a list of friends that you'll recognize.
News of this project and its goals did not come as a surprise to me, and likely not to you as well.
Take a deep breath and read this.
If the articles are a surprise to you, please consider the logical fallacy known as "false premise". Perhaps growing up you were given a premise that certain places are beacons of freedom and free speech and that they protect the same. You may have received this "information" from movies, television, newspapers, etc. And if you lived in certain places, you may have even sung songs to that effect. You were lied to.
So, knowing that these events have occurred and will continue to occur, what is an appropriate and direct action that you can take? On the surface it seems like an intractable problem to solve. Fortunately it's not. Here are a few simple steps that you can take right now to protect yourself, your friends and your family:
1) Start with yourself. Think about all the services you use and whether they are on the list. If they are, take immediate steps to discontinue their use. Are you a Verizon customer? Time to leave. Liking Facebook? What's stopping you from using Diaspora instead?
2) Next help your friends and loved ones. If you have people in your life that you care about that use services or products from the companies listed in the report, please reach out to them and help them leave TODAY. Does your best friend use Yahoo mail? Offer an alternative. Help make it easy for them.
3) Double down your efforts on Ubuntu. Encourage your friends who have been sitting on the sidelines to do the same. The only way to achieve freedom and the promise of a shared humanity is to build it. Don't waste your time trying to fix a broken political process that is built on greed and psychopathy. The best way forward is to build a system that works better. (Luckily, many of you reading this post are already involved in Ubuntu. Thank you! Please tell your friends.)
There is a saying that I like to cite in circumstances like this: "You can't change the world, but you *can* change your world."
Start simple. Start local. Be the change you want to see.
Image by "Colourless Rainbow" http://www.flickr.com/photos/irteza/ CC by-nc-sa
When last time I was in Cambridge we had a discussion about ARM processors. Paweł used term “ARMology” then. And with recent announcement of Cortex-A12 cpu core I thought that it may be a good idea to write a blog post about it.
Please note that my knowledge of ARM processors started in 2003 so I can make mistakes in everything older. Tried to understand articles about old times but sometimes they do not keep one version of story.Ancient times
ARM1 got released in 1985 as CPU add-on to BBC Micro manufactured by Acorn Computers Ltd. as result of few years of research work. They wanted to have new processor to replace ageing 6502 used in BBC Micro and Acorn Electron and none of existing ones did not fit their requirements.
But it was ARM2 which landed in new computers — Acorn Archimedes (1987 year). Had multiply instructions added so new version of instruction set was created: ARMv2. Just 8MHz clock but remember that it was first computer with new CPU…
Then ARM3 came — with cache controller integrated and 25MHz clock. ISA was bumped to ARMv2a due to SWP instruction added. And it was released in another Acorn computer: A5000. This was also used in Acorn A4 which was first ARM powered laptop (but term “ARM Powered” was created few years later). I hope that one day I will be able to play with all those old machines…
There was also ARM250 processor with ARMv2a instruction set like in ARM3 but no cache controller. But it is worth mentioning as it can be seen as first SoC due to ARM, MEMC, VIDC, IOC chips integrated in one piece of silicon. This allowed to create budget versions of computers.ARM Ltd.
In 1990 Acorn, Apple and VLSI co-founded Advanced RISC Machines Ltd. company which took over research and development of ARM processors. Their business model was simple: “we work on cpu cores and other companies pay us license costs to make chips”.
Their first cpu was ARM60 with new instruction set: ARMv3. It had 32bit address space (compared to 26bit in older versions), was endian agnostic (so both big and little endian was possible) and there were other improvements.
Please note lack of ARM4 and ARM5 processors. I heard some rumours about that but will not repeat them here as some of them just do not fit when compared against facts.
ARM610 was powering Apple Newton PDA and first Acorn RiscPC machines where it was replaced by ARM710 (still ARMv3 instruction set but ~30% faster).First licensees
You can create new processor cores but someone has to buy them and manufacture… In 1992 GEC Plessey and Sharp licensed ARM technology, next year added Cirrus Logic and Texas Instruments, then AKM (Asahi Kasei Microsystems) and Samsung joined in 1994 and then others…
From that list I recognize only Cirrus Logic (used their crazy EP93xx family), TI and Samsung as vendors of processors ;DThumb
One of next cpu cores was ARM7TDMI (Thumb+Debug+Multiplier+ICE) which added new instruction set: Thumb.
The Thumb instructions were not only to improve code density, but also to bring the power of the ARM into cheaper devices which may primarily only have a 16 bit datapath on the circuit board (for 32 bit paths are costlier). When in Thumb mode, the processor executes Thumb instructions. While most of these instructions directly map onto normal ARM instructions, the space saving is by reducing the number of options and possibilities available — for example, conditional execution is lost, only branches can be conditional. Fewer registers can be directly accessed in many instructions, etc. However, given all of this, good Thumb code can perform extremely well in a 16 bit world (as each instruction is a 16 bit entity and can be loaded directly).
ARM7TDMI landed nearly everywhere – MP3 players, cell phones, microwaves and any place where microcontroller could be used. I heard that few years ago half of ARM Ltd. income was from license costs of this cpu core…ARM8
I heard that ARM8 is one of those things you should not ask ARM Ltd. people about. Nothing strange when you look at history…
ARM810 processor made use of ARMv4 instruction set and had 72MHz clock. At same time DEC released StrongARM with 200MHz clock… 1996 was definitively year of StrongARM.
In 2004 I bought my first Linux/ARM powered device: Sharp Zaurus SL-5500.Other ARMv4 processors
Faraday Technology Corporation released FA526 processor which used ARMv4 instruction set.ARM9
Ah ARM9… this was huge family of processor cores…
ARM moved from a von Neumann architecture (Princeton architecture) to a Harvard architecture with separate instruction and data buses (and caches), significantly increasing its potential speed.
There were two different instruction sets used in this family: ARMv4T and ARMv5TE. Also some kind of Java support was added in the latter one but who knows how to use it — ARM keeps details of Jazelle behind doors which can be open only with huge amount of money.ARMv4T
Here we have ARM9TDMI, ARM920T, ARM922T, ARM925T and ARM940T cores. I mostly saw 920T one in far too many chips.
My collection includes:
- ep93xx from Cirrus Logic (with their sick VFP unit)
- omap1510 from Texas Instruments
- s3c2410 from Samsung (note that some s3c2xxx processors are ARMv5T)
Note: by ARMv5T I mean every cpu never mind which extensions it has built-in (Enhanced DSP, Jazelle etc).
I consider this one to be most popular one (probably after ARM7TDMI). Countless companies had own processors based on those cores (mostly on ARM926EJ-S one). You can get them even in QFP form so hand soldering is possible. CPU frequency goes over 1GHz with Kirkwood cores from Marvell.
In my collection I have:
- at91sam9263 from Atmel
- pxa255 from Intel
- st88n15 from ST Microelectronics
Had also at91sam9m10, Kirkwood based Sheevaplug and ixp425 based NSLU2 but they found new home.ARM10
Another quiet moment in ARM history. ARM1020E, ARM1022E, ARM1026EJ-S cores existed but I never heard of any real processor which would use them.ARM11
Released in 2002 as four new cores: ARM1136J, ARM1156T2, ARM1176JZ and ARM11 MPCore. Several improvements over ARM9 family including optional VFP unit. New instruction set: ARMv6 (and ARMv6K extensions). There was also Thumb2 support in arm1156 core (but I do not know did someone made chips with it). arm1176 core got TrustZone support.
- omap2430 from Texas Instruments
- i.mx35 from Freescale
Currently most popular chip with this family is BCM2835 GPU which got arm1136 cpu core on die because there was some space left and none of Cortex-A processor core fit there.Cortex
New family of processor cores was announced in 2004 with Cortex-M3 as first cpu. There are three branches:
All of them (with exception of Cortex-M0 which is ARMv6) use new instruction sets: ARMv7 and Thumb-2 (some from R/M lines are Thumb-2 only). Several cpu modules were announced (some with newer cores):
- NEON for SIMD operations
- VFP3 and VFP4
- Jazelle RCT (aka ThumbEE).
- LPAE for more then 4GB ram support (Cortex A7/12/15)
- virtualization support (A7/12/15)
I will not cover R/M lines as did not played with them.Cortex-A8
Announced in 2006 single core ARMv7a processor core. Released in chips by Texas Instruments, Samsung, Allwinner, Apple, Freescale, Rockchip and probably few others.
Has higher clocks than ARM11 cores and achieves roughly twice the instructions executed per clock cycle due to dual-issue superscalar design.
So far collected:
- am3358 from Texas Instruments
- i.mx515 from Freescale
- omap3530 from Texas Instruments
First multiple core design in Cortex family. Allows up to 4 cores in one processor. Announced in 2007. Looks like most of companies which had previous cores licensed also this one but there were also new vendors.
There are also single core Cortex-A9 processors on a market.
I have products based on omap4430 from Texas Instruments and Tegra3 from NVidia.Cortex-A5
Announced around the end of 2009 (I remember discussion about something new from ARM with someone at ELC/E). Single core only, mostly for use in all designs where ARM9 and ARM11 cores were used. In other words new low-end cpu with modern instruction set.Cortex-A15
The fastest (so far) core in ARMv7a part of Cortex family. Up to 4 cores. Announced in 2010 and expanded ARM line with several new things:
- 40-bit LPAE which extends address range to 1TB (but 32-bit per process)
- Hardware virtualization support
- TrustZone security extensions
I have Chromebook with Exynos5250 cpu and have to admit that it is best device for ARM software development. Fast, portable and hackable.Cortex-A7
Announced in 2011. Younger brother of Cortex-A15 design. Slower but eats much less power.Cortex-A12
Announced in 2013 as modern replacement for Cortex-A9 designs. Has everything from Cortex-A15/A7 and is ~40% faster than Cortex-A9 at same clock frequency. No chips on a market yet.big.LITTLE
That’s interesting part which was announced in 2011. It is not new core but combination of them. Vendor can mix Cortex-A7/12/15 cores to have kind of dual-multicore processor which runs different cores for different needs. For example normal operation on A7 to save energy but go up for A15 when more processing power is needed. And amount of cores in each of them does not even have to match.
It is also possible to make use of all cores all together which may result in 8-core ARM processor scheduling tasks on different cpu cores.
There are few implementations already: ARM TC2 testing platform, HiSilicon K3V3, Samsung Exynos 5 Octa and Renesas Mobile MP6530 were announced. They differ in amount of cores but all (except TC2) use the same amount of A7/A15 cores.ARMv8
In 2011 ARM announced new 64-bit architecture called AArch64. There will be two cores: Cortex-A53 and Cortex-A57 and big.LITTLE combination will be possible as well.
Lot of things got changed here. VFP and NEON are parts of standard. Lot of work went into making sure that all designs will not be so fragmented like 32-bit architecture is.
I worked on AArch64 bootstrapping in OpenEmbedded build system and did also porting of several applications.
Hope to see hardware in 2014 with possibility to play with it to check how it will play compared to current systems.Other designs
ARM Ltd. is not the only company which releases new cpu cores. That’s due to fact that there are few types of license you can buy. Most vendors just buy licence for existing core and make use of it in their designs. But some companies (Intel, Marvell, Qualcomm, Microsoft, Apple, Faraday and others) paid for ‘architectural license’ which allows to design own cores.XScale
Probably oldest one was StrongARM made by DEC, later sold to Intel where it was used as a base for XScale family with ARMv5TEJ instruction set. Later IWMMXT got added in PXA27x line.
In 2006 Intel sold whole ARM line to Marvell which released newer processor lines and later moved to own designs.
There were few lines in this family:
- Application Processors (with the prefix PXA).
- I/O Processors (with the prefix IOP)
- Network Processors (with the prefix IXP)
- Control Plane Processors (with the prefix IXC).
- Consumer Electronics Processors (with the prefix CE).
One day I will undust my Sharp Zaurus c760 just to check how recent kernels work on PXA255 ;DQualcomm
Company known mostly from wireless networks (GSM/CDMA/3G) released first ARM based processors in 2007. First ones used ARMv6 instruction set and in next year also ARMv7a were available. Their designs are similar to Cortex family but have different performance.
Nexus 4 uses Snapdragon S4 Pro and I also have S4 Plus based Snapdragon development board.Final note
If you spotted any mistakes please write in comments and I will do my best to fix them. If you have something interesting to add also please do a comment.
I used several sources to collect data for this post. Wikipedia articles helped me with details about Acorn products and ARM listings. ARM infocenter provided other information. Dates were taken from Wikipedia or ARM Company Milestones page. Ancient times part based on The ARM Family and The history of the ARM CPU articles. The history of the ARM architecture was interesting and helpful as well.
Please do not copy this article without providing author information. Took me quite long time to finish it.
- Samsung will have big.LITTLE. So what?
- What interest me in ARM world
- Death to Raspberry/Pi — Beaglebone Black is on a market
- Calxeda announced ARM server product
- Speeding up BitBake builds
I’ve been thinking: to what degree of permanency does our online life have? Should our biggest concern be that our data (and if you’re alive today and use the internet, you probably have some to one degree or another) has made us immortal? –so to speak.
It is no far cry to assume that if you use any online services (provided by a corporation) the data that you give them is stored. It’s also no mystery that it’s then used to better advertise to us. (And we’d be naive to think this isn’t exploited by governments legally or otherwise –see PRISM– for “surveillance/security purposes”).
Cameras in our pockets have changed everything as well. Combined with facial recognition it’s possible to snap a picture of someone, before meeting them in a bar for example, and use the internet to get their name and then use their name to find them on the internet, and so on. (Remember when Facebook bought face.com?)
But, I’m not breaking out the tin foil hats (just yet).
I like to think that’s nothing on the internet is free; there’s two ways we can pay for the convenience of internet services: with money or with data, and that we as internet users have to be comfortable with relinquishing one or both of those.
I will agree that there needs to be more transparency from the companies that have our data; that they openly share what they collect and how they use our data. Or have a more open-source approach to things.
One of the caveats of (and one of the lesser reasons I predominantly use) open-source software is the liberation one gets from knowing what goes into it –we can be assured (mostly) that no malicious elements are added to them.
In the past there was a notion where people wanted to have “15 minutes of fame”. Today, I don’t think that that’s true. It might be more difficult to get 15 minutes of anonymity –we’ve probably all used that 15 minutes up: right out of the womb.
But I digress.
I gave this post the title “The Threat of Immortality” as I think death is not the biggest threat, as far as our legacies and the internet is concerned. When we’re long dead, all the data we’ve pumped online will still linger, and like the cave paintings of ancient times, our children’s children are going to thought-Google us from their neurological implants and find our antiquated profiles. Then they’ll point and laugh at how we used to have and hold and paw at a piece of glass like a cat to communicate and be social instead of using our minds –”How droll”.
So how can we expect to live our lives? I guess we must simply be cognisant of what we post, tweet, photograph, buy, like, say, watch, upload, download, write, edit, on the Internet. Else unplug.
As I like to say/joke it’s probably easier to fake one’s own death than to delete your online life.
Yes! It is possible!
I’ve done it!
On my production linode!
It was a bit hard, and I made quite a few mistakes, but I’m convinced that a minimal system can be sanely crossgraded. I did it and only had an hour or so of server downtime In the process. However, most of the stack gets stripped down and back out, so I fear what happens with the X stack (nevermind GNOME Or anything that depends on it)
A more detailed post to follow!
Thanks to the dpkg team for making this happen!
With every Ubuntu release I find myself deep into the bowels of the default GTK theme tweaking this or that. Not so much driven by dissatisfaction, I am motivated by the possibility of improvement resulting in a better user experience.
I’ve noticed a trend is afoot to flatten the appearance of themes. Chrome OS is a good example of this and it is rumored the new iOS 7 will be the same. Evidence of this is observable in Ubuntu as the file manager icons of the navigation tree are flat.
I used this as a design goal for this release and I am pleased to announce the availability of the AmbianceX (AX) theme for Ubuntu “13.04″.
The following screen shots illustrates how the theme presents.Files
Ubuntu 13.04 uses Nautilus 3.6 by default. The tool bar is flat and has been enhanced with navigation buttons matching the “open files” dialog control. Tree view elements are tinted when the mouse hovers over them to aide in navigation.
The scroll bars mimic those found on web pages such as Facebook or Google Drive.Rhythmbox
The tool bar playback controls are now tinted when you hover your mouse over them.Inkscape
GTK2 applications like Inkscape are themed to match their GTK3 siblings to the extent possible.Appearance Dialog
The appearance dialog contains a plethora of UI elements and is a good example of how these elements compliment each other.Errata
The menus in Libre Office do not highlight as desired on the mouse over event. This is also an issue with core Ambiance.Installation
Step 1 – Download installation package
Download the installation package here.
Step 2 – Expand the Archive
Step 3 – Open Terminal
Open a terminal window by simultaneously pressing the “ctrl-alt-t” keys or open from the Unity menu.
Step 4 – Move to AX Directory
~$ cd Downloads/AX-Install
Step 5 – Run Installation Script
~$ sudo bash InstallAX.sh
Step 6 – Confirm Installation
Step 7 – Log out
When the installation script completes log out and then log in.
The installation script automatically disables the auto scroll bar feature. To re-enable run the EnableUbuntuScrollbars.sh script.
To uninstall AX simply run the script and select uninstall from the menu.
As you may know, the LDAP backend in ownCloud 5 got a couple of new features and some changes under the hood (see point 3 on ownCloud 5 released, Google Reader Alternative). Seven maintenance releases later, some bugs have been smashed, but an irksome quirk is left.
A newly introduced behaviour in creating the ownCloud username may be unwanted in the way the default is. Back in ownCloud 4.5, there were just usernames that were used to display and to identify users. In the LDAP backend we make sure that no concflicts with usernames appear in order to avoid same usernames between LDAP users, local users and other possible backends. Having the same username would make files and data availablle for all of them.Generating (internal) Usernames
In onwCloud < 5 the username was restricted to basic ASCII chars. Our approach in the LDAP backend was to create the username from the value of the attribute given in the "User Display Name Field". Special characters were replaced were possible, or omitted. On collisions, the DN was addded in a almost readable manner. The username is stored in a database table and assigned to a reliable LDAP identifier to find him again.
In ownCloud 5.0 Display Names were introduced. The internal username (shown as Login Name on the Users page, a bit misleading) is still the same, but now there is support for a fancy name per user and without character limitations. With the LDAP backend, we made use of it and did the following: because the internal username was not visible for the User anymore, the internal ownCloud name will be generated from the UUID now. This avoids sanitation and is already practicably unqiue. The ownCloud display name is exactly what the value of the attribute specified as "User Display Name Field" retrieves.From Undesirable Side Effects…
This decision (made close to Feature Freeze) had some effects:
- The user directory in ownCloud is named after the internal username (if not specified differently in "User Home Folder Naming Rule")
- All the *DAV URLs contain the internal username in the path.
- The Ampache server (Media Player) also expects the internal username for login as it does the authentication on its own
Reactions after the release made us aware that often the login name and "User Display Name Field" were the same in the "old days of ownCloud 4.5", leading to undesired behaviour. Issue #1 is acutally not much of a problem and can be fixed with the settings option mentioned above. Issue #2 and #3 (special in it's own way) could not be circumvented. Until 5.0.7.… To More Flexibility
With ownCloud 5.0.7 we introduce a new tab in the ownCloud settings called "Expert". The attribute used for creating the internal username can be customized there, so that it matches with the uid (or whichever attribute you prefer) again. Please note that it does not have effect on existing users, because there is no rename mechanism in ownCloud. You should ensure that those values are unique, because on naming collisions a username in the pattern of attributevalue_1234 (random number) will be created instead.
Another option is to specify the UUID attribute. Actually, the default behaviour is identical to what we did in ownCloud 4.5. Since uids, cn or DNs may change, we need a permanent value to recognize LDAP users. We need to be able to reliably map the internal ownCloud username to an LDAP representation. You can override this behaviour, too. Note: this will not have immediate effect on existing users, but can cause trouble when a user DN changes. Do not use it after putting your ownCloud in production use.
Furthermore mapping tables can be deleted. The mapping tables associate the internal ownCloud username with the LDAP user representation. You do not want to click on them on a production server! More information provides the LDAP Backend Documentation PageThe Missing Icing On The Cake
For existing users there is not much to gain, unfortunately. What you can do there is to change the owncloud_name in the oc_ldap_user_mapping table as well as in database columns where the username is used (for instance 'share_with' and 'uid_owner' in oc_share and more depending on the apps in use). This is scriptable. Also scriptable is to update the UUID values from the current to the desired attribute. However, the scripts (or as improvements to the backend) need to be done first.
Yesterday I spent a bit of time reading a thread on Arch Linux ARM forum about their issues with Samsung ARM Chromebook. And found interesting information there.
Why Arch Linux ARM? Because they posted guide for replacing original U-Boot with normal one. I plan to make some modifications to my Chromebook (once it return from service as I want my speakers back) and this will be one of them (other will be serial ports).
If someone want to try this distribution then Craig Errington describes on his blog how to install XFCE. I did not used it and do not plan to but will check for tweaks and hints to get my Ubuntu experience better.
So if you play with running other distributions than ChromeOS on you Chromebook then check their forum — maybe you will find something useful as well.
Alan Turing was a British mathematician, logician, cryptanalyst, and computer scientist. He was highly influential in the development of computer science, giving a formalisation of the concepts of “algorithm” and “computation” with the Turing machine, which can be considered a model of a general purpose computer. Turing is widely considered to be the father of computer science and artificial intelligence. You can read more here.
On this day in 1954 we lost this great mind, and I just wanted take a minute to thank and remember this remarkable man.Alan Turing (1912-1954)
This special edition discusses the current news of revelations of government acquisition of Verizon cell phone customer call records and discusses some software solutions available for preserving privacy.
This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 United States License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/us/.
Today I recorded a video demo of Ubuntu running on the Galaxy Nexus and showcasing much of the progress in May to turn the phone into a usable daily phone for early testers. The demo shows recieving a call and text, web browser, social networking integration, multitasting, a number of the apps, messaging menu, and more.
Here it is:
Can’t see it? Watch it here.
In this week’s show:-
- We take a look at what’s been happening in the news:
- We catch up with what’s happening in the Ubuntu community:
- Bug #1 is fixed (or failed)
- Play with Discourse
- errors.ubuntu.com is opened up (with controls) to developers who need bug info
- community.ubuntu.com is back!
- Brian Lunduke releases his software as open source and gives progress update
- More transparency by hanging out with Ubuntu teams
- Dreamhost moves to Ubuntu
- And we mention some events:
Please send your comments and suggestions to: firstname.lastname@example.org
Join us on IRC in #ubuntu-uk-podcast on Freenode
Leave a voicemail via phone: +44 (0) 203 298 1600, sip: email@example.com and skype: ubuntuukpodcast
Follow our twitter feed http://twitter.com/uupc
Find our Facebook Fan Page
Follow us on Google Plus
Leave us some segment ideas on the Etherpad
Bruce Lawson started a very interesting discussion about the Encrypted Media Extensions to HTML a few months ago, with learned and interesting commentary from John Foliot and others. After devoting some thought to this, I believe that the amount of argument around this subject is at least partially caused by its separation of the web from the spirit of the web.
A few things to dismiss first. This is about DRM. John’s technically right that that’s not all that EME is about, but that’s frankly disingenuous. DRM is most of what EME is about, it’s all of what objectors object to, and pointing at the other reasons is like walking into St. Thomas’s Hospital and saying that smoking reduces the risk of Alzheimer’s. It does…but you are missing the point.
Secondly, this discussion is not about whether DRM is a good idea at all. Certainly many people have an opinion on that. It is also reasonable, if you dislike DRM, to believe that EME is a bad idea because it further legitimises DRM, and to make an argument in those terms. But if you fundamentally disagree with DRM then your argument is better directed either at movie studios (to stop them producing movies with it) or at ordinary purchasers (to convince them that avoiding DRM is more important than watching movies). I do not believe that anyone rationally discussing EME is acting in genuine bad faith – there is no big conspiracy here. From what I’ve seen, this is a discussion of pragmatism: given that DRM exists and movies use it and people want movies, is it a good idea to integrate DRM movie playback more tightly with the web? I do not propose that anyone’s sacred right to be heard is compromised: what I suggest is that arguments are best directed against those most able to fix it. If you hate DRM, send your ire against Paramount or your neighbours, not your web browser.
OK, those distractions aside, the point I was making is this: one of the really nice things about the web is that it is set up to be open, and in order to participate, you have to be too. Stuff on the web is available to accessibility technologies; you can read the code that makes up a page; it’s available on many devices including ones you’ve never heard of; it’s backwards compatible right down to text browsers. Of course it’s possible to build stuff on the web which fails to meet these things, but in general, participation in the web means that you’re automatically building something that meets those goals, because that’s built in to the whole concept. There is a reason that the web took off rather than Hypercard or FoxPro. So, historically, “let’s get this new technology onto the web” meant, at least partially, that that new technology would need to become accessible and available to everyone on every operating system and every device and open. So adding a new technology to the web was a good thing for people who wanted to use that technology in places that weren’t anticipated by the tech owners. The web enables everybody; therefore, everybody’s in favour of things being on the web. QED.
The Encrypted Media Extensions are not like that. They are explicitly designed to provide a framework to plug in other technologies, with no guarantee whatsoever that those other technologies are actually available. What this actually means, in practice, is that Microsoft will build a shim layer between EME and the PlayReady DRM parts of Silverlight, and then we’ll be in exactly the situation we are in now: if you have Silverlight now, you’ll be able to use EME then. If you don’t, you won’t. All that’s happened is that DRM plugins have now been blessed as being “part of the web” — PlayReady can now claim to be “HTML5″ rather than a plugin. Hooray. What have we gained?
Well, there are some benefits. Given that DRMed video will be available through HTML’s <video> element (I assume), we’ll be able to, say, put that video on the side of a 3D CSS rotating cube, and other similar effects. Obviously not all video manipulation will be possible; at the moment it’s quite easy to digitally manipulate a <video> through a <canvas>, and that’ll have to be stopped if you’re trying to manipulate a DRMed video. It’s nice that DRMed video will at least partially be part of the HTML world rather than siloed off in a little plugin window.
However, I don’t think that that justifies the work. Adding EME to HTML will mean that everyone who can already watch Harry Potter movies can continue to watch them. It will not extend this any further; it will not widen the viewing audience; it will not decentralise the control; and it will divide the web further into the haves and the have-nots. One of the big reasons that the web is a good idea is that it stops there being any have-nots. EME bringing DRM to <video> will stomp all over that. There is no difference, none, between a a <video> tag which requires a platform-specific plugin to work and an <object> tag which plays a video and requires a platform-specific plugin to work. The argument has been made that if the web doesn’t embrace this stuff, people won’t stop watching videos: they’ll just go somewhere other than the web to get them, and that is a correct argument. But what is the point in bringing people to the web to watch their videos, if in order to do so the web becomes platform-specific and unopen and balkanised? The goal wasn’t “get everyone on the web”, it was “bring knowledge and entertainment and everything to everyone”, and the web was the best way to do that. If getting the “everything” means giving up on the “everyone”, we’re doing it wrong.
- No major changes this week
- “Core” package available as Python library. “programmable” forking interface coming soon
- No easy way to install and use at the moment (no ppa, pip, etc) must branch in to charm
- GUI team using testing plug-in and giving feedback / proposals.
- Harness coming out this week to streamline testing
- Landing Real soon now, UI stuff is done.
- Just relocated into juju core. lp https://launchpad.net/juju-core/docs
- What team should “own” docs?
- docs should follow juju-core milestones
- Still waiting on backports/PPA for 12.04.
- Still stuck on removing drupal6 from the store.
- Jeff and Mims need to start working on node.js.
- Rails, blocking on arosales
- gunicorn - Patrick Hetu has redone the Gunicorn charm as a subordinate. ~charmers overall think this is a great direction to explore, having the app be the primary, and the webserver be the subordinate. Nice job Patrick!
- OSCON! Coming up, come to our charm school
During ELCE in Barcelona I spoke with guys from Qualcomm about their new board, what it is etc. Some time later guys from Intrinsyc (manufacturer of board) contacted me with free coupon for it. I ordered board and received few days later. Played a bit then but my Linaro work occupied me so it went back to the box.
During Linaro Connect in Hong Kong I bought small mini-ITX case to have a way of storing Dragonboard in safe way under desk as I thought that it may be interesting machine for doing some ARM development. There is SATA, Ethernet, USB 2.0 on board so why not…
It came with Android 4.0.4 installed on on-board eMMC. I hope to replace it with Ubuntu or Debian one day. But first have to get kernel newer than 3.0 working on it.
Which may lead into usual problem — there is only vendor kernel for it as mainline lacks support for it. Probably kernel/msm repository from CodeAurora will be fine. Will see.
A bit to big to be useful as FM radio but had to check it ;D