王垠当年提倡「完全用 linux 工作」,然而最近又发文挺 windows 喷 unix,这中间究竟经历了什么?

论坛 期权论坛 study     
匿名的用户   2019-5-26 11:21   49285   5
分享到 :
0 人收藏

5 个回复

倒序浏览
热心的回应  16级独孤 | 2019-5-26 11:21:53 发帖IP地址来自
"当然我不是在这里打击 Linux 和 Mac 而鼓吹 Windows。这些系统的纷争基本上已经不关我什么事。我只是想告诉新人们,去除头脑里的宗教,偏激,仇恨和鄙视。每次仇恨一个东西,你就失去了向它学习的机会。"
这句话才是他想要表达的意思吧?我发现很多人只看标题不仔细看内容就随便下结论……
热心的回应  16级独孤 | 2019-5-26 11:21:54 发帖IP地址来自
我不是他的粉丝,但是作为已经过了愤青年纪的人,想告诉一些网友,想要喷王垠,可不可以把他文章里面所提到的算法,论文,开源工具使用过,再来谈,如果真正做到了,不知道你是否还能不经思考的说出无根据的有关他人人格的评价!

网上近年来有太多类似,linux为什么占有率不如windows,为什么linux在桌面会失败(说实话,这个论点真的是。。。要是遇到以前的喷子,能浩浩荡荡写出个论文)。
linux和windows作为操作系统(operating system),就不得不考虑用户的问题,linux最初并不是为了老人孩子都可以拿它生活娱乐的工具,反观windows的定位呢?

仅仅是了解了ubuntu的使用安装,或者被其他一些发行版的X问题烦恼,没有自己编译配置调教过linux就出来喷linux的网民,拜托静下心来。。。

----------------------------------------------------------------------------------------------------------------



甚至不用细读,就可以大致明白他的“大概中心意思”(或许有很多人看法和他本人想表达的不同)。

2004年的为linux正名的文章,王垠断断续续也改了几次,有人开玩笑说是被人喷的,干脆出来为win歌功颂德。
那么仔细看看这两篇文章,前者,写的时间04年,XP在2001年末出来,而他文章提到的还是win2000。王垠在文章中提到了大量的开源软件工具,lftp,ncftp,GnuPG,Vim,Emacs,ld, Scheme48, j2sdk, Perl, Python, Tcl/Tk,LaTeX, ConTeXt,MetaPost其中涵盖了编辑器,编译器,窗口管理器,播放器,终端模拟器,计算器,绘图工具,程序开发工具。。。

而这些工具在CLI下有太多好处:
举个例子,你要是想要将一张图片转换格式,你在win下如何去做?打开一个图形软件,去菜单里面寻找转换格式?
但是在linux下convert 2.jpg 2.png就可以完成,同时ImageMagick支持的参数可以批量裁剪、淡化、抖动、炭化、加边框、圆角,旋转,描述,水印,毛玻璃,截图。。
如果需要批量操作的话,你在win下怎么去做?手动???????
还有大量的编辑器,power-shell可供你选择,调教。

tab跳转补全,论效率比X下快多了。

扁平化的美化图标

而这些自由,任你配置调教的工具的优秀之处,也是他想表达的,同时,还有一点,就是不教条的遵循别人所称颂的规则,这在《清华梦的粉碎》by王垠_wfirene_新浪博客一文中也有所体现。(说句实话,无论是学术界,还是商界,我对王垠的这种思想的确有些认同)。


再看看他对于unix的骂,我觉得应该看看这个王垠:Unix的缺陷_Linux社区,这篇文章对unix的评论可以说的上有理有据的吧,同样,如果仔细看看这篇文章,你发现了和前者有矛盾的地方吗?
无论任何工具,从一开始的相见恨晚到逐渐的爱之深责之切,其中过程就是你对它了解逐渐加深的过程,而unix作为科技上应用颇多的工具,一旦出现bug或者问题,影响的也许不只是个人。

先谈谈他说的“Unix 命令行用户界面的一系列罪状”

也许这个问题的确有些取巧,(而且手册中也提到了最好不要使用空格或者-符号避免引起问题)但是每一个命令都自己检查通配符,的确增加了出错的概率,ls可能常用些,如果是你没有记住参数的呢?那么文件名作为参数就可能给你带来不可预知的后果,这种细节,有时候在所有人都认为特别稳定的unix中往往最为致命。

