导航:首页 > 程序命令 > 程序员邹欣

程序员邹欣

发布时间:2022-02-25 20:39:08

⑴ 国内有哪些不错的 IT 书籍作者

走出软件作坊 (作者阿朱,如今是京东技术学院负责人)
冒号课堂 (作者郑晖,貌似在做ios独立开发)
程序员的自我修养 (第一作者俞甲子,创办了两个游戏公司,第一个已经成功卖掉。第三作者潘爱民,目前是阿里云首席架构师)
软件调试 (作者张银奎)
Windows内核原理与实现 (作者潘爱民)
Python源码剖析 (作者陈儒)

还有不少好作者,就不一一列举了。推荐我近年来合作出版的好书的作者:
@吴军 (见:吴军博士是一个怎样的人?)
@邹欣 (见:邹欣老师怎样给学生上课和如何成为一名踏实靠谱、勤奋刻苦、高瞻远瞩、能言善辩又脾气棒棒的程序员? )
@刘未鹏 (见:刘未鹏是谁? )

⑵ 我们需要专职的 QA 吗

有不同的观点,有争论总是一件好事,这样可以引发大家的思考。所以,对于我的这篇博文,如果你赞同我的观点,我会感到高兴,如果你会去认真地深入思考,我也会高兴,如果你反对,没关系,可以讨论。在此之前,我想说明一下我观点里的这个“专职QA”是怎么定义的。其是很多公司成立的专门做测试的技术人员,仅测试不开发。这些QA对于软件开发技术并不熟悉,甚至不懂。我经历过一些公司都有专职的QA团队(专职的测试人员),自从上个公司我的开发团队在一个项目上被QA部门搞得一团糟,我越来越怀疑专职QA存在在意义。我的观点不一定对,但请让我鲜明地表达一下——我觉得是不需要全职的QA的,甚至不需要QA这一专职角色或部门,因为,不懂开发的人必然做不好测试。就像不懂开发的研发经理必然管不好研发团队一样。我越来越觉得Dev应该应该是做测试最合适的人选,这必然是未来的趋势 (因为我已经看到了中国程序员的进步,相比起10年前,今天的程序员已经是非常全面了,再来十年,必然证明我的观点是对的)。在我正在展开说明之前,我想引用两篇文章:两篇文章一篇是 “On testers and testing”(中文翻译),本文的作者Sriram Krishnan是一名程序员,曾在Yahoo和微软工作过,开发过很多软件,曾被纽约时报报道,写过一本书,本文是他的一篇博客。他在文章中表达了这几个观点——大多数的开发团队并不需要一个独立的测试角色。即使要有,那么所有的开发时间比上所有的测试时间应该 >20:1的。。证据吗?光看看一些从古至今最成功的软件开发团队就知道了。不论是当今的Facebook,还是30年前最初的NT团队,很多伟大 的产品都是出自没有或很少测试人员的团队。开发人员应该测试自己的代码。没什么可说的。背后的道理并不重要。这包括单元测试,全覆盖的自动化测试或手工测试或组合测试。如果你的开发人员不能/不愿意或认为这“不归我管”,那你需要更好的程序员。另一篇文章是邹欣的“现代软件工程讲义 9 测试 QA 的角色和分工”,这是一篇很不错的文章。他在文章里提到了分工的必要性,比如第三方的鉴定机构,并且也指出了分工的一些问题,比如,画地为牢的分工,无明确责任的分工,等,这些问题直接命中了分工的要害。我隐约觉得,我和邹欣的很多观点是相同的,我们内容上是相同的,只是形式上还有分歧。另外,我的观点太鲜明了,从而容易导向极端的理解。你看,我们都同意,Dev要懂测试,QA要懂开发,只不过分工不同,既然你中有我,我中有你,那就不要分彼此了,一起携手开发测试吧。(另外,我个人觉得不懂开发的测试人员不可能测试得好) 我的故事我再说说我最糟糕的QA经历吧,这个公司的QA部门只做测试,他们的leader觉得所有的test design和test 的过程都不需要Dev参与,他们是独立于Dev之外的部门,他们几乎不关心Dev的设计和实现,他们只关心能跑通他们自己设计的test case。但是去执行Test Case的时候,又需要Dev的支持,尤其在环境设置,测试工具使用,确认是否是bug方面,全都在消耗着Dev的资源,最扯的是,他们对任何线上的问题 不负责,反正出了问题由Dev加班搞定。我有一次私自review他们的test case的时候,发现很多的test case这样写到 –“Expected Result:Make sure every thing is fine” ,WTF,什么叫“Every thing is fine”?!而在test case design的时候,没有说明test environment/configuration 是什么?没有说明test data在哪里?Test Case、Test Data、Test Configuration都没有版本控制,还有很多Test Case设计得非常冗余(多个Test Case只测试了一个功能),不懂得分析Function Point就做Test Design。另外,我不知道他们为什么那么热衷于设计一堆各式各样的Negative Test Case,而有很多Positive的Test Case没有覆盖到。为什么呢,因为他们不知道开发和设计的细节,所以没有办法设计出Effective的Test Case,只能从需求和表面上做黑盒。在做性能测试的时候,需要Dev手把手的教怎么做性能测试,如何找到系统性能极限,如何测试系统的latency,如何观察系统的负载(CPU,内存,网络带宽,磁盘和网卡I/O,内存换页……)如何做Soak Test,如何观察各个线程的资源使用情况,如何通过配置网络交换机来模拟各种网络错误,等等,等等。测试做得也不认真,大量的False Alarm,都是环境问题,比如:安装新版本后没有重启服务,没有使用新的配置文件,网络配置,等等,等等。在项目快要上线前的一周,我又私自查看了一下他们的Test Result,我看到5天的Soak Test 的内存使用一直往上涨,很明显的内存泄露,这个情况发生在2个月前,但是一直都没有报告,我只好和我的程序员每天都加班到凌晨,赶在上线前解决了这个问 题。但是,QA部门的同学们就像没发生什么事似的,依然正常上下班。哎……为什么会这样?我觉得有这么几点原因(和邹欣的观点一样)给了QA全部测试的权力,但是没有给相应的责任,QA没有体会过软件质量出问题后的痛苦(解决线上问题的压力),导致QA不会主动思考和改进。QA对Dev的开发过程和技术完全不了解,增加了很多QA和Dev的沟通。QA对软件项目的设计和实现要点不了解,导致了很多不有效的测试。注:我无意在这里贬低QA的能力工作。只是我看到了QA因为没有参与开发的一些现实问题。我的观点邹欣对于分工出现的问题给出了两点解决方法:充分授权和信任(Empower team members)各司其职,对项目共同负责(Establish clear accountability and shared responsibility)我的观点是, 理论上正确,操作上太虚了。这就像我们国家喊的“为人民服务”的口号一样,没有具体的方法,根本无法落实。我无意在这里贬低QA的工作,我也无意因为这个事走向另一个极端。但是,我在现在公司的经历,还有很多新兴公司的做法,我越来越觉得软件开发,真的不需要专职的QA,更不需要只写代码不懂做测试的专职的Dev。观点如下:1) 开发人员做测试更有效开发人员本来就要测试自己写的软件,如果开发人员不懂测试,或是对测试不专业,那么这就不是一个专业的开发人员。开发人员了解整个软件的设计和开发过程,开发人员是最清楚应该怎么测试的,这包括单元测试,功能测试,性能测试,回归测试,以及Soak Test 等。开发人员知道怎么测试是最有效的。开发人员知道所有的function point,知道fix一个bug后,哪些测试要做回归和验证,哪些不需要。开发人员的技术能力知道怎么才能更好的做测试。很多开发人员只喜欢写代码,不喜欢做测试,或是他们说,开发人员应该关注于开发,而不是测试。这个思路相当的错误。开发人员最应该关注的是软件质量,需要证明自己的开发成果的质量。开发人员如果都不知道怎么做测试,这个开发人员就是一个不合格的开发人员。另外,我始终不明白,为什么不做开发的QA会比Dev在测试上更专业? 这一点都说不通啊。2)减少沟通,扯皮,和推诿想想下面的这些情况你是否似曾相识?QA 做的测试计划,测试案例设计,测试结果,总是需要Dev来评审和检查。QA在做测试的过程中,总是需要Dev对其测试的环境,配置,过程做指导。QA总是会和Dev争吵某个问题是不是BUG,争吵要不要解决。无论发现什么样的问题,总是Dev去解决,QA从不fix问题。我们总是能听到,线上发生问题的时候,Dev的抱怨QA这样的问题居然没测出来,QA也总会抱怨Dev代码太差,一点也不懂测试,没怎么测就给hand over 给QA了。QA总是会push Dev,这个bug再不fix,你就影响我的进度了。等等,等等。如果没有QA,那么就没有这么多事了,DEV自己的干出来的问题,自己处理,没什么好扯皮的。而一方面,QA说Dev不懂测试,另一方面Dev说QA不懂技术,而我们还要让他们隔离开来,各干各的,这一点都不利于把Dev和QA的代沟给填平了。要让Dev理解QA,让QA理解Dev,减少公说公有理,婆说婆有理的只站在自己立场上的沟通,只有一个方法,那就是让Dev来做测试,让QA来做开发。这样一样,大家都是程序员了。3)吃自己的狗食真的优秀的开发团队都是要吃自己狗食的。这句话的意思是——如果你不能切身体会到自己干的烂事,自己的痛苦,你就不会有想要去改进的动机。没有痛苦,就不会真正地去思考,没有真正的思考,就没有真正的进步。在我现在的公司,程序员要干几乎有的事,从需求分析,设计,编码,集成,测试,部署,运维,OnCall,从头到尾,因为:只有了解了测试的难度,你才明白怎么写出可测试的软件,怎么去做测试的自动化和测试系统。只有自己真正去运维自己的系统,你才知道怎么在程序里写日志,做监控,做统计……只有自己去使用自己的系统,你才明白用户的反馈,用户的想法,和用户的需求。所以,真正的工程师是能真正明白软件开发不单单只是coding,还更要明白整个软件工程。只明白或是只喜欢coding的,那只是码农,不能称之为工程师。4)其它问题关于SDET。全称是Software Development Engineer on Test。像微软,Google, Amazon都有这样的职位。但我不知道这样的职位在微软和Google的比例是多少,在Amazon是非常少的。那么像这样的懂开发的专职测试可以有 吗?我的答案是可以有!但是,我在想,如果一个人懂开发,为什么只让其专职做测试呢?这样的程序员分工合理吗?把程序分成两等公民有意义吗?试问有多少懂开发的程序员愿意只做测试开发呢?所以,SDET在实际的操作中,更多的还是对开发不熟的测试人员。还是哪句话,不懂开发的人是做不好测试的。如果你说Dev对测试不专业,不细心,不认真,那么我们同样也无法保证QA的专业,细心和认真。在Dev上可能出现的问题,在QA也也会一样出现。而出了问题QA不会来加班解决,还是开发人员自己解决。所以,如果QA不用来解决问题,那么,QA怎么可能真正的细心和认真呢?如果你说不要QA的话,Dev人手会不够。你这样想一下,如果把你团队中现有的QA全部变成Dev,然后,大家一起开发,一起测试,亲密无间,沟通方便,你会不会觉得这样会更有效?你有没有发现,在重大问题上,Dev可以帮上QA的忙,但是QA帮不上Dev的忙。第三方中立,你会说人总是测不好自己写的东西,因为有思维定式。没错,我同意。但是如果是Dev交叉测试呢?你可能会说开发人员会有开发人员的思维定式。那这只能说明开发人员还不成熟,他们还不合格。没关系,只要吃自己的狗食,痛苦了,就会负责的。磨刀不误砍柴功。如果你开发的东西自己在用,那么自己就是自己天然的QA,如果有别的团队也在用你开发的模块,那么,别的团队也就很自然地在帮你做测试了,而且是最真实的测试。你可能会说吃狗食就是个笑话,因为如果是我,我把干烂的事,就离职走人了,让别人去吃我的狗食。这个在现实中 的确会发生,也是很现实的。但是想一想,你为什么在一开始让他把事干烂了?另外,如果你的团队在设计评审和代码评审里没有把好关,让某人把事给干烂了,那 么这个人的离职带来的问题还是这个团队来扛,于是整个团队都在吃自己的狗食,挺公平的。痛苦过一次,你的团队下次怎么干了,就不敢乱招人了,就不敢随意评 审代码了,就不敢让人只做一块东西了。最终还是没有逃脱吃狗食的范畴。关于系统集成测试。所谓集成测试,就是把多个开发团队开发的模块集中起来测试。因为开发人员可以无法看到全 局,不了解别个团队的系统,所以需要有统管全局的专职的QA进行测试。对这个方面,我并不反对,在实际操作过程中,好像的确用专职的做集成测试的QA更有 效一些。不过,这还是不能让我停止去思考两个问题,1) 如果开发人员看不到全局,他能开发出更好的软件吗?2)这个全职的做集成测试的QA难道不能是各个团队的骨干Dev来组成吗?关于自动化测试。所谓自动化的意思是,这是一个机械的重复劳动。我想让测试人员思考一下,你是否在干这样的事?如果你正在干这样的事,那么,你要思考一下你的价值了。但凡是重复性比较高的机械性的劳动,总有一天都会被机器取代的。关于线上测试。我们都知道,无论自己内测的怎么样,到了用户那边,总是会有一些测试不到的东西。所以,有些公 司会整出个UAT,用户验收测试。做产品的公司会叫Beta测试。无论怎么样,你总是要上生产线做真正测试的。对于互联网企业来说,生产线上测试有的在玩 A/B测试,有的玩部分用户测试,比如,新上线的功能只有10%的用户可以访问得到,这样不会因为出问题让全部用户受到影响。做这种测试的人必然是开发人 员。好吧,我暂时写这么多,我会视大家的讨论再补充我的观点的。—– update —–一些人觉得我是在泄私愤,我能够理解为什么我会被这样误解,但是没有关系,很多新东西新观点总是会被误解的,我坦然面对。(全文完)

