Devoxx美国大会今天开幕。
\u0026#xD;\n\u0026#xD;\nDevoxx是北美版的欧洲软件大会(European Software Conference)。广受追捧的欧洲软件大会由Stephan Janssen在2001年创立,组织方是比利时Java用户组(BeJUG,Belgian Java User Group)。今年的Devoxx在圣何塞会展中心(San Jose Convention Center)举办,第一天的特邀演讲嘉宾包括Venkat Subramaniam、Arun Gupta、Stuart Marks和Josh Long。
\u0026#xD;\n\u0026#xD;\n大会的第一个主题演讲是由Chet Haase所做的报告“科技企业中的技术工作(The Business of Technology Business Technology)”。Haase的演讲十分风趣,使得大会在一个轻松的主题演讲中开幕。在Haase演讲之后,是New Irond的CTO及Open Mastery的创始人Janelle Klein上台演讲,她的报告题目是“什么是身份?(What is Identity?)”。
\u0026#xD;\n\u0026#xD;\nKlein的报告内容非常紧凑,探讨了以下主题:
\u0026#xD;\n\u0026#xD;\n- 想法是如何进入我们的大脑的 \u0026#xD;\n\u0026#xD;\n
- 将我们的大脑看作是一个感知生成器 \u0026#xD;\n\u0026#xD;\n
- 将意图看作是在设计上的约束 \u0026#xD;\n\u0026#xD;\n
- 我们认识自己身份的方式\u0026#xD;\n
Klein使用了软件领域的词汇解释(并讨论)了大脑的工作机制。例如,Klein提出将人类大脑看作是一种感知生成器,指出我们是通过识别模式去理解环境中的事物。
\u0026#xD;\n\u0026#xD;\n她借用了开发人员所熟知的语言,以“继承”(inheritance)作为一种描述,隐喻事物间是否存在着从属关系。我们所熟悉的事物是“从自我(或者属于自己的事物)扩展而来”,而我们不熟悉事物的是“从对象(Object)扩展而来”。报告提出的理念是,有一些事物我们认为具有从属关系,也有一些事物我们并不认为具有从属关系。
\u0026#xD;\n\u0026#xD;\n“我们编写单元测试”和“我们做结对编程”这类陈述建模了内团体(In-Group),在我们看来是“从自我扩展而来”。对于这样的事物,我们很容易理解并产生共情(译者注:共情“empathy”是一个心理学名词)。而不好的一面在于,我们易于对外团体(Out-Group)客体化(Objective)。因此,我们会认为“经理”或“测试者”是“从对象扩展而来”,这意味着我们下意识地将“测试者”看成是一个可供使用的工具,而非“和我们一样的”员工。她认为该模型所描述的是一种我们易于频繁采用的分类方法,不能对“与我们一样的”或者并非“从自我扩展而来”的事物产生共情。
\u0026#xD;\n\u0026#xD;\nKlein指出,如果我们能认识到这种人类大脑使用的分类方法,就很容易对大脑重新接线以改进共情。她给出了一个对简单的潜入大脑(Brain Hack)的建模方法,这是一个两步的过程,用于改进彼此之间及环境中事物的共情(类似于在我们的思维中设置一个断点)。
\u0026#xD;\n\u0026#xD;\n这看上就类似于:
\u0026#xD;\n\u0026#xD;\n- 停下来,考虑当前事物是一个人,还是一个对象。 \u0026#xD;\n\u0026#xD;\n
- 选择人。\u0026#xD;\n
就是这么简单!
\u0026#xD;\n\u0026#xD;\n\u0026#xD;\n\u0026#xD;\nKlein继续就如何认识我们自身、我们所秉持的信念等问题进行了探索,并对开发人员的思维给出了独到的见解。她还提出了其它一些潜入大脑的方法,可以实现用新方式考虑我们的环境信号,并提出了如何中断这些环境信号。
\u0026#xD;\n\u0026#xD;\nKlein在演讲的最后,给出了认识我们自身以及他人的切实可行的方法,该方法将对过去自我的汇总用“身份1.0”表示,而使用“身份2.0”表示“此刻选择非我莫属”。
\u0026#xD;\n\u0026#xD;\n大会首日的其它报告还关注于Java、Andriod和现代Web等话题,其中包括:
\u0026#xD;\n\u0026#xD;\n- Hanneli Tavante讨论了Java开发人员如何做Rust开发。该演讲中所探索的主题包括:什么是Rust、为什么应考虑使用Rust,以及从Java开发人员的角度看Rust提供了哪些特性。她在演讲中给出了一个简单的例子,就是用Rust实现FizzBuzz问题,依此探讨了Rust的不变性、生存期(lifetime)、trait等问题,甚至还介绍了Rust的一些不足之处,例如学习曲线陡峭。 \u0026#xD;\n\u0026#xD;\n
- Marcus Bertrand来自于Atlassian,他的演讲探讨了代码审查与Pull Request的对比。Bertrand在演讲中介绍了一些广为使用的代码审查方法,并给出了在自己的团队中实现各个方法的建议。 \u0026#xD;\n\u0026#xD;\n
- Ty Smith来自于Uber,他的演讲介绍了深度安卓集成(Deep Android Integrations),并给出了他在Evernote、Twitter和Uber工作期间积累的一些最佳实践。 \u0026#xD;\n\u0026#xD;\n
- Venkat Subramaniam是Agile Developer Inc.的创始人,当日他做了两个演讲,第一个是关于Java的响应式编程,第二个是关于函数式编程。\u0026#xD;\n
大会首日共有10个并行进行的会议,约有43位演讲者做了报告,从“使用TypeScript 2.0尽早排除故障”到“编写伟大测试用例的十条基本规则”。据Janssen介绍,会议为期三天,首日预计有大约750名开发人员参加。
\u0026#xD;\n\u0026#xD;\n明天是大会的第二日,主题演讲者将是Rama Akkiraju,演讲题目是“从科学幻想到科学事实:人工智能是如何改变我们构建应用和使用数据的方法的”。
\u0026#xD;\n\u0026#xD;\n查看英文原文: Devoxx US 2017: Day 1 Recap
\u0026#xD;\n\u0026#xD;\n感谢冬雨对本文的审校。
\u0026#xD;\n给InfoQ中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ,@丁晓昀),微信(微信号:InfoQChina)关注我们。