类似下面的语句,你会发现有何不妥?
  1. if ((options == (__WCLONE|__WALL)) && (current->uid = 0))    retval = -EINVAL;
复制代码

还有后面所说的文本流的思想,控制数据结构的字符集和表示内容的字符集属于同一字符集。这使得重构数据时不得不面对语法分析问题,同时就添加了编写语法分析器的任务。使程序在编写上增加了难度。
其实王垠很多问题都是在向“完美”冲刺,优化更优化,然而现实的方案却是利益均衡的产物,所以有的人对王垠的有些看法持有不屑态度。

综合两篇文章,可以说,多年以后,王垠的锐气终有收敛,能够以一个相对客观的角度分析问题,04年的文章则显得锋芒毕露,有些激进。

linux和win究竟孰优孰劣,神的编辑器和编辑器之神谁才是王者?诸如此类问题,你还在纠结吗?那么不妨放下你手中的东西,去深入的了解他,你也许就会发现他们都有着怎样的优势和不足,有哪些人性化的设计和反人类的思想,你就会知道哪一个才是适合你的,只有适合你的,才是(你心里)最好的。
原文中的一句话:每次仇恨一个东西,你就失去了向它学习的机会。
热心的回应  16级独孤 | 2019-5-26 11:21:55 发帖IP地址来自
要学unix, 第一本要读的就是. 一定要确定自己是不是需要unix, 是不是适合unix. 不然会很惨.  对菜鸟来说windows给予得太多了,索取的太少了.

M$是非常懂得博采众家之长. 比如VC之于BC, 比如c#之于java和vcl, 比如Word公式编辑器至于latex. 其实很多其他系统好的东东已经被微软悄悄地偷师了.
  • 即使是很多unix的东东也可以在windows上玩, 不信试试SUA, cygwin, mingw.  
  • 即使没有原生的unix 工具(比如gnu screen或者tmux), 难道不能ssh -X 去开一个unix的程序吗? (吐槽一下linux的gui, 如果你试过ssh -X开过一个叫blender的东东)
  • 别说windows没有alfred/spotlight , 试试launchy, everything
  • 别说windows没有手势操作, 是你没有触控板而已
  • 别说windows快捷键不合理, 去试试autohotkey.
windows主要是桌面系统, 所以和unix不冲突, 其真正意义上的对手是Mac OS X. 而且从win8看来, 大微软已经有自己的方向了, 一个把Anders Hejlsberg, Leslie Lamport , David Blythe等牛人招致麾下的公司是值得尊敬的.

windows 8, 仅仅是M$的新起点而已.

