嗯,这几天,网上对我《0bug-C/C++商用工程之道》这本书,嗯,还有我本人,是骂声一片。大家不信,看看CSDN首页和豆瓣网就知道了。
现在骂人者已经把问题提升到我的人品高度了,呵呵,打算彻底要把我批倒批臭。嗯,我这里也说句话,无所谓哈。
呵呵,原本不想理,就当春节大家图个乐子好了。
不过呢,我发现,谩骂的人群中,很多人根本没有看过本书,这就不科学了。书有样章,有目录,有前言和简介,都在网上搁着呢,看看三,实在不把稳,去书店,电子的书应该算正当出版物了,大多数稍微大点的书店,书城都有的,哪天过去的时候,顺便翻翻嘛,又没要你花钱买。别和我讲你从来不去书店哈。
如果一个人,看都没有看过本书,就开骂,那这个人的态度我先不论,我们来讨论一个问题:“他骂什么?”
嗯,这点呢,一个名字在叫做“匿名用户”的朋友,给了很多答案的,主要问题就是:“我看了0bug这个名字不爽!”。
这也合理哈,人家没看你的书,没时间看你的样章,那书名总还是看见的,骂书名就好了。
这里我就有个问题了,“0bug”这个词,到底碰痛了哪些朋友的神经?到底碰痛了朋友们的哪根神经?我觉得这个话题我们要讨论一下。
开始我有文章讲了的,0bug,是目标,我本人也没有做到的,但是,我认为它是我工作的目标。
其次,0bug我认为不难做到,一个公司产品要拿出去卖,总还是bug比较少嘛,你不可能一箩筐的bug跑出去卖嘛,开机就挂掉,你看用户找不找你麻烦。
为什么每个公司都要设置测试部,或者叫做QA部门啦,其实就是为了防止程序员在代码阶段,由于笔误,由于其他什么原因,导致bug,影响产品的销售。因此,我这里说句话:“只要有够强悍的QA部门,我们软件产品的bug不会多!”
其实我很多文章里面都有讲的,0bug,更多地是讨论程序员在代码阶段,能不能产出的质量高一点,你能不能QA一次过啊?别老是一个产品做出来,QA测个半年都测不完,从alpha1一直到alpha10,10轮都搞不定。
为什么要强调这个呢?
其实原因很简单,我的演讲《明日世界--云端计算模型下的程序设计需求》里面专门讲过这个问题,现在是团队合作的时代,以后,云端计算时代,程序员的团队合作要求更高。
我们程序员的软件产品,很可能不是最终产品本身,只是其中一个小模块,我们产品的用户,可能是最终的终端用户,但更多的可能是我们的团队伙伴,甚至就是我们本人:“程序员”。
我昨天写段代码,今天我去调用它,是不是说,“我是我代码的用户?”,我们团队成员的代码,我们去调用它,是不是说,“我是我团队伙伴的用户?”,我的代码,被我团队成员调用,是不是说,“我的团队伙伴是我的用户?”,大家去想。
可是,这些代码可都是没有经过QA验证的哦,可能是我孤陋寡闻啊,但我见过的所有公司,白盒测试一般是程序员自己的事情。QA一般只负责后期整合后的黑盒测试。
那我就要问了,如果我们乱写代码,bug无数,把所有的debug都丢给后期的QA去做事,那我们代码阶段,彼此互相调用,互相依赖的这种工作模型,是不是本身就会出问题?产品还开发得下去不?
所以我强调0bug,我强调,程序员一定要努力,细心地工作,哪怕自己从事的是很小的一个模块,都一定要把它作为最终产品来看待,力争做到0bug。
原因很简单,今天我做个带bug的代码,明天我来call,可能就会挂翻,团队伙伴来一样。如果我们不能从模块级就保证产品的质量,那最终产品不可能是精品。
一个机械加工公司,一个小小的车工,都还要一个质量检验标准呢,不能说车个零件一大堆bug,那回头安装都过不去,更不要说后期的整合检测了。
我一直说,软件业走到今天,该讨论一点质量管控了,不能再产能挂帅,一群程序员,写了一大堆代码,bug一大堆,产品卖不出去,或者,卖出去了,维护费比产品售价还高,公司赔钱做,那工作绩效还是等于0。那种以程序员提交代码数量作为工作考核的管理者,我只能说他不懂程序。
ok啦,到这里我们可以来讨论一下本文的主题,“0bug”到底碰痛了谁的神经?
我这里说句话,0bug,我认为不是一个工作指标,是一种思想,更是一种职业态度,应该算是职业程序员对公司和老板的一个应该做的承诺。软件业可能这么想的程序员不多,但有朋友是车工的,问问,他要是车出来零件,一大堆bug,你问问老板杀不杀他?
其实程序员也快了,目前,程序的发展,在朝着脚本化,规模化发展,大型外包公司已经比比皆是,程序员更像生产线上的一个工人,他必须保证自己的产品质量。否则的话,下个工序都过不去,原因很简单,别人装配不上啊。
但是,在过去的工作中,我也看到了太多的程序员,确实缺乏那么一点点职业精神,我听到最多的就是:“软件咋可能没有bug嘛?”,呵呵,说这话的,我看过有博士,硕士,也有中专生,嗯,我本人也说过哈,惭愧。
我想说的是,“0bug”这个提法,确实碰痛了这些人的神经。
大家有没有觉得这个书名,老板很喜欢看?呵呵。
如果老板看了会怎么样?IT业的老板,本来真正懂技术的其实并不多,即使懂技术,具体到哪个技术细节上,也不能比做这个的研发人员懂更多,那如果他所有的研发人员和他讲:“软件咋可能没有bug嘛?”,他也只有认,呵呵,这叫被忽悠了。
不过,如果老板看过这本书,嗯,就看过这个书名,咦,原来这个世界上真有“0bug”这件事,脑子里面有了这个概念,他下次被忽悠的时候,会怎么想?
所以我一直说,0bug不是程序的技术概念,不是工作指标,其实是一种思想和态度。
嗯,我这里也问句话,有哪个程序员,在接受工作任务的时候,堂堂正正地和自己的老板讲:“这件事,我努力做到0bug!”
我这里也摆句话,只要这个程序员说了,不管做得到还是做不到,这就是态度,老板会喜欢这种程序员的。
嗯,我想我说得很清楚了,麻烦大家看清楚一点哈。
别的人我不好讲,嗯,我自己会努力去做,也会努力向我的老板,尽力承诺做到。
=======================================================
在线底价购买《0bug-C/C++商用工程之道》
(直接点击下面链接或拷贝到浏览器地址栏)
http://s.click.taobao.com/t_3?&p=mm_13866629_0_0&n=23&l=http%3A%2F%2Fsearch8.taobao.com%2Fbrowse%2F0%2Fn-g%2Corvv64tborsvwmjvgawdkmbqgboq---g%2Cgaqge5lhebbs6qzlfmqmttgtyo42jm6m22xllqa-------------1%2C2%2C3%2C4%2C5%2C6%2C7%2C8%2C9%2C10%2C11%2C12%2C13%2C14%2C15%2C16%2C17%2C18%2C19%2C20---40--coefp-0-all-0.htm%3Fpid%3Dmm_13866629_0_0
肖舸