⑶ 违规饮酒对单位和个人的危害

近期,关于酒驾、醉驾的新闻频频出现。比如,黑龙江省伊春市森工集团原党群工作部部长、工会副主席殷广慧等人酒后驾车,阻碍干预公安机关执法查处,就引发广泛热议。

伊春市纪委监委在上月底对涉案人员做出严肃处理,殷广慧及其妻子、女儿、女婿等人受到包括党内撤职、政务撤职等在内的处分。

记者梳理发现,除了黑龙江,山东、河南、四川等地也有党员和公职人员酒驾醉驾被纪委监委公开通报。他们当中,既包括领导干部、机关工作人员、农村党员,也有国有企业员工、公立医院医生,处分类型从党内警告到醉驾严重触犯刑律而被开除党籍、开除公职。

那么,党员和公职人员酒驾醉驾,除了法律上的制裁,还会受到纪检监察部门的何种党纪政务处分?

一人酒驾全家 " 营救 ",多人受严处

据公开报道:2019 年 6 月 10 日晚,黑龙江省伊春市森工集团原党群工作部部长、工会副主席殷广慧酒后驾车被铁力市交警发现,其拒不配合执法,拒绝出示证件和接受酒精检测。

殷广慧的妻子王君华是铁力市人大原党组书记、主任,她随后给铁力市公安局原局长张庆忠打电话,托请帮忙处理。女儿殷宪超是铁力市妇幼保健计划生育服务中心工作人员,其女婿邹欣健是铁力林业局原纪检岗位干部,两人不久赶到现场阻碍执法。

