范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

工作六年后,我对软件开发的认知转变

  前言
  大家好,在下蛮咕咕(我是"鸽"王),好久不见啊。
  最近我司已经放假过年了,在家里就不免会多逛一些"稀奇古怪"的网站,通过阮一峰的每周新闻,发现了一篇比较不错的英文文章。
  里面的大部分观点我都比较认同,在这里做了一个比较接地气的翻译,分享给大家。
  正文
  在软件产业工作六年后,我对软件行业的一些想法发生了改变。
  以下这些观点是我以前内心比较矛盾,但是现在坚信的事情:
  当你工作在一个开发人员众多且拥有不同开发水平的小组中,使用强类型语言显然更为合适。
  站会(敏捷开发中的站立会议)对于跟进团队中新手的进度来说,非常有用。
  敏捷开发中的迭代复盘会,是有其意义的,前提是为了纠正过往迭代的失误(比如发现一些"这样做真蠢!"的故事),而不是在一些‘敏捷大师’的教条下,浪费大家的时间。
  软件架构比任何东西都要重要。一个好的抽象,就算是实现的比较拉胯,对于代码来说伤害非常小。但是如果没有好的抽象,就算实现的再漂亮,那也是在堆屎,对代码伤害极大。
  Java并不是那么烂(译者注:看来大佬对Java怨念颇深)。
  炫技的代码通常并不是好代码,一个清晰明了的代码比任何代码都好。
  你永远想象不到垃圾代码能写的多么奇葩。
  所谓的"最佳实践(Best Practise)"通常是有特定背景的,不具有广泛的适用性。盲目地追随他们会使你成为一个蠢货。
  在不需要的时候强行去设计高度可伸缩的系统,会让你成为一个糟糕的工程师。
  代码静态分析是很有用的。
  DRY(Don"t repeat yourself)不要造轮子:通常是用于避免一个特定的问题,而不是作为一个终极目的,所以不要盲目追求没有重复。
  通常情况下,RDBMS(关系数据库)优于 NoSql (特指非关系数据库)。
  函数式编程仅仅是另一种编程手法,而不是灵丹妙药。
  以下是我这一路以来了解到并认可的观点:
  第一,YAGNI(非必要时不加入新代码), 其次, SOLID(面向对象设计), 第三, DRY(不要重复造轮子),按照这个优先级去写代码。
  铅笔和纸是最好的编程工具,而且经常会用到。
  用纯粹性换取实用性通常是个不错的选择。
  往项目中增加更多的技术框架,通常不是个好选择。
  直接与客户交谈总是能在更短的时间内,通过更高的准确性来暴露更多的软件问题。
  "可伸缩性"这个词在软件工程师的头脑中有一种神秘而令人震惊的力量。仅仅这一句话就能把他们搞的心力憔悴。
  尽管被称外人称为"工程师",但大多数开发人员的决定都是根据个人喜好或者"看心情",没有数据的支持。
  有90%,甚至93%的项目经理明天可能就会消失,并且并不会造成影响,甚至会提升效率。(译者注:这个原文意思不知道我理解的对不对)
  在完成了100多次面试之后,我依然不知道如何让面试变得更好,。(译者注:面试很难真正看清一个人的开发水平)
  以下是这么多年来我依然不变的观点:
  过分强调代码风格、规则或其他细节的人是极端分子,毫无意义。
  代码覆盖率对于提升代码质量没有丝毫帮助。
  在大多数情况下,大应用(Monoliths)的效果是很好的,并不一定要细分成非常复杂的微服务。
  无脑信奉TDD(测试驱动开发)的人是最糟糕的,他们脆弱的小脑袋无法处理不同工作流程的存在。
  在10年后,让我们再看看,这些观点是否会发生变化。
  英文原文
  Software development topics I"ve changed my mind on after 6 years in the industry.
  Things I now believe, which past me would"ve squabbled with:
  Typed languages are better when you"re working on a team of people with various experience levels
  Standups are actually useful for keeping an eye on the newbies.
  Sprint retrospectives have their place so long as they"re for actual course correction (i.e. "holy shit, that went poorly!") and not some god awful "agile" / "scum master" driven waste of everyone"s time
  Software architecture probably matters more than anything else. A shitty implementation of a good abstraction causes no net harm to the code base. A bad abstraction or missing layer causes everything to rot.
  Java isn"t that terrible of a language.
  Clever code isn"t usually good code. Clarity trumps all other concerns.
  Bad code can be written in any paradigm
  So called "best practices" are contextual and not broadly applicable. Blindly following them makes you an idiot
  Designing scalable systems when you don"t need to makes you a bad engineer.
  Static analysis is useful DRY is about avoiding a specific problem, not an end goal unto itself. In general, RDBMS > NoSql Functional programming is another tool, not a panacea.
  Opinions I"ve picked up along the way
  YAGNI, SOLID, DRY. In that order.
  Pencil and paper are the best programming tools and vastly under used
  Trading purity in exchange for practicality is usually a good call
  Adding more technology is rarely a good call
  Talking directly to the customer always reveals more about the problem, in less time, and with higher accuracy
  The word "scalable" has a mystical and stupefying power over the mind of the software engineer. Its mere utterance can whip them into a depraved frenzy. Grim actions have been justified using this word
  Despite being called "engineers," most decision are pure cargo-cult with no backing analysis, data, or numbers
  90% – maybe 93% – of project managers, could probably disappear tomorrow to either no effect or a net gain in efficiency.
  After performing over 100 interviews: interviewing is thoroughly broken. I also have no idea how to actually make it better.
  Old opinions unchanged:
  People who stress over code style, linting rules, or other minutia are insane weirdos
  Code coverage has absolutely nothing to do with code quality
  Monoliths are pretty good in most circumstances
  TDD purists are just the worst. Their frail little minds can"t process the existence of different workflows.
  We"ll see which of these have flipped or changed at year 10.
  小尾巴
  之前也翻译过一篇比较经典的外文文章,感兴趣的朋友可以回看下之前的文章:
  通俗易懂的生产环境Web应用架构介绍
  参考
  https://chriskiehl.com/article/thoughts-after-6-years
  关注我
  我是一名奋斗在一线的互联网后端开发工程师。
  主要关注后端开发,数据安全,边缘计算等方向,欢迎交流。
  各大平台都能找到我
  微信公众号:后端技术漫谈
  Github:@qqxx6661
  CSDN:@蛮三刀把刀
  知乎:@后端技术漫谈
  掘金:@蛮三刀把刀
  腾讯云+社区:@后端技术漫谈
  博客园:@后端技术漫谈
  BiliBili:@蛮三刀把刀
  原创文章主要内容
  后端开发实战
  后端技术面试
  算法题解/数据结构/设计模式
  生活趣闻
  个人公众号:后端技术漫谈

姑娘们,警惕父母隐形的重男轻女我一直觉得重男轻女是父母的选择,我个人觉得做女儿的抱怨了也没用,这个根深蒂固的观念真的没法改变。女儿们要做的就是管住自己的心,自私一点儿,少去做舔狗,你一面付出,一面抱怨的样子真丑负责任的父母和不负责任的父母差距有多大?我没有亲自接触别人家的父母,仅以我父母和我公婆为例。其中,我认为,我的父母是不负责任,或者伪负责任,公婆对孩子是真负责任。我父母,从我记事起,两人没有一个正经工作,包括当农民都不认想让孩子成绩好,思维训练少不了!这200页练习纸,快给孩子收藏很多学生反映数学复杂难懂,其实数学学习不是要死记硬背,而是要掌握方法。数学思维的训练需要一套完成的训练方法,经过思维的训练,数学成绩一定可以大大提高。今天苏妈分享的这套思维训练,分怀孕八个多月了,不想要孩子怎么办从怀孕到现在一直都不想要肚子里的孩子,我真的好痛苦,一想到我女儿在家里盼着我回家过年,我就好难过好难过。她不知道妈妈永远回不了那个家了,她不知道妈妈肚子里又有了一个宝贝,她不知道爸小学数学乘法运算汇总(技巧口诀)每天10分钟,计算速度飞涨为何同样的题目,孩子们的计算能力却有如此大的差别呢?很多原因就是有的孩子掌握了一些算法的速算秘籍,秘籍掌握,再加上反复的去练习,很多孩子就可以达到一口算,和见题报数的能力。今天苏妈172个自然拼读动画视频,看完你家孩子见到单词也会读会写自然拼读的学习,有两个关键点一是掌握发音规律,特别是要知道哪些字母是可以组合在一起发音的还有一个就是掌握准确的发音,这一点也是很多家长感觉力不从心的,比如担心自己的发音不准确,会误小学16年级奥数天天练,锻炼思维能力(可打印,附答案!)逻辑思维强的孩子,学东西总比别人快一拍,上课听完一遍,就能掌握要点,平时做题也总是能找到更巧妙的解决办法。如果你希望孩子越来越聪明,我建议你一定要重视培养孩子的逻辑思维能力。今天,数感绝不是简单的数数,21天数感能力练习题,你给孩子启蒙了吗?数感绝不是简单的数数,而是知道,数量的变化是怎么来的。理解数量和数字的关系之后,再慢慢延伸到数字和数字之间的关系。今天苏妈分享的这套学而思21天数感练习册适用于36岁小朋友,不仅能学而思21天数感练习,只需21天练就数字运用能力,小学数学不必愁数学启蒙要抓住37岁数字敏感期。为什么要进行数感训练呢?有的小朋友计算一直掰手指,不知道数字怎么比较大小,不理解不同形式的数字,让他数数字总是从1开始数,这就是数感缺失。36岁作为邻居家的倒霉事早上去买早餐的路上,接到邻居的微信语音电话,她让我去她家楼下看看她的电动车充电器还在不在,如果在的话,帮她收起来。我住五单元,她住六单元,几步之遥。我告诉她我在外边,等回去了就帮她抑郁家庭恢复的日常(五)中午吃饭的时候,小狗花花看到我们吃的是饺子,一个劲的乞讨,它最爱吃饺子了。我给它第一个的时候,它很快就吃了。又给它第二个的时候,它就不舍得吃,叨起来跑到阳台上去藏起来了。我歪头看它
大约在冬季未能天长地久,别问谁是谁非根据饶雪漫同名小说改编,马思纯霍建华领衔主演魏大勋张瑶林柏宏文淇主演侯佩岑齐秦特别出演的电影大约在冬季自开拍就引起了很多人的关注,包括原著粉在内的年轻观众都对电影充满期待。电影大约老婆怀孕6个月,一次产检没陪你是不是好男人,网友说了不算数这是阿呆爸育儿的第355篇原创文阿呆爸昨天上午,陪老婆去产检了。严格说来,这是老婆怀孕6个多月来,我第一次陪她做产检。也就是说此前的6个月产检,我一次也没陪过。老婆怀孕,产检都不陪又一对明星夫妻宣布离婚好的婚姻里这几点一定少不了前段时间,微博热搜挂了一个关于离婚的事情,据说男主最近还挺有名的,因为是脱口秀演员,于是我就爬了墙头看了一下。说起来这俩人我没一个认识,但是这个男的却因为脱口秀上过热搜,混个脸熟。意外到来的时候从来不会提前打招呼,高以翔猝死,年仅35岁27日凌晨,高以翔在录制节目追我吧晕倒抢救,情况十分严重,当时工作人员就对高以翔进行了心肺复苏,但高以翔未苏醒,随后工作人员将其送至医院抢救,经抢救无效,不幸去世,年仅35岁。高以好学习成就好的未来,孩子为什么讨厌学习?大家好,我是知萌老师,很高兴能和大家一起学习关于亲子教育和亲子关系以及孩子进步的的故事。前面我们聊了一下孩子关于对家庭作业的态度,那么我们今天来了解一下为什么孩子会讨厌学习?在孩子学生不参与社团和班干部竞选,对未来有啥影响?导员的话值得深思一年一度的开学季到了,又有一批准大学生即将进入校园,对于这些学生而言,校园生活是非常值得憧憬期待的,即将离开陪伴自己十余年的父母,和一些陌生的同学一起学习生活,朝夕相处。很多学生都迷案诡影里,跟我一起看音乐家华丽转身,冒险者闪亮登场迷案诡影里,跟我一起看音乐家华丽转身,冒险者闪亮登场说起悬疑推理小说,东野圭吾必然榜上有名。东野圭吾在推理小说中的巨大成就同时也引领了小说写作的新高潮,在严谨的逻辑脱离下,同类型的人生高考只有一次,把握好当下,才能立足于未来关注霸姐数学六月暑气渐浓,又到了一年高考时。今年全国高考报名人数1078万,人数再创历史新高。十年寒窗苦读,一朝即见分晓。在这个庞大数据的背后,是压力,同时也是机会。01hr既然有宝藏男孩藏不住了!靠爆剧圈粉昨天,一部因为剧情过于真实而引发无数话题空降无数热搜的大热剧少年派迎来大结局。这部剧以即将参加高考的高中学生为背景,讲述了四个家庭伴随孩子成长的笑与泪的故事,唠叨的老妈和事佬般的老少年派热播,现实版的教育与成长热播剧少年派近日迎来大结局,剧中人物的走向和成长成为网友热议的话题。特别是其中关于孩子在学习上的教育和引导,让很多父母产生了强烈共鸣。任何事情都可以等,但唯独教育不行。因为孩子成长少年派模范老爸张嘉译少年派的电视剧已播完,又到了不满剧中刀掉太多情节的原著党总结人生收益的季节。钱三一和林妙妙的一秒CP已经有同党把书里的糖渣渣都攥成汁晒出来了,让我这个致力嗑研的人可以腾出手来嗑一下