0bug到底碰痛了谁的神经?相关推荐

  1. 认知神经的AI之光,将在北京闪耀

    上世纪五十年代人工智能诞生后,一大批天才人物从各个角度对人工智能进行诠释,符号主义.神经网络.专家系统.统计模型.深度学习等起起伏伏,串成了弱人工智能的演化史. 然而进入2020年后,深度学习红利触顶 ...

  2. 到底什么是“信创”?“信创云”有戏?

    信创是什么? 信创,即信息技术应用创新产业,是数据安全.网络安全的基础,也是国家新基建的重要组成部分,百科这么解释可能还是有点儿隐晦,其实,在相当长一段时间它叫"国产化替代",这就 ...

  3. 大话重构连载9:大布局你伤不起

    2019独角兽企业重金招聘Python工程师标准>>> 作为优秀开发人员,重构应当成为一种习惯,自然而然地运用重构的开发模式,自然而然地在优化和调整我们的代码.它首先要求我们掌握重构 ...

  4. 面部微雕做了以后有危害吗,自体脂肪填充苹果肌硬块多久消,姐姐聚会那些事

    面部微雕做了以后有危害吗,自体脂肪填充苹果肌硬块多久消,姐姐聚会那些事 近两年来,大众的审美方向从"锥子脸"逐渐过渡到了"心形脸".心形脸,顾名思义就是脸型看起 ...

  5. 自体脂肪填充苹果肌硬块多久消

    自体脂肪填充苹果肌硬块多久消 近两年来,大众的审美方向从"锥子脸"逐渐过渡到了"心形脸".心形脸,顾名思义就是脸型看起来像一个心形,显得更加年轻甜美.逆龄面部微 ...

  6. 数字化转型“水多深”?IBM“老司机”告诉你

    (上图为IBM大中华区董事长陈黎明) IBM"老司机"又重返增长了.2017年底到2018年前两个季度,IBM结束了长达5年的营收下滑,连接三个季度恢复增长.在IBM的2017年报 ...

  7. “博士坐下,硕士留下,本科等下,专科让下!”你敢不努力学习?

    比你优秀的人还比你努力 前阵子,央视曝光了一位清华学霸的每日计划表,瞬间就冲上了热搜. 这份计划表是清华校史馆举行的"清华大学优良学风档案史料展"中一份展品,来自一位本科生. 在这 ...

  8. 拒绝疫苗之殇 利君制药用大数据生产“放心药”

    [CSDN原创]"这个世界,除了生死,再无大事."而在生死时速间,一些有关医疗黑幕的戏码却在持续上演,从<我不是药神>中的天价抗癌药,到刷爆朋友圈的狂犬疫苗造假文章&l ...

  9. 最美的教育最简单-保卫纯真童年

    一个缺少尝试.不犯错误的童年是恐怖的,它并非意味着这个孩子未来活得更正确.更好.也许恰恰相反,由于没有童年探索的铺垫,他的认知基础反而很薄,在未来的生活中不得不花费更多的力气去辨识世界.适应生活:很有 ...

