盼望着,盼望着,周五来了 情人节的脚步近了 一切都像热恋时的样子 飘飘然放开了买 购物车满起来了…… 不要指望着能在女生面前蒙混过关 是时候展现真正的技术了 这道坎过去了是情人节 过不去就是清明节了 所以,还是要乖乖地买点什么…… 其实…… 每个程序员都有一个愿望 “修改类属性,重新创建对象” 关注 漫谈程序员,通过漫画讲述咱程序员自己的故事~…
程序员的日常三件事:写Bug.改Bug.背锅.连程序员都自我调侃道,为什么每天都在加班?因为我的眼里常含Bug. 但是真的有这么多Bug要改吗?就不能一次改完吗? 程序员听这问题后要拍键盘了,还!真!不!能! 用户使用场景的不确定性 在日常生活中,即便每个物品都有使用说明书,可一千个用户就有一千种使用方式.例如用诺基亚手机砸核桃,用iPad当切菜板,所以说程序是确定的,但用户的使用场景是不确定性的. 各种不按套路出牌的操作会给系统带来挑战,例如网上有个段子说: 一个人走进一家酒吧,要了一杯啤酒一…
大家好,我叫dg是一个只写bug的程序员.当然只写bug也是有好处的,那就是踩过的坑多了,摔的跟斗多了,并且没有被摔死,勇敢的活了下来,练就了一身钢筋铁骨.哈哈,开个玩笑.但是猜的坑多了就知道了哪里有坑,以后就可以避免在关键的时候踩坑.所以我入园的目的就是向大家展示一些我曾经踩过的坑,避免新入行的小伙伴多走弯路.同时写的有不对的地方还请大家多多评论指出,让小院子里更加的丰富热闹起来…
前方高能!笑死人不偿命系列~ 表演即将开始,吃东西的请停下来,不然你会后悔的 1. 公司实习生找 Bug 2. 在调试时,将断点设置在错误的位置 3. 当我有一个很棒的调试想法时 4. 偶然间看到自己多年前写的代码 5. 当我第一次启动我的单元测试时 6. 数据库的 Delete 语句忘了使用限定词 where- 7. 明明是个小 bug,但就是死活修不好- 8. 当我尝试调整生产数据库中的一些东西时 9. 好像真的没人发现我产品里的 bug- 10. 下班前我还有一项任务没有完成 11. 产品…
做一个出色的程序员,困难而高尚.本期 fir.im Weekly 精选了一些实用的 iOS,Android 开发工具和源码分享,还有一些关于程序员的成长 Tips 和有意思有质量的线下活动~ How to be a Programmer @梦里风林 翻译了最近 github 上一个很火的工程>>>关于如何做好一个程序员,里面包含了很多技术方面的入门,进阶.高阶的分享,原地址在这里. JSPatch 开源经验分享 由 @移动开发前线 微信分享. @bang,开源项目 JSPatch 作者…
在移动互联网"泛滥"的今天,越来越多非专业(这里的非专业指的是非计算机专业毕业的程序员)程序员加入到了IT行业中来了,可能是因为移动互联网的火爆导致程序员容易就业而且工资很高,可能实体行业不景气,可能这确实是互联网+的时代,越来越多的人加入到程序员的行列当中来,使这个行业鱼龙混杂.现在这个程序员行业普遍的问题就是:人数多,底子薄,基础差,人均技术水平就是有问题,找百度,顺手Ctrl+C和Ctrl+V就把代码来写.管它什么算法,什么性能呢.如何从非专业走向专业程序员呢? 1.扎实基础,不…
(本文是从我的旧博客迁移过来的) 问题地址:http://acm.timus.ru/problem.aspx?space=1&num=1258 前几日在博客园看到这种在线测试的时候,有一种相见恨晚的感觉,于是随便选了一道感兴趣的题(No.1258:Pool)开始做.为了准确了解题的意思,我把题翻译成中文了,这道题的原理和台球很相似(由于以前常玩可乐8,所以对台球的问题倍感亲切).但不知道为什么出题人将台球问题说成了一个程序员撞墙的问题.下面是我翻译后的,英语不好,译错的地方请见谅. 问题: 12…
我是一名普通的软件工程师,不是什么技术大牛.这篇文章所提到的"七种武器"只是我这些年工作经验的一点体会和感悟,如果有错误的地方,还请大家指正. (一)C语言 作为一名C程序员,熟练掌握C语言是最基本的一项技能.关于如何学好C语言,以及C语言话题的讨论,网上有很多经典的文章,我就不一一列举了.在这里,我只想谈一点我个人的体会:刚毕业时,我来到一家比较大的软件公司工作,而公司的工作模式是每个人只负责一个小模块.这样工作两年后,我自认为我的C语言水平已经很高了.后来,我来到现在这家公司.由于…
今天分享是一些已经渡过中年危机的前辈们,看看从他们身上,是如何优雅的过渡的.如果想一直在程序这条路上走下去,建议读完.文章略长. 人物一:陈睿,前百度研发经理,携程定制旅游CTO 从程序员到架构师到管理者,最后到创业者 我一直相信这样一句话:真正的危机,来源于在正确的时间做不正确的事.没有在正确的时间,为下一步做出积累,这才是危机的根源. 比如,当你迈过了30岁这个坎,你的能力还局限于程序的范围,也没有积累好自己的深度以及视野.如果真是这样,我想我一定会每天夜不能寐,每天唾骂自己,你特么究竟每天…
程序员,不要让自己做兔子(updated) 前段时间和一个朋友聊天,酒席间向我抱怨他那段时间的郁闷:项目经理从客户那里拿来一个需求,实际上就是一个ppt描述,我这个朋友拿过来看后刚开始不觉得什么,一个通常的网站系统又能复杂的了哪去,但是越往后做就越发觉得里面的问题.在ppt描述中很多地方描述的都有矛盾.比如论坛,功能上用户描述的更象留言板,而后来通过项目经理,项目经理又通过客户,得知这个功能确实就是那样子的.朋友心想这不同行业可能会有不同的需求,那就这么来吧,反正只是叫什么名而已.而在“交货”的…
<iframe width="580" height="90" align="center,center" id="cproIframe_u1635067_1" src="http://pos.baidu.com/acom? adn=1&at=71&aurl=&cad=1&ccd=24&cec=utf-8&cfv=15&ch=0&col=zh-CN…
Java 进阶 hello world! - 中级程序员之路 Java是一种跨平台的语言,号称:"一次编写,到处运行",在世界编程语言排行榜中稳居第二名(TIOBE index). 本文目标是帮助 Java 程序员了解中级程序员应有的水平,避免陷入唯"高技术.新概念"的陷阱.Java 编程入门相对比较容易(推荐:Java入门教程).学完语法后,很多人希望作一些进阶学习,开始编写网站.访问数据库等应用.然而,当程序比较多时,你又觉得 Java 程序很复杂.因此,我们有…
Java帝国的崛起 前言: 分享技术之前先请允许我分享一下黄永玉老先生说过的话:“明确的爱,直接的厌恶,真诚的喜欢.站在太阳下的坦荡,大声无愧地称赞自己.” <编程常识知多少> <走进编程的殿堂> <高级语言大锅烩> 前面写的三篇博客如果有朋友认真的看了,现在对编程和编程语言应该有了一些了解,下面我针对之前介绍过的编程语言来讲一个故事<Java帝国的崛起> C语言 C国的统治 Long long ago(1972年),在古老的东方有一个国家叫C国(C语言),…
“你是程序员对吧?”“是啊,怎么了?”“那你帮我修一下电脑吧.”我原来也是一个重点大学毕业,基本上事业里面搞IT就干这些事情,要是以前,我肯定会想,我是程序员和修电脑有啥关系. 但是自从进了事业单位,下面是我的工作日常:小李啊,你帮我看看为啥这个视频我下载不起啊小李啊,你帮我看看为啥这个视频我的手机放不起,他们的手机都放的起小李啊,你帮我看看咋个我的PPT投影不上啊小李啊,你来帮我看看啊,(看:桌面堆满文件,程序都在C盘),你说我的电脑怎么这么慢啊是不是该换新的了啊买个什么好啊 一般事业单位也没…
让我掉下眼泪的 不止内存泄漏 让我夜夜不眠的 不止你的需求 明天还要改多久 你攥着我的手 让我感到为难的 是善变的需求 发布总是在半夜 回滚是永远的愁 错误(Bug)随时的暴漏 困扰着我心头 作为程序员,以上这些场景你一定都经历过.今天就来聊聊如何快速定位问题. 先划重点,下文所写都是一家之言,本人工作经验不多,语言表达能力有限,如果写的不好,还望轻喷.另外,本文所讲都是站在Java后端开发者的角度. 背景 下文所讲内容,都会围绕以下几个真实案例来做举例分析,先描述一下具体案例: 案例1:App…
开发应用程序是一项压力很大的工作,人无完人,工作中遇到bug是很正常的事,有些程序员会生气,沮丧,郁闷,甚至泄气,也有一些程序员则会比较淡定.如何进行修复bug的过程,是值得我们好好推敲的. 我想分享一些有关程序员在努力修复bug时常说的话和冒出的想法.当氛围变得紧张的时候,这些话就会显得轻松幽默.最终,bug也会修复成功,你将会继续下一个任务. 我相信许多web开发人员和软件工程师在编程中都会遇到困难,而事后回想起来,还会觉得很好笑. 1.我不知道该删掉还是重写 回归曾经写的源代码,总有一种想…
开发应用程序是一个非常有压力的工作.没有人是完美的,因此在这个行业中,代码中出现bug是相当普遍的现象.面对bug,一些程序员会生气,会沮丧,会心烦意乱,甚至会灰心丧气,而另一些程序员会依然保持冷静沉着.因此,如何处理修复bug的过程也值得我们细细琢磨. 我想分享一些程序员修复他们的源代码时所经历的想法.这是事情变得紧张时所触发的轻松幽默.通常说来,应用程序终将可以工作,然后你也可以进入到下一个伟大的任务. 我相信很多web开发人员和软件工程师经历过这些艰辛,然后在事后一笑而过. 1.“我不知道…
开发应用程序是一个非常有压力的工作.没有人是完美的,因此在这个行业中,代码中出现bug是相当普遍的现象.面对bug,一些程序员会生气,会沮丧,会心烦意乱,甚至会灰心丧气,而另一些程序员会依然保持冷静沉着.因此,如何处理修复bug的过程也值得我们细细琢磨.我想分享一些程序员修复他们的源代码时所经历的想法.这是事情变得紧张时所触发的轻松幽默.通常说来,应用程序终将可以工作,然后你也可以进入到下一个伟大的任务.我相信很多web开发人员和软件工程师经历过这些艰辛,然后在事后一笑而过. 1.“我不知道是要…
程序员在普通人的印象里是一份严(ku)谨(bi)的职业,也是一个被搞怪吐槽乐此不疲的职业,程序员们面对复杂的代码敲打电脑时连眉头都不会皱一下,但是有一个词却是他们痛苦的根源,它就是Bug. 有不少的新手程序员,刚开始都是从修BUG开始做起的. 修bug有助于熟悉项目,了解大概哪些类参与了执行线路,相互调用关系又是如何,结构设计上有什么特点. 以前猿姐就听过这样一个故事 有三个程序员需要穿过一片田地,到达对岸的房子. 初级程序员看了一眼笑着说道:不远,只需要十分钟就行. 资深级程序员想了一下说道:…
在测试过程中,难免遇到开发人员因为一些原因不想修改个别bug的情况.遇到这种问题时,该如何去推进开发修改bug呢? 一.现状分析 1.开发人员为啥不愿意修复BUG? (1)开发与测试对bug的定义理解不一致产生的问题,bug路径较深,无法重现, 修改bug改动较大,影响范围广,无法理解,在生产环境不可能发生的时间,环境问题,不影响程序的实际用户使用: (2)工作流程方面原因,没时间,问题太小(优先级低),上线时间紧急,非自己名下的BUG(相关人员以离职后的BUG): (3)个人能力原因,找不到解…
这是个持续多年的话题了,很多大公司,尤其是牛逼的独立分包公司(开发公司)都会有代码审核和严格QA程序,一般的公司就很难说咯,在法律上目前还没有完全支持处罚程序员bug经济损失的判例(国内如此),国外也是分为故意损害和无意损害两类,但是举证故意损害举证很困难.就我的经验来说(我只在小公司和小小公司待过,大公司和超级公司只是从资料和论文以及产品里看过),一般会有限制级要求和程序性要求,其他的就是使命感和责任心的管理,加强程序员的自我管理是很重要的学问:这里说的是OKR,不是KPI:技术型公司不适用制…
上周看了西乔的博客“西乔的九卦”.<神秘的程序员们>系列漫画感觉很喜欢,很搞笑.这些漫画经常出现在CSDN“程序员”杂志末页的,以前也看过一些. 后来就想下载下来,但是一张一张的点击右键“另存为”,还有很多时候要点击“下一页,”确实让人淡疼.就想着写个程序搞定,自认确实水平一般,查阅了很多资料后,终于搞定... 大体的下载过程就是从网页url不断获取html源码的字符串,遇到图片地址,就下载,遇到下一页的地址,就修改原来的url为下一页的url,然后重复上一过程. 1.下载网络图片 首先要解决…
程序员的世界里,不止有代码,还有bug,bug,bug 当出现bug时,程序员们的反应是怎样的呢?…
案例 一个管理后台的bug,把操作记录中的操作员姓名,写成了该操作员的id.原因是修改了一个返回操作人姓名的函数,返回了操作人的id.但是还有其他地方也用这个函数,导致其他地方把姓名字段填写成了操作员的id.该bug污染了一条修改记录,操作员手动删除就好了.回滚代码后恢复.本质是修改了函数的返回值,却没有查看所有调用的地方.这个函数的名字叫getinfo,但是在代码的其他模块中也有同名函数,返回的都是id,让修改的人以为都是一个函数,引起了混淆.所以函数名也要修改,做到通过名字能够清晰看出函数功…
程序员调 Bug 的样子,非常真实…
刚入职的程序员新人,办公桌上,基本上也就一电脑.一键盘.一鼠标,再配个被杯子.然而混迹职场多年的猿老们,办公桌上都有一些彰显身份地位的“好东西”. 这张图两点颇多,最显眼的,是办公桌上那个黄黄的东西,拉近一看,是一只小黄鸭.据说程序大师随身都会携带一只小黄鸭,调试代码时,就会详细的向鸭子解释每行代码.这种方法还有一个好听的名字“小黄鸭调试法”. 一直以为,不会写 bug 的程序员,是一个非常不合格的程序员.不过 bug 写多了,好像也不是什么好事.这不,某位程序员同僚,因为赶项目的时候,写了太多…
人工智能完全学会自己编程,可能说起来还有一种科幻感,但 AI 帮程序员找 bug 这件事,已经达到了不错的水平. 北京大学.微软亚洲研究院和中国电子科技大学就一起尝试着让 AI 找 bug.微软亚洲研究院的 Lily Sun 在微软官方博客上介绍称,他们开发的精确状态系统(Accurate Condition System, ACS),能在人类不加干预的情况下自动修复软件系统中的 Bug. 他们关于 ACS 的论文 Precise Condition Synthesis for Program…
最近公司组织项目组成员开发一个Android项目的Demo,之前没有人有Andoid方面的开发经验,都是开发C#的. 虽说项目要求并不是很高,但是对于没有这方面经验的人来说,第一步是最困难的. 项目历时一个多月,4个人开发,最终行成一个可用的Demo,整体效果还非常不错.这其中借鉴了网上的“仿网易客户端的Demo”还有就是学习<疯狂Android>,收获颇多,这里利用几篇文章做一个项目经验总结,还有就是更多的从C# 程序员的观点来理解Android的一些异同之处. 文章目录: CSharp程序…
0.别对警告视而不见 相信不少的程序员会使用IDEA,使用它敲代码,有时候会出现警告,那么这时你对警告就不能视而不见了. 我们的目标是,写干净的代码,做风一样的男子! 1.编程习惯 种瓜得瓜种豆得豆,好的编程习惯可以大大降低BUG数量.譬如有if必须写else,即使else是个空语句 .     2.写代码的时间问题 对于程序员而言,千万别熬夜写代码.一些程序员在晚上11点,仍然在敲代码. 虽然你自己觉得头脑其实很清醒,但是第二天自测,或者QA测试的时候你有可能就会发现问题很多. 我们一般不提倡…
程序员:统治世界or修复bug? 时至今日,我们依然生活在一个市场和技术受到高度崇拜的世界里,但是历史演化的规律提醒着我们:当一个东西开始成为社会崇拜的对象时,其中暗藏的不利因素将悄然的进行着.有人认为数字技术和互联网能够消除物理世界的不公平,但是我们今天看到,这种想法就像是认为完全自由的市场可以带给人们完全自由的发展一样,显得不切实际. 还记得自己初学编程的初衷吗?每一个热爱技术的人都有一个梦想:在未来的某一天,我要用我编写的软件统治这个世界. 现在,随着IT技术.互联网技术.人工智能的迅速发…