
程序员笑话集:bug跟蚊子的相似之处
两个程序员,一个技术精湛,思维严谨,认真负责,Bug极少,至今单身; 一个技术一般,吊儿郎当,Bug一堆,经常被测试MM叫到她旁边,接受批评; 后来成了她男朋友……

编程领域内为什么要有那么多的语言?
但是以后移动互联+的影响会越来越深入和广大,PHP的方向是一个很不错的方向…一个人不能做两个甚至多个行业的事情,否则如果你不是够聪明,很可能什么都不精通!慎选。

JCP执行委员会的成员IBM和Red Hat宣称会对Java新模块系统(Jigsaw)投反对票
如果考虑到其他厂商和社区的观点,Oracle对Java 9的交付时间点似乎会出现冲突。到底Oracle会改变方向(这样的话,有可能会造成Java 9的再次延期)还是坚持自己的观点(即便主要的厂商和社区参与者有反对意见),尚有待继续观察。

谷歌新操作系统Fuchsia试用:不完善,但方向是对的
看到有新的操作系统出现,并且还需要很多开发工作才能逐渐完善,并投入使用总是颇有趣味。Fuchsia还不完善,但目前看来发展的方向是正确的。由于谷歌在这个项目中投入了许多资源,目前针对Magenta以及其它Fuchsia组件的开发都非常活跃。对大众来说,所有承诺的功能都是能够实现的。

改25行代码,贵公司要动用多少人?
当产品经理得到发布通知的时候,通知了下客户版本更新的内容已经包括了他要的内容。客户这时心理想,我这已经在测试另外一个平台了。但是出于礼节说,那上线试试吧。结果上线运行,由于前端没什么内容,只是用户新拿到了几个兑换码,然而这已经与自己提出这件事后过去了4个月。

Java 9 中的 9 个新特性
Java 8 发布三年多之后,即将快到2017年7月下一个版本发布的日期了。 你可能已经听说过 Java 9 的模块系统,但是这个新版本还有许多其它的更新。 这里有九个令人兴奋的新功能将与 Java 9 一起发布。

35 个让你的代码变得糟糕的不良习惯
作为一个程序员,我看到很多不好的做法,不仅仅与代码相关,还包括团队合作能力。我自己曾经就有不少这些坏习惯。这里是我认为最糟糕的 35 个坏习惯,它们涵盖了四大类:组织代码、团队合作、编写代码以及测试和维护。

应聘IT项目经理,你必须要知道这些套路!
在互联网高速发展的今天,我们不难发现这么一个现象:IT技术人员在职场上从技术层转变为管理层的时候,他们的身份更多的是项目经理。这一方面是因为他们在做技术时,或多或少接触、负责过项目,另一方面是因为他们懂技术,在管理项目的过程中能做到心中有数。

阮一峰:Fish shell 入门教程
Shell 有好几种,目前最常用是 Bash 和 zsh。但是,在我看来,它们都不如 Fish Shell 好用。五年前,我第一次尝试 Fish,感到很惊艳,一直用到现在。本文介绍 Fish 的主要特点,希望你也来尝试它。

四五十岁之后,还在编程的程序员都有谁?个个大师级
软件开发对于过了40岁的人来说,是不是就意味着终结?本文罗列了10位年龄超过40岁的老程序员们的故事,他们都是顶级的软件开发者,拒绝从事管理岗位,仍然活跃在开发一线,将编程作为生活收入的主要来源。

六种编程范型将改变你对编程的认识
对于下面的大多数语言我拥有的经验很少:我只是发现它们背后的思想十分有魅力,但对于它们我没有任何专业知识,所以有任何更正和错误请指出。另外,如果你发现这里存在没有提到的任何新的范型和想法,欢迎把它们分享出来。

我得到了一个黑客的遗嘱,走上了不归路!
很好,你现在安全了!至少在你的电脑上…在我们开始之前,你需要获取一些工具,只使用这个是无法侵入你将来发现的大部分电脑的,至少入侵不了那些你感兴趣的东西,你应该从调查我朋友的服务器开始,他自称 “ 毒蛇 ”,听起来很可怕是吧?老实说他干这行水平不怎么样

