程序员的呐喊

程序员的呐喊

亚马逊的伟大元老们只用两种语言: C 和 Lisp。显然,他们都是 Emacs 的拥趸。全世界伟大的工程师都用 Emacs,我说的是改变世界的那种工程师。真正的工程师只用 Emacs。Emacs 是不朽的编辑器。

名词在 Java 国拥有举足轻重的地位,是王国里的一等公民。Java 国王授予了架构尊崇的地位,因为架构完全是由名词组成的。类是 Java 里唯一的建模工具。

软件工程有自己的政治轴心,一端是保守派,另一端是自由派

本质上,保守主义就是风险管理,保守派 VS 自由派:

  • 软件在发布之前应该尽量修复所有 bug VS 不管多努力,bug 总是无法避免的,而生活还是会继续下去
  • 程序员应该尽量回避错误
  • 程序员学不会新语法
  • 产品代码必须通过编译器的安全检查 VS 简练就是力量
  • 数据必须遵循事先定义好的格式 VS 严格的数据定义只会妨碍灵活性,延缓开发进程
  • 公共接口必须严格建模
  • 生产系统决不允许存在危险或者有风险的后门
  • 假如一个组件的安全性存在任何疑虑,那它就不能发布上线
  • 快比慢好

经常有人问我怎么有时间去学习新东西。我在这里统一回答一下:时间是挤出来的。这个答案没人会喜欢,但你我都知道这是真理。

一个人的时间怎么分配是由自己决定的

编程最大的问题

希望你没忘记,冯诺依曼曾经是个经济学家。他的身份很多,其中一项就是经济学家,他在设计第一台电脑的时候肯定会受到影响。

不同的计算机有自己擅长的计算类型。另外有些比较好建造,有些速度比较快,有些天生比较健壮,有些则是为并行而生。

你知道自己的电脑其实就是这样一台机器,对吧?就目前而言,它在模式匹配方面比任何电脑都要快 10 万倍,这是因为冯诺依曼是顺序执行的,而你的每个神经元都可以独立工作。

为顺序型电脑而优化的语言在某些性能指标上的表现完全就是垃圾,这样的指标可不止一个。

冯诺依曼在生命的最后 10 年单枪匹马建立起一套基于细胞自动机的计算理论。你现在用来读我博客的计算机只不过是他该死的原型机!他原本是打算抛弃它去造一个更好的!可是后来他死于癌症,就像千千万万原本可以活得更久,做出更多贡献的人一样。我们在攻克癌症上也没什么进展,因为我们的电脑和编程语言都是可悲的垃圾。

软件需要哲学家

要是把矛头指向 Python 会怎样?这时 Java 程序员会给我发邮件: “我一直都很讨厌 Python,你把我的心里话都说出来了。谢谢!” 而这时 Python 程序员会怒从中起,恨不得在键盘上按一个键就能 “干掉那个混蛋”。

要是没有建设性的观点,最好还是闭上嘴。

推荐文章