当谈论开发问题的时候,大家总会提到各种定律。今天Github上,突然出现了一篇定律&法则合集项目,瞬间占据趋势榜第一名!

项目中包含很多定律&法则的解释,但不提倡其中任何一个。

是否应用这些定律和法则始终处于争论状态,而且很大程度上取决于个人喜好以及用在哪里。

15大定律:

7大原则:

原作者把这22条称之为“黑客信条”

不知道除了摩尔定律,你还知道几个那?

原项目链接:

https://github.com/dwmkerr/hacker-laws#hofstadters-law

01、阿姆达尔定律

维基百科:计算机科学界的经验法则,因吉恩·阿姆达尔而得名。它代表了处理器并行运算之后效率提升的能力。阿姆达尔定律是固定负载(计算总量不变时)时的量化标准。

例:如果程序由两部分组成,A部分必须由单个处理器执行,B部分可以并行化,那么执行程序的系统添加多个处理器只能获得有限的好处。

它可以极大地提高B部分的速度 - 但A部分的速度将保持不变。

如图

02、炒作周期&阿玛拉定律

我们往往高估计技术在短期内的影响,并低估长期效应。

Hype Cycle(技术成熟度曲线)是指技术兴奋度度和发展成熟度的直观表现。

如图

03、炒作周期&阿玛拉定律

该定律认为每个系统内都有一定的复杂性不可减少。

系统中的某些复杂性是“无意的”。可能是由于结构不良,错误或者只是解决问题的建模糟糕造成的。

可以减少(或消除)无意的复杂性。

然而,由于要解决的问题固有的复杂性,某些复杂性是“内在的”。

这种复杂性可以移动,但不能消除。

该定律的一个有趣的元素是即使通过简化整个系统,内在的复杂性也不会降低,它会转移给用户,用户必须以更复杂的方式行事。

04、摩尔定律

当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。换言之,每一美元所能买到的电脑性能,将每隔18-24个月翻一倍以上。这一定律揭示了信息技术进步的速度。

05、霍夫施塔特定律

开发所需时间,往往比你预期的要长。

哪怕你考虑了这条定律,所需时间依旧会超过你的预期。

06、帕金森定律

原本是指官僚主义,后来指开发计划中,部分人认为在开发初期效率低下,后期在截止日期接近后疯狂赶进度,从而经常不能在预计日期内完工。

如果和上一条定律结合,那就会得出一个非常悲观的理论,即哪怕拼命加班996/007.依旧很可能不能及时完工。

07、琐碎定律

该定律认为,在团队协作中更多争论会发生在不重要的细节中,而不是最重大的事情上。

在讨论非常专业而且重大的事情时,一般人由于缺乏专业知识,不敢随便发言,以免失言,贻笑大方,因此多半都会肯定(或逃避)该重大方案,而提些与主题无关的鸡毛蒜皮小事。相对的,对于简单的细节,由于平常大家都会接触到而且有相当的认识,反而意见特别多。

更多定律和法则可以查看原项目链接哦

原作者:Dave Kerr

项目链接:https://github.com/dwmkerr/hacker-laws#hofstadters-law

在看这篇文章之前,除了摩尔定律,你还知道哪些可定律那?

