写点什么

JetBrains 当选 JCP 执行委员会委员

  • 2017-08-08
  • 本文字数:3516 字

    阅读完需:约 12 分钟

JetBrains 不能在 JSR376

原始投票中投票,因为他们在执行委员会的任期是从2017 年5 月15 日开始的。但是他们能够在

复议投票中投票,这

有助于这一提案的通过。

Gee 接受 InfoQ 采访,讲述了 JetBrains 这一里程碑事件和他们计划完成的目标、表达了对近期的 JSR376 投票的看法以及未来的开发计划等

InfoQ:为什么这个执行委员会的席位对 JetBrains 来说很重要?

Trisha Gee: 这感觉非常棒,不仅仅是因为可以目睹 Java 的变化,更因为我们自己就可以影响 Java 的发展。多亏了包括 EC 的用户组在内的 JCP 成员,尤其是 oracle,他们发现 JCP 需要具有比以往更加透明和开放的流程,而且着力推动使之成为现实。但是能检查规范并且给专家组做出反馈是一回事,能够通过投票的方式影响规范的发展又是另外一回事。如你在 JSR376 进展中看到的一样,如果执行委员会关注一个 JSR 中的某些问题,那么这些问题就需要在议案完成之前得到解决。但是 JetBrains 不仅仅想把重心向我们自己倾斜,当最终用户对这些 Java 规范有疑问时,我们更希望成为一个可以倾听他们心声的 EC 代表。

InfoQ:JetBrains 是如何入围执行委员会候选人的?

Trisha Gee:EC 有三种席位,即批准席位,标准席位,联合席位。作为 Java 大管家,由 Oracle确定批准席位候选人资格,最后他们决定由 ARM 和 JetBrains 接替空出的席位。你可以找个 Oracle 的代表问问他们为什么选择 JetBrains,我个人认为原因不外乎以下几点:JetBrains 之前已经涉足了 JCP,我们已经是专家组成员之一,贡献了不少的 JSR;JetBrains 不止是为 Java 和 JVM 开发者制作工具,也开发我们自己的 JVM 语言 (Kotlin), 我们对 Java 语言和 Java 平台的发展有着浓厚的兴趣;我们拥有一个和 Java 使用者沟通的双工通道,用户告诉我们他们对平台和工具的需求,我们则和 Java 社区不断沟通这些产自社区的技术的使用方法,这让我们能够传授使用者们关于 JCP 和能促使 Java 演进过程的知识;最后,我自己则在作为伦敦 Java 社区成员时就已经是一名 EC 代表,所以我清楚整体流程,社区也已经对我有所了解了。

InfoQ:JetBrains 不能在 2017 年 4 月 8 日初始 JSR376 投票中投票。如果你们能在那时投票,你们将如何基于 JSR376 状态进行投票呢,原因是什么

Trisha Gee:我们能接受我们那时不能投票的事实,虽然这让人很沮丧。从我个人来说,我会投“同意”票,这是因为从一个 Java 开发者的角度来说,我们很希望 Java9 能尽快发布。我自己也在新项目中使用新的 Java 平台系统 (JPMS),并且还在把之前的模块迁移到 JPMS 上。去年一年我目睹了 Java 的多项改进,开发者能够更明确的使用模块化、封装、关注点分离等技术并从中获益。JPMS 不完美,有瑕疵,但我还是倾向于投“同意”票。

JetBrains 中的其他人指出我的“赶快发布”的方法,是让某些环节很快被打通的主因。像 JPMS 影响力这么大的事件,不仅仅要需要精巧的设计和思考,同时也需要能够被社区所接受,只有这样才能达到最初的目标。考虑到我们在 JetBrains 没有使用 JPMS(虽然我们在 Intellij IDEA 中对其有支持),我们对其在使用上还没有足够的经验,所以还无法判断它是否符合预期。我想我们也可能会投弃权票,这意味着我们不会阻碍事件的进展,但是我们时刻保持着对 JSR 的关注,尤其是对现有库、框架以及工具的影响。

InfoQ:你们将在 2018 年结束执行委员会的任期,任期结束后你们有何打算?

Trisha Gee:我希望我们可以再次当选。我们的目标是给 EC 带来价值,这样我们不仅仅可以获得批准席位,也可以再次当选执行委员会委员。

InfoQ:在任期内,你们希望达成什么目标?

Trisha Gee: 我们的目标是协助建立对全世界 Java 开发者都有价值的规范,助力 Java 语言以一种让开发者更高效的方式演进。我们希望通过判断一个 JSR 能否有助于开发者完成特定任务的方式来评判其优劣。

