最新文章

有一个 bug 我研究了三天没有解决掉,却发现一个高手轻而易举的解决了当最终决定跳槽时程序员的样子当修改一个小 bug 却把整个服务给弄宕机时的样子当其他程序员都在开会,我说我正在赶进度,不去开会了当我测试刚写完的代码时发生的事情当走进办公室看到邻座新来了一位女汉子同事时程序员的样子当老板在项目投标...

阅读(8455)  推荐(18)  程序员的样子 程序员  发布于 2014-06-19 16:55

算法一:快速排序算法 快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序n个项目要Ο(nlogn)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(nlogn)算法更快,因为它的内部循环(innerloop)可以在大部分的架构上很有效...

阅读(46461)  推荐(73)  算法 编程基础 程序员  发布于 2014-06-19 08:27

扁平和简约来袭 软件设计

英文原文:Flat And Thin Are In 在过去几年里,软件和APP的界面设计风格发生了迅速变化,由3D、拟物发展到扁平、简约。尽管这一趋势普遍存在,我们还是思考下是如何发展至此的,以及它对整个界面设计领域有何影响。另外,我会分享扁平界面设计的一些技巧和注意问题。WindowsPho...

阅读(4079)  推荐(11)  界面设计  发布于 2014-06-17 08:40

前端开发是有逻辑的,这点毋庸置疑。程序员的思维逻辑赋予了代码各种能力,但是前端开发中经常面对的是用户的操作。在一个比较复杂的页面中(貌似现在也很少有简单页面了),用户的操作是不可预见的,假如有很多按钮,每个按钮都会做一件自己独一无二的事,如果上帝保佑所有的这些操作,这些事件都彼此没有限制,而且结...

阅读(5628)  推荐(9)  Web 前端开发  发布于 2014-06-16 08:18

开发团队的效率 项目管理

我之前写过一篇叫《加班与效率》的文章,从概念上说了一些我对“效率”的认识,但是那篇文章趋于概念化,对于一些没有经历过这样的环境的同学来说,可能会觉得太抽象了。很早以前就想写一篇更具体一点的,可执行的文章与《加班与效率》这篇文章相辉映,并再把我两年前在杭州QCon上的那个“鼓吹工程师文化”的《建一...

阅读(6787)  推荐(8)  项目管理 开发 效率  发布于 2014-06-15 09:14

存储系统从其与生俱来的使命来说,就难以摆脱复杂系统的魔咒。无论是从单机时代的文件系统,还是后来C/S或B/S结构下数据库这样的存储中间件兴起,还是如今炙手可热的云存储服务来说,存储都很复杂,而且是越来越复杂。 存储为什么会复杂,要从什么是存储谈起。存储这个词非常平凡,存储 + 计算(操作)就构...

阅读(2642)  推荐(2)  分布式 数据存储 大数据  发布于 2014-06-15 09:13

英文原文:Code fast or code slow? Who are you? 一般而言,有两种类型的开发者。一种编码速度快,喜欢一大段一大段的组合代码,然后看它是否能顺利运行,这是编程中的“快枪手”,还有一种在朝着目标前进的时候比较淡定,他们会确保他们所写的一切代码都是精心设计的,可维护...

阅读(9861)  推荐(25)  编程 程序员  发布于 2014-06-11 22:49

英文原文:How long would this project take? 这个问题是我最常碰到的一个,也是我最难回答的一个。对这种问题最好的回答方式是用全职员工来推算天数。这非常容易,你只需要找出有多少个不重叠的功能特征,然后每个人负责一个。一旦各个功能块被分成了不能再分的任务,你计算...

阅读(8354)  推荐(25)    发布于 2014-06-09 07:12

任何一家企业,无论是规模庞大的500强企业,还是成长中的中小型企业,都会存在“问题员工”。“问题员工”的出现,不仅会降低其自身的工作效率,而且会给周围的人带来一些负面影响,并且有可能影响到整个企业的运转效率。因此,我们历来都非常重视“问题员工”的管理。 “问题员工”可以分为以下几种类型: 第...

阅读(5950)  推荐(13)  程序员 团队管理 项目管理  发布于 2014-06-06 06:43

