With Software As a Service,
Is Only the Network Luddite Free?

Bradley M. Kuhn

Saturday 10 September 2011

In The Beginning …

Ye Ol’ Four Freedoms

… Then Freedom Eluded Us

Who Invented Licensing?


Some think he did:

As the majority of hobbyists must be aware, most of you steal your software. … [If] software is something to share … You prevent good software from being written.


Who Fixed this Problem?

Who Fixed this Problem?



RMS

MIT AI Lab: The Golden Age

MIT AI Lab

MIT changed.

MIT AI Lab

patents == $$$

MIT AI Lab

spin-offs == $$$

GNU

Internet changes little (to start)

Email: The MTA

Email: The MUA

The Great Fear: SaaS

A New Era of Computing?

Anyone know what this is?

New Era: Cloud Computing?

Cloud Computing: What changed?

Email becomes Gmail

Talk about Obfuscated!

try{function e(b){throw b;}var i=void 0,k=null;
function aa(){return function(b){return b}}
function m(){return function(){}}
function ba(b){return function(a){this[b]=a}}
function o(b){ return function(){return this[b]}}
function p(b){return function(){return b}}var q;
function da(b,a,c){b=b.split(".");c=c||ea;
!(b[0]in c)&&c.execScript&&c.execScript("var "+b[0]);
for(var d;b.length&&(d=b.shift());)
!b.length&&s(a)?c[d]=a:c=c[d]?c[d]:c[d]={}}
function fa(b,a){for(var c=b.split("."),d=a||ea,f;f=c.shift();)
if(t(d[f]))d=d[f];else return k;return d}function u(){}
function ga(b){b.va=function $(){return b.xY||(b.xY=new b)}}
function ia(b){var a=typeof b;if(a=="object")if(b){
if(b instanceof Array)return"array";else if(b instanceof Object)return a;
var c=Object.prototype.toString.call(b);if(c=="[object Window]")
return"object";if(c=="[object Array]"||typeof b.length=="number"&&
typeof b.splice!="undefined"&&typeof b.propertyIsEnumerable!="undefined"
&&!b.propertyIsEnumerable("splice"))return"array";
if(c=="[object Function]"||typeof b.call!="undefined"&&
typeof b.propertyIsEnumerable!="undefined"&&!b.propertyIsEnumerable("call"))
return"function"}else return"null";
else if(a=="function"&&typeof b.call=="undefined")return"object";return a}function s(b){return b!==i}function ja(b){return b===k}function t(b){return b!=k}function ka(b){return ia(b)=="array"}function la(b){var a=ia(b);return a=="array"||a=="object"&&typeof b.length=="number"}function ma(b){return typeof b=="string"}function na(b){return typeof b=="boolean"}function oa(b){return typeof b=="number"}function pa(b){return ia(b)=="function"}

The Javascript Problem


JavaScript is an assembly language. JavaScript + HTML is like a .NET assembly. The browser can execute it, but no human should care what’s there.

— Erik Meijer of Microsoft on 5 July 2011.

Users and “The Cloud”

Users and “The Cloud”

Even Worse Than Proprietary Apps and OS’es

The Bigger Challenge

How Do We Start?

New Code’s Needed, Too

Projects to Look At

License To Look At

Techniques to Look At

“Future” of the Cloud

More Info and This Talk’s License

Presentation & slides: Copyright © 2008—2011 Bradley M. Kuhn. License: Creative Commons Attribution-Share Alike (CC-By-SA) 3.0 United States License.

Some images included herein are ©’ed by others. I believe my use of those images is fair use under USA © law. However, I suggest you remove such images if you redistribute these slides under CC-By-SA.