当然,作为一个 IDE 供应商,为开发者提供符合 Java 规范的库和框架是我们的职责,如果我们做不到这一点,开发者使用起来就会非常困难。我们也从用户那里得到了很多反馈,例如他们希望 Java 可以帮助他们解决日常工作中的痛点 (可以阅读我的这篇关于 JCP 选举公告的博客)。这让我们认清楚了开发任务的优先级,并着力推动我们认为重要的项目。

我很希望看到 JCP 中更多的开发者参与进来,伦敦 Java 社区这样的用户组就在这方面起了表率作用。但是有些开发者可能不知道有可以使用JSR OpenJDK 这回事,我们希望能够接触到他们,他们可以通过阅读我们的博客、关注我们的 Twitter 和新闻来了解 Java 在开发社区中的进展,而且他们也可以参与到其中,作为个体为 Java 的发展做出贡献。

InfoQ:JetBrains 正在酝酿些什么,尤其是 IntelliJ IDEA?

Trisha Gee:最近我们在为最新版的 IntelliJ IDEA 加班加点,计划发布 2017.2 版本。让我最高兴的是新版本针对 Java9 有很多更新,尤其是其中有些特性还是我提出的!除了 IntelliJ IDEA,在 Kotlin 上我们也有诸多计划:

  • 增强 Java 的交互操作能力,使诸多场景(包括在 Spring 和 Android)中的使用更加便捷。

  • Gradle Script Kotlin(新的 Kotlin Gradle DSL) 具有更好的 IDE 支持。

我们正在优化 Kotlin 协程工具和库的支持,包括一些很方便的调试器特性。关于未来,Kotlin 侧重于寻找和 Valhalla 并行的价值点。

InfoQ:你在 JetBrains 工作多少年了?目前在公司的主要职责是什么?

Trisha Gee:我在 JetBrains 工作了两年半。我是一个 Java 倡导者,主要投入在 IntelliJ IDEA(JVM/polyglot IDE)以及 Upsource (代码检查工具) 上。作为一个面向开发人员的倡导者,我的工作不是使用和售卖我们的工具,而是帮助开发者更加高效的完成工作,而如果他们在工作中使用的是 IntelliJ IDEA,那就太棒了!但我其实更着重于帮助开发者“升级”,比如讨论 Java 8 的常用技巧或者给开发者展示 Java 9 的新特性等。

InfoQ:成为了 JetBrains 在执行委员会的代表,这对你目前的岗位有哪些影响?

Trisha Gee:这需要投入更多!但是其实委员会的代表工作和我目前的工作有很多交叉。例如,我需要站在 Java 演进的最前沿,这样我才能知道我的工作材料(演讲稿、博客、录屏以及每月的 Java 新闻稿) 是新鲜的和有相关性的,最好有很多先于开发者当前工作内容的话题,这些都会让今年 Java9 的发布备受关注。在执行委员会工作,确保我可以知晓 Java 的最新发展,当然不止 Java 这个语言本身(例如,最近的 Jigsaw 投票),还包括整个生态(例如 Java EE)。所以作为 EC 的代表,并不会产生非常多额外的工作内容。具体工作的形式包括参与 EC 成员会议、研究当前的 JSR,搞清楚怎么投票等,但是这些事情和我把最新的 Java 咨询带给开发者的初衷十分吻合。

但这些并非只有我一个人在做,在 Java 生态中不可能在所有领域都成为专家。在 JetBrains 内部,我们拥有一个具有不同领域背景,负责不同任务,具有不同经历的工作组,我们每个人都搜集我们擅长领域的 JSR 信息。这样的配备让我们能更好的服务于 Java 平台上的开发者。

InfoQ:IntelliJ 非常成功,像 Eclipse 和 NetBeans 这些功能强大的工具都是免费的,这就让 IntelliJ 的发展更加困难。你们成功的秘密是什么呢?

Trisha Gee:对于很多 Java 开发人员来说,IntelliJ 依然是免费的,这非常重要。在 LMAX 工作时,我自己用的就是社区版,该免费版仍然提供很多杀手级特性,例如重构、导航以及代码分析等。Ultimate 这个付费版呢,则额外支持 Java EE 开发、Spring、UML 图表以及多语种编程等。正因如此,常常是企业付费使用而不是个人,路子往往是这样:企业客户看到他们的开发者使用免费版可以更高效的工作,所以他们就会很乐意付费购买额外特性来支持企业发展。

