私有云对开源运动意味着什么?

来源:互联网 发布:cms视频监控客户端手机 编辑:程序博客网 时间:2024/04/28 08:32


Sandstorm使运行个人web应用从根本上变得简单。它允许用户有自己的服务器,通过一个类似app store的界面,用户可以安装自己的应用,就像在你的手机上安装应用一样。在Sandstorm,我们经常谈论隐私,安全,控制。告诉你一个秘密:所谓的隐私和安全其实不是Sandstorm存在的原因,而只是副产品。

作为我们的私有云平台(现在已被funding on Indiegogo接受),创建Sandstorm的真正动力在于帮助开源组织和独立开发者打造自己的web应用。

在今天流行的软件即服务模型中,独立开发者不可能取得成功。尽管这些百折不挠的人们还是在继续开发,但是存在一个问题,他们开发出来的软件根本不可能到达广大用户的手中。为了使低预算的软件能够成功,也为了推进开源运动的发展,用户需要在不依赖开发者的前提下运行软件,这在桌面端和智能手机上很容易实现。但是对服务端的应用来说,这很难实现,因为不是所有人都有自己的服务器。

在今天,只有那些有时间、金钱和相关技术的人才能拥有自己的个人主机。甚至许多技术人员都没有,因为从创建到管理主机是一件痛苦的事。 

Sandstorm的出现正是为了解决这个问题——人人都能轻松拥有自己的个人主机。

“唯一的解决之道在于人人都能拥有自己的服务器,在服务器上可以安装任何自己喜欢的应用。”


开源软件在桌面端和智能手机端

我使用Debian Linux,它由几千个包组成。系统有浏览器,文本编辑器,各种IDE,聊天客户端,office套件,开发工具,图片编辑器,多媒体播放器等软件。神奇的是,所有的软件都是开源的。更为神奇的是。我甚至记不起上一次我使用非开源的桌面应用是在什么时候了。

我不是狂热分子。更不会强行让自己使用开源软件,当然也不会强迫别人使用。当专有软件能够完成工作的时候,我也使用专有软件,过去我也使用过很长一段时间的Windows和Mac,但是使用Linux的时候是我最快乐的时候。这只是我的偏好,并不人人适用。想想十五年前的样子,再想想现在,我已经可以轻松使用一个全开源的桌面,这是一件多么振奋人心的事。

现在,甚至许多Windows和Mac用户也会使用开源软件。VLC,BitTorrent等独立开源软件甚至在非技术人员中都有广泛使用。在智能手机平台,使用开源软件和低预算独立应用的人更多,因为不同app stores的存在使用户更容易接触到开源软件。

但是,如今的web领域几乎没有什么开源软件存在。每天我都使用的应用,像Gmail, Facebook, Twitter, Feedly等,没有一个是开源的。尽管这些应用授权运行在开源架构之上,但这毕竟不是开源。大部分的专有桌面应用使用开源组件和工具。但是web应用,当用户看见它们的时候,几乎无一例外都是专有应用。

为什么所有的web应用都是专有的?

开源web应用的确存在,比如说webmail应用SquirrelMail和RoundCube。如果你足够仔细,或许还能找到开源的在线文档编辑器,RSS阅读器,甚至开源的社交网络应用。但是,即使是科技人员,也没有几个人使用这些产品,出现这种局面很有可能是因为这些应用需要用户有自己的服务器,显然只有极少的人有时间、耐心和技术去搞定这个问题。

还是有几个成功的例子。比如说WordPress,这是一个广泛使用的开源博客。但WordPress似乎是一个例外而不是普遍规律。并且WordPress的用户并不能真正修改它的代码,因为他们自己并没有主机,他们使用的其实是别人主机上面提供的WordPress服务,别人的主机提供哪个版本的WordPress,用户就只能使用这个版本。所以,实际上这并不是开源,而是可见源——你可以看见源代码,也可以提出建议,但是你自己不能按照建议去修改源代码,只有你的建议被官方接受之后,建议才可能成为现实。

为什么没人使用独立web应用?

