纪念天才工程师哈德里安·米拉诺的技术人生

本文深情追忆了年仅28岁离世的杰出工程师哈德里安·米拉诺,详述了他在Arduino硬件开发、Web应用、计算机图形学、安全研究和创新项目等方面的技术成就与贡献。

纪念哈德里安·米拉诺

今天的文章与我以往所写的任何内容都不同:这是对一位亲爱的朋友的致敬,他在几个月前因心脏病突发不幸离世,年仅28岁。

哈德里安不仅是我相识10年的密友,更是一位杰出的工程师、软件工匠、制造者和黑客,我对他极为敬重,并从这些年中学到了很多。任何认识他的人都能够证明,他对自己所做的每一件事都充满热情。这篇文章就是对他的致敬。

故事

让我从我们如何相遇的故事开始,以及我们一起分享的一些影响深远的生活事件。

相遇之前(2011年)

2011年,年仅16岁的哈德里安将一块Arduino连接到一堆电子元件上,制造了一台“电池分拣器”。将电池放入顶部的隔间,机器便会测试每个电池,并将用过的电池与充满电的电池分开。

这看起来确实有点像爆炸引擎。截图来自(幽默的)演示视频(仅限法语)。

他甚至在一个法国知名的比赛中获奖,该比赛旨在奖励18岁以下的发明者(《科学与生活少年版》的“Innovez”竞赛)。

最初几年(2012-2013年)

我第一次遇见哈德里安是在我们开始于瑞士洛桑联邦理工学院学习的时候。当时我只有17岁,刚刚离开父母的家,对我来说,这是一个新的国家和新的生活。哈德里安就坐在我后面,一次随意的交谈最终发展成了一段罕见而长久的友谊。

经过一个学期的紧张备考,我们组队参加了由Facebook在EPFL组织的一场黑客马拉松。Facebook在当时对我们来说是热门的科技公司,所以尽管我当时编程水平很一般,但我们 motivated 地想要做出一些引人注目的东西,以期获得那里的实习机会。

我们最终构建了一个互动的网络应用程序,用于在派对上流媒体播放音乐,参与者可以通过手机为他们最想听的歌曲投票。

18岁的哈德里安(右)和我(左)在白板前讨论 在最终演示前修复最后的bug “SquareTunes"的主页 任何人都可以推荐歌曲;参与者投票,得票最高的歌曲接下来播放

令我们大为惊讶的是,我们最终获得了第一名,并赢得了……一次由Facebook资助的全程费用报销的伦敦之旅,去参加在Facebook总部举行的黑客马拉松!我们在那里没有获胜——但我们带着第二名的成绩非常开心地离开了伦敦。

哈德里安、我以及团队的其他成员在 hacking “Deskamp”,一个类似Miro的互动白板 哈德里安在Facebook伦敦办公室推介Deskamp

CourseAdvisor(2014年)

2014年底,我们必须从一长串列表中选择大学课程。我们对学生缺乏可用信息感到不满,因此我们一起构建了“CourseAdvisor”。它本质上会抓取学校的课程目录,并为所有学生提供一个平台,用于评价课程和发表评论。在这个过程中,哈德里安帮助我学习了Laravel PHP框架和健康的测试实践。

在其高峰期,CourseAdvisor拥有超过700名注册学生和超过800条课程评价。不幸的是,在2016年,学校对此不满,要求我们关闭网站,并威胁要请律师介入。(Daniel C.,如果你读到这些——6年过去了,我仍然对你利用职位威胁两名只是想改善大家学习体验的学生感到愤怒。)虽然回想起来我们绝对不应该妥协,但当时我们还有其他事情要忙。

计算机图形学学士项目

当我们坐在“计算机图形学导论”的课堂上时,我有点目瞪口呆地看着哈德里安用Open GL、光线追踪器、程序化建模以及其他至今仍让我感到害怕的术语做出惊人的东西。

最终,哈德里安完成了最终课程项目的大部分工作,老师认为这个项目非常出色,以至于他现在每年都在课程开始时展示它。请看下面的视频——这是一个随机生成的世界,每次运行都是独一无二的。它可以无限渲染。它有湖泊、雪山、陆地、岩石、水反射,甚至还有云彩。