编程中那些有趣的递归缩写命名
学习NodeJS的时候,一定会用到其包管理器npm。npm的字面意思是node package manager,实际的含义也是这样,但是npm真正的英文名却是“npm is not an acronym”,意思是“npm不是一个缩写”,所以如果要问npm是什么单词的缩写,那么回答就是“‘npm是不是一个缩写’的缩写”。

中国程序员和外国程序员
中国程序员和外国程序员并没什么区别,大概外国程序员唯一的优势就是天生会用英语,如果还有第二个优势的话就是Google没被墙。不过,仅此两项,给了中国程序员不小的麻烦,我们需要付出更多的努力,让Chinese Programmer成为世界上最好的Programmer。这也是我的梦想。

程序猿们,在编写和调试程序的时候,你们是不是这样的?
各位程序猿大大们,你们写代码是不是也是这个状态呢?是不是经常遇到明明奇妙的问题呢?是不是在解决一个问题以后,欢呼雀跃呢?

我开发了一个怪物 —— “消沉的程序员”漫画赏析
看至此处,各位朋友是不是感觉少了系列的第 8 和第 9 篇?起初,译者也这么想,后来问了作者 Daniel Stori 之后,才恍然,原来序号采用了八进制,按照作者说的,一个隐式的玩笑。明白了吗,朋友们?

如何评价一段代码
初学者评价代码是不是简单的最朴素的方法就是看代码规模,他们总是觉得代码行数越少的程序就越简单。经常有人在中问为什么我给出的解法要写二十几行代码,而网上的解法却只有十几行。于是就让我讲一下那个十几行的代码。我只能说,那个十几行的代码来自《算法导论》,我需要用4~5个篇幅来讲,还不保证能讲透彻。

它们养活了一票国产软件!你知道这些开源软件吗?
闭源的商业软件搭造起了软件世界琳琅满目的繁华,但开源软件也未曾离开过栋梁的位置。诚然,国产软件的很多功能都相当容易上手,但在使用这些商业软件的时候,大家也应该记住背后默默奉献的开源项目,信息时代少了它们,也会失去很多光彩!

IT项目经理要不要懂技术?
作为一个有着10年工作经验的项目经理,在我身边有懂技术的项目经理,也有不懂技术的,可以说各有优劣。

王垠:自动编程是不可能的 我为什么不在乎人工智能
有人甚至把名字都给我想好了,叫“深度程序员”(DeepCoder = Deep Learning + Coder)。口号是:“有了 DeepCoder,不用 Top Coder!” 还有人给我指出了这方向最新的,吹得神乎其神的研究,比如微软的 Robust Fill…… 我谢谢这些人的关心,然而其实我并不在乎,也不看好人工智能。现在我简单的讲一下我的看法。

如何爱上结对编程
你观察一下结对比较默契的同事,他们会一起喝水,一起上厕所,一起抽烟。只有保持一致的节奏,才能最大化地提高效率。不然,一个去厕所了,另一个人在那写,回来可能就跟不上了。刚跟上,之前那位又要出去抽根烟…

我必须得告诉大家的MySQL优化原理
说起MySQL的查询优化,相信大家收藏了一堆奇淫技巧:不能使用SELECT *、不使用NULL字段、合理创建索引、为字段选择合适的数据类型….. 你是否真的理解这些优化技巧?是否理解其背后的工作原理?在实际场景下性能真有提升吗?我想未必。因而理解这些优化建议背后的原理就尤为重要,希望本文能让你重新审视这些优化建议,并在实际业务场景下合理的运用。

一个猫奴的技术逆袭
1991年年中,林纳斯·托瓦兹(Linus Torvalds)在自己房间里敲着键盘。他全神贯注地盯着14寸的黑色屏幕,都没感觉到自己宠爱的小猫Randi在扒自己的裤腿。

LinkedIn面试实录:一场感觉身体被掏空的前端面试
我的运气比较好,遇到的这位前端工程师是密大的校友。在美国,校友资源是社会人际关系里的一条重要纽带。校友见校友,两眼泪汪汪。可能是和这位校友聊的很投缘,当然题目也基本都做对了,两天之后我便收到了onsite的通知,邀请我在今年的二月去LinkedIn在加州硅谷的总部面试。终于,我也可以体验一次「美帝面试三宝」了。

程序员的计划和变化
这是一个程序员丰富而美好的一天,程序员的计划于现实……