随后,张庆忠赶到派出所,下令 " 暂缓处理 ",未对殷广慧进行酒测,让其离开派出所。6 月 17 日,铁力市公安局根据《治安管理处罚法》给予殷广慧行政拘留十日处罚。

6 月 27 日,伊春市纪委监委对涉案人员做出严肃处理:殷广慧受到留党察看两年和政务撤职处分;王君华受到撤销党内职务和撤职处分;张庆忠受到留党察看一年和政务撤职处分。邹欣健受到党内警告处分,并被调离纪检干部队伍。殷宪超受到党内严重警告处分,且因涉嫌妨害公务犯罪被移送检察机关起诉。

多地党员和公职人员因 " 酒 " 受处分

除了上述性质比较特殊的案例,仅去年一年,黑龙江省就公开通报了至少 13 起党员公职人员酒驾、醉驾问题被处分案例。

比如,哈尔滨道里区人防办原主任、党支部书记夏晶饮酒后驾驶机动车被交警查获,经鉴定属于醉酒驾驶。2018 年 1 月 6 日,法院判处夏晶犯危险驾驶罪,拘役三个月,并处罚金 1 万元。夏晶受到开除党籍,开除公职处分。

另外还有哈尔滨市水政监察局副局长王岩木酒后驾驶,交警部门对其作出罚款 2000 元,暂扣机动车驾驶证 6 个月,驾驶证记 12 分的处罚,纪委对王岩木给予党内严重警告处分等。

