TDD怎么啦?为什么这么多人不喜欢TDD?

TDD怎么啦?为什么这么多人不喜欢TDD?

最近又有一个同事和我讨论TDD并质疑TDD是否真的有用,已经记不清是第几次类似的讨论了,前段时间王垠的一篇关于 AI 的文章中也顺带黑了一把 scrum 和 tdd,作为一个坚持实践 tdd 的tdd粉,我觉得应该深入讨论下这个问题,有时候听一听不同的意见,反而能让我们看的更加清楚。

资深程序员:给Python软件开发测试的25个忠告!

资深程序员:给Python软件开发测试的25个忠告!

更小,更严格的单位测试在失败时提供更有价值的信息。通常,运行超过0.1秒的测试不是单元测试。单元测试可以提供更具体的错误信息,关于单元测试实践一本不错的书是Gary Bernhardt的Fast Test, Slow Test。

[外文翻译]我们的程序代码被偷了!

[外文翻译]我们的程序代码被偷了!

不久之后,我们收到了一封邮件,是攻击者发来的,邮件里附带了一些我们的源代码,他们要求我们支付巨额的比特币作为“封口费”,这笔封口费的数额达到足以让我们的公司破产。如果不支付封口费,他们就会公布我们的源代码。

JavaScript 中的 10 个机器学习示例

JavaScript 中的 10 个机器学习示例

最近一段时间,Web 生态系统发展迅速,虽然 JavaScript 和 Node.js 在性能上仍然不及 Python 和 Java,但它们也已经强大到足以处理许多机器学习的问题。Web 开发语言非常易用,它们在这一点上受益匪浅——你只需要在 Web 浏览器运行一个 JavaScript ML 项目即可。

量产型炮灰程序员

量产型炮灰程序员

当然也不少人质疑说,光骂培训班,那受过高等教育毕业的学生技术就一定好了吗?当然也不是这样的,事实上我国大多数高等学府的计算机教育也是无用的,甚至是有害的。中国大学在多次扩招后,除了少数几个学校,专业教育的大部分也不靠谱。许多学校安排了四年的课程,确实涉及了不少基础知识,但结果却本末倒置,觉得学生听不懂课上得简单,学生也没有好好学好。

这不是笑话:Stack Overflow 教会了一百万开发者如何退出Vim

这不是笑话:Stack Overflow 教会了一百万开发者如何退出Vim

今天早上,Stack Overflow上的一个提问迎来了里程碑:被浏览次数超过了100万次。这个问题就是“如何退出Vim编辑器”。五年来,这个问题已经被超过100万的开发者问过,他们都卡在了Vim里,在没有人帮助的情况下不知道如何退出。退出Vim编辑器甚至成为了开发者之间的一个笑话。

Linux kernel 的设计是否已经过时?

Linux kernel 的设计是否已经过时?

Linux 多年来取得的成绩毋庸多言。但最近,redditor 上有人发起了一个话题,想知道 Linux 的内核设计是否已经过时,并得到了一些有趣的答案。

[外文翻译]为什么你不用更好的编程语言重写它

[外文翻译]为什么你不用更好的编程语言重写它

有一些工具可以自动从一种语言转换为另一种语言。 他们可以帮助解决一些问题,但只能停留在第一步。 第二步和第三步的问题仍然存在,并且可能需要比手动转换代码带来更多的工作,因为通常手动转换会写出更多的人性化的代码。 令人遗憾的是图灵完备向我们揭示了不能有十全十美的事情。

为什么我反对追求测试覆盖率

为什么我反对追求测试覆盖率

我们已经有了一个极端的经验:开发有0个单元测试的项目,我们知道这样做所带来的痛苦。通常我们缺乏的是另一个极端的经验:开发100%代码覆盖率和一切都是TDD的项目。单元测试(特别是第一种方法)是一个非常好的做法,但我们应该分辨哪些测试是有用的,哪些是适得其反的。

程序员所积累的编程知识在十年后将有多少变得没用?

程序员所积累的编程知识在十年后将有多少变得没用?

翻翻历史,以前学过现在没用的技术实在是一大把,我承认技术是有 “道” 和 “术” 的区别,我写了十多年代码的时候以为 “术” 容易淘汰,而只有 “道” 就能长存,一旦掌握了恒久不变的道,就可以以不变应万变;而又写了十多年代码以后发现从更长的尺度上来看,并没有一成不变的东西。

章回体小说:真正的程序员

章回体小说:真正的程序员

今天我呆坐在这里,回顾我的整个编程生涯,我想弄清:成为解决真正问题的程序员,还是一切都这是完成工作。这两者是完全不同的。不管怎么样,小printf认为他不需要成为一个真正的程序员。我现在,也是这样认为的!

导致烂代码的35个恶习,看看你染上了几个?

导致烂代码的35个恶习,看看你染上了几个?

《人月神话》出版以来,IT行业的科技公司们一直苦苦追寻传说中以一当十的超级程序员,最新的研究表明确实存在这样一小撮效率奇高的“程序金刚”,但是一位普通程序猿如何能够蜕变成代码金刚呢?

电影中的黑客都是用的什么编程语言?

