Dd有设计感的开发者
Adam Bell 的头像
Adam BellNetflix iOS UI 工程师 · 交互与动画专家

Adam Bell:做合成器、交互、动画,还有赛车

这位加拿大工程师从 iOS 越狱社区起步:把 Facebook 的 Chat Heads 带到整个 iOS,在没有车的 iPad 上运行 CarPlay。后来 TA 写了手势驱动的动画引擎 Motion,在各大 Swift 大会上讲如何用 Swift 合成声音,如今在 Netflix 做 iOS UI。

@b3ll美国湾区(加拿大人)第二批 · 4分约 14 分钟读完更新于 2026-10-21
  • iOS
  • 动画
  • 交互
  • 音频
  • 越狱

一句话:X 简介「I make synths, interactions, animations, and hack things 🏎 🇨🇦」,在 Netflix 做 iOS UI。

代表作:Motion(★1.5 千)、Ignition(★324)、Decomposed、Adjustable、SwiftyGestureRecognition;App Albums、Octave、J_NO Chorus、Click Wheel Keyboard。

关键数字:X 关注者约 1.65 万、推文 4.7 万条;GitHub 81 个公开仓库、粉丝 1,242;2018–2023 年做过 9 场大会演讲和播客。

两大爱好:音乐(合成器、黑胶、DJ)和赛车(F1、勒芒、赛道日),都直接变成了 TA 的作品和演讲。

1.7 万X 关注者
2008加入 X
2,833GitHub 代表仓库 ★
1,242GitHub 关注者

2014 年,CarPlay 只能在少数几款新车上用。Adam Bell 写了一个越狱插件,直接在 iPad 的 SpringBoard 上运行 CarPlay 界面,README 写着:「Negates the need for a "CarPlay supported™" car.」这就是 TA 的风格:先问系统允不允许,再想办法让它允许。

档案速览

Profile

身份
iOS 工程师,专注交互、动画与音频
现任
Netflix,iOS UI
所在地
美国湾区;来自加拿大
教育
西安大略大学(Western University),学生时代做了 Meal Plan 等 App
早年
iOS 越狱社区:MessageBox、Ignition、Stride、Spectral、NyanCat
技术栈
Swift、Objective-C、Logos / Theos、Core Animation、SIMD、AudioUnit
代表作
Motion、Decomposed、Adjustable、Albums、Octave

TA 到底在做什么?

Adam 的核心关注是「响应性」:动画要能被手指随时打断、随时接管,界面要像物理世界一样有惯性和弹性。Motion 把这个理念做成了引擎,Adjustable 和 Decomposed 是帮你调出「对的手感」的工具。

TA 的另一条线是音频:用 Swift 写合成器、做 AudioUnit 效果器 J_NO Chorus、把黑胶唱片通过 AirPlay 串流(Tunetable)、做把专辑放到主屏幕的 Albums。

本页依据 adambell.ca、blog.adambell.ca(文章与演讲列表)、GitHub 仓库与 README、App Store 资料和 X 资料整理,资料截至 2026 年 10 月。

成长与经历

  1. 2010–2011

    第一篇博客

    博客第一篇叫 NSLog(@"hello world");,随后写 afc2 与 Finder、在 BlackBerry PlayBook 上跑原生二进制。

  2. 大学时代

    第一批 App

    在西安大略大学做了查询校园餐卡余额的 Meal Plan(作为学生项目,与学校无关),还有为 DJ 设计的播放器 Reprise、「比游隼还快」的 Twitter 客户端 Crest、壁纸 App Vivid。

  3. 2013–2014

    越狱黑客

    MessageBox 把 Facebook 的 Chat Heads「打破 iOS 沙盒」带到整个系统;Stride 让你画图解锁;Spectral 给 iOS 7 锁屏加模糊专辑封面;NyanCat 把彩虹猫放进 iOS 8 通知中心;Ignition 在 iPad 上运行 CarPlay。

  4. 2013

    ARTPOP

    作为 RelativeWave 的一员,参与打造了 Lady Gaga 专辑 ARTPOP 的沉浸式 App。

  5. 2015–2016

    交互原型

    Click Wheel Keyboard 用 iPod 转盘打字;Pseudo3DTouch 在没有 3D Touch 的设备上模拟它;SwiftyGestureRecognition 让你在 Playgrounds 里原型化手势;在 try! Swift Tokyo 2016 演讲。

  6. 2018–2019

    用 Swift 合成声音

    NSSpain《Synthesizing Synths in Swift》、try! Swift Tokyo《Shaping Sounds in Swift》、Swift Alps《Subtractive Synthesis in Swift》,并上 Swift by Sundell 聊音频。同时用 Swift 给自己写博客系统。

  7. 2020–2024

    Motion 与交互演讲

    开源 Motion、Decomposed、SetNeedsDisplay、Adjustable;在 NSSpain、iOS Conf SG、Swift Heroes 讲响应式和有趣的界面;上架 Albums 与 Octave。

  8. 现在

    Netflix

    在 Netflix 做 iOS UI。2025 年写下《McLarens and CarPlay》,讲自己从 Lotus Elise 一路开到 McLaren 的赛车爱好。