在 LMAX,我自己在和高级用户切磋后,从 Eclipse 转到了 IntelliJ IDEA。之前我同时使用这两个 IDE(职业生涯早期我也使用过 Netbeans),对这两个 IDE 没有特殊偏好,因为所有 IDE 都符合我写代码的习惯。但是当我看到 IntelliJ 的重构工具的演示后,发现这款 IDE 可以在不发生编译错误的情况下重构我的代码,我被这个特性迷住了。其他 IDE 也有这项功能,但是从我个人与 Eclipse 和 IntelliJ 的高级用户共事的经历来看,IntelliJ IDEA 可以做的更多,而且更加省事。工作中我和很多开发者交流时,发现他们有着和我类似的感受:当他们发现 IntelliJ IDEA 让工作更高效时,当他们发现 IntelliJ IDEA 是如何让他们立于不败之地时,他们就再也转不回其他 IDE 了。

查看英文原文 JetBrains Elected to the JCP Executive Committee


感谢张卫滨对本文的审校。

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

2017-08-08 19:008684

评论

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

Django笔记十八之save函数的继承操作和指定字段更新等实例方法

Hunter熊

Python django save auto_increment primary key

2022-04-27:用go语言重写ffmpeg的remuxing.c示例。

福大大架构师每日一题

golang ffmpeg

ChatGPT 在 Python WEB 的Prompt项目分享

Marvin

Python 开发 ChatGPT

中国厨房更净一步:一场科技“下凡”带来的方太式浪漫

脑极体

音视频八股文(7)-- 音频aac adts

福大大架构师每日一题

音视频 流媒体

Apache Doris 1.2.4 Release 版本正式发布|版本通告

SelectDB

数据库 大数据 数据分析 Doris 联邦查询和分析

ZincSearch 一款 Elasticsearch 的轻量级替代品

宇宙之一粟

Go 三周年连更 ZincSearch

iOS MachineLearning 系列(8)—— 图片热区分析

珲少

Go 语言中没有枚举类型,但是我们可以这样做

陈明勇

Go golang 枚举 Enum 三周年连更

Java 中的 null 到底是什么?

Java架构历程

Java 三周年连更

轻量级协作任务管理看板

顿顿顿

敏捷开发 任务管理 敏捷开发管理工具 看板工具 scrum工具

龙蜥开发者说:亲历从基础设施构建到系统质量保障,龙蜥未来可期 | 第 19 期

OpenAnolis小助手

Linux 开源 sig 龙蜥开发者说 联通数科

场景篇-ChatGPT帮我搭建博客网站并自动写博客!

Marvin

博客 ChatGPT

挑战 30 天学完 Python:Day13 列表推导式和Lambda

MegaQi

挑战30天学完Python 三周年连更

ChatGPT-4!又双叒叕写了一本量化交易的书(附下载)

量化投资与机器学习

机器学习 量化投资 ChatGPT4 对冲基金 Quant

人工智能训练数据集:误区、挑战与应对方法

数据堂

性能大PK count(*)、count(1)和count(列)

架构精进之路

MySQL 数据库 后端 innodb 三周年连更

【源码分析】【seata】at 模式分布式事务 -xid隐式传递

如果晴天

源码分析 分布式事务 seata spring-cloud Seata框架

场景篇-ChatGPT帮我实现发送公众号推文

Marvin

微信公众号 代码生成 ChatGPT

《爱在黎明破晓前 | 我有话要说》

后台技术汇

三周年连更

2023 年要避免的 17 个致命的网站设计错误

海拥(haiyong.site)

三周年连更

Go的内存模型:如何保证并发读写的顺序性?

Jack

eBPF的发展演进---从石器时代到成为神(四)

统信软件

操作系统 Linux Kenel

在oracle apex中的Dialog的做法(第一部门):

back_wang

oracle dialog oracle ebs ebs

和ChatGPT结对完成VS CODE插件项目分享

Marvin

vscode 插件 插件开发 ChatGPT

NCCL源码解析③:机器内拓扑分析

OneFlow

华为阅读联手20余家头部内容平台,共建数字化阅读

最新动态

如何在 Linux 中查看正在运行的进程?这三个命令轻松实现!

wljslmz

Linux 三周年连更

2023移动端技术探索

轻口味

android 移动端 行业趋势 三周年连更

数据标注,优化模型辅助标注、Label 库管理|ModelWhale 版本更新

ModelWhale

云计算 编程 模型 数据标注 数据门户

JetBrains当选JCP执行委员会委员_Java_Michael Redlich_InfoQ精选文章