在中部城市湖北省十堰市,今年 2 月,纪委监委部门就通报了 5 起党员干部相关案例。

十堰市国土资源局经济开发区分局原局长余海涛醉驾,经检验,驾车时其血液内酒精含量为 211mg/100ml,属于醉酒驾车。最终,法院以危险驾驶罪判处余海涛拘役三个月,缓刑四个月,并处罚金 5000 元。余海涛受到开除党籍、开除公职处分。

相比醉驾,对于酒驾的处分,则相对较轻。十堰市公安局郧阳区分局柳陂派出所民警付克龙酒驾,竹溪县工商局经济检查大队副队长夏彦酒驾,竹山县溢水镇中心学校教师袁怀群酒驾,除了公安部门给的处罚,纪委监委分别给予他们党内警告处分。

除了上述几个城市,潇湘晨报记者梳理发现,四川、山东、河南、湖南等地均有党员干部或者公职人员因酒 " 挨板子 " 的案例。

解读

党员干部酒驾醉驾处理结果为何各不相同

党员和公职人员酒驾、醉驾,除了法律上的制裁,为何会受到党纪政务处分?这些处分的依据又是什么?

党章规定,党员应当模范遵守国家法律法规。《中国共产党纪律处分条例》第四章规定了对违法犯罪党员的纪律处分,比如 " 党员依法受到行政处罚、行政处分,应当追究党纪责任的 ",党组织可以给予党纪处分或者组织处理。党纪严于国法,党员酒驾触犯了法律,必然也触碰了党纪的红线。

