最近这几年在世界各地突然吹起了一股全民写程序的风潮,连美国总统欧巴马都在写 JavaScript 了,但是身为一介靠写程序(以及在上班时间胡乱上网)来谋生的 developer(所谓的 developer 就是「软件工程师」的比较潮的说法),想要提醒那些想学习写程序的人一件重要的事:慎选你的第一个程序语言。 在软件工程师(中国叫做「程序员」或「码农」)的圈子里,文人相轻的现象可是非常严重的,在程序设计的各个领域里都有着错综复杂的「鄙视链」。从程序语言、编辑器、平台到 { 是写在 if 的同一行还是下一行,不同阵营的人都习惯鄙视来鄙视去
2014-12-13 21:42
是什么造就了一个优秀的程序员?首先问问你自己吧,这会是个有趣的问题。它让你反思自己的软件开发技术。这个问题也适合问问你的同事们。它可以带来一些关于如何协同工作的有趣讨论。下面是我认为成为一个优秀程序员必备的五个重要技能。
2014-12-03 11:07 Henrik Warne , KayGuoWhu
阶段一:不知道自己不知道(Unconscious incompetence) 大学期间,我和老师做过一些小项目,自认为自己很牛,当时还去过一些公司面试做兼职,但是就是不知道为什么没有回复。那个时期的我,压根不知道自己不知道,还以为自己懂很多,现在想起自己以前就好笑,那个时候还算不上程序员,顶多只能算是个业余编程爱好者。 表现:假自信、过度承诺、满口我能行没问题、看不起其他程序员. 阶段二:知道自己不知道(Conscious incompetence) 工作后,发现自己在项目中工作时遇到困难不知道怎么解决,和身边人一比发现自己知识很欠缺,这时候知
2014-12-08 12:04
为什么上周没发布? 作为管理人员,很容易将延迟发布的责任归咎于开发团队成员。但是你是否有认真想过,这些慢悠悠的程序员是否真的是不能按时发布的真正原因? 我们采集了大量关于程序员开发周期的数据,主要记录他们需要多久才能完成不同类型(Stories、Tests、Bugs)和不同大小(S、M、L、XL)的任务。 看看我们的发现 首先:程序员的工作效率是非常平均的。这些数据显示,我们所有试验者的周期都非常的相似:75%的开发人员大多会在175小时之内完成任务。 第二:不过如果在开发过程中又加进来另外一个任务,事情就有变化了。因为此时
2014-12-07 11:43 小峰
今天下午没事去参加了某公司来我校举办的一次产品设计相关的讲座。大部分创新与设计课程的学生或未来想做产品经理工作的同学都去听了,我因为最近要帮一位老师做一项目的产品原型设计,连Axure还没完全用会,因此也跑去旁听。 这位高级产品经理讲的绘声绘色,教我们产品需求文档怎么写?整个产品的设计流程、常用工具、产品经理的工作职责、研发管理相关的内容等等。我自己简单总结了几点: 产品设计过程中最重要的四个部分:理清产品业务流、产品原型设计、需求分析文档PRD(word)和需求跟踪列表(Excel)。这里要说明的一点是:以前
2014-12-15 14:53 敏敏Alexia
在过去的7年半时间里,我带过的软件实习生超过一打,也看到过数以百计的学生和毕业生的档案。我发现很多事情他们都需要学习。或许你会说,我说的不就是某种特定的技术、算法、数学,或者其他特定形式的知识吗?没错,这的确是需要学习的,但却并不是最重要的事情。他们需要学习的最重要的东西是自我规范。这些规范就是:尽可能地写出最简洁的代码;如果代码后期会因为改动而变得凌乱不堪就得重构;尽量删除没用的代码,并添加注释。 我花了很多时间来敦促这些实习生去学习这些内容。我经常会问他们,怎么样才能成为一名优秀的程序员,他们
2015-01-08 13:36 码农网 – 小峰
Brain Schmitz 曾经遇到过的最恶心的bug: Bug只会出现在生产环境中,而且无法在本地重现或者触发 Bug出现的几率虽然很低,但并不足以忽略掉它 Bug出现的原因和竞态条件(racecondition)有关,这只会在系统低负载时才出现 Bug出现的真正原因还未知 出现bug的代码并不是你编写的,但是你要负责修复它;写那段代码的人已经不在公司了 导致出现bug的是某个库,而这个库在99.9%的情况下都是可靠的。这是你解决该问题所剩的最后一块阵地了。 多年以来有许多人试图调试它,从没人成功过。 Bug会产生一个逻辑错误,而且只会在系统运行了很长一
2014-12-10 15:29 陈舸
在外行人眼里,软件开发工作就跟看天书一样难但是程序员往往会一脸苦哈哈地表示还有更难的呢!在最近Quora上面的一个讨论中,我们总结了9件最让程序员糟心的事简直就是分分钟让我们精神分裂啊!!! 9.设计解决方案 任务:给出一系列要求,设计出可实施的方案,包括设计数据和代码结构、功能算法和应用程序流程。 难点:确保你设计的解决方案得满足客户的要求,并且按时完成。 网友的话: 如何始于此终于彼可谓是最难的部分了。misconfiguration 过于臃肿的设计会崩溃,过于浅薄则没有用。nvteighen 不去一个个试一试,就不知道什么样的
2014-12-15 08:58
作为一个程序员,你需要认识到,你有无价的技能需要你去驾驭。投资者们早就知道这些,他们用成捆成捆的现金让你们为他开发出将来有一天能够赚钱的东西。大公司们知道优秀开发者的价值,他们有时候会为了留下他们的顶级人才而屈膝媚颜。具有很好的编程技能,每个人都会重视你,但为什么程序员自己却不把自己的这种天赋当回事儿呢? 我知道很多优秀的程序员数十年都是在帮助别人实现知识产权上的财富,但却只花很少的时间用在开发自己的软件上。领工资很容易,你很容易满足于个人的这点成就,但当你把自己放在对这些软件的知识产权的背景下
2014-12-01 07:41
分享到微信
打开微信,点击顶部的“╋”,
使用“扫一扫”将网页分享至微信。