本人在接触RxJava以后,因为被其独特的优雅之处深深吸引,便自发的了解一些背后的历史(考据狂本质),在了解以后十分想为你们分享这位站在RxJava背后的巨人 —— Erik Meijer。php
注:因为本文大多数连接来自Youtube。并且还没有发现国内有转载。因此几乎有所视频可能都须要FQ观看。敬请谅解。所谓 Knowledge comes to those who crave for it. 我相信对你们来讲这应该不是问题。程序员
Erik Meijer 出生于库拉索,是一位资深学院派计算机科学家,同时也是一位企业家,和扎染爱好者。面试
早先在微软做为软件架构师,对.Net,F#等有重要贡献。包括LINQ,Volta,Rx.Net等等。至今Rx扩展到多种语言,尤为以RxJava和RxJs最为出名。编程
同时 Erik Meijer 做为坚决的学院派,参与设计Haskell。而且也参与推出一系列课程好比:C9 Lectures: Dr. Erik Meijer - Functional Programming Fundamentals架构
在离职微软后,与facebook合做参与设计 Hack (php的一种方言)。与Google合做参与设计 Dart。机器学习
目前 Erik Meijer 在Facebook就任,而他的主要工做就是咱们讨论的不少的人工智能。主要课题就是如何训练模型来自动生成代码。异步
Erik 本人其实也出过许多的Rx解释视频。其中最为精华的我认为即是这个Expert to Expert: Brian Beckman and Erik Meijer - Inside the .NET Reactive Framework (Rx) 。我也是第一次从这个视频接触到 Rx 是从IEnumerable
(Java 中的Iterable
)来推导出。也第一次从这个视频了解到 Erik 是如何将 Monad 的概念应用到 Rx 中,来使其更增强大。 从 IEmuerable
到 IObservable
一个简单的对偶操做。极大的简化了异步的复杂度。Erik 本人也称 Rx 是异步的表现形式(representation of asynchrony)。 对这个概念的具体解释,能够参考个人以前一篇文章:一篇不太同样的RxJava介绍 async
我第一次据说到Erik Meijer 是有些惊讶却又以为理所固然的。 惊讶是我我的觉得他会继续在软件架构或者函数式编程上继续深造。而理所固然的是,他本人做为数学的狂热爱好者,作以数学为主的机器学习就显得十分理所应当。ide
我第一次接触是在Erik Meijer 在一次 Kotlin Conference 中提到:KotlinConf 2017 - My Life as a Tech Transfer Monad by Erik Meijer 。 虽然他在研究机器学习相关,他本人并不认同“人工智能”这一说法。他认为这只是对数据的一个通常化(Generalization),而且用的是18世纪的古老数学:贝叶斯几率公式。 视频中,他有讲到在咱们目前的软件工程世界(Software 1.0)。程序员喝咖啡(吃零食),写代码。而在新世界(Software 2.0)。咱们给机器输入数据,经过机器学习来生成模型。 函数式编程
Boolean
类型就必定只会是
true
或
false
。而模型是不肯定的,他的结果多是一个几率分布,例如80%可能性下是true,20%是false。 另外一个区别是代码是离散的,模型是连续的。
看了以后以为若是真的在短时间内作成功,可能我这种程序员就要面试“失业”了吧。固然,拥抱将来和变化的咱们,也不该该恐惧。而是更加期待这一天的到来。
短短一篇博文确定不能概述Erik对业界的贡献。并且做为一个普通程序员,我对这种级别的大神的了解只能停留在Conference和一些视频,文献等等资料中。仅仅是冰山一角。可是他的种种贡献对我能够说是改变了人生轨迹。从一个过程式编程程序员慢慢走向了函数式的世界。 也从RxJava等等中了解了数学以及范畴论中一些的一些理论。更在以后的讲座中了解几率编程这种目前来看十分超前的概念。 他在视频中说到:
若是纠结于Framework诸如 Vue和React 哪一个更好,Flutter和Kotlin哪一个更该学这种问题,咱们无疑是自掘坟墓。
这句话也是我想分享给你们这篇的主要缘由。虽然生活不易,可是若是想在技术上有一些建树,就不要把眼界放的太窄,只纠结于眼前这些区别不大而又收获甚微的细节。
虽然此次其实也是因为某位女粉丝强烈催更下写出。但本着写文章就不要水的原则。也是纠结了好久的主题。但愿你们看完这篇会有所收获而不会以为浪费了人生中宝贵的5分钟。