那么为什么对酒驾、醉驾的处分,有的是党内警告、党内严重警告等党纪轻处分,而有的则要开除党籍、开除公职呢?

酒后驾驶机动车违反了《中华人民共和国道路交通安全法》,按照《中国共产党纪律处分条例》第二十九条第一款关于 " 党组织在纪律审查中发现党员有其他违法行为,影响党的形象,损害党、国家和人民利益的,应当视情节轻重给予党纪处分 " 的规定,酒后驾驶行为与党员的身份极不相符,影响了党的形象,应当给予当事人相应的党纪处分,但不一定开除党籍。大多数情况下,酒后驾驶行为属于一般违纪,可以给予党内警告、党内严重警告等党纪轻处分。

醉酒驾驶机动车则构成《刑法》第一百三十三条规定的危险驾驶罪。《中国共产党章程》第三十八条第二款规定:" 严重触犯刑律的党员必须开除党籍。"《中国共产党纪律处分条例》第三十三条第一款规定," 因故意犯罪被依法判处刑法规定的主刑(含宣告缓刑)的 " 应当开除党籍。《行政机关公务员处分条例》第十七条第二款规定:" 行政机关公务员依法被判处刑罚的,给予开除处分。" 所以,如果达到醉酒驾驶标准,依据上述规定就应当给予开除党籍、开除公职处分。

需要注意的是,对因醉酒驾驶被免予刑事处罚的党员干部,依据《中国共产党纪律处分条例》第三十二条的规定,也应给予撤销党内职务以上处分。

监察体制改革后,监督范围扩大到了所有行使公权力的公职人员。根据监察法的规定,监察机关的监督职责就包括对公职人员模范遵守宪法法律等情况进行监督检查。对违法的公职人员,监察机关应依照法定程序作出警告、记过、记大过、降级、撤职、开除等政务处分。

⑷ 如何在Word中设置多重悬挂缩进

接触过原文后的解决方案:

1. 将每段英文冒号和三角标记之间的空格改成Tab,再设置一下悬挂缩进到三角标记的位置(我这里看是 5 字符),可以达到图一中的效果;

