热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

[观点]为什么要挤兑Ubuntu?

这是一篇声援Ubuntu的文章。我不是一个桌面系统软件开发者,仅有的桌面编程知识就是大学时期用Qt写了一个XMPP客户端。所以,我对桌面底层技术不熟悉,不知道Xwindow烂在哪里,也不知道Wayland先进在哪里。日常使用的系统是Kubuntu,一个Ubuntu+KDE桌面的发行版。看好Unity桌面的前景,但认为目前做得还不够好,作为工作和生活的环境比

这是一篇声援 Ubuntu 的文章。

我不是一个桌面系统软件开发者,仅有的桌面编程知识就是大学时期用 Qt 写了一个 XMPP 客户端。所以,我对桌面底层技术不熟悉,不知道 X window 烂在哪里,也不知道 Wayland 先进在哪里。日常使用的系统是 Kubuntu,一个 Ubuntu + KDE 桌面的发行版。看好 Unity 桌面的前景,但认为目前做得还不够好,作为工作和生活的环境比不上 KDE。

总的来说,我很喜欢 Ubuntu,喜欢它的生态环境,它对 Linux 安装简化做的贡献,促进了 Linux 桌面的发展。Canonical 是 Linux 领域少数一直把可用性作为文化并且实际做到的公司。

Linux 用户群是个追求个性化的群体,所以有人对 Ubuntu 提出各种批评,这很正常,也是 Ubuntu 向前发展的动力。如果没有争议,人们根本不在乎,那这个系统就完蛋了。不过偶尔看到一类人,只要是是 Ubuntu 相关的内容就挤兑,认为 Ubuntu 商业是“原罪”,认为 Ubuntu 对开源没有贡献,认为 Unity 是垃圾,认为 Ubuntu……奥,反正就是烂。

我希望 Linux 用户可以公正的看待 Ubuntu 这个发行版,即使它有诸多不完美,但它确实是现在最好的桌面发行版。



Ubuntu 有良好的商业模式和社区氛围

Canonical 使用免费 + 服务支持的商业模式,这个模式已经被证明为开源软件有效的商业模式,比如 RedHat、Novell,MySQL。免费 + 服务支持能够确保提供给用户真正免费且自由的产品。免费且自由意味着更换自己的设备的时候,可以购买最适合自己的硬件,不用考虑自己的系统授权能不能转移,能支持多少部设备。

Ubuntu 在服务器市场获得了很高占有率,没有哪家 VPS 是不提供 Ubuntu Server 的,帮助文档也经常用 Ubuntu 做例。在桌面领域,Canonical 与商业公司的合作,带来了 Spotify,Steam 等软件。而 Ubuntu App Store 也有望成为开发者和最终用户之间的桥梁,促进桌面应用的发展。

OMG! Ubuntu! 是我见过最好的 Linux 资讯站。围绕 Ubuntu,用户发展出了更多平民化的社区,而不再单单是只有资深用户会用的邮件列表、IRC、Wiki。

商业不是原罪,自由软件从来没有拒绝商业。“Free”意味着自由演讲而不是免费啤酒,Canonical 很好地维护着这种自由。如果想要,用户总有许多渠道知道 Ubuntu 里面运行着什么,Canonical 有着什么样的打算,未来会怎么发展。如果不再喜欢 Ubuntu 了,迁移别的发行版没有任何阻碍,用户拥有这个系统。

如果没有商业,谁来支付最一流的设计师和程序员的工资,谁来为企业的系统运转提供支持?也许,一直以来非商业开源社区在某些方面做得很好,但是没有商业,最好的那些人就是凑不到一块!

开源不是众人拾柴火焰高

Ubuntu 有一些做法,在开源世界显得“格格不入”。在已经有很多桌面环境的情况下,自己开发 Unity;有了 Meego 的情况下,自己开发 Ubuntu touch;有了 Wayland 的情况下,自己开发 Mir。于是有人指责,Ubuntu 什么都要自己来,Ubuntu 不合群不遵守规矩。

但是开源不是众人拾柴火焰高,看见别人烧火就应该搅和进去。Ubuntu 自己开发关键组件的目的,就是为了做出更好的操作系统。

优秀的开源软件都有主心骨,至今不知道有哪个项目是没有主要负责人就能做出来的。要先做出优秀的软件,然后吸引别人来一起开发,而不是一群人先幻想一轮美好前景,然后各行各路。现有的组件是谁负责的呢?Radhat 还是 Novell?反正从结果上来看,现有的开源桌面进展缓慢,没有竞争力。

有人担心分裂带来的兼容性问题会把 Ubuntu 引向衰退,不过要知道,最吸引开发者和硬件商的不是哪个平台根正苗红,而是这个平台有多少用户。不知道有多少理想主义的开发者因为失去趣味而离开,在这个平台上既没有钱又没有用户。而 Ubuntu 这两方面持续发力,效果不错,有望搭建最好的 Linux 桌面生态环境。