代表作品详解

Motion ↗

2020Swift · SIMDiOS / macOS / tvOS

「An animation engine for gesturally-driven user interfaces.」用 SIMD 驱动,完全用 Swift 编写。它让你轻松做出符合物理规律、可打断的动画:弹簧、衰减、关键帧,并且和手势识别器无缝配合。

它解决的问题很具体:系统动画一旦开始就难以被手指「接住」,而 Motion 的每个动画都可以随时被手势接管。

GitHub
★1,491 · ⑂38

Ignition ↗

2014越狱插件Logos

直接在 iOS 设备的 SpringBoard 上运行 CarPlay 界面,「不需要一辆支持 CarPlay 的车」。README 说它主要为装在仪表台上的 iPad 设计,iPhone 6 Plus「勉强也行」。

GitHub
★324 · ⑂58

Albums ↗

2023iOS免费

把你喜欢的专辑做成主屏幕小组件,一点就在你常用的流媒体里播放。App 描述说,它想找回一点收藏和播放黑胶唱片的感觉。

App Store
★4.71(28 个评分)
最近更新
2024-12 · v1.7.1
其他作品年份说明
Decomposed2020让 CATransform3D 和 4×4 矩阵变换好用起来(★265)
Adjustable2024给任意属性自动加滑杆,不用重新编译就能调动画参数(★76)
SetNeedsDisplay2020属性变化时自动刷新视图;iOS 15 起 UIKit 已内置同类能力
Octave2022视奏练习、音符与和弦查询
J_NO Chorus2021致敬 80 年代 BBD 合唱效果的 AudioUnit 插件
Tunetable2022把黑胶唱片通过 AirPlay 串流
Click Wheel Keyboard2015用 iPod 转盘方式打字的复古键盘
Raid Dad2021《命运 2》火力战队信息一览

个人网站研究

首页只是一列大写的 App 名字:ALBUMS、OCTAVE、ARTPOP、MEAL PLAN、REPRISE、CREST、VIVID、STRIDE 2、STRIDE、SPECTRAL,每个配一句话。像一张唱片的曲目表。

博客 blog.adambell.ca 的副标题是「building / breaking things」。TA 用 Swift 给自己写博客,并写了四篇《Blogging in Swift》记录从静态生成到 Vapor 再到升级的过程;Talks 页列出 2018–2023 年的全部演讲。

维度观察
结构App 列表 + 博客 + 演讲
技术Swift 写的博客系统,Cloudflare
节奏博客更新很少(2011–2025 共 14 篇),演讲和代码更多

演讲与文章

For as long as I can remember, I've always been a fan of motorsport.

— Adam Bell,《McLarens and CarPlay》

长处与局限

维度长处局限 / 需要留意
交互手势与动画的理解很深,Motion 是代表Motion 近两年更新放缓
黑客精神敢做系统「不允许」的事越狱作品大多已无法在新系统运行
跨领域音乐、音频与 UI 结合得很自然—
分享演讲多、案例好懂博客更新稀少

可以从 TA 身上学什么

  • 手感需要调:给参数加滑杆,在真机上反复尝试。
  • 动画要可打断:手势驱动的界面,才是真正的响应式。
  • 越狱精神:去做系统「不允许」的事,往往能发现新交互。
  • 把爱好带进代码:合成器和黑胶,成了最受欢迎的演讲和 App。
  • 工具会被系统吸收:SetNeedsDisplay 的能力后来进了 UIKit,这说明方向是对的。

推荐先看这三个

  1. Motion ↗

    看看可打断的弹簧动画如何和手势配合。

  2. Albums ↗

    把最爱的专辑放到主屏幕上。

  3. Talks ↗

    挑一场关于用 Swift 合成声音的演讲。

去看看 Adam Bell 本人的作品

装上 Albums,把一张最爱的专辑放到主屏幕上。

资料来源

  1. Adam Bell 的 X 个人资料
  2. adambell.ca
  3. Adam Bell:Talks
  4. McLarens and CarPlay
  5. GitHub:b3ll
  6. Albums: Music Shortcuts(App Store)
  7. AudioKit Pro:Synthesizing Synths in Swift

本页由公开资料整理,可能存在遗漏或过时之处;以本人公开发布的信息为准。