最新文章

  1. 国家地理:子宫日记 Womb
  2. C# Create Access File
  3. python中参数的位置传递和名称传递各有什么优缺点_Python开发TCP和UDP的区别是什么?优缺点对比总结...
  4. confluence7安全补丁_centos7安装confluence遇到的问题
  5. Keras【Deep Learning With Python】—使用keras-神经网络来做线性回归问题
  6. 目标又多又密?多轮迭代的方式进行密集目标检测
  7. 弱口令-20211221
  8. [置顶] Linux怎么添加用户成为sudoers
  9. Fedora配置清华镜像源或者阿里云镜像源
  10. mysql怎么查主键是否重复数据库_数据库插入前判断主键重复与否的方法
  11. 那些云中的负载均衡器——Azure、AWS和NetScaler
  12. 《数学计算出题系统》功能规格说明书
  13. 现Revit BuiltInParameter.Model中枚举项,都可以用LabelUitls转成本地语言
  14. 用API获取IP地址
  15. win7安装PS2019CC启动时报d3dcompiler_47.dll的问题解决
  16. windows虚拟机给C盘扩容
  17. XDOJ 317 输出完全二叉树的某一层
  18. User account has expired
  19. java日常基础知识
  20. mips-mti-gnu-linux,【歪门邪道】利用WSL搭建MIPS32构建环境

热门文章

  1. 从其他文件夹导入文件
  2. win11打开应用被管理员阻止怎么办 window11管理员已阻止你运行此应用的解决方法
  3. python的方向_Python Shell下方向键显示「^[[C^[[D」修复方法
  4. Java内存分析—栈,堆,方法区
  5. Halcon内参外参畸变矫正
  6. Opencv之生成Halcon标定板
  7. windows分辨率修改工具_3个修改图片DPI的方法
  8. Android JNI(实现自己的JNI_OnLoad函数)
  9. Linux命令解释之du
  10. 修改时无论改成什么,值总是默认为1