作为桌面用户, 其实不用纠结用什么系统, windows下有个叫mobaxterm的免费远程桌面神器. 不知道的可以看下面问题.
热心的回应  16级独孤 | 2019-5-26 11:21:56 发帖IP地址来自
这跟青春叛逆之后趋向成熟一样的。对事物的认识总有个螺旋上升的过程
热心的回应  16级独孤 | 2019-5-26 11:21:57 发帖IP地址来自
我的技术成长历程 ——
  • 微软/盖茨脑残粉:电脑菜鸟、GUI 嗑药者、CLI 恐惧者,装过所有微软官网可免费下载的个人/企业用软件
  • 微软黑/开源传教士:电脑高级用户、维修技术员、系统洁癖/性能强迫症,善于 Windows 系统优化、封装,从 Windows 命令行脚本开始喜爱编程,阅读各种 UNIX/Linux 哲学、技术书籍/博客,折腾各种 Linux 发行版
  • 开源软件爱好者/ Web 开发者:前端工程师、Linux Deepin 桌面用户,在 Linux、Windows 上优先使用开源软件生活、学习、工作,自己写的 Web 基础库全部开源,能正确看待开源/闭源、Linux/Windows 各自的优劣,综合它们的优点,学以致用

  自1998年开始学电脑、上网,DOS、Windows 95/98/2000/XP/7、共创/Fedora/CentOS/Puppy/Ubuntu/LinuxMint/LinuxDeepin/MIUI 等操作系统都用过,微软官方 Office 97/XP/2003、WPS、Open、永中等各种 Office 办公套件也都用过,Netscape 4、IE 4-11、Firefox、Chrome、傲游1-3、360、枫树、搜狗、UC、猎豹 等主流、马甲浏览器基本都用过…… 个人感觉,在面向广大非技术/专业用户的产品这个角度,微软还是一个很努力、很创新的公司的,的确值得大家尊敬~

  比如 Windows + IBM 兼容机 —— 用操作简单的图形界面让个人电脑真正在大众中普及,昂贵、固执的苹果机可不行;
  再比如 M$ Office 2007 开始用的大按钮工具栏 Ribbon 界面就看着舒服、用着科学,Qt 也有个高仿 Ribbon 的库;Win8 开创的 Metro UI 更是富有创造性、艺术性、易用性,大家讨厌它主要是对开始菜单的习惯改变太厉害……

  还有 Windows 注册表,这种集中、统一的配置管理机制也被 GNOME 所借鉴,它的就有一个类似注册表编辑器的 GUI 程序让用户可以统一管理 GNOME 桌面环境的配置~

  而且,IE 最先在浏览器中应用 CSS,也发明了 HTML 标签(HTML 4/5 标准),它的 CSS 滤镜还成为 CSS 3 国际标准重要组成部分的蓝本;
  JScript-WSH 算是 JavaScript 第一种本地程序开发的环境,WSC/HTC 也算是第一种让 JavaScript 可以模块化开发的技术方案吧?
  HTA 算是第一种 JavaScript 本地客户端应用开发的技术,比 GTK+ 的 Glade、Qt 的 QML、Node-Webkit 都早很多年~
  ASP 其实只是个类似浏览器的脚本运行时,有封装了强大功能的服务器对象(类似浏览器的 Window 对象),各种支持 COM 接口标准的脚本语言(VBScript、JScript、Perl、Python 等)都能用它开发网站系统。所以,JavaScript 早就可以做生产环境的服务器端开发了,而 Node.JS 的创新主要在于其创始人这个C语言高手用C写的非阻塞I/O底层~
  上述 WSC、HTC、HTA、ASP 都可以多语言混编,这得益于 COM 组件技术,是很先驱的通用组件技术的商用实践。这些实践经验又传承到了 .Net Frameworks 中。

  .Net 应该是最早实践让多种语言运行在同一个虚拟机上的平台,Java 社区中涌现出的很多基于 Java 语言/虚拟机的新型动态语言(包括 Python、Ruby 等传统动态语言的 Java 重实现)也就是最近几年的事情,而且是很多不同的技术社区各自完成的。而 .Net 上支持的 VC++、VB、C#、JScript、F#、J# 等等都是微软自己做成的,它们都能调用统一的系统对象(.Net 把 Windows 各种庞杂的 API 封装得很简单),被 .Net 的编译器编译成统一的中间字节码,用统一的 CLR 对象的接口来描述、运行、调试,让多语言联合开发、调试变得简单。这也许就是为什么开源界有些人执着于开发 .Net 的开源实现 —— Mono

  而关于 Windows 最为人诟病的安全性,我想早期的确是代码写得烂,千禧年之后则主要是 Windows 软件开发生态很大、不专业而导致的进化慢 ——
  DOS 内核时代的 Windows 没有真正的多用户体系,也就没有真正的权限体系,程序猿的开发完全没为权限而设计过,用户程序和恶意程序都能完全修改系统的任何地方;
  Windows 2000 专业版开始,Windows NT 内核开始全面应用于个人系统,有了真正的多用户权限体系,但为了因为用户习惯控制一切、兼容旧软件,直到现在的 Win7/8,大家还是天天开着计算机管理员级别的账号用电脑,强大的权限体系依然对恶意程序无能为力,还得靠和病毒比谁更能控制系统的杀毒软件来保障系统安全,永远治标不治本……(UAC 也只是一个不用输密码的 sudo 授权补丁罢了,鸡肋……)
(我曾经在封装 Windows XP 时试验过,低权限账户 360、QQ 等很多常用软件都不能正常运行……)
  这其实和 越狱后的 iPhone、Root 后不安装管理软件的 Android 是完全一样的,病毒、木马的天堂~
  而 UNIX/Linux 一开始就是 网络服务器/电脑专家用的操作系统,权限体系与生俱来,开发者都有清晰的权限意识、知识,用户提权运行工具 sudo 也很易用,就给人以天生免疫的错觉。其实国内一些黑客大牛平时只用 Windows (Power) User 级的账户“裸奔”(不装杀毒软件),中毒了病毒也没啥权限搞破坏,只要官方补丁勤打,只需重启后在安全模式中用 Administrator 删掉中毒账户再新建一个同样低权限的继续用就行了~

【注】http://JScript.Net 开发参见 —— 【原创】用 JavaScript 开发 微软 .Net 程序(入门教程)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:32080
帖子:6440
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP