异常处理已经被讨论十几年了。尽管在怎样处理异常方面有一些普遍共识,但在使用方面还是有一些分歧。不恰当的异常处理很容易被发现,很容易被避免,这是评价代码质量的一个很重要的指标。我知道任何事情都没有绝对一说,但一条普通的规则就是不要使用try/catch。
遗憾的是,在有些框架中他们也加了try/catch,看看下面的这个例子,在微软的基础框架里:
牙膏厂有个难题:由于生产线的设计原因,有时会把空盒子当作装有牙膏的货物而装箱出售。有经验的生产线设计者会告诉你:为了保证每个车间分秒不差地完成生 产,就得让每个工序有条不紊地在规定时间内准确地进行,这个目标很困难。周围环境小的变化所引起的失误在有成本效益的方式下是控制不了的。要避免这种失 误,就必须让质检站巧妙地分布在整个生产线上,使消费者可以一路到超市,毫不犹豫地恰好买下通过质检的商品而非不合格商品。
我在Twitter和Stripe的一部分工作内容是面试前端工程师。其实关于面试你可能很有自己的一套,这里我想跟你们分享一下我常用的方法。
不过我想先给你们一个忠告,招聘是一件非常艰巨的任务,在45分钟内指出一名侯选人是否合适是你需要完成的任务。不过面试的最大问题是每个人都会想着去雇 佣他们自己,任何通过我面试的人想法大都跟我差不多(注:因为你总会问你自己关心和知道的问题),这其实不是一件好事。因此我之前的决定都有很大碰运气的 成分。不过,这也是一个良好的开端。

我使用jQuery已经有相当长的时间了,并且我会常常为它写一些插件(plugin)。我尝试过用不同的方式去写,现在这个模板是我最喜欢的:
Lauren Orsini在主流编程走向上发表了一篇文章“2013年为什么学习计算机科学比以前更容易”。 写代码比以前更容易这倒是真的。因为现在有大量的资源可以用,不过我并不同意,学计算机科学或者变成一名程序员并不是一件简单的事。

注:并不是所有人都喜欢Promise模式,说不定有些人就是喜欢纯天然的事件(event)驱动和回调式写法,也许这就是为什么Isaac不把他加入核心库的原因吧,参见:Node.js 编程的未来
Linux命令行佷有用、很高效,也很有趣,但有时候也很危险,尤其是在你不确定你自己在正在做什么时候。这篇文章并不打算引来你对Linux或linux 命令行的愤怒。我们只是想让你意识到在你运行某些命令时应该三思而后行。(译注:当然,以下命令通常都是在root权限下才能将愚蠢发挥到无可救药;在普通用户身份下,破坏的只是自己的一亩三分地。)
1. rm -rf 命令
3. 命令 > /dev/sda
4. mv 文件夹 /dev/null
本周来自Incapsula一份互联网报告显示,目前有61.5%的互联网流量不是由人类产生的,
如果你读到了这篇文章,你就是那个少数派(人类)。
这些流量是由一些善意和一些恶意的机器流量组成(许多许多的僵尸程序,称之为爬虫)。
爬虫程序是执行自动化任务的应用。它们可以是有价值的善意的,像搜索引擎抓取网站内容用于索引的那些搜索引擎爬虫。
它们也可以是恶意的,像那些被黑客和垃圾邮件发送者使用的爬虫。
