【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

2017 新兴技术企业大会:第二日回顾

  • 2017-05-10
  • 本文字数:2284 字

    阅读完需:约 7 分钟

4 月 19 日,第十二届年度新兴技术企业大会(Emerging Technologies for the Enterprise Conference,ETE)在宾州费城山喜来登酒店迎来了第二个活动日。ETE 大会由来自坐落于宾州福特华盛顿的IT 咨询公司 Chariot Solutions 组织举办。大会第二日包括了一个主题演讲,由来自微软的首席项目经理和播客主播 Scott Hanselman 主持。第二日活动还包括了如下演讲嘉宾:GitHub 工程经理 Kyle Daigle 、IBM 首席工程师 Holden Karau 、甲骨文公司 JVM 技术主管 Karen Kinnear 、 Clojure Applied 的联合作者 Alex Miller 和 Symphonia 公司联合创始人 Mike Roberts

专题演讲

播客主播,同时也是来自微软的Outreach & Community(扶贫与社区)、开源项目工作者 Scott Hanselman 带来了题为“后端到前端的历史:从大型主机到编译型JavaScript 以及未来”的演讲,拉开了第二日的序幕。Hanselman 引用了计算机领域早年间(1949-1956)IBM 主席 Thomas J. Watson 曾说过的话:“我想,5 台计算机足以满足整个世界市场。”

Hanselman 专注于早年间万维网与当今新兴的 JavaScript 技术。他说:“HTML 表格曾经是网页开发中最先进的技术。”从早年间的 LiveScript 到如今被人熟知的 JavaScript,他探索了这些年 JavaScript 的进化历程。Hanselman 引用 Secrets of a JavaScript Ninja 这本书的时候,他质疑封面的角色是否真的像一个忍者。他开玩笑道:“嗯,JavaScript 是松散类型的。”

随着 JavaScript 变得更受欢迎, Stack Overflow Stack Exchange 的联合创始人 Jeff Atwood 基于 Berner-Lee 的最小力量法则(The Rule of Least Power)提出了一个推论。这个推论即为人们所熟知的Atwood 定理:“任何可以使用JavaScript 编写的应用终将使用JavaScript 来编写。” 在2011 年,Hanselmans 研究了 JavaScript 是如何成为网页的汇编语言。他声明:“没人在写 JavaScript 了,他们转而使用 jQuery ”。Hanselman 还展示了一个可运行在浏览器中的单行 JavaScript PC 模拟器。这个模拟器包含了一个控制台窗口。

Hanselman 说,由于当今的浏览器有些令人迷惑性的强大,开发者应从网页开发工具中挖掘更多的潜能。他还声明:“浏览器插件已死”。

Hanselman 还讨论了当今云服务技术的崛起与这项技术带来的大规模和易伸缩计算能力。他提出,由于“云计算不关心开发语言的选择”,开发者可以为云计算选择自己需要的开发语言。

尽管网页开发在这些年间有了长足的进步,Hanselman 坚持认为开发者们依旧在“向冷藏柜中发送原料”。他是这样解释的:“大型主机就像冷藏柜,因此在当今我们还在向理论上处于天空中的冷藏柜 — 也就是云 — 发送原料 。”

重要演讲

Java 的未来:模块化及其他。甲骨文JVM 运行时主管 Karen Kinnear

Kinnear 提供了一个关于 Java 9 的综合性介绍,着重于新的模块系统,并检阅了 Java 9 相关的 JEP (JDK Enhancement Proposals,JDK 精进提案)。Java 9 有提高开发者生产力、提升 Java 在云计算的表现的目标。Kinnear 声明,新引入的模块系统可以集成到已有系统中。她向大会展示了模块和包之间交互和访问的细节,以及模块路径与类路径的区别。她还讨论了开发者们如何在出现不兼容问题时,维持向下兼容性,解决将已有系统向 Java 9 移植的问题。

使用Apache Spark 做扩展(或者从一次意外后果中得到的教训) IBM Spark 科技中心首席软件工程师 Holden Karau

Karau 讨论了关于处理包含 DataFrames 和 Datasets 在内的弹性分布式数据集(Resilient Distributed Datasets, RDD)会遇到的挑战。她着重讨论了数据划分,表达了“键偏斜”(key skew)的重要性,也就是键没有平均分布的问题。针对键偏斜可能会导致的数据划分不平衡问题,Karau 分享了一些方法,以避免解决这个问题时可能碰到的陷阱。她强调了把全部有同样键的数据记录聚合到同一记录的groupByKey() 函数,在运用到不平衡数据的时候可能会产生灾难性后果。Karau 还简要概述了Spark Python API, PySpark

Clojure.spec:不使用类型系统表达数据约束。Cloure Applied 联合作者、 Clojure语言提交者 Alex Miller

