10小时内的Appdevcon 2018

3月16日,我到达阿姆斯特丹的PathéArena。 今天,标志性的电影院都与 Appdevcon 有关, Appdevcon 是应用程序开发人员(主要)为应用程序开发人员而举行的年度会议。

我进入,迅速拿起我的徽章,然后上楼梯去会议厅。 在那儿,我加入了越来越多的排队等候咖啡的开发人员。 在他们的背后,像CocoaheadsNL,荷兰Android用户组,Appsterdam和Egeniq(活动组织者)这样的赞助商正在共享美食。

拿到急需的黑咖啡和一瓶水后,我去了13号馆进行当天的第一次演讲。


演讲者:Ash Furrow Artsy
主题:通过建立更好的团队来构建更好的软件

一个非常鼓舞人心的演讲,与实际的发展无关。 相反,Ash专注于管理心理学以及如何为在那里的团队创造最佳的工作环境-从而构建更好的软件。

简而言之:创造一个每个人都感到安全,没有任何羞辱的空间,并有足够的空间进行公开讨论。 这将使人们指出错误,承认错误,最重要的是从错误中学习。 怎么样? 假设每个人都在尽自己最大的努力,预期并解决苦难,并始终表现出同情心。

此外,Ash推荐Radical Candor作为一本不错的书,并总结了协同作用的概念,因为“……团队是团队合作的总和”。

