?

Github一天标星1k+,程序员需要知道的那些定理和法则

Github一天标星1k+,程序员需要知道的那些定理和法则

大数据文摘出品

编译:蒋宝尚、曹培信

摩尔定律知道么?

帕金森定律讲的又是啥?

作为一名合格的开发人员,除了本身码力超强外,或多或少要知道几条“”潜规则”,例如依赖倒置原则、鲁棒性原则......

关于开发人员必须要知道的定义、原则以及理论,一位名叫Dave Kerr的小哥哥在Github上专门开了个科普帖子,为广大程序员介绍必备的定理。

Github一天标星1k+,程序员需要知道的那些定理和法则

他将这个项目称为:黑客信条(hacker-laws)。

下面文摘菌为大家编译几条,具体内容,请大家移步GitHub☟

https://github.com/dwmkerr/hacker-laws

阿姆达尔定律

一个计算机科学界的经验法则,因吉恩·阿姆达尔而得名。它代表了处理器并行运算之后效率提升的能力。

并行计算中的加速比是用并行前的执行速度和并行后的执行速度之比来表示的,它表示了在并行化之后的效率提升情况。

阿姆达尔定律

可以看出,即使是一个50%可并行的程序,在超过10个处理单元的情况下也几乎没有什么提高,而一个95%可并行的程序,在超过1000个处理单元的情况下,仍然可以显著提高速度。

炒作周期和阿马拉定律

“人们总是高估一项科技所带来的短期效益,却又低估它的长期影响。”

—— Roy Amara

 

Hype Cycle(技术成熟度曲线)是制技术兴奋度度和发展成熟度的直观表现,最初由Gartner公司提出,如下图所示:

Github一天标星1k+,程序员需要知道的那些定理和法则

简而言之,这个周期表明,新技术及其潜在影响通常会引发一阵高度关注。技术团队经常马不停蹄进入这些技术领域,但往往无功而返。这可能是因为该技术还不够成熟,或者现实应用还没有完全实现。经过一段时间后,技术的能力提高,使用它的实际应用机会增加,团队最终可以取得成功。Roy Amara最简洁地总结了这一点——“人们总是高估一项科技所带来的短期效益,却又低估它的长期影响。”。

霍夫施塔特定律

表面上和帕金森定律截然相反的霍夫施塔特定律表明:“即使将霍夫施塔特定律考虑在内,你在一件事上花费的时间总是要比想象得要多。”

该定律与帕金森定律看起来相互矛盾,但其实两者可以并行使用。霍夫施塔特定律表明,在给一个复杂的项目制定截止期限的时候,人们很容易自信过度。

帕金森定律

帕金森定律(Parkinson's Law)是官僚主义或官僚主义现象的一种别称,被称为二十世纪西方文化三大发现之一。也可称之为“官场病”、“组织麻痹病”或者“大企业病”。

帕金森得出结论:在行政管理中,行政机构会像金字塔一样不断增多,行政人员会不断膨胀,每个人都很忙,但组织效率越来越低下。这条定律又被称为“金字塔上升”现象。

将帕金森定律与霍夫施塔特定律结合会得出一个更加悲观的结论:你的工作范围会不断扩大,结项日期遥不可及。

The Unix Philosophy

这一理念表明的是:小即是美,程序做好一件事即可;程序员尽可能早地建立原型 ;可移植性比效率更重要 。另外数据应该保存为文本文件 ,尽可能地榨取软件的全部价值 。使用shell脚本来提高效率和可移植性 、避免使用可定制性低下的用户界面,所有程序都是数据的过滤器。

具体内容,请大家移步GitHub:https://github.com/dwmkerr/hacker-laws

【本文是51CTO专栏机构大数据文摘的原创文章,微信公众号“大数据文摘( id: BigDataDigest)”】

大数据文摘二维码

相关推荐
新闻聚焦
猜你喜欢
热门推荐
  • 微软AI面试题有多难?这里有一份样卷

      究竟什么样的AI人才能被微软这样的巨头聘用呢?今天,文摘君就淘来了几道微软AI 面试题,同时给出了最基本的解答......

    06-25????来源:澎湃新闻网

    分享
  • 全球最聪明的大脑怎么看AI?他们预测了

      2017年AI领域取得了诸多成果。2018年AI又将何去何从?以下是来自世界顶级研究人员和行业领军人物对2018年AI领域发展作......

    02-20????来源:虎嗅网

    分享
  • 2017JavaScript框架战报 - React分战场

      我们来看看与React有关的软件包的生态系统。当Facebook构建React时,就有许多来自开源社区的第三方软件包。为提供完......

    02-27????来源:湖北新闻网

    分享
  • 小白学数据:教你用Python实现简单监督学

      监督学习作为运用最广泛的机器学习方法,一直以来都是从数据挖掘信息的重要手段。即便是在无监督学习兴起的近......

    03-05????来源:今日头条

    分享
  • 现代编程语言Swift、Kotlin等十大有趣功能

      最近学习了一些现代编程语言,比如Reason,Swift,Kotlin和Dart。这些编程语言提供了许多新功能,本文主要分享了我认......

    04-29????来源:祁东新闻网

    分享
  • 领域场景分析的6W模型

      组成场景的要素常常被称之为6W模型,即描写场景的过程必须包含Who,What,Why,Where,When与hoW这六个要素。......

    04-30????来源:砍柴网

    分享
  • 开源应用服务器WildFly 12发新季度交付模式

      WildFly 12 Final版本现在已经可以下载了,WildFly是一款灵活的开源应用服务器,支持开发人员构建轻量级应用程序。支持......

    05-10????来源:青岛新闻网

    分享
  • 基于Spring Cloud的微服务落地

      微服务架构模式的核心在于如何识别服务的边界,设计出合理的微服务。但如果要将微服务架构运用到生产项目上,......

    06-04????来源:广西新闻网

    分享
  • 为什么阿里工程师纷纷在内网晒代码?

      前阵子,在阿里一个小黑屋里,5名对代码有着极致追求的工程师参与阿里代码领域最高荣誉“多隆奖”的最终角逐。......

    06-08????来源:四川新闻网

    分享
  • 超级大汇总!200多个最好的机器学习、

      我把这篇文章分为了四个部分:机器学习,自然语言处理,python和数学。在每个部分中我都列举了一些主题,但是因......

    09-25????来源:洛阳新闻网

    分享
返回列表
Ctrl+D?将本页面保存为书签,全面了解最新资讯,方便快捷。