Miller 介绍了 Clojure.spec,这是一个用来表述数据和函数结构的 Clojure 库。设计上,它为 Clojure 语言提供了自动化属性,如验证、错误报告、共享语义以及测试数据生成。Clojure.spec 不是一个类型系统,它的设计哲学着重于数据本身。Miller 提供了大量源码例子,展示了如何使用 Clojure.spec 与语言核心特性进行配合。

使用Next.js 库开发通用React 应用 Next.js联合作者 Guillermo Rauch

Rauch 将 Next.js 描述成“易用、简洁的通用性 React.js”:通用性,指的是它可以同时运行在服务端和客户端;易用,指的是对大多数常用任务只要一条命令;简洁,指的是它定义了明确的边界,行为稳定并且可预测。他说,利用 Next.js:“可以使用同一个通用软件模型(React)和语言(JavaScript),渲染简单的网页应用或是动态的实时应用。”Rauch 把用 Next.js 重写的 Hacker News 网站作为展示。可以在他的网站上找到他的幻灯片

总结

第二日由25 个演讲组成,话题包括:Java 9、Haskell、TensorFlow、Swift、Apache Spark, Containers、Convox、C#、F#、Agile 和GraphQL。

编者的话

Michael Redlich(原文作者)自 2008 年开始积极参与 ETE 大会,并在最近(2013 年)以成员的身份加入 ETE 指导委员会。

查看英文原文 Emerging Technologies for the Enterprise Conference 2017: Day Two Recap


感谢薛命灯对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

2017-05-10 19:001293

评论

发布
暂无评论
发现更多内容

低代码无代码区别在哪?通过这5点来区别准没错

优秀

低代码 无代码

Vue3, setup语法糖、Composition API全方位解读

yyds2026

Vue

Vue.nextTick核心原理

yyds2026

Vue

Java | if语句和循环结构

陌上

ide Java、 10月月更

算法题学习---链表内指定区间反转

桑榆

算法题 10月月更 C++

鸿蒙开发实例|分布式文件服务

TiAmo

华为 鸿蒙 10月月更

Opencv 图像处理:数字图像的必会知识

timerring

OpenCV 计算机视觉 10月月更

SegmentFault 思否发布开源问答社区软件 Answer

万事ONES

1024里的小温暖,用技术让生活变得更美好!

阿里技术

1024程序员节

C# 线程的优先级

IC00

C# 学习 程序员 上位机 10月月更

Spring Boot「13」使用 Actuator

Samson

Java spring 学习笔记 spring-boot 10月月更

云端软件运行,小程序安全沙箱技术为端侧安全保驾护航

Geek_99967b

小程序

Java实现随机人名抽取

魏铁锤

10月月更

知识管理是团队的心脏,让企业管理更上一层楼

Baklib

文档 文档协同

企业文档过多如何管理?文档协同能够帮到你

Baklib

文档 文档管理

View层、Controller层、Service层、Dao层的区别以及对应的功能

孙铭

service DAO 10月月更

“程”风破浪的开发者|我是如何快速学 Go 的?GoFrame 只用了 3 天时间就从小白变大佬?

王中阳Go

Go golang 学习方法 10月月更 “程”风破浪的开发者

【LeetCode】分割数组Java题解

Albert

算法 LeetCode 10月月更

Java领域又一神作!《凤凰架构》仅开源3小时,竟遭受Github万人哄抢

程序员小毕

程序员 架构 分布式 程序人生 系统设计

C# 快捷菜单ConTextMenustrip控件学习

IC00

C# 学习 程序员 上位机 10月月更

Java之抽象类

魏铁锤

10月月更

2022-10-24:以下go语言代码输出什么?A:3 3;B:3 4;C:0 0;D:0 1。 package main func main() { m := make(map[int]int

福大大架构师每日一题

golang 福大大 选择题

Spring Boot 应用使用 application.yml 和 application.properties 的区别

Jerry Wang

Java mvc spring springboot 10月月更

大家都在“卷”的推荐系统还有进步空间吗?看技术大牛们怎么说

小红书技术REDtech

当我遇到10亿参数组合

FunTester

MapReduce作业生命周期

穿过生命散发芬芳

mapreduce 10月月更

重磅丨九科被评为“2022年中国流程挖掘行业典型实践厂商” 实力再获“RPA中国”认可

九科Ninetech

RPA 流程挖掘 数智化转型

Zookeeper的服务器的log4j升级为log4j2的升级方案(忽略配置化兼容问题)

洛神灬殇

zookeeper

DevOps|1024程序员节如何做?介绍下我的思路

laofo

DevOps 研发效能 1024程序员节 快手

【愚公系列】2022年10月 Go教学课程 038-异常处理

愚公搬代码

10月月更

“程”风破浪的开发者|APP自动化效果测试工具

二哈侠

学习方法 “程”风破浪的开发者 手机APP测试

2017新兴技术企业大会:第二日回顾_Java_Michael Redlich_InfoQ精选文章