阅读更多

1顶
1踩

互联网

转载新闻 如何评价一个新技术——以Docker为例

2015-07-30 15:54 by 副主编 mengyidan1988 评论(1) 有3536人浏览
上次与霍炬聊天,霍炬提到他在跟陈皓抬杠,陈皓认为Docker与Java是一个级别的发明,第二年就吸引了所有热门公司的加入。而霍炬认为这太夸张了,毕竟就是个配置管理器嘛。

而我的评价,可能会比陈皓的更高,我认为Docker比Java的级别还要高。而且,这与有多少公司参与无关。甚至可以反过来说:因为Docker极为重要,才会有那么多的公司,在第一时间加入进来。

因此,我也答应霍炬,要写一篇文章,仔细的阐述一下自己的观点。



新技术的三大功效:
  • 提升效率:某种更快的算法

或者更快、或者更省,都是好技术。可以是一个算法,也可以是一种更方便快速开发的框架。可以是更高速的网络带宽,也可以是更省电的低功耗技术。

这些,当然都是极好的。但是,也都不过是某种层面的量变而已。除非提升的幅度,达到百倍、甚至千倍、万倍。
  • 增加选择:一种新的语言

有时候,我们会把这类行为称之为重新造轮子。然而,我们也可以认为,哪怕是做同一件事情,现在也多了一种新的选择。

当然,这并非其价值所在。更重要的益处在于:新的选择,意味着新的思路,新的模式,新的「解法」。

虽然,在做这件事情本身,也许并无太多帮助。但是,却可能启发新的创造。
  • 降低门槛:更加简单的工具

有一类技术,并非直接的贡献,而是间接的。原本在这个领域,非要苦学十年以上,才能出师。现在,21天,就能从入门到精通了。以前只有国际巨头才能开发的移动电话,现在一个英语教师,就敢开整了。

但是,降低门槛的技术,往往具有颠覆性的价值。一个行业,只有100人能参与,和有100万人能参与,将会带来绝对意义上的不同。很多时候,虽然降低门槛,并不能真正化解深层次的复杂性。但是,却会吸引更多的聪明人,来一起思考和解决问题。

繁荣之后,一切皆有可能。
如何给docker定位?
  • docker所封装的容器技术,带来了更高的效率
  • 以docker容器为代表的虚拟化模式,是一种新的选择,将为架构设计带来新的启发
  • docker-registry、dockerfile、docker-compose等相关技术,大大降低了参与到这一容器化浪潮的门槛

综上所述:我认为docker是一种极具潜力的新技术。正因为其潜力巨大,才吸引了众多巨头、众多企业、众多散户以及众多一线研发者的共同热捧。
题外话
事实上,我上面画的那个模型,是自己生造的。甚至可以算是为Docker度身定制的。在以上三个要素之外,还有其他一些评价新技术的标准。

从量变到质变
这是我上面刻意模糊的部分。一个技术,能够快2倍、20倍、还是20万倍。将会得到完全不同的评价。

飞行速度是否能超过7.9公里/秒,是完全不同的两重境界。

创造一个新行业,甚至更多行业
在电视机出现之前,不会有电视演员,不会有现场直播,不会有主持人,不会有...沙发土豆。

能够令整个世界因此而不同的新技术。岂是小小的docker可比?

危害性
似乎,IT行业最牛的技术,也不太会有啥危害性。前一阵热炒的人工智能,也不过是某种夸张100倍之后的危言耸听而已。

毕竟,一种新技术,都无法威胁世界和平,能有多了不起?比起物理学家、化学家,咱们这些搞IT的人,简直弱爆了。

本文转自:简书
作者:庄表伟
  • 大小: 38.1 KB