Github最火!程序员必须知道22大定律和法则相关推荐

  1. 近一半程序员单身、年薪低于 15 万,程序员扎心现状大调查!

    作者 | 程序员客栈 来源 | 程序员客栈(ID:proginnwx) 根据中国互联网络信息中心(CNNIC)近日发布第 44 次<中国互联网络发展状况统计报告>.截至 2019 年 06 ...

  2. 2018程序员必备的4大网站推荐(代码、编程、SQL等)

    科技时代,程序员是一个热门行业,也是一个高薪行业,很多人很羡慕程序员,其实作为一名合格的程序员,要不断的提升自己,因为科技也在不断进步,所以,接下来小编分享5个程序员必备网站,包括代码.编程.SQL等 ...

  3. Java程序员日常积累-向大神学习(三)

    前言 <Java程序员日常积累-向大神学习>系列是本人根据日常工作中碰到的问题写的一个问题记录,比较琐碎零散. 主要用于记录和忘记时可以有个地方查询.现分享给大家,这是这个系列的第三篇. ...

  4. 程序员必知8大排序3大查找(三)

    前两篇 <程序员必知8大排序3大查找(一)> <程序员必知8大排序3大查找(二)> 三种查找算法:顺序查找,二分法查找(折半查找),分块查找,散列表(以后谈) 一.顺序查找的基 ...

  5. 网传京东某程序员因压力太大,在商品页面置入骂人代码!京东辟谣:不关我们的事,外部商家干的!...

    程序员压力太大,能干出什么事?除了删库跑路,还能偷偷骂人. 前几天,网传京东某程序员因为压力过大,在商品介绍的代码里嵌入了一段骂公司的话. 据爆出的聊天记录中得知,这段代码只有在夜间模式下才能看见.虽 ...

  6. 程序员必备的10大健康装备!

    前言 做为程序员,为了实现理想而奋斗不懈,每天对着电脑辐射坐在工位上拼搏8小时甚至更久,这种如同机器旁边的机器般的工作对于健康的损耗何其之大?再这么下去,还真得应了:"职务不高,工资不高,血 ...

  7. 为什么很多Java程序员都转行做大数据了?

    如今大数据发展的越来越成熟.各大企业纷纷成立大数据部门.尤其BAT等一线互联网公司每天处理的数据量都是TB级别.大数据部门已成为这些企业的核心部门,数据已成为企业最核心的资产. 但是大数据人才缺口巨大 ...

  8. 阿里p7程序员:生活压力大,有房贷不敢离职,离职股票就没了

    (阿里p7程序员:生活压力大,有房贷不敢离职,离职股票就没了) 作为一名程序员,虽然社会经验不多,但是,好多生活经验告诉我们,人并不是薪水越高压力就越小,这中间没有必然的联系,有人虽然开着轿车,百万年 ...

  9. python代码少的作品_原创 8行python代码展示程序员从入门到大神(或跑路)的全部状态...

    一行python代码可以做什么? 人生苦短,我用python.python的世界里无处不在的简洁和短小,往往一行代码可以实现很多有意思功能. 你敢想象你从入门python代码.网络达人.反重力怪才.爱 ...

最新文章

  1. IOS开发之自定义Button(集成三种回调模式)
  2. becon帧 wifi_WireShark对于WIFI数据帧的分析
  3. 伪指令endp告诉汇编程序_全国2004年10月高等教育自学考试微型计算机原理及应用试题历年试卷...
  4. 关于提示对话框的总结
  5. javacript 布尔型
  6. SQL点滴35—SQL语句中的exists
  7. Pandas系列(十)Merge语法
  8. 静态HTML模板渲染
  9. react根据中文获取拼音_学前家长建议收藏:你要的「趣味拼音课」来了
  10. P1957 口算练习题
  11. Centos7.8下Nmap的安装与使用
  12. ENVI_建模工具的使用——以“指数计算”批处理为例
  13. 希尔伯特-黄变换(HHT)的前世今生——一个从瞬时频率讲起的故事
  14. php开发自己的composer包
  15. C++ GUI Programming with Qt4 Second Edition 之 附录A.3 Mac系统Qt的安装
  16. 实例分割总结 Instance Segmentation Summary
  17. 服务器及存储产品默认管理IP地址及用户名密码
  18. 不是这个社会浮躁了,是我们的眼睛浮躁了。
  19. 数据库时间出现'0000/00/00',难道我穿越了?
  20. AndroidVideoCache研究

热门文章

  1. 解决Windows远程桌面服务无法复制粘贴:重启rdpclip.exe
  2. 华为C8500S 超详细线刷刷机教程
  3. 在中欧重压下,苹果将采用Type-C接口,不过贪婪的它玩了小花招
  4. NetBSD 从pkgsrc安装软件
  5. 使用python玩转二维码!速学速用!⛵
  6. 51信用卡 Android 自动埋点实践
  7. Hive数据模型是什么?
  8. 浅析Python优势所在
  9. ORA-00911: 无效字符问题
  10. 如何驯服初级小怪——printf(主线任务)