带你读《2022技术人的百宝黑皮书》——关于程序员的职业操守,从《匠艺整洁之道》谈起(3)

简介: 带你读《2022技术人的百宝黑皮书》——关于程序员的职业操守,从《匠艺整洁之道》谈起(3)

带你读《2022技术人的百宝黑皮书》——关于程序员的职业操守,从《匠艺整洁之道》谈起(2) https://developer.aliyun.com/article/1238261?groupCode=taobaotech




软件开发人员的职业操守


以下摘自 《匠艺整洁之道》 :


为捍卫和维护计算机程序员职业的荣誉,我承诺,尽我的能力和判断力:

我不写有害的代码。

我生产的代码将永远是我最好的作品。我不会故意让那些在行为或结构上有缺陷的代码累积起来。

我将在每次发布时提供快速、确定和可重复的证据,证明代码的每个元素都能正常工作。

我将经常进行小规模的发布,不妨碍其他人的进展。

我将无畏地、毫不留情地利用一切机会改进我的创作。我绝不让它变更差。

我将尽我所能尽可能地提高自己和他人的生产力。我不会做任何降低生产力的事。

我将一直确保其他人能够补上我的位置,我也能够为其他人补位。

我将给出在数量级和精确度上都靠谱的预估。我不会做出没有把握的承诺。

如果我的程序员同事拥有足够的操守、标准、纪律和技能,就能赢得我的尊重。任何其他的属性或特征都不会成为我尊重程序员同事的因素。

我永远不会停止学习和改进我的技艺。


程序员的职业操守?


鲍勃大叔提出的这 10 条誓言可以分为三个类型:伤害、集成、团队合作,我们针对这三个类型分别展开聊聊。


关于伤害


我不写有害的代码。


我生产的代码将永远是我最好的作品。我不会故意让那些在行为或结构上有缺陷的代码累积起来。


我将在每次发布时提供快速、确定和可重复的证据,证明代码的每个元素都能正常工作。


何谓伤害


我们编写的软件每时每刻都在对这个社会产生着影响。我们任何无意中的行为,都可能会给这个社会带来意想不到的伤害。


例如 人们发现大众汽车公司的程序员写了一些代码,故意阻挠 EPA 排放测试,影响有关部门对环境危害的评估,

损害了这些汽车驾驶地所有人的健康。


如果我们放任自己,就会对自己,或者身边的人,甚至整个社会造成危害,包括:

1. 对社会造成的伤害

2. 对你的同行造成的伤害

3. 对未来的程序员造成的伤害

4. 对功能/结构造成的伤害


直面伤害


上述大众汽车公司的程序员造成的危害 ,谁该为此负责?


作为程序员的我们,可能会这么说:"我只是在做我的工作,这不是我能控制得了的事情。"但是,如果你明知道这么做会带来不好的后果但还继续这么做了,那你就需要为此后果承担一部分责任。


请不要忘记,公司雇佣你作为软件开发工程师的重要理由之一,是你应该有能力识别出软件可能在什么情况下出问题,你需要在它产生麻烦之前找到它,并且有责任大声说出来。



带你读《2022技术人的百宝黑皮书》——关于程序员的职业操守,从《匠艺整洁之道》谈起(4) https://developer.aliyun.com/article/1238258?groupCode=taobaotech

相关文章
|
机器学习/深度学习 网络架构 人工智能
AI - MoE(Mixture-of-Experts)结构
AI - MoE(Mixture-of-Experts)结构
471 1
阿里云的 Ruby Gem 源又可用了
阿里云的 Ruby Gem 源又可用了
ArcGIS:解决ArcGIS一添加数据就闪退的问题.
ArcGIS:解决ArcGIS一添加数据就闪退的问题.
841 0
|
运维 资源调度 Kubernetes
阿里巴巴超大规模Kubernetes基础设施运维体系揭秘
在过去近三年时间,Kubernetes架构在阿里巴巴集团经历了飞速发展:既支持了集团统一调度超大规模场景,又支持了大批云上云产品用户,还在支持OXS区容器化。经过这些年的发展,我们也逐渐锤炼出了K8S Serverless全托管稳定性运维体系。这些运维和稳定性能力不是K8S原生就具备的,而是在大量实践和失败过程中的沉淀出来的系统稳定性加固能力。
阿里巴巴超大规模Kubernetes基础设施运维体系揭秘
|
11月前
|
监控 持续交付 调度
Nacos支持哪些应用场景
Nacos支持哪些应用场景
|
10月前
|
前端开发
CSS中nth-child 的实用技巧
CSS中nth-child 的实用技巧
CSS中nth-child 的实用技巧
|
机器学习/深度学习 算法
【Deepin 20系统】机器学习分类算法模型xgboost、lightgbm、catboost安装及使用
介绍了在Deepin 20系统上使用pip命令通过清华大学镜像源安装xgboost、lightgbm和catboost三个机器学习分类算法库的过程。
381 4
|
JavaScript vr&ar 数据库
一篇文章讲明白JS获取当前日期
一篇文章讲明白JS获取当前日期
313 0
|
Java Maven 流计算
在Docker跑通Flink分布式版本的WordCount
在Docker跑通Flink分布式版本的WordCount
159 0
Python----统计字符串中的英文字母、空格、数字和其它字符的个数。
Python----统计字符串中的英文字母、空格、数字和其它字符的个数。