演讲者:保罗·哈德森( 用Swift破解
主题:如何像专业人士一样进行调试

Pauls的话题全部是关于iOS和Swift的。 Paul从一个非常熟悉的示例开始,在代码中包括print()来检查问题,然后是另一个print()然后是另一个,然后是另一个……然后,您明白了。

Paul提供的解决方案很简单: 断点 。 他演示了如何使用它们在激活时自动打印东西或播放声音。

Paul解释说,而不是删除断点,而是检查BreakpointManager枚举以使其为有条件的。 假设您要调试登录流程。 将BreakpointManager.login设置为’true’,所有登录流程断点将被激活。 由于某些断点适用于所有应用程序,因此您甚至可以在团队中共享它们。

Paul还分享了其他有用的调试技术,该网站真棒,使他们对Assert,Precondition和FatalError有所了解,并为我们提供了许多新的见解。


咖啡时间(休闲时光!

在拍摄下一张咖啡因时,我遇到了前同事Dylan Drost,他刚刚在Cross Platform大厅完成了关于Flutter的演讲。 我请他分享精彩片段,他很高兴地做到了:

  • Flutter的当前状态,例如Dart语言的自定义渲染引擎
  • Flutter当前缺少可用于生产的内容,例如视频播放和其他基本本机功能
  • Google大量投资Flutter和Android,因此实际上是在与自己竞争
  • Google的新操作系统Fuchsia可能会在Flutter被采纳为Android的替代品时发挥作用

我很快又给自己喝了杯咖啡,坐下来进行下一次演讲。

演讲者:Phil Nash( Jetbrains
主题:可选不是失败

Phil首先讨论了函数的域和共域,并继续探讨Swift的发展方式,在错误处理方面缺乏该语言,以及如何以及为何引入可选函数。 最后,他谈到了处理错误与异常的成本,并展示了有效解决前者的实用策略。

对于Swift新手,那些对可选项有困难的人以及想要更好地了解Swift中的错误处理的每个人来说,这都是一个很棒的演讲。

演讲者:Aleksander Grzyb和Ewa Ludwiczak( Allegro应用程序
主题:食人魔,洋葱和蛋层—关于大规模测试的故事

您可能在想:食人魔? 但是,当亚历山大·埃坎德(Aleksander)和伊娃(Ewa)播放史莱克(Srek)视频时,解释了食人魔具有像洋葱一样的层,这一切都说得通。

Aleksander和Ewa讨论了应用程序测试的各个层面,并解释了它们如何在Allegro应用程序中应用它们。 他们讨论了单元,快照,变异,集成和UI测试,解决了他们遇到的困难以及如何克服这些困难。

我对讨论的大部分内容都很熟悉,很高兴听到演讲者在自己的项目中成功应用了这些测试层。

之后,我们就消费者驱动合同和pact.io进行了快速聊天。

午餐时间!

在吞食我的三明治时,发言人之一乔安尼斯·奥兰多斯(Joannis Orlandos)也加入其中。 Joannis计划在午餐后就使用Swift和Vapor进行全栈Swift开发进行演讲。 我也一直在使用Vapor编写服务器端应用程序,因此我们在Vapor 3和Apple的Swift NIO上进行了有趣的聊天。

演讲者:马克·斯潘布鲁克和史蒂芬·范·登·奥德(Philips)
主题:区块链的力量

它以两个的现场演示开始,然后只有一个。 Stefan生病了,无法参加比赛。 没问题。 马克做得很好,在观众的帮助下,他现场编写了一个简单的区块链应用程序。 他开发了完全测试驱动(TDD)的应用程序-很棒的手表! —并说明了为什么这是在开发和重构应用程序功能时组织思想的好方法。

通过使用以太坊智能合约,马克利用React中的UI和区块链业务逻辑创建了一个基本的猜谜游戏。 基本上,这使他可以创建一个应用程序,该应用程序位于分布式区块链而不是服务器上,因此在部署后不允许任何人(甚至是创建者)都不影响游戏。 凉!

看到以太坊智能合约作为分布式服务器在区块链上创建的游戏,我感到鼓舞。 它再次表明,区块链是功能强大且用途广泛的野兽,并且具有去中心化的许多优势。

演讲者:乔·伯奇(缓冲)
主题:在Google上学习如何通过动作弹吉他

Joe向我们介绍了Google上的Actions,并展示了一些使用它的平台。 然后,以DialogFlow作为他选择的平台,他演示了如何制作具有聊天和语音支持的Guitar Chord导师。 很高兴看到创建此聊天机器人相对容易,只需使用DialogFlow编写对话脚本并使用Firebase操作添加一些后端功能即可。

Joe演示了最终产品:这是一种机器人,它以声音,图像或文本的输出来响应语音或文本输入(取决于您的设备是否具有屏幕)。 他指出,将机器人与您的吉他集成起来相当容易,并且让吉他在对话中来回教授您和弦。

演讲者:塞巴斯蒂安·德·威斯(Sebastiaan de With)(苹果前)
主题:失败入门

塞巴斯蒂安(Sebastiaan)是来自格罗宁根(Groningen)的荷兰人,过去十年一直住在旧金山。 他的演讲是个人的,充满了笑声和有趣的photoshopped图片,突出了职业上的失败,学习和成功。

塞巴斯蒂安(Sebastiaan)为Apple和HP设计了产品,他有很多精彩的故事要讲-例如,他如何拖延自己为Uber从事可能的设计工作的方式。 他指出,失败并不坏,因为第二次尝试通常会花费更少的时间产生更好的结果。

这些故事在开幕演讲中引起了共鸣,即团队文化开放得足以犯错并向他们学习。 这样,我们就快乐又充满灵感地结束了这一天。


Appdevcon是一个鼓舞人心的活动,它提供了与软件开发相关的许多方面的见解。 谈话向我展示了团队文化,从您的错误中学习和适当的工具与编写高质量的代码和测试一样重要。 另外,这使我想到调试和错误处理本身就是一项技能,值得特别注意。

Appdevcon有5条并行的轨道可供选择,所有这些轨道都有同样有趣的演讲。 这使得去哪里有一些艰难的选择。 就您自己而言,您只能看到很多东西,并且可能最终会丢失一些很酷的东西(就像我一样)。 如果您对多个主题感兴趣,则可以尝试克隆自己-或带几个朋友或同事一起乘车!


彼得·艾斯特
我们多才多艺的Full Stack开发人员。 喜欢拆开东西将它们放回原处,并喜欢3D打印机和素食花园。

我们是一家屡获殊荣的阿姆斯特丹移动代理,与领先的公司和知名品牌合作,为数百万用户创建应用。 我们发布有关炫酷技术,出色项目和其他有趣内容的信息。 想聊天? 保持联系。 要了解更多信息,请访问www.themobilecompany.com。

如果您喜欢这篇文章,请单击👏并帮助其他人查找和阅读!