如果你不知道王垠(垠神)是谁,可以先搜一下。

《给Java说句公道话》

很多JavaScript程序员也盲目地鄙视Java,而其实JavaScript比Python和Ruby还要差。不但具有它们的几乎所有缺点,而且缺乏一些必要的设施。JavaScript的各种“WEB框架”,层出不穷,似乎一直在推陈出新,而其实呢,全都是在黑暗里瞎蒙乱撞。JavaScript的社区以幼稚和愚昧著称。你经常发现一些非常基本的常识,被JavaScript“专家”们当成了不起的发现似的,在大会上宣讲。我看不出来JavaScript社区开那些会议,到底有什么意义,仿佛只是为了拉关系找工作。
Python凑合可以用在不重要的地方,Ruby是垃圾,JavaScript是垃圾中的垃圾。原因很简单,因为Ruby和JavaScript的设计者,其实都是一知半解的民科。然而世界就是这么奇怪,一个彻底的垃圾语言,仍然可以宣称是“程序员最好的朋友”,从而得到某些人的爱戴……

《编程的宗派》

面向对象语言不仅有自身的根本性错误,而且由于面向对象语言的设计者们常常是半路出家,没有受到过严格的语言理论和设计训练却又自命不凡,所以经常搞出另外一些奇葩的东西。比如在JavaScript里面,每个函数同时又可以作为构造函数(constructor),所以每个函数里面都隐含了一个this变量,你嵌套多层对象和函数的时候就发现没法访问外层的this,非得bind一下。 Python的变量定义和赋值不分,所以你需要访问全局变量的时候得用global关键字,后来又发现如果要访问“中间层”的变量,没有办法了,所以又加了个nonlocal关键字。Ruby先后出现过四种类似lambda的东西,每个都有自己的怪癖…… 有些人问我为什么有些语言设计成那个样子,我只能说,很多语言设计者其实根本不知道自己在干什么!

《谈语法》

在 C 这样的语言里,由于结构上有很多限制,所以才觉得那样的语法还可以。可是一旦加入 Lisp 的那些表达能力强的结构,就发现越来越难看。JavaScript(node.js)就是对此最好的一个证据。

《论对东西的崇拜》

如果你了解一点历史就会发现,今天非常流行的 JavaScript,其实不过是一个“没能正确实现的 Scheme”。

《如何掌握所有的程序语言》

合理的入门语言
所以初学者要想事半功倍,就应该从一种“合理”的,没有明显严重问题的语言出发,掌握最关键的语言特性,然后由此把这些概念应用到其它语言。哪些是合理的入门语言呢?我个人觉得这些语言都可以用来入门:Scheme、C、Java、Python、JavaScript
那么相比之下,我不推荐用哪些语言入门呢?Shell、PowerShell、AWK、Perl、PHP、Basic、Go、Rust

《我的第一次和最后一次 Hackathon 经历》

一进门就感觉这跟一般的 meetup 气氛很不一样。这大周末晚上的,清一色的爷们,没有一个女人,也没有笑声。而且里面的人说话都很奇怪,不正眼看人,有些好像怒目相向的样子,说出话来就像在查你户口。有几次有人问我是干什么的,我刚一开口,他们一句话不回,扭头就跟其他人说话去了。只有一个头发花白的大叔工程师对我挺友好的,于是我们就聊起来。旁边有个华人工程师盯着一个15寸的 Macbook,后来也聊起来,开门见山就问我用什么语言。我也忘了我说什么了,只记得他很自豪的说自己用 JavaScript,而且那是最高配置的 Macbook,是 Retina 显示器的

《程序语言的常见设计错误(2) - 试图容纳世界》

今天我来谈一下另外一种错误的倾向,这种倾向也导致了很多错误,并且继续在导致错误的产生。
今天我要说的错误倾向叫做“试图容纳世界”。这个错误导致了 Python,Ruby 和 JavaScript 等“动态语言”里面的一系列问题。

《怎样尊重一个程序员》

认识和承认计算机系统里的历史遗留糟粕 很多不尊重人现象的起源,都是因为某些人偏执的相信某种技术就是世界上最好的,每个人都必须知道,否则他就不是一个合格的程序员。这种现象在Unix(Linux)的世界尤为普遍。Unix系统的鼓吹者们(我曾经是其中之一)喜欢到处布道,告诉你其它系统的设计有多蠢,你应该遵从Unix的“哲学”。他们仿佛认为Unix就是世界终极的操作系统,然而事实却是,Unix是一个设计非常糟糕的系统。它似乎故意被设计为难学难用,容易犯错,却美其名曰“强大”,“灵活”。眼界开阔一点的程序员都知道,Unix的设计者其实基本不懂设计,他们并不是世界上最好的程序员,却有一点做得很成功,那就是他们很会制造宗教,煽动人们的盲从心理。Unix设计者把自己的设计失误推在用户身上,让用户觉得学不会或者搞错了都是自己的错。

如果你对计算机科学理解到一定程度,就会发现我们其实仍然生活在计算机的石器时代。特别是软件系统,建立在一堆历史遗留的糟糕设计之上。各种蹩脚脑残的操作系统(比如Unix,Linux),程序语言(比如C++,JavaScript,PHP,Go) ,数据库,编辑器,版本控制工具,…… 时常困扰着我们,这就是为什么你需要那么多的所谓“经验”和“知识”。然而,很多IT公司不喜欢承认这一点,他们一向以来的作风是“一切都是程序员的错!”,“作为程序员,你应该知道这些!” 这就造成了一种“皇帝的新装现象”——大家都不喜欢用一些设计恶劣的工具,却都怕别人嘲笑或者怀疑自己的能力,所以总是喜欢显示自己“会用”,“能学”,而没有人敢说它难用,敢指出设计者的失误。