现代时期

完成硕士学位后,哈德里安在AppDynamics(现属思科)和Datadog担任软件工程师。在这个留言板上,许多与他共事过的人留下了信息、故事或照片——我觉得这些非常感人。

业余项目

哈德里安是一位才华横溢的工程师,充满热情且有空闲时间。毫不奇怪,他提出了一系列令人印象深刻的业余项目,下面我重点介绍其中一些。

“喂鱼器”是一个你可以远程控制来喂养哈德里安的鱼Gaston的设备。它通过身份验证后暴露在互联网上。曾有一段时间,他考虑运行每日拍卖,出价最高者将获得按下这个宝贵按钮的特权。

喂鱼器的主页。

“Whistle Invaders”是《太空入侵者》的一个改编版本,你通过……吹口哨来控制玩家!口哨音调更高,你的玩家向上移动。降低音调,则向下移动。

“Clapruptor”是哈德里安从头开始制作的一个小工具。将其插入电源插座,它可以根据你拍手的声音来打开或关闭电源。他甚至为这个项目制作了一个高质量的视频讲解(提供英文字幕)。

“Clapruptor 1.0”

“Turing Wars”是一款游戏,每个玩家编写一个小型的汇编程序,然后在一个实际上是虚拟机的竞技场中相互竞争!

“Turing Wars”,一个异常复杂的游戏,你的程序可以在竞技场中竞争!

“Cagificator”是一个基于网络的工具,可以输入任何人的照片,并用尼古拉斯·凯奇的脸替换他们的脸。正如你在技术文章中所见,这涉及相当多的计算机视觉工作。

“Leonardo Di Caggio”,“Cagificator”的输出结果

“Fun With Types”可能是我见过的最有趣的演讲之一。在JS Romandie上,哈德里安花了30分钟证明Typescript的类型检查系统是图灵完备的,同时还展示了各种Typescript的奇技淫巧。

老实说,除非你拥有计算机科学博士学位,否则你可能会讨厌这个演讲。如果你知道“停机问题”是什么,那么,去看看吧。

安全 champion

哈德里安并非专攻安全领域,但他在这方面非常出色。

他在我们大学的一个网络应用中发现了“我的资料”功能中的XSS漏洞后,创建了一个XSS蠕虫。该载荷会通过受害者的浏览器自动传播,更新他们自己的资料以包含“恶意”载荷。这只是为了好玩,载荷除了传播之外不会做任何其他事情。

他逆向工程了一款Android游戏“Fun Run”,并设法绕过了反作弊系统,将其与作弊功能重新打包。博客文章

他从零开始编写了一个自托管的密码管理器,具有客户端加密功能。Vaultage

他揭示了一种有趣的Web缓存漏洞(他最初认为是Chrome中的漏洞),攻击者可以利用该漏洞跨源泄漏Authorization头的值。博客文章

他比我先一步利用了CTF中的一个缓冲区溢出漏洞。他合著的技术文章实际上让我对二进制漏洞利用感到兴奋,并帮助我在这方面变得更好。

他利用了一个在野的XSS和CSRF漏洞,然后给我发送了一个恶意链接,将我的个人资料图片替换成了尼古拉斯·凯奇的照片。

一个外部网站上的XSS漏洞,用于触发CSRF漏洞,导致我的个人资料图片被尼古拉斯·凯奇替换。

结论

下面的照片是我和哈德里安的最后一张合影;摄于2022年4月30日星期六,庆祝我们的生日,就在我女儿Juliette出生两天后。哈德里安在3天后去世。

我不后悔任何事情。我们一起度过了无数高质量的时光。他在我第一次遇见我现在的妻子时在场;我们一起去了多个国家旅行;一起参加了我们的第一次行业会议;一起在乐队演奏;一起毕业;一起跑步比赛;无数次一起去滑雪。

然而,我们还有那么多计划。有那么多问题我还没来得及问他,有那么多深夜谈话我们永远无法进行了。我很感激能有哈德里安作为近10年的密友。然而,我感到如此愤怒。哈德里安无疑在这些年里塑造了我,使我成为现在的我。哈德里安,你将永远在我心中!

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计