NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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:001296

评论

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

TiFlash 源码阅读(三) DeltaTree 存储引擎设计及实现分析 - Part 1

TiDB 社区干货传送门

你踩过这些坑吗?谨慎在时间类型列上创建索引

TiDB 社区干货传送门

性能调优 TiDB 底层架构 OLTP 场景实践

利用odbc连接oracle与tidb

TiDB 社区干货传送门

迁移 实践案例 数据库架构选型 应用适配 数据库连接

避坑指南 生产环境TiKV的IO-Util趋近100%问题定位

TiDB 社区干货传送门

集群管理 管理与运维 TiKV 底层架构

TiFlash 面向编译器的自动向量化加速

TiDB 社区干货传送门

性能调优 应用适配

离线安装 TiSpark v2.5.1

TiDB 社区干货传送门

6.x 实践

生产环境TiDB集群缩容TiKV操作步骤

TiDB 社区干货传送门

扩/缩容

TiDB VS MySQL

TiDB 社区干货传送门

TiCDC canal_json的实际应用

TiDB 社区干货传送门

迁移 管理与运维 新版本/特性解读 OLTP 场景实践

TiFlash 源码解读(四) | TiFlash DDL 模块设计及实现分析

TiDB 社区干货传送门

让秒杀狂欢更从容:大促背后的数据库(下篇)

TiDB 社区干货传送门

使用 Vagrant + VirtualBox 虚拟机搭建TiDB v5.4 实验环境

TiDB 社区干货传送门

安装 & 部署

TiSpark 3.0.0 新特性实践

TiDB 社区干货传送门

实践案例 新版本/特性发布 HTAP 场景实践 大数据场景实践

我和 TiDB 的故事 - 2020~2022

TiDB 社区干货传送门

TiDB 性能分析和优化

TiDB 社区干货传送门

性能调优

OLTP 负载性能优化实践

TiDB 社区干货传送门

性能调优 OLTP 场景实践

TiCDC 6.0 原理之 Sorter 演进

TiDB 社区干货传送门

TiDB 源码解读 6.x 实践

TiSpark v2.4.x 升级到 TiSpark v2.5.x

TiDB 社区干货传送门

实践案例 6.x 实践

TiSpark v2.5 开发入门实践及 TiSpark v3.0.0 新功能解读

TiDB 社区干货传送门

6.x 实践

TIDB监控升级解决panic的漫漫探索之路

TiDB 社区干货传送门

监控 实践案例 集群管理 故障排查/诊断 扩/缩容

基于 TiDB 场景式技术架构过程 - 理论篇

TiDB 社区干货传送门

数据库架构选型 数据库架构设计

TiDB 性能优化概述

TiDB 社区干货传送门

性能调优

Performance Overview 面板重要监控指标详解

TiDB 社区干货传送门

监控

TiDB 6.1 新特性解读 | TiDB 6.1 MPP 实现窗口函数框架

TiDB 社区干货传送门

新版本/特性解读 6.x 实践

TiDB多活方案

TiDB 社区干货传送门

实践案例 集群管理 数据库架构选型 数据库架构设计

文盘Rust -- 子命令提示,提高用户体验

TiDB 社区干货传送门

开发语言

TiDB 6.1 单机环境 On openEular 2003 SP3

TiDB 社区干货传送门

实践案例 版本测评 应用适配 6.x 实践

分布式数据库 TiDB 6.0 集群保姆级安装手册

TiDB 社区干货传送门

6.x 实践

这一年,我和 TiDB 的故事

TiDB 社区干货传送门

TIDB 6.0新特性漫谈之Clinic

TiDB 社区干货传送门

新版本/特性发布 6.x 实践

TiDB v6.0.0 DMR 源码阅读——缓存表

TiDB 社区干货传送门

TiDB 源码解读 新版本/特性解读 6.x 实践

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