为了更好的用户体验,必须做自己的桌面环境

恩,你是做操作系统的?你的竞争力是什么呢?桌面环境是 G 社区拿的,窗口管理是 C 社区拿的,显示服务是30年历史的 X。为什么这个功能这么别扭,哦,那是这个组件原来就有的,我已经把 Patch 提交给上游了,但是看来他们不太愿意接受。我想提出一个新的桌面菜单和应用的通讯协议,但是看来还要用2年时间去讨论,并且有些开发者根本不理解这样做有什么意义,他们认为现在就很好了。

那么哪部分是原创的?Logo。

做过网站的会知道,如果你真的有一个独一无二的创意,最好的做法不是把现成网站拿来改,而是自己从零开始,哪怕一开始缺少部分功能,但是可以从最关键的部分做起,一步步完善。最后会发现,缺少的那部分其实也不是那么重要,有时去掉就去掉了。

没错,Unity 不成熟,是个半成品,有些设计很反人类(举个例子,Unity 的拖动条我根本点不着)。但是这都是可以改进的地方,没有什么软件是一蹴而就的。Unity 也有优秀的设计,比如左侧的面板,Unity 之前我就看到很多人用不同方法把常用软件放到左栏,Unity 抓住了需求。

现在 Ubuntu 有可能率先成为跨越桌面、平板、手机的系统,如果一味地等待社区,解决所有沟通问题,是不会有这种速度的。

我是 Linux 桌面用户

我用了 5 年 Linux 作为主要桌面,偶尔会切换到 Windows 7 玩游戏。

从 Windows 转向 Linux 之初,靠的是一些固执。当时 Linux 桌面软件做得并不好,拼凑感很强。现在基本工具不缺,而且大部分事情在浏览器里面完成,桌面只是作为一个支撑,所以我已经完全适应 Linux 环境。在做开发时,Linux 的包管理器帮了很大忙,加上是开发 web 程序,服务器端就是 Linux ,所以 Linux 桌面上安装服务依赖遇到的问题也很少。

由于一切用得很好,也没有改变的打算,目前最想尝试的系统是 ChromeOS。

但是 Linux 桌面环境满足现状是不行的,随着 Apple 的强大,已经有很多 Linux 用户转移了平台。当一部 Mac 的价格相当于几个月生活费时,很多人会止步;但是当自己一个月收入就可以轻松买下 Mac 时,价格就不再是问题了,这需要可用性上的正面竞争。Linux 正在失去越来越多的桌面用户,是时候做出改变,具体来说,需要一个最好的桌面发行版,才能跟另外两个加起来已经占据 99% 市场的系统竞争。

Ubuntu 现在还有很多问题,很多人也不认为它是最好的,但是在它身上看到了希望,所以我看好 Ubuntu。

更多Ubuntu相关信息见Ubuntu 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=2


推荐阅读
  • svnWebUI:一款现代化的svn服务端管理软件
    svnWebUI是一款图形化管理服务端Subversion的配置工具,适用于非程序员使用。它解决了svn用户和权限配置繁琐且不便的问题,提供了现代化的web界面,让svn服务端管理变得轻松。演示地址:http://svn.nginxwebui.cn:6060。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • Ubuntu 9.04中安装谷歌Chromium浏览器及使用体验[图文]
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 本文介绍了Windows操作系统的版本及其特点,包括Windows 7系统的6个版本:Starter、Home Basic、Home Premium、Professional、Enterprise、Ultimate。Windows操作系统是微软公司研发的一套操作系统,具有人机操作性优异、支持的应用软件较多、对硬件支持良好等优点。Windows 7 Starter是功能最少的版本,缺乏Aero特效功能,没有64位支持,最初设计不能同时运行三个以上应用程序。 ... [详细]
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Python瓦片图下载、合并、绘图、标记的代码示例
    本文提供了Python瓦片图下载、合并、绘图、标记的代码示例,包括下载代码、多线程下载、图像处理等功能。通过参考geoserver,使用PIL、cv2、numpy、gdal、osr等库实现了瓦片图的下载、合并、绘图和标记功能。代码示例详细介绍了各个功能的实现方法,供读者参考使用。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • 本文讨论了在Linux系统中,使用chown命令将django项目目录下的static目录的拥有者从root改为eureka的问题。作者尝试了多种命令,包括chown和sudo chown等,但都没有成功修改拥有者。文章提供了相关目录的权限信息,并补充了项目所在磁盘和操作系统的信息。 ... [详细]
  • 分享css中提升优先级属性!important的用法总结
    web前端|css教程css!importantweb前端-css教程本文分享css中提升优先级属性!important的用法总结微信门店展示源码,vscode如何管理站点,ubu ... [详细]
author-avatar
咖啡色的午后_905
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有