分类 观点 下的文章

Big Data Marriage

Big Data Marriage

这幅漫画是作者假借大数据来吐槽自己的老婆太唠叨了。

也是一个非常有意思的比喻,作为男性可能都有所体会,在没有结婚的时候,甚至是说,单身的时候,自己的生活过的清净而惬意。一旦你结了婚,你的妻子为了生活而忙碌,便开始关注生活中的点点滴滴,会给你说大量的话,传递大量的信息,这何尝不是一种“大数据”呢?

via: https://turnoff.us/geek/bigdata-marriage/

作者:Daniel Stori 译者&点评:Bestony 校对:wxy 合成:GHLandy

本文由 LCTT 原创编译,Linux中国 荣誉推出

(LCTT 译注:本文标题 “The root of all eval” 影射著名歌曲“The root of all evil”(万恶之源))

唉,eval 这个函数让我爱恨交织,而且多半是后者居多。

$ perl -E'my $program = q[say "OH HAI"]; eval $program'
OH HAI

eval 函数在 Perl 6 中被重命名为 EVAL 时,我感到有点震惊(这要追溯到 2013 年,在这里讨论规范之后)。我一直没有从内心接受这样这样的做法。虽然这是个很好的意见,但是在这个意见上我似乎或多或少是孤独的。

理由是“这个函数真的很奇怪,所以我们应该用大写标记”。就像我们用 BEGIN 和其他 phaser 一样。使用 BEGIN 和其他 phaser,鼓励使用大写,这点我是同意的。phaser 能将程序“脱离正常控制流”。 但是 eval 函数并不能。(LCTT 译注: 在 Perl 6 当中,phaser 是在一个特定的执行阶段中调用的代码块。)

其他大写的地方像是 .WHAT 这样的东西,它看起来像属性,但是会在编译时将代码变成完全不同的东西。因为这发生在常规情况之外,因此大写甚至是被鼓励的。

eval 归根到底是另一个函数。是的,这是一个潜在存在大量副作用的函数。但是那么多的标准函数都有大量的副作用。(举几个例子:shelldieexit)你没看到有人呼吁将它们大写。

我猜有人会争论说 eval 是非常特别的,因为它以正常函数所没有的方式钩到编译器和运行时里面。(这也是 TimToady 在将该函数重命名的提交中的提交消息中解释的。)这是一个来自实现细节的争论,然而这并不令人满意。这也同样适用与刚才提到的那些小写函数。

雪上加霜的是,更名后 EVAL 也更难于使用:

$ perl6 -e'my $program = q[say "OH HAI"]; EVAL $program'
===SORRY!=== Error while compiling -e
EVAL is a very dangerous function!!! (use the MONKEY-SEE-NO-EVAL pragma to override this error,
but only if you're VERY sure your data contains no injection attacks)
at -e:1
------> program = q[say "OH HAI"]; EVAL $program⏏<EOL>

$ perl6 -e'use MONKEY-SEE-NO-EVAL; my $program = q[say "OH HAI"]; EVAL $program'
OH HAI

首先,注入攻击是一个真实的问题,并不是一个笑话。我们应该互相教育对方和新手。

其次,这个错误消息("EVAL is a very dangerous function!!!")完全是恐吓多于帮助。我觉得当我们向人们解释代码注入的危险时,我们需要冷静并且切合实际,而不是用三个感叹号。这个错误信息对已经知道什么是注入攻击的人来说是有意义的,对于那些不了解这种风险的人员,它没有提供任何提示或线索。

(Perl 6 社区并不是唯一对 eval 歇斯底里的,昨天我偶然发现了一个 StackOverflow 主题,关于如何将一个有类型名称的字符串转换为 JavaScript 中的相应构造函数,一些人不幸地提出了用 eval,而其他人立即集结起来指出这是多么不负责任,就像膝跳反射那样——“因为 eval 是坏的”)。

第三,“MOKNEY-SEE-NO-EVAL”。拜托,我们能不能不要这样……汗,启用一个核弹级的函数时,就像是猴子般的随机引用和轻率的尝试,我奇怪地发现启用 EVAL 函数的是一个称为 NO-EVAL 的东西。这并不符合“ 最少惊喜 Least Surprise ”原则。

不管怎样,有一天,我意识到我可以同时解决全大写名字问题和该指令的必要问题:

$ perl6 -e'my &eval = &EVAL; my $program = q[say "OH HAI"]; eval $program'
OH HAI

我很高兴我能想到这点子并记录下来。显然我们把它改回了旧名字,这个非常危险的功能(!!!)就又好了。 耶!


via: http://strangelyconsistent.org/blog/the-root-of-all-eval

作者:Carl Mäsak 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

随着需求不断的增加,数据管理也将变得越发复杂。

队列 list 集合 set ,甚至用 映射 map 来解决……

迟早有一天,坐在办公桌前的鸭子爸爸发现,这些只不过都是个“ 堆栈 stack ”而已~

via: https://turnoff.us/geek/java-collections/

作者:Daniel Stori 译者&点评:martin2011qi 校对&合成:GHLandy

本文由 LCTT 原创编译,Linux中国 荣誉推出

在刚刚过去的 4 月 20 日,Docker 公司在德克萨斯州的奥斯汀市召开了 DockerCon 2017 大会。作为当下最受关注的容器公司,我们来看看他们在 DockerCon 2017 上都说了些什么。

快速阅读

  1. Docker 公司将 Docker 项目改名为 Moby Project,Docker 这个名称保留用作其产品名
  2. Docker 公司发布 Linux Kit,这是一个快速构建、安全可移植系统的工具集
  3. Docker 企业版发布,阿里云飞天敏捷版为国内唯一具有全商业版支持能力的容器云平台
  4. 微软为 Docker 站台,为 LinuxKit 提供基于 Hyper-V 的原生支持

Docker 变成了 Moby ?

在本次 DockerCon 上最大的新闻莫过于 Solomon Hykes 宣布 Moby Project 了,这在网上引起了轩然大波,毕竟作为 Docker 这种顶级开源项目,一举一动都会引起人们的关注,更何况是更名?

简单的来说,Docker 公司出于某些考虑,决定将软件产品 “Docker” 和开源项目 “Docker” 区分开来,而 Moby Project 项目将作为开源项目的新名称。Moby 将由开源社区的开发者共同维护。而 Docker 公司会基于 Moby 构建 Docker 社区版 (CE) 和企业版 (EE) 等软件产品。Moby 和 Docker 在逻辑上就像我们所熟知的 Fedora 开源项目和 Red Hat Enterprise Linux 的关系。

经过此次更名,Docker 公司将限制 “Docker” 名称的使用范围,Docker 作为 Docker 公司的注册商标,只能被用于 Docker 的产品(比如社区版、企业版、Docker Hub、Docker Store 等)。项目开源代码的地址也将变为 https://github.com/moby/moby。

编辑点评

更名这么重大的事情在没有充分沟通的情况下进行,导致了不少开发者的不满;Docker 名称的使用范围限制对于 Docker 公司来说,是一个不错的选择,但是对于整个开源项目来说,或许是由盛转衰的开始。从 Docker 到 Moby ,大量的普通用户可能因此而丢失,开发者也可能选择不再对该项目贡献。但反过来说,Docker 公司将继续推动Docker 技术的组件化和开放性,从向 Linux 和 CNCF 基金会贡献 runc 到 containerd,到今天将 Moby Project 交给开发者社区主导。一个初创公司已经为容器开源社区做出了众多贡献,预见的是更多有创意的容器应用可以从开放的社区中孕育出来。

至于项目最终如何,我们将拭目以待。

点击链接,前往 Github 查看开发者们对于 Moby Project 更名的讨论:https://github.com/moby/moby/pull/32691

国内也有相应的讨论:对于 Docker 改名 Moby ,大家怎么看? https://www.zhihu.com/question/58805021

LinuxKit

在本次大会上,还有一个值得大家关注的重磅消息,便是 LinuxKit 的开源发布。

LinuxKit 是一个用来构建安全、可移植、精益的专门为容器服务的操作系统的工具集。它可以构建一个所有的系统服务都是基于容器的非常轻量的操作系统,这样的操作系统最小可以达到 35 MB!

LinuxKit 打包出来的新的操作系统,相比于现在的 Linux 发行版,具有更强的安全型性和易用性,其设计也使其拥有了更强的拓展性。同时,其可移植性也更高。借助 LinuxKit,可以在 Windows 上原生运行 Docker 容器。其本身虽然不是 OS ,但是其产生的产品却实实在在的成为了 CoreOS 之类面向容器的操作系统的竞品。

编辑点评

LinuxKit 作为一个工具,给用户更大的安全防护和选择自由,用户可以根据自己的需要,构建适合自己的 Linux 的最小镜像,借助这样的最小镜像, 最大程度的利用好数据中心和硬件资源。Docker 开始发觉标准的 Linux 发行版的不足。借助于 Moby 和 LinuxKit ,Docker 可以像 CoreOS 一样,掌控底层,但是又不完全和 CoreOS 的路线相同。

国外知名科技媒体 ZDNet 对于此事也有报道,有兴趣的可以去看看:http://www.zdnet.com/article/docker-linuxkit-secure-linux-containers-for-windows-macos-and-clouds/

Docker EE 的发布 和阿里飞天敏捷版支持 Docker 企业版

在 Moby 项目出现的同时,也就意味着 Docker EE (Enterprise Edition) 正式走上台前。

相比于 Docker CE(Community Edition),Docker EE 强化了其安全特性,为企业提供更加安全和可靠的容器服务,提供了一系列的安全组件和认证设施,更加满足企业的安全需求。并通过认证生态系统,笼络了大量的能够为用户提供服务的企业。

此外,Docker 的 CEO Ben 在大会上宣布 Docker 将会在阿里云平台的飞天敏捷版(Apsara Stack Agility)中落地,这是国内第一个支持 Docker 官方企业版(Enterprise Edition,EE)的容器类产品,可以部署在企业自有数据中心环境内,特别适用于企业专有云及混合云场景。

飞天敏捷版深度整合了 Docker 商业版套件和阿里的容器服务,成为国内唯一具有全商业版支持能力的容器云平台,可以部署在客户自有数据中心,包含从容器的创建到运行以及镜像的全生命周期管理。

Ben 在演讲中还提及阿里巴巴电商平台已经全面容器化,能够部署和管控超过几十万容器规模,在双 11 狂欢节稳定支撑了每秒 175000 次的订单交易。并重点并强调说阿里云不但是 Docker 的业务伙伴,同时也将为 Docker 带来大规模容器应用的实践经验。

编辑点评

Docker EE 的出现,虽然说导致了 Docker 项目的更名,但是对于 Docker 公司来说,有了盈利的可能和机会。一个能够盈利、并且活下来的公司,显然更加容易为整个世界作出更大的贡献。而阿里云成为国内首家支持 Docker EE 的产品,也为 Docker 在国内的商业应用打下了坚实的基础。

如果对 Reddit 上关于 Docker EE 和 Docker CE 的讨论有兴趣,可以看看 https://www.reddit.com/r/docker/comments/5x3os0/docker_announces_enterprise_community_editions/

微软为 Docker 站台,提供 Windows 下的 Docker 原生支持

在过去的三年中,Docker 公司和微软公司合作,开发了多款产品。

如今,Windows 开发者也可以在 Windows 基于 Hyper-V 的内核原生地运行 Linux 内核容器。

微软通过 Hyper-V 来支持了 Linux 容器在 Windows 下的运行,给开发者以更好的体验。用户可以选择使用主流的Linux 的操作系统和 Linux Kit 来运行自己需要的容器。

编辑点评

虽然微软已经不再是曾经那个叱咤风云的微软了,但依旧强大,近些年来,微软在开源社区动作频频,不断的开放、自我改变。

相信 Docker 会在微软的帮助下,能够变得更加的完善。

小结

随着 Docker 的不断演进,我们不断的看到更多新的特性被释放出来,但是同样的,随着商业化的不断进行,Docker 公司也开始走上类似红帽公司的道路。从长远的角度来说,商业化是必然的,只有不断的获取盈利,Docker 才能够不断的走下去,持续为我们提供服务。

气人的软件 1

annoying-software 1

软件:

“你总是能够听取他人的意见,

现在是不是为自己切身考虑下呢?

不管怎样,您的操作已经完成。”

——这软件真气人!

气人的软件 2

annoying-software 2

软件:

真的忘记了吗?这已经是您本周第三次忘记密码了!

您是不是该考虑吃药了!

——你才该吃药呢!

气人的软件 3

annoying-software 3

自作聪明的软件,屡屡让人发疯!

气人的软件 4

annoying-software 4

我觉得现在都用 LCD 显示器有一个好处就是,你可以一拳打破而不用担心骨折(流血那种事情不在我们的考虑之中~)。

好气呀!


via:

作者:Daniel Stori 译者:GHLandy 校对:wxy 合成:GHLandy 点评:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出