2013年7月3日
摘要: 首先说下什么叫“完美软件开发”,想象一下,完美的圆在现实中是不存在的,现实中的圆只能是对完美的圆的回归,但完美的圆描述了圆的构成规则,完美软件开发意义与此相同,它试图描述软件开发的规则和铁律。但既然现实中不存在,探讨完美状态又有神马意思?好,那我们再来看一个完美状态:牛顿第一定律说:任何一个物体在不受任何外力或受到的力平衡时,总保持匀速直线运动或静止状态,直到有作用在它上面的外力迫使它改变这种状态为止。这显然也是一个完美状态或者说理想状态,现实中也是不存在的,那这东西又有神马意义?个人感觉探讨软件开发的完美状态,就和探讨软件中的牛顿定律一样,虽然它现实中不存在,但对现实却有着极大的指导意义。单 阅读全文
posted @ 2013-07-03 06:23 理想流 阅读(4185) 评论(14) 推荐(4) 编辑
  2013年7月1日
摘要: 当一个人看到这么一段话时,他会怎么想:尺度的进程并不仅是无穷进展的坏的无限无止境地采取由质过渡到量,由量过渡到质的形式,而是同时又在其对方里与自身结合的真的无限。质与量在尺度里最初是作为某物与别物而处于互相对立的地位。但质潜在地就是量,反之,量潜在地也即是质。所以当两者在尺度的发展过程里互相过渡到对方时,这两个规定的每一个都只是回复到它已经潜在地是那样的东西。于是我们现在便得到其规定被否定了的、一般地被扬弃了的存在,这就是本质。在尺度中潜在地已经包含本质;尺度的发展过程只在于将它所包含的潜在的东西实现出来。我想可能的反应大概有两类:一类是这人胡说八道,故弄玄虚;一类是是说这个说的抽象,表达力不 阅读全文
posted @ 2013-07-01 07:43 理想流 阅读(1800) 评论(11) 推荐(5) 编辑
  2013年3月10日
摘要: 按国别来区分企业,误杀的几率很大。但毕竟同一国家的企业还是有些共通的特征,因此这里择取两个视角做一个简单的分析。一个视角是透明天花板的高低;一个则是规范程度。什么叫透明天花板?职业路径被封死在某个高度以下,但这种封锁在可见制度层面又不存在,这就是透明天花板,往往是做到一定高度的人对此感受的更为清晰。平心而论,透明天花板在那里都有,本身倒不一定就具有贬义。但不同企业中其高度确实不同。如果要排个次序,那就是是国内企业高于欧美企业,欧美企业高于日韩企业。理论上讲一个人在国内企业里的发展是不受高度限制的,可以想见联想,阿里巴巴未来的接班人还是个中国人,空降个黑人或白人CEO的可能性不大。而欧美企业相对 阅读全文
posted @ 2013-03-10 21:52 理想流 阅读(1734) 评论(2) 推荐(1) 编辑
  2013年2月19日