即使是在Windows平台,人们也会经常安装一些小的开源应用。需要标记一些mp3音乐吗?需要使用一个客户端连接多个聊天网络吗?需要解压一个奇怪的压缩文件吗?当你有这些需求的时候,你可能会想到开源应用。有时候,围绕一个小众需求去创建一个商业软件是很不明智的,但是开发者们在他们空闲时间编写的小应用十分丰富,说不定这些小应用就能满足你的需求。但是在web端,事情不是这样。任何有意义的服务,只要是它需要服务器,因为资金的限制,这项服务必定只能由公司提供。

下面我们来描述一个案例:我认识一个多产的程序员,他叫Brad_Fitzpatrick。他是LiveJournal,Camlistore,memcached,OpenID等作品的作者,这些软件你或许早已知道。但是下面我说的这个项目你极有可能听都没听过。

scanningcabinet是一个帮你管理paper mail的小应用。你把你的paper mail放到扫描仪下,scanningcabinet扫描邮件内容并把内容存储到云端,然后你就可以标记、访问或者查找邮件。几年前的一个周末,Brad完成了这个项目并托管到GitHub。

可以说,每个人都需要用到这个产品。不幸的是,没有人能真正使用它。为了安装这个应用,你需要配置服务器(在这里就是App Engine),然后将代码部署到服务器上。即使是知道怎么配置、怎么部署的我,还是不想去做这件事,毕竟太麻烦。

在如今流行的软件即服务的模型之下,如果Brad想让广大群众都能使用这个应用,他需要把它作为一项服务运行。需要建立多用户支持,保证安全性,部署,还要监视它是不是在正常运行。更糟糕的是,他还要为此付出金钱的代价,这意味着他必须要向用户收费,而收费又意味着投放广告,或者是设立账单。Brad显然不想这么做。

再退一步说,即使他这样做了,谁会用呢?你想把自己的paper mail上传到互联网上某个不知名的小子建立的服务器吗?反正我是不会,如果信息泄露了怎么办。

问题在于主机

说到这里问题就很明确了:开源web软件要想崛起,用户必须要有自己的服务器。把软件即服务和开源放在一起没有任何意义。如果不能修改代码,那就不是真正的开源,web应用的高壁垒阻碍了兴趣项目和任何不想获利的项目进入这个领域。

唯一的解决办法就是保证每个人都能有一个自己的服务器,可以在服务其上安装任何喜欢的软件。用户不需要自己管理服务器,服务器可以由朋友或者是其他组织管理,但是用户一定要能随意安装自己喜欢的软件。还有软件必须在沙盒中运行以保证安全,即使是安装了有bug的软件或者恶意软件,也不会影响到服务器的其他部分。

现在,这还仅仅只是一种设想。建立服务器需要时间和技术,而一站式托管服务又只允许运行固定数量的软件。

现在开源web应用还没有一个立足之地。

我们的解决方案——分布式托管

Sandstorm是一个web应用托管平台,它允许非技术人员安装、运行任意的软件。应用可能是从app store下载,然后一键安装到Sandstorm,就像在你的手机上安装应用一样。每个应用服务器运行在一个安全沙盒之内,其他的应用在没有获得授权的前提下不可能影响到它。

我们谈论了许多关于隐私、安全、控制方面的问题,但是对我来说,这些都是Sandstorm模型的副产品。开始这个项目的初衷一直是促进开源软件,兴趣项目,小众应用,独立应用的发展。尽管单个应用和Gmail,Facebook比起来微不足道,但是所有的这些应用加在一起的价值却是不可小觑的。大公司不感兴趣的小众领域需要开源软件来填补。我们需要不经允许就能修改的软件,以此为基础尝试新鲜事物。现如今我们还没有这样的软件,这让我觉得很荒唐。

帮助我们

我们已经走过很长一段路。现在已经有一个demo,这个demo能够满足上面我说到的大部分需求。但是现在我们遇到了资金上的困难。我们能够使Sandstorm成为一个产品,但是我们需要你的帮助。

更多信息,请点击campaign on Indiegogo,望奔走相告。
0 0
原创粉丝点击