英文原文:Productive Developers are Smart and Lazy 这里我使用了聪明,懒惰和程序员这几个词。我说的这几个词的意思是:程序员:有积极活力的,专注于用代码解决真实世界里的问题,不是指那些梦想家,那些永远只想不做的人。聪明:能够周全的思考问题(不是那些耍小聪明...

阅读(11643)  推荐(55)  程序员  发布于 2014-06-05 06:10

如何留住人?我们要先搞清楚人为什么会离开。记得马云总结过两点非常到位:1. 钱没给到位;2. 心受了委屈。我们可以从团队的体验和员工驱动力来思考如何更好地管理一个技术团队。 一个技术团队就像是一个UGC社区,团队中的每位同学都是社区的用户,他们在社区的激励体系(薪酬与绩效)下,贡献自己的价值(...

阅读(3149)  推荐(15)  程序员 团队管理 项目管理  发布于 2014-06-04 08:21

英文原文:I'm Sure It Will Only Take You A Few Days To Code 不懂技术的人不要对懂技术的人说这很容易实现这个网站相当简单,所有你需要做的就是完成X,Y,Z。你看起来应该是技术很好,所以,我相信,你不需要花费太多时间就能把它搭建起来。 我时不...

阅读(12070)  推荐(57)  技术人员  发布于 2014-06-03 08:33

一年前的现在,在杭州支付宝大楼里有个叫“春秋书院”的闭关室,里面一群紧张而兴奋的年轻人在忙碌着。项目室巨大的落地窗前,站着一个面色凝重的人,他就是天弘基金创新事业部技术负责人樊振华,一个在金融IT领域有着丰富经验的老兵。他看着窗外川流不息的汽车,深深地吸了一口气。 这是一个只有代号但没有名字的...

阅读(9445)  推荐(44)  余额宝  发布于 2014-06-02 19:37

英文原文:Swiss Army Knife Syndrome 如果大家认为这篇文章更多是在喷,我先说抱歉。“瑞士军刀综合症”的想法是起源于我和项目经理、客户、甚至其他开发者打交道的过程中产生的沮丧感,他们都以一种狭隘特殊的方式思考问题。我称之为“瑞士军刀综合症”。 瑞士军刀 “瑞士军刀...

阅读(7664)  推荐(22)  单一职责  发布于 2014-05-29 12:38

这篇文章是下篇,所以如果你对TCP不熟悉的话,还请你先看看上篇《TCP的那些事儿(上)》 上篇中,我们介绍了TCP的协议头、状态机、数据重传中的东西。但是TCP要解决一个很大的事,那就是要在一个网络根据不同的情况来动态调整自己的发包的速度,小则让自己的连接更稳定,大则让整个网络更稳定。在你阅读下...

阅读(42623)  推荐(24)  TCP 协议 算法  发布于 2014-05-29 00:17

TCP是一个巨复杂的协议,因为他要解决很多问题,而这些问题又带出了很多子问题和阴暗面。所以学习TCP本身是个比较痛苦的过程,但对于学习的过程却能让人有很多收获。关于TCP这个协议的细节,我还是推荐你去看W.Richard Stevens的《TCP/IP 详解 卷1:协议》(当然,你也可以去读一下...

阅读(83407)  推荐(45)  TCP 协议 算法  发布于 2014-05-29 00:16

老罗的Smartisan T1手机发布会很多人应该都看了,发布会的最后老罗凝视着自己的工匠自画像,半晌没说话,随后转过身,慢慢离开舞台,屏幕下方只留下一句话:我不是为了输赢,我就是认真。 这一瞬间让我想起93年「狮城舌战」的主角蒋昌建,在「人性本善还是人性本恶」的总结陈词最后,以顾城的名句,「...

阅读(6613)  推荐(40)  程序员  发布于 2014-05-27 08:06

(友情提醒:下文很长,如果觉得看文字太累,可以先下载个图文并茂的PPT看看。这里提供下载链接:互联网思维PPT。) 课前秀:三个段子 第一个段子:一个毫无餐饮行业经验的人开了一家餐馆,仅两个月时间,就实现了所在商场餐厅坪效第一名。VC投资6000万,估值4亿元人民币,这家餐厅是雕爷牛腩。 ...

阅读(30997)  推荐(40)  互联网  发布于 2014-05-26 13:14

豆瓣的基础架构 软件设计

本文根据InfoQ中文站对豆瓣洪强宁(@hongqn)的沟通交流整理而成。洪强宁介绍了豆瓣的架构和组件,并分享了豆瓣基础平台部的一些团队经验。文中截图来自洪强宁在2013年CTO俱乐部中的分享。 架构 豆瓣整个基础架构可以粗略的分为在线和离线两大块。在线的部分和大部分网站类似:前面用LVS做...

阅读(6218)  推荐(11)  架构 豆瓣  发布于 2014-05-25 14:08

工作是在大公司更好,还是小公司更好?这个问题让大家争论不休,也没有最终的答案。凑个热闹,我结合自己的经历,谈谈我的看法。 我最开始工作就是在小公司。当时刚刚毕业,在对工作完全没有概念的情况下,进入了一家小的创业公司。虽然今天想起来,作为创业公司,它有这样那样的不足,但我依然非常珍惜那段经历...

阅读(9290)  推荐(47)  工作  发布于 2014-05-24 21:00