QCon 2018小回顾

6月底在纽约举行了QCon 2018会议,我很幸运参加了会议。 借此机会,我要感谢我的雇主。 Konfa历时3天,共有140位演讲者和900多位参与者。


something_will_probably_go_wrong


免责声明:当然,本文表达了我的个人观点。


组织机构


由于会议规模很大并且已经举行了很长时间,因此一切都组织得很高。 观众,声音,广播,录制,演示-一切都清楚地制定了出来。 虽然不是,但是第一天主题演讲者单击器的第一天就没了。 :-)这也许是三天内唯一的问题。


开始


主题


为期3天,组织者涵盖了15个不同的主题。 即 每天有5个主要视频流(包括赞助商演示和“问我什么”听众),每天都有新的视频流。 我认为,如此广泛的覆盖范围在数量上是好的,但质量却受其影响。 事实证明,在我每天参加的6份报告中,有1-2份对我来说确实有用且有趣。 有些报告根本不符合他们的名字,这很浪费时间。


me_at_stage


对于新的信息量,我有不同的期望。 新事物,有趣事物和未知事物比我们想要的少。


主题演讲


在每天开始之前,每个人都聚集在最大的大厅里,这家著名公司的一些人讲了一些一般但有趣的事情。 这些故事是关于以一种或另一种形式开发软件的。 我喜欢所有3个主题演讲。


开发人员作为恶意软件分发工具(Guy Podjarny,SnykSec)


Guy在一家研究开放源代码产品漏洞的公司工作。 他谈到了漏洞如何嵌入不同的开发工具中以及漏洞如何在最终用户中传播。 我很少考虑这一点,而且,我认为这种现象不是大规模的。 盖伊通过一些有趣的例子展示了这种情况。 事实证明,该恶意软件可以嵌入到IDE中(以XCodeGhost为例),并在组装过程中注入到可执行文件中。 您还可以将恶意软件放入插件库中。


演讲的主要思想是:


  • 权力越大,责任就越大;
  • 您不能相信自己没有从头开始编写的代码。
  • 请谨慎使用您使用的工具。

API的自以为是的历史(Joshua Bloch,Carnegie Mellon)


约书亚·布洛赫(Joshua Bloch)讲述了何时以及谁首次提出API(应用程序接口),以及该术语如何发展到今天。


事实证明,该API是在建造第一台计算机之前发明的! 没什么用,但是很有趣!


开发新的API时,您应该考虑易于使用,没有bug以及良好的描述。


逃生史(Tanya Reilly,Squarespace)


Tanya讲述了自1838年以来纽约发生火灾逃生的故事。 当然,这种现象发生和发展的原因是火灾。 从历史的角度来看,她展示了为什么会发生这种情况,以及未来将采取什么措施来应对它们。 在软件世界中也会发生“火灾”,但是根据现有经验,我们可以将其后果降到最低。


原则上将起火的可能性降至最低。 提供早期的火灾探测工具。 隔离火灾的潜在危险区域,以免火势蔓延。 有消防队和最新的疏散计划。


实际报告


也许我只会写一些我个人喜欢的报告,从中我可以学到一些新的和有益的东西。


无服务器模式和反模式(Joe Emison,分支)


joe_emison_branch


上次我进入无服务器主题时,有传言称Backendless死于Bose Parse。 但是几年过去了,当我听乔的讲话时,我感到惊讶的是,该领域现在出现了多少服务,以及将它们组合起来以实现各种目标的知名度。 乔告诉我们,在无服务器上(无服务器在这里意味着要实现产品目标的所有外部服务的集合)上,他们写下了用于收集统计数据和监控燃料质量的软件,以及用于选择出租房地产的应用程序。 这些应用程序可以执行身份验证,验证数据,显示适中的图片,使用地图,在云中读取等等。 而所有这些都是通过外部服务! 您的主要任务是监视这些相同的外部服务的可用性。


无服务器


从这份报告中,我了解了许多我想“接触”并了解更多信息的新服务。 顺便说一下,在这里,他们:


  1. -用于收集,存储,分析和路由用户数据的单一平台。
  2. DocRaptor-从HTML生成PDF / Excel
  3. Cloudinary-用于管理媒体内容(图片,视频)的平台。
  4. Auth0-该平台提供高级用户识别功能。
  5. Webtask是一个FaaS平台,可在云中运行您的代码。
  6. Netlify-在几分钟内完成部署的云托管。 能够连接到github上的存储库,并在更新时从该存储库部署站点。 好吧,各种各样的其他时尚筹码
  7. 阿尔及利亚 -据我了解,您网站的搜索引擎
  8. AWS Cognito-用户管理,身份识别,权限区分
  9. AWS Lambda-亚马逊的FaaS平台
  10. AWS AppSync-跨设备实时数据同步