来自: 简书
1
1
评论 共 1 条 请登录后发表评论
1 楼 戢_时光 2015-08-03 09:50
前言不搭后语  看得也很幸苦  可惜标题用的太大了  

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 跟我一起写 Makefile(四)

    书写规则————规则包含两个部分,一个是依赖关系,一个是生成目标的方法。在Makefile中,规则的顺序是很重要的,因为,Makefile中只应该有一个最终目标,其它的目标都是被这个目标所连带出来的,所以一定要让make知道你的最终目标是什么。一般来说,定义在Makefile中的目标可能会有很多,但是第一条规则中的目标将被确立为最终的目标。如果第一条规则中的目标有很多个,那么,第一个目标会

  • 7.Makefile目标文件搜索(VPATH和vpath)

    我们都知道一个工程文件中的源文件有很多,并且存放的位置可能不相同(工程中的文件会被放到不同的目录下),所以按照之前的方式去编写 Makefile 会有问题。 我们之前列举的例子,所有的源文件基本上都是存放在与 Makefile 相同的目录下。只要依赖的文件存在,并且依赖规则没有问题,执行 make命令整个工程就会按照对我们编写规则去编译,最终会重建目标文件。那如果需要的文件是存在于不同的路径下,在编译的时候要去怎么办呢(不改变工程的结构)?这就用到了 Makefile 中为我们提供的目录搜索文件的功能。 常

  • makefile vpath变量

    在讲vpath之前,我们首先了解以下makefile文件。 在类Unix系统中,当我们使用源码编译某个软件的时候,我们会使用confiure,make,make install这三个命令,其中cofigure生成makefile文件,make和make install编译和安装。makefile可以理解为一个脚本文件,使用make命令工具解析,其中定义了一系列的编译规则,如哪些文件需要先编译,哪...

  • makefile规则

    makefile中的规则 规则的一般形式: target: normal-prerequisites | order-only-prerequisites ; commands commands makefile的构成主体是各种规则。无论是什么形式的规则,都会描述一个三元组:目标、必要条件、命令。一个规则可以同时描述一个或者多个甚至无数个工作目标(其实是无数个规则构成的模式),工...

  • makefile 路径设置

    本文转自:http://weihuachao1984.blog.163.com/blog/static/328712862009510105226885/ 开始接触Makefile已经有好几个月了,最近想好好学习学习但是一个简单的问题就卡壳了很简单的一个问题|-- Makefile|-- include|   `-- hello.h`-- src    |-- hello.cpp 

  • linux中C的Makefile多个文件目录,以及VPATH的简单示例

    关于makefile多个文件夹的简单应用

  • Makefile VPATH/vpath的使用

    1. VPATH通过变量“VPATH”可以指定依赖文件的搜索路径,当规则的依赖文件在当前目录不存在时,make会在此变量所指定的目录下去寻找这些依赖文件。 2. vpathvpath不是一个变量,而是一个make的关键字,它实现了选择性地搜索。它可以为不同类型的文件(由文件名区分)指定不同的搜索目录。 ...

  • Makefile详解 --- 从入门到精通 (make、cmake、gmake、scons、ninja)

    什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。因为,makefile关系到了整个工程的编译规则。

  • makefile中的函数

    文章目录1 foreach函数2 wildcard函数3 patsubst函数 1 foreach函数 语法: $(foreach var,list,text) 简单地说,就是 for each var in list, change it to text。 对list中的每一个元素,取出来赋给var,然后把var改为text所描述的形式。 例子: objs := a.o b.o dep_fil...

  • 跟我一起写 Makefile(二)

    三、make是如何工作的在默认的方式下,也就是我们只输入make命令。那么,    1、make会在当前目录下找名字叫“Makefile”或“makefile”的文件。    2、如果找到,它会找文件中的第一个目标文件(target),在上面的例子中,他会找到“edit”这个文件,并把这个文件作为最终的目标文件。    3、如果edit文件不存在,或是edit所依赖的后面的 .o 文件的文

  • makefile:4:***缺少分隔符。 停止

    This is my makefile: 这是我的makefile: all:ll ll:ll.c gcc -c -Wall -Werror -02 c.c ll.c -o l

  • makefile:4: *** missing separator. Stop.

    今天在编写蜂鸣器的驱动程序时,makefile文件是这样: CROSS=arm-linux- all: beep beep: beep.c $(CROSS)gcc -o beep beep.c $(CROSS)strip beep clean: @rm -vf beep *.o *~   结果make的时候一直出错,错误是makefile:4: *** missing separ...

  • 从0开始教你编写Makefile文件

    编写Makefile第一步,了解什么是Makefile?每当我们写大型项目时,一般需要很多源文件,源文件会在不同的目录中的文件夹里面包含着,这样我们所有的源文件不会在一个文件中包含,用gcc-omain所有的.c文件来编译,就很麻烦了,你需要记住所有的.c文件,那么为了方便编译链接,就此诞生。在学习Makefile之前,首先介绍一下make命令,make命令是GNU的工程化编译工具,它用于编译大量互相关联的源代码,使用它可以实现项目的工程化管理,提高开发效率。.obj.o.lib.a)。..........

  • Makefile基本语法

    1、Makefile基本格式: make所看到的第一项规则会被当做默认规则使用。 一个规则可分成三个部分: 目标:依赖1 依赖2。。。 命令 注意:命令前必须使用有一个制表符()。 例:  foo.o: foo.c foo.h gcc -c foo.c 当要求make执行一条规则时,它首先找到目标和前提条件指出的文件。如果没有任何前提条件都有一条关联规则,那么

  • 跟我一起写Makefile(整理版)

    跟我一起写Makefile陈皓(博客地址:http://blog.csdn.net/haoel/article/details/2886)整理的PDF文件:http://download.csdn.net/download/xiaoshuai537/102620891. makefile很重要什么是makefile?或许很多Winodw...

  • 跟我一起写 Makefile(三)

    Makefile 总述———————一、Makefile里有什么?Makefile里主要包含了五个东西:显式规则、隐晦规则、变量定义、文件指示和注释。1、显式规则。显式规则说明了,如何生成一个或多的的目标文件。这是由Makefile的书写者明显指出,要生成的文件,文件的依赖文件,生成的命令。2、隐晦规则。由于我们的make有自动推导的功能,所以隐晦的规则可以让我们比较粗糙地简略地书

  • 从零开始编写Makefile

    最近在学习Linux下的C编程,买了一本叫《Linux环境下的C编程指南》读到makefile就越看越迷糊,可能是我的理解能不行。 于是google到了以下这篇文章。通俗易懂。然后把它贴出来,方便学习。 后记,看完发现这篇文章和《Linux环境下的C编程指南》的makefile一章所讲述的惊人的相似,只是这篇文章从一个实例切入,在有些地方比较好理解。能让人看懂就是...

  • makefile 书写规则重点

    <br />在Makefile中,规则的顺序是很重要的,因为,Makefile中只应该有一个最终目标,其它的目标都是被这个目标所连带出来的,所以一定要让 make知道你的最终目标是什么。 <br />一般来说,定义在Makefile中的目标可能会有很多,但是第一条规则中的目标将被确立为最终的目标。如果第一条规则中的目标有很多个,那么,第一个目标会成为最终的目标。make所完成的也就是这个目标。

  • makefile学习(二):makefile的结构

    2.makefile的结构 makefile的意义 makefile用于定义源文件间的依赖关系 makefile说明如何编译各个源文件并生成可执行文件 makefile的基本结构 targets (目标) 通常是需要生成的目标文件名 make所需执行的命令名称 targets可以包含多个目标,使用空格对多个目标进行分隔。不带参数时,make将以文件中定义的第一个目标作为这次运行的目标。 p...

Global site tag (gtag.js) - Google Analytics