我看完之后的感觉:

  1. 说得真TM对,吐槽都吐到点子上了。
  2. JS 这么垃圾,为什么垠神还推荐入门用 JS 呢。可能有些语言比 JS 还垃圾吧,哈哈。
  3. 虽然观点上有矛盾,但是牛逼的人的大脑都是能容忍矛盾的,问题不大。

为什么我要发这篇文章:

如果你不能接受 JS 的缺点,说明你不爱 JS。

我觉得王垠的文章对于开阔视野挺好的,已付费。

完。

王垠对 JS 的评价相关推荐

  1. 传言阿里P10赵海平被P11多隆判定3.25离职,如何评价阿里 P10 赵海平对王垠的面试?...

    大家好,我是老表 阅读文本大概需要 10 分钟 来源:知乎 地址:https://www.zhihu.com/question/360622233 阿里P10也被325辞退? 最近几天的阿里圈也真的是 ...

  2. 王垠:我和权威的故事

    转自王垠博客,我是垠粉. 每个人小时候心里都是没有权威的,就像每个人小时候也都不相信广告一样.可是权威就像广告,它埋伏在你的潜意识里.听一遍不信,听两遍不信,--,直到一千遍的时候,它忽然开始起作用了 ...

  3. 我和权威的故事zz (王垠)

    转自: http://www.yinwang.org/blog-cn/2014/01/04/authority/ //***************************************** ...

  4. 清华天才王垠受邀面试阿里P9,被阿里P10赵海平面跪,整个事件回顾...

    点击上方"视学算法",选择"星标" 来源 :开发者技术前线 知乎上有一个话题:如何评价阿里 P10 赵海平对王垠的面试?最近成了热帖,这下赵海平跟王垠这次是真的 ...

  5. 清华梦的粉碎——转自王垠

    小时候,妈妈给我一个梦.她指着一个大哥哥的照片对我说,这是爸爸的学生,他考上了清华大学,他是我们中学的骄傲.长大后,你也要进入清华大学读书,为我们家争光.我不知道清华是什么样子,但是我知道爱迪生和牛顿 ...

  6. 王垠受邀面试阿里 P9,被 P10 面跪后网上怒发文,惨打 325 的 P10 赵海平回应了!...

    公众号关注 "GitHubDaily" 设为 "星标",带你了解圈内新鲜事! 整理自综合自知乎社区回答 & 互联网互联网坊间八卦 观点不代表本号立场 转 ...

  7. 清华梦的粉碎——写给清华大学的退学申请by王垠

    清华梦的诞生 小时候,妈妈给我一个梦.她指着一个大哥哥的照片对我说,这是爸爸的学生,他考上了清华大学,他是我们中学的骄傲.长大后,你也要进入清华大学读书,为我们家争光.我不知道清华是什么样子,但是我知 ...

  8. 王垠 --清华梦的粉粹

    清华梦的诞生小时候,妈妈给我一个梦.她指着一个大哥哥的照片对我说,这是爸爸的学生,他考上了清华大学,他是我们中学的骄傲.长大后,你也要进入清华大学读书,为我们家争光.我不知道清华是什么样子,但是我知道 ...

  9. 完全用Linux工作,抛弃window/王垠

    完全用Linux工作,抛弃windows 我已经半年没有使用 Windows 的方式工作了.Linux 高效的完成了我所有的工作. GNU/Linux 不是每个人都想用的.如果你只需要处理一般的事务, ...

最新文章

  1. DvaJS 入门, 快速上手Dva
  2. 正经聊一聊脑机接口的发展现状|脑科学开放日
  3. pytorch方法测试——卷积(二维)
  4. VS2019如何导出exe文件_Win10+VS2019源码编译HDF5(1.10.6)
  5. centos7 安装、使用git
  6. scala集合fold实例:将两个Map合并
  7. c语言 数组指针,C语言数组名及指向数组指针的小结
  8. 在Linux中head命令,Linux 中 head 命令实例
  9. PDFMiner:python 读取 pdf 内容
  10. PHP学习笔记 - 在Eclipse中使用XDebug调试代码 | Using XDebug debug code in eclipse
  11. Twips 缇的含义[来自网络]
  12. python : 使用 __future__ 的作用
  13. html网页制作代码大全:庆余年——电影网站7页,不包含js 有登陆注册,表格 table布局 ,有的登录注册页面,内嵌 css
  14. python接口测试第二期_上海悠悠python接口自动化测试第二期视频教程价值1600
  15. Socket编程项目VS开发环境配置
  16. java代码实现注册发送邮件激活账户
  17. Oracle Analyze
  18. Claus Hansen加入Entrust Datacard,担任亚太地区和日本销售副总裁
  19. 大吉大利-今晚吃鸡-枪械
  20. 2019年研究生入学考试北京理工大学计算机专业基础813真题回忆

热门文章

  1. 基于模拟退火(SA)的车辆路径问题(VRP)(Matlab代码实现)
  2. 三七互娱2019秋招Java后端开发工程师
  3. 第11章 AOP应用案例
  4. 1:基本初等函数的性质
  5. 408计算机学科专业基础综合——操作系统
  6. 【开源电机驱动】锁定反相驱动
  7. 注意力机制——Self-Attention Networks(SANet)
  8. python的iloc与loc函数
  9. CynosDB for PostgreSQL 一主多读架构设计及优化[内附独家PPT]
  10. 北京公共计算机考试准考证打印