摘要: 平庸是程序员的最大忌讳。大家可以看看最近出来的软件开发者薪资调查报告(http://www.programmer.com.cn/14918/)。读过之后每个人的认知可能不同,有的人感觉我怎么赚这么少得跳槽,有的人感觉自己还可以,我个人的感觉就是上面那句话:平庸是程序员的大忌。在一个还不算老的行业里,在一个相对较高收入占比在20%~30%的行业中,没有什么比平庸更可怕的了。反倒是编程语言,数据库这类影响因素并没有想的那么重。这也就意味着当一个人扎到某个行业或方向中之后,如果确实这个方向值得持续投入,那么只要达到一定高度,那么就可以获得还可以的收入。(当然离大富大贵总是远的)。那么什么叫一定高度, 阅读全文
posted @ 2013-02-19 21:35 理想流 阅读(5510) 评论(12) 推荐(6) 编辑
  2013年1月21日
摘要: 说软件行业技术更迭快的人很多,认同的也很多,我个人也是认同的,但大致有多快这事儿老是没有一个真切的概念。为了有一个直观的印象,我们来用一个简单的办法。就是选一本比较有代表性的,系统介绍某一类技术的书籍。接下来看一下10年里,这本书里究竟有多少知识被更迭掉了。这里选的是袁峰先生所著的《Windows图形编程》,这书只要看过的就知道它可以很好的代表Windows图形编程这一领域(不含3D)。下面是这本书的目录,看过目录后我们来具体看一下这本书里那些东西在过去的10年里被更迭掉了,而那些没有?第1章基本技术和知识1.l用c/c++进行基本的Windows编程1.2汇编语言l.3程序开发环境1.4Wi 阅读全文
posted @ 2013-01-21 07:10 理想流 阅读(5155) 评论(20) 推荐(0) 编辑
  2013年1月7日
摘要: 读代码这事,先要分是精读还是泛读。从学习的目的来看,一定要精读一定量的经典代码。而精读是指每行都读懂,不看代码脑子里就能勾画出程序的基本结构。这里有个很形象的状态,精读代码时会满脑子都是代码,放不下,甚至睡觉前脑子里也是代码。但这一篇里主要不是关注如何精读代码的,而是关于如何在工作中掌握既有代码的,等价于泛读。现存的很多系统往往很大,几十万行的可能也只算普通。这时候一旦加入了这样一个项目,那么如何去读代码?下面说点个人体会。读这类代码前,先得把规格大致弄清楚,而不能上来就读,比如:对于应用型程序,你要先大致整清楚它的使用方法。如果其中有涉及到领域知识,比如:流程、财会等,那也最好预先有些认识。 阅读全文
posted @ 2013-01-07 07:26 理想流 阅读(2913) 评论(8) 推荐(7) 编辑
  2012年12月24日
摘要: 近来在CSDN结识了贺利坚老师,并仔细的读了一下贺老师的博客,感觉贺老师是非常负责的一个大学老师,在他的博客中看到了很多他和大学生的交流。这就促使我开始思考,如果大学再来一遍,我也还是想做软件,那我应该在大学里学点什么?最终我决定把想到的东西写下来,希望能对在校的人有点帮助。首先我们得知道这问题的答案是个变量,他依赖于你的目标和天资能力,绝不唯一。当然大学的课程设置往往是唯一的,所以会有点矛盾。这里最关键的东西是目标,大学学习只是达成最终目标高度的一个环节,他应该为最终目标服务。当然大学生很难清楚的知道自己的目标究竟在那里,但要总归要大致知道自己的方向。这个之所以关键是因为,这直接决定你应不应 阅读全文
posted @ 2012-12-24 00:16 理想流 阅读(4840) 评论(19) 推荐(10) 编辑
  2012年12月17日
摘要: 下面的文字,有的来自自己微博上的记录,有的来自散写的文章,但总的来看都是自身这些年来的一些思考。也许对喜欢思考的人有点意思,所以汇总下。但也正因为时间跨度和来源比较杂,就没什么体系性了。关于编程1.和世界格局一样,软件开发里也是多维力量(商业、公司政治、技术等)在冲突,单纯地斗争和避让其实都不太行。2.很多时候人们争论是因为都不清楚问题自身。比如:软件工厂可能么?软件和工厂都是巨大且模糊的概念,A或B的理解中又为之注入了各自色彩,所以即使讨论激烈,却可能说的根本不是一个东西。这对脑子转数快的人有利,因为面对面讨论时,事实上他可以随便立论。3.能否处理模糊的东西是判断力的关键。现代管理里老说用数 阅读全文
posted @ 2012-12-17 00:11 理想流 阅读(6873) 评论(33) 推荐(21) 编辑
  2012年12月10日
摘要: 有时候正工作呢,突然就会听到两个兄弟声音放大,言辞也开始变的激烈。这事儿实在太常见,以至于不需要具体案例大多数人就能想象到是怎么个场景。现在的关键问题是这个时候经理M应该干点什么?我个人感觉,有两种极端的处理方法一定不太行。一是完全置之不理,就是假装没看见,你们吵成什么样算什么样。一是什么事都管,一有争吵就开始调解,消除所有不“和谐”声音。前者比较失职,工作中,人员间矛盾大多与工作有关,完全不处理必然影响到工作,所以即使单纯从对工作负责的角度看,这也是种失职。后者会显的过于婆婆妈妈,大家都是成年人,不是小学生,你什么事情都管,讨人嫌不说,也不利于当事人成长---有些能力是要在这种环境中才能练出 阅读全文
posted @ 2012-12-10 01:03 理想流 阅读(4829) 评论(36) 推荐(1) 编辑
  2012年12月3日
摘要: 在众多软件相关的知识中,软件工程绝对是很特别的一个。很多人很鄙视软件工程,说:我一看到软件工程的书就直接略过;与之相对应,很多人很推崇软件工程,会花很大的心思去研究敏捷、CMMI等。刚入职场的程序员大致上是讨厌软件工程的,因为这东西离自己的实践有点远,并且主要是添加束缚。但既然更加复杂纷繁的历史都可以总结出规律,软件开发没道理就总结不出可以遵循的规律。也许真的事实是:并不是软件工程没有用,而实在是很多软件工程的书籍理论飘的太高,落地上有困难。软件工程一个很大的困境在于,它总是试图以软件整体为研究对象,但软件的内部分野过多,不同种类的软件间所适用的方法又充满矛盾。这最终就导致很多软件工程理论往那 阅读全文
posted @ 2012-12-03 00:04 理想流 阅读(931) 评论(0) 推荐(0) 编辑