静态web的回归 90年代标准的静态web内容正在以充足的理由回归着。Mashable的服务涵盖每一个静态组件——web站点很想要的,与由HTML5,CSS3,和现代JavaScript构建的绝对客户端进行结合,告别单一、静态的页面。
垃圾摇滚,英式摇滚,最初的JavaScript和第一代静态网页
CoffeeScript的箭头为何重要 有一天在工作时,有人开玩笑说:“CoffeeScript的语法真烂”。我问他们是什么困扰着他们,他们的回答不同寻常:函数的定义。
//JS
var double = function (x) {
return x * 2;
};
//Coffee
double = (x) -> x * 2
语言们都能干什么 一种比较编程语言的优劣的有趣的方式:用解决了何种问题来描述该语言。居然有这么多的优秀的编程语言能被这么描述。
Algol: 汇编形式太底层
JSON为王,为什么XML会慢慢淡出人们的视野 目前全球信息基础设施的特点是,拥有大量的数据交换格式。这一点也不奇怪。互联网几乎已经老了,而“物联网”及“大数据”正从概念走进现实。但我仍然相信,在这一领域还有一股较强的历史趋势,推动JSON数据格式的应用。
我真的需要一门编程语言吗? 我的老板希望我在产品中添加一个季节性回扣的功能。作为一名NB的黑客,我准备用C写需要用到的逻辑:
if (price > 100) {
return 10;
}
else {
return 5;
}
一个人称代词引发的论战:Joyent宣布Ben退出Node.JS开发 作为一个开源项目,Node.js以及相关项目都是由社区和志愿者共同维护的,任何的改动都会引发大家的讨论,尤其是现在Node.js在软件行业 中用的越来越广,但是,5天前的一个Pull Request请求被拒绝引发了轩然大波,整个事件的起因是有人希望在注释中使用“them”替换“him”,减少具有性别歧视的内容。
Rackspace员工Alex首先提交了一个pull request请求,希望把libuv(node.js所依赖的库)注释中的“him”修改为“them”,大家对这样一个看似无关紧要的请求各持不同的意见,最终libuv的主要贡献者之一、StrongLoop联合创始人Ben Noordhuis拒接了Alex的请求。
随后事件开始升级,大家讨论的中心转向了具有性别指向的名词对于女性权利的侵犯,对于请求被拒绝,Alex表示十分困惑:
尽管这是一个微不足道的变化,但我还是很遗憾听到这个消息,我想不明白你为什么没有合并它。花费几秒钟时间按下一个“合并”按钮进而减少敌对的行为难道不是值得吗?
随着Alex支持者越来越多,Joyent员工、Node.js负责人Isaac开启了一个新的Pull Request,确认从现有的代码中替换具有性别指向的人称代词。
随后,Node.JS官网宣布: Ben Noordhuis 决定退出Node.JS核心开发团队,不再为Node.JS贡献代码,node社区损失一员大将。
C语言卓尔不群:我喜欢和讨厌的十件事 最近有个家伙抱怨道“为什么我还要再用C?”-虽然我不同意他的说法,但至少他随口提到如果你“在一台拇指大小的电脑”上编程,或者为一门语言写引导程序,那么可以用C语言。要我说,写设备驱动,或者特定平台的内核,不管怎么说都可以使用C。
几年之前,我用C语言写下了我的第一个网络程序,但我并不推荐这么做。现在,我只用P打头的,尤其是P-y打头的语言写网络程序(译者注:绕什么圈子,不就是Python嘛…)。但在当时,我刚从DOS和TSRs的世界中出来,在那儿用上10KB的RAM我都会觉得大得惊人。
现在我是一名Web开发者,但是仅限于晚上。白天我为嵌入式微处理器编写固件,因此,C依旧是我所选择的语言。我所说的微处理器是那种嵌入烤面包 机,或者其他类似设备中的处理器,只有大概64KB的代码空间以及2KB的RAM。因此,可供选择的语言基本上就只有汇编和C了。(也可以是Forth, 不过那是另外的故事。)
然后,我渐渐发现越是多用C,就越不觉得它讨厌了。因此我就想着要给这个世界最常用的系统级程序语言写一些颂词。
以下分别是关于C语言我喜欢五件事和讨厌的五件事。请随意在底下的评论栏里加上你们自己喜欢或讨厌的事情。
从计算机技术层面来分析美国阿波罗登月造假的可能性
从计算机设备层面来分析:1969年,阿波罗上面用的导航计算机主频2.048MHz,2048字的RAM,36864字的ROM,连我们现在用的计算器都不如。航天飞机上的飞控计算机处理速度只有0.4MIPS,很难相信这样的计算能力能够支承如此复杂的登月工程。并且当时数码相机并没有出来,月面白天可达到121°C,据图片看,相机是露在宇航服外而没有采用保温措施的。胶卷在66°C就会受热卷曲失效,怎么拍得了照片?
够用即可:简单之美(Worse Is Better) 要理解简单之美"Worse Is Better", 恐怕要比较长时间的积累与经验,这是Richard P. Gabriel 先生根据自己的亲身经历得出的著名论断。Gabiel在Lisp编程语言特别是Common Lisp上的著名专家。在1989年的一次Lucid走廊会谈中,他被一些Hackers问及为什么的时候,他开玩笑地说:“因为,嗯,更坏的就是更好的。” 在接下来的几年里,他发表了另外几篇文章,并阅读了很多书籍来验证自己的观点,这样"Worse Is Better"的设计理念逐渐成形。
坏点的更好,强调简单压倒一切,为了简单性,其他方便都可以做出牺牲,包含以下几点:
简单性:设计必须简单,这既是对实现的要求,也是对接口的要求。实现的简单要比接口的简单更加重要。简单是设计中需要第一重视的因素。
正确性:设计在任何值得注意的方面都要求正确。为了简单性,正确性可以做轻微的让步。