Bramus Van Damme 是来自比利时的 Web 开发者。自从 14 岁(1997 年)发现“查看源代码”功能后,他就爱上了网络,并一直乐此不疲地进行相关研究。我采访了他,了解他在 Web 开发方面的经历,并询问了他认为如今 CSS 中有哪些令人兴奋的功能。
此帖子是 Designcember 的一部分。由 web.dev 倾情打造的 Web 设计盛会。
Rachel:您是如何踏上 Web 开发之路的?
Bramus:小时候,我总是喜欢捣鼓各种东西。我会花上几天时间玩乐高积木,从头开始搭建自己的梦幻世界和物体。
上世纪 90 年代,我们家有了一台电脑,这在当时是很罕见的。很快,我就用电脑游戏取代了实体玩具。不过,我并不是狂热的游戏玩家;我从未完全通关过任何游戏。我没有玩完这些游戏,而是开始对它们进行 mod。
1997 年,在查找有关这些游戏和工具的信息时,我还发现了 view-source。出于好奇,我想知道这些网站是如何构建的,于是开始收集我访问过的网站的 HTML 代码段。将这些代码段与 Frontpage Express(随 Internet Explorer 4 和 5 附带的应用)相结合,我很快就创建了我的第一个包含个人信息的网页。这些网页从未发布过,只存在于我随身携带的软盘上。
从那时起,我对计算机和网络的兴趣越来越浓厚。这种兴趣让我故意在高中时不及格了一年,以便将专业从经济学改为 IT,因为我知道自己想从事 IT 行业。2002 年,我进入大学,在那里我正式学习了 HTML,并开始接触 CSS 和 JavaScript。在那三年里,我意识到 Web 才是我的真正热情所在,于是在 2005 年,我刚从大学毕业,就接下了第一份专业 Web 开发者的工作。
关于成为前端和后端开发者
Rachel:我在您的网站上看到,您既是前端开发者,也是后端开发者。我之前也是 Perl、PHP 和 MySQL 开发者,走过类似的道路。您对哪一方更感兴趣?您认为,鉴于学习堆栈的任何一部分都非常复杂,成为混合开发者的可能性是否正在消失?
Bramus:在我的职业生涯中,我一直在后端和前端之间游走。我曾有一年深入学习 JavaScript 和 React(甚至 React Native),但第二年却在创建 Terraform 脚本和 Docker 容器。我喜欢将两者结合起来,但我的热情始终在于前端,尤其是 CSS。
在早期探索网络时,人们只是“网站站长”,负责所有工作。由于当时的工作范围非常有限,因此很容易跟上。在过去 20 年中,前端和后端都取得了爆炸式发展,因此越来越难在整个领域保持专业知识。因此,我决定在 2020 年再次主要专注于前端。
Rachel:您为什么特别开始撰写有关 CSS 的文章?
Bramus:我博客上的内容一直反映着我正在处理的项目。因此,我们既会发布前端帖子,也会发布后端帖子。
参加 Fronteers Conference 和 CSS Day 等会议有助于我撰写深入的前端博文。例如,2013 年 Tab Atkins-Bittner 谈论 CSS 自定义属性(当时这些属性甚至还不是正式的)或 2015 年您(Rachel Andrew)向我们讲解网格,这些事件直接促使我撰写了相关文章。当时,我是一所技术大学的网络和移动开发讲师,因此有充分的理由关注这些主题,因为之后我会向自己的学生讲授这些主题。
2019 年,我开始密切关注 CSSWG 并参与讨论。浏览器在功能标志背后开发功能意味着,即使在这些功能发布之前,我也能尝试我读到的内容。然后,这反映在我的博客内容中。
给新作者的建议
Rachel:对于想要开始撰写技术文章的人,您有什么建议?
Bramus:不要犹豫,直接去做。即使只是单行 CSS 代码,即使每年只发 1 篇博文,即使您“只有”5 位订阅者,也要坚持下去。解决自己的问题,撰写自己想找到的文章。通过撰写博客,我不仅挑战自己,更深入地了解了各种技术,还为自己打开了个人和职业发展的大门。
不要过分依赖 Medium 或 Twitter 等外部服务,而是尝试在网络上拥有自己的空间。从长远来看,这是值得的。您无需任何花哨的内容管理系统、构建流水线或评论系统即可开始。您只需要一个文本编辑器和一些空闲时间。HTML 与简单的样式表相结合,可以实现很多功能。
CSS 中的新功能
Rachel:您撰写过许多关于 CSSWG 和浏览器中正在开发的新功能的文章,您认为哪些功能最令人期待,将对未来的 Web 产生重大影响?您认为哪项技术对您自己的专业工作影响最直接?
Bramus:与许多开发者一样,我对 CSS 容器查询非常感兴趣。其他即将推出的功能(例如级联层和与滚动关联的动画)也让我感到兴奋,但容器查询肯定会带来最大的影响。它们将使我们能够从自适应网页过渡到自适应组件。
Rachel:您希望 CSS 添加哪些功能或特性?
Bramus:我希望看到与滚动相关的动画功能取得进展。目前,这只是编辑者草稿。无需依赖 JavaScript 即可定义硬件加速滚动,这完全符合我关于渐进增强和最小功率原则的心理模型。
CSS 嵌套也是我关注的重点。自首次发布编辑草稿以来,该规范历时两年多才发布了首个公开工作草稿,我很高兴看到它在去年夏天发布。
除了这些较大的功能之外,我当然也很欣赏较小的调整和新增功能。accent-color 等功能绝对让我喜笑颜开,因为它们让我的开发者生活更加轻松。
关于值得关注的优秀网络人士的建议
Rachel:目前还有哪些人在网上做着非常有趣、好玩或富有创意的工作?
Bramus:这个问题很难回答,因为有太多人制作的内容让我惊叹和受到启发。例如,Adam Argyle 及其 GUI 挑战、Stephanie Eckles 的项目、Michelle Barker 的博文、Kevin J. Powell、Miriam Suzanne 在 CSS 工作组中的工作、Una Kravets 的播客、Jake Archibald 的文章、Jake 和 Surma 的 HTTP 203、George Francis 的 Houdini 工作,以及 Temani Afif 的帖子。这些人及其项目,以及我现在忘记的许多其他项目,都赢得了我的尊敬和钦佩。
我认为,在我整个职业生涯中,最具影响力的人是 Jeremy Keith。他向我们讲授了语义 HTML、渐进增强和弹性,这让我大开眼界。这是我曾经给学生们讲过的一段话,今天仍然很想分享给大家。在 JavaScript 席卷全球,而初级开发者似乎跳过了 Web 基础知识的时代,他的博文和讲座比以往任何时候都更具相关性。
Rachel:您可以在 Twitter 上关注 Bramus,也可以访问他的博客 bram.us。