Twilio的平台:发挥开发人员的效力(来自twilio的Justin Kitagawa)


justin_kitagawa_twilio


这是我从演示中学到的东西:


  1. 多语言,微服务,DevOps很好。
  2. 从API的统一描述为不同语言生成代码是很好的。
  3. 自动化您可以到达的一切。
  4. 说做什么,不要说如何。 然后一切都会好起来的。
  5. 最小化对创新的抵制。 发言者列举了“守门人”的例子,他们不允许项目“不会带来利益的潜在危险创新”。 这样的人以“工作-勿碰”为原则开展工作。 并且减慢了产品开发的速度
  6. 确保基础架构透明,以发现弱点并尽早发现问题。

更加紧密的联系:实时新闻警报(彭博社的Katerina Domenikou)


katerina_domenikou_bloomberg


我自己做了一些有趣的事情,在演示中进行了讨论:


  1. 流搜索。 搜索传入的信息流。
  2. Luwak-一种有助于实现第1款的工具。

他再次确信有时您需要从看似出乎意料的角度看待任务。 卡特琳娜(Katerina)告诉他们如何处理大量数据的大量搜索查询,或更准确地说,是过滤器。 数据阵列也可以经常补充。 因此,在他们的决定中,这些家伙不是索引数据,而是索引数据。 因此,当出现新数据时,将检查新数据是否满足现有查询,如果满足,则将数据与索引关联。 搜索大大加快。 总的来说,对我来说,这对O_o来说是新的。


分布式系统中的复杂事件流(Camunda的BerndRücker)


bernd_ruker_camunda


用于自动化业务流程(工作流引擎,状态机)的现代企业解决方案繁重而乏味。 因此,您不应该使用它们,但是有一个值得的轻量级替代方案。 结果不知何故,替代方案是由发言人团队开发的,称为Camunda。 但是,如果解决方案是好的,那为什么不讨论呢!
通过此演示,我提出了一些我想“接触”并进行更深入研究的内容:


  1. UBER Cadence是一个分布式,可扩展,可靠的工具,用于编排异步的,时间紧张的业务流程。
  2. Netflix Conductor是基于微服务的业务自动化工具。
  3. Camunda是用于自动化业务流程的平台。
  4. Zeebee-具有图形设计器的基于微服务的业务自动化工具!
  5. Activiti是基于云的基于微服务的业务自动化工具。
    据我了解,所有这些工具使您能够建立平衡并分配微服务和实际工作流引擎的责任。 这是通过在工作流引擎一侧执行常规操作(基本错误处理,周期,计划执行)来完成的,并且域逻辑完全保留在组成业务流程的微服务中。

Lyft的使节:拥抱服务网格(Matt Klein,Lyft)


matt_klein_envoy


马特谈到了他领导的产品Envoy 。 一种服务网格,允许微服务进行交互而无需考虑网络拓扑。 其他优点包括:


  • 负载均衡器
  • 监控微服务的状态,
  • 收集各种统计数据
  • 服务发现服务
  • 插件扩展。

使节


马特还记得了片刻。 在所有演示之后,演讲者坐在一起坐在舞台上,并开始回答有关一个共同主题的问题(“您一直想知道的建筑”)。 当问题涉及到集成测试及其解决方案的可用性时,所有发言人的脸上都露出半笑容。 马特首先回答,其他所有人都默默支持他。 他的回答是本着这种精神-“当然,我们有集成测试,但是……在生产测试中,没有什么能产生如此好的结果”。 Matt提供的自动化测试仅限于单元测试,负载测试。 并且在较小程度上依赖于集成测试的结果。


为数百万个设备扩展推送消息传递(Susheel Aroskar,Netflix)


不幸的是,我无法访问报告本身,但是对演示文稿和发言人有很多正面评价。 所以我认为值得一看。


流行语QCon纽约2018


流行词
关于区块链也有完整的记录。 但是我无法到达那里。


投稿后


春天,我参加了在新西伯利亚举行的CodeFest 2018。 老实说,我更喜欢那里。 但是,正如他们所说,每个人都有自己的一面。


所有演示都已经在这里提供


该视频将在3-4个月内公开提供。 对于参与者,该视频的访问权限已经打开。 该视频可以通过电子邮件发送给30个不同的人。


发表文章


我没有在文章中写有关食物,住宿和交通的文章,因为 似乎不适用于Habr主题,但是如果有人感兴趣,我可以在PM或评论中回答。

Source: https://habr.com/ru/post/zh-CN416335/


All Articles