电影中的黑客都是用的什么编程语言?

本期科考派将替大家考证一下电影中出现的那些代码。它们有的是黑客脚本,有的是机密文件,有的就是纯粹耍酷看起来很厉害,甚至还有的是非人类代码。当然本文一如既往阅读起来有门槛,请非程序员读者速速退散,毕竟你也看不明白;请程序员读者细细研究,搞不好能够功力大涨。

程序员眼中的同行

程序员眼中的同行

很多人说在咱身边有一系列歧视链存在,行业之间因为薪资和工种相互歧视,地域之间因为标志性事件和历史相互歧视,比如说最近的美团的招聘歧视事件。不过歧视也并非全都是不愉快的,程序员之间也普遍存在一些有趣的歧视现象,今天就给大家分享一下!

项目经理如何避免被程序员殴打

项目经理如何避免被程序员殴打

好吧,虽然上图是P的,但至少可以说明一件事——产品经理们早被程序员在心中揍了百遍。 本指南采用案例演绎法,还原产品经理最容易被揍的Top 5 场景,并予以点评和建议,力保从业人员的人身安全。 产品经理,以下简称为(产品)狗。程序员,以下简称为(程序)猿。

【外文翻译】Node.js程序员必须掌握的10个JavaScript概念

【外文翻译】Node.js程序员必须掌握的10个JavaScript概念

但JavaScript是把双刃剑,JavaScript的多重性质意味着几乎一切都是可变的。因此,在编写Node.js代码时,程序员无法清除对象和范围突变的概率。因为JavaScript缺少尾调用优化(允许递归函数重用堆栈帧进行递归调用),所以使用递归进行大量迭代是很危险的。除了这些陷阱之外,Node.js是单线程的,因此开发人员必须编写异步代码。

Kotlin 编程三分钟入门

Kotlin 编程三分钟入门

以上仅是对使用频率较高的语法总结,学会基本可以阅读Kotlin代码,遇到点问题Google速查一下,至于智能转换、类型推导之类的不用说使用后喜欢自然就会了。当然这只是kotlin的基本语法,方便Java快速熟悉kotlin,深入学习还请阅读相关资料。

Python速度虽然慢,但它工作效率高啊!不服?

Python速度虽然慢,但它工作效率高啊!不服?

让我们来讨论一个我最近一直在思考的问题:Python 的性能。顺便说一下,我是 Python 的忠实拥趸,我在各种情况下都会积极尝试使用 Python 来解决问题。大家对 Python 最大的抱怨就是它的速度慢。有些人甚至因为 Python 的速度不如某个语言而拒绝使用它。本文中我将阐述,即便 Python 这么慢,为什么还值得你对它进行尝试。

[外文翻译]JavaScript终于跻身于一流编程语言行列

[外文翻译]JavaScript终于跻身于一流编程语言行列

也就是说,我认为质疑JavaScript是否是一种“真正的”编程语言的时代已经过去,它的旅程远没有结束,但是其应用率和改进速度使我对其前进道路充满信心。

Kotlin相对于Java的优势比较

Kotlin相对于Java的优势比较

Google I/O 2017 首日 Keynote 刚刚落幕,其中 Google 宣布 Android 系统将对 Kotlin 提供 first-class 的支持算是一个非常重磅的新闻。对于大众来说,Kotlin 编程语言可能是相对陌生的,它究竟有何过人之处呢?不如让我们听听开发者是怎么说的。

四款​linux​操作系统总有一款适合你

四款​linux​操作系统总有一款适合你

所有上述所提供给你的是一种通过模仿“其他”操作系统的方式,在观感上所体现出来的熟悉而统一的体验。但是请不要忘记,Linux最伟大的地方之一就是:你具有挑选你所喜欢的某些元素的能力(当然Icaros除外),以及能够构建出属于自己的“弗兰肯斯坦”(拼凑出的科学怪人)桌面!

程序员搞笑集:网址是什么

程序员搞笑集:网址是什么

今天不给大家讲解专业知识了,我发现网上有不少关于程序员的笑话挺有意思的,这里转给大家,希望能给大家带来欢乐。

一个程序猿的奇妙之旅……

一个程序猿的奇妙之旅……

静等面试电话。人事约我第二天上午10点准时参加面试。开始了我的面试之旅……为了给面试官留下准时的好印象。我站在和拼车司机约好的十字路口。公交车突然熄火。看见远处马路边停着一辆红色的小三轮车。准时已经不可能了。看见两个维修工人正在电梯口检查电梯。

恐怖漫画:在搜猫工作的程序员

恐怖漫画:在搜猫工作的程序员

恐怖漫画:在搜猫工作的程序员

聊聊一个架构师的第一次架构经历

聊聊一个架构师的第一次架构经历

炸出的问题有:我们这个系统的边界是什么?我们系统有哪几部分组成?各模块之间怎么通讯?选择什么样的基础技术?为什么要这样选择?技术方案未来会遭遇那些坑?从技术角度这个应用将来如何持续扩展功能?等等一系列的问题追随而来的确像是核弹引爆后的地狱一般让人感觉一切多完蛋了。