2. 将格式设置为:“段落左对齐制表符-1.5字符-无前导符,悬挂缩进4.59字符,对齐方式左对齐”也可以达到图一中的样式。

文本缩进位置就是每一段第二行缩进的距离,对齐位置就是1981开始的位置(项目符号之后文字开始的位置),他们之间的长度差就是1986到三角的尺寸,这个你可以试一下,手动调整一下。

编程之美的作者简介

《编程之美》由下面几位作者协同完成,如果把这本书的写作比作一个软件项目,它有下面的各个阶段,每个阶段则有不同的目标和角色。
1. 构想阶段:邹欣。
2. 计划阶段:邹欣、刘铁锋、莫瑜。
3. 实现阶段/里程碑(一):上述全部人员,加上李东、张晓、陈远、高霖(负责封面设计)。
4. 实现阶段/里程碑(二):上述全部人员,加上梁举、胡睿。
5. 稳定阶段:上述全部人员,加上博文视点的编辑们。
6. 发布阶段:邹欣、刘铁锋和博文视点的编辑们。

⑹ 谁能具体说一下《编程之美》这本书是用哪种语言写的

中文书 名: 编程之美:微软技术面试心得 作者:《编程之美》小组 出版社: 电子工业出版社 出版时间: 2008 ISBN: 9787121060748 开本: 16 定价: 40.00 元 编辑本段内容简介 《编程之美——微软技术面试心得》收集了约60道算法和程序设计题目,这些题目大部分在近年的笔试,面试中出现过,或者是被微软员工热烈讨论过。作者试图从书中各种有趣的问题出发,引导读者发现问题,分析问题,解决问题,寻找更优的解法。 本书的内容分为下面几个部分: 游戏之乐:从游戏和其他有趣问题出发,化繁为简,分析总结。 数字之魅:编程的过程实际上就是和数字及字符打交道的过程。这一部分收集了一些好玩的对数字进行处理的题目。 结构之法:汇集了常见的对字符串、链表、队列,以及树等进行操作的题目。 数学之趣:列举了一些不需要写具体程序的数学问题,锻炼读者的抽象思维能力。 书中绝大部分题目都提供了详细的解说。 每道题目后面还有一至两道扩展问题,供读者进一步钻研。 书中还讲述了面试的各种小故事,告诉读者微软需要什么样的技术人才,重视什么样的能力,如何甄别人才。回答读者关于IT业面试,招聘,职业发展的疑问。这本书的很多题目会出现在IT 行业的各种笔试,面试中。但本书更深层的意义在于引导读者思考,和读者共享思考之乐,编程之美。 微软公司全球资深副总裁沈向洋作序推荐! 北京大学计算机科学技术研究所副研究员潘爱民倾力推荐! 编辑本段作者团队介绍 《编程之美》由下面几位作者协同完成,如果把这本书的写作比作一个软件项目,它有下面的各个阶段,每个阶段则有不同的目标和角色。 1. 构想阶段:邹欣。 2. 计划阶段:邹欣、刘铁锋、莫瑜。 3. 实现阶段/里程碑(一):上述全部人员,加上李东、张晓、陈远、高霖(负责封面设计)。 4. 实现阶段/里程碑(二):上述全部人员,加上梁举、胡睿。 5. 稳定阶段:上述全部人员,加上博文视点的编辑们。 6. 发布阶段:邹欣、刘铁锋和博文视点的编辑们。

阅读全文

与程序员邹欣相关的资料

热点内容
如何下载好大夫app 浏览:962
linux查看txt 浏览:151
linux硬盘格式化命令 浏览:518
神舞幻想存档放哪个文件夹 浏览:650
怎样把pdf转为图片 浏览:335
51单片机指令jz 浏览:91
ug后处理算法更改 浏览:370
河南服务器负载均衡是什么 浏览:684
docker容器执行命令 浏览:152
程序员成本管理思路 浏览:171
租界租界pdf 浏览:624
ipad上pdf 浏览:647
程序员没钱买房完整版 浏览:815
贞观政要pdf 浏览:713
php打印错误信息 浏览:337
zec是什么压缩机 浏览:286
vivov3如何刷安卓60 浏览:180
平板电脑开机解压 浏览:917
平板教师上网课用什么app 浏览:888
一遵命令 浏览:276