Brian Kernighan,这位传奇的计算机科学家与 Unix 操作系统的联合创始人,一直是计算机领域极具影响力的人物。现年83岁的他依然活跃于学术界和技术社区,最近在新泽西 InfoAge 科学与历史博物馆的一次演讲中分享了他对当下科技世界的看法,特别是关于Rust编程语言、Linux多样化发行版以及NixOS特有的包管理理念。他的观点为我们理解现代软件发展趋势提供了宝贵的历史视角和现实洞察。 在这场充满回忆与展望的演讲中,Kernighan谈到了他对Rust语言的体验。Rust近年来因为其内存安全、并发控制以及性能优化的特性,成为C语言的重要竞争者之一。然而,作为C语言的长期推崇者,Kernighan坦言,他仅写过一段Rust程序,过程令他颇为"痛苦"。
他不太能适应Rust为了保障内存安全所设计的复杂机制,尤其是在他看来,某些情况下内存安全并非难题,这使得编程体验变得繁琐。同时,他也指出Rust的生态系统庞大而复杂,诸如"crates"和"barrels"这样的包管理机制让他感到难以理解。此外,Rust编译器的速度相较传统编译器较慢,导致代码编写周期延长,整体性能表现不及预期。作为一名从16位PDP 11/20时代走来的计算机科学家,他对于编译器和代码性能的敏感度极高,这也许影响了他对Rust的客观评估。尽管如此,他依然持开放态度,承认自己的经验有限,因此对Rust的未来发展和竞争力持观望立场,认为它不太可能立即取代C语言,但不能排除长远而言它能占据一定地位。 谈到Linux发行版时,Kernighan表现出了一种既幽默又坦诚的态度。
面对观众询问他最喜欢哪个发行版时,他笑称自己对于多达数百种发行版的现象感到困惑。他实际上使用的是Mac电脑,但主要是通过终端连接大学计算机科学系所运行的Linux系统,甚至不清楚具体是哪种发行版。他的这一回答反映出许多科研和工程师用户常态:他们更关注系统的实用性和稳定性,而非纠结于具体的发行版选择。Linux发行版的多样化从一方面体现了开源社区的活力和创新,但从另一方面看也带来了学习曲线陡峭、碎片化以及生态统一性的挑战。 当被问及是否了解NixOS及其独特的包管理系统时,Kernighan直言这是自己目前完全陌生的领域,透露出新兴技术在传统计算机科学大师中间并非普及无障碍。NixOS作为一种基于函数式编程理念构建的Linux发行版,采用不可变包管理机制,强调可重现性和系统配置的可控性,近年来在高级用户和研究者之间渐成热点。
Kernighan对其缺乏了解,折射出即使是资深专家,也需要时间与实践才能消化和接受新的技术理念。 回顾Unix诞生之初,Kernighan对那个时代的人文氛围满怀深情。他形容贝尔实验室是一个充满合作和乐趣的地方,团队氛围激励着创新和探索。然而随着微软Windows崛起,计算机技术的焦点转向面向消费者的操作系统和产品,这使得Unix及其开源衍生物逐渐被边缘化。尽管如此,Linux的出现成功地续写了Unix的精神,成为服务器和嵌入设备领域的主角,延续了Unix的技术遗产。今天,智能手机中基于Unix和Linux的操作系统无处不在,然而用户往往对其背后的技术一无所知,这一点让Kernighan感到既有趣又无奈,尤其是他作为一名早期Unix贡献者,渴望能够深入控制和理解底层系统的设计。
此外,Kernighan对今日软件行业的快速发展和商业化趋势也发表了直言不讳的评价。在被要求以十个字以内形容当前软件状态时,他幽默而坦率地回答:"大部分都很糟糕。"这句话折射出他对软件质量问题的忧虑,也反映了现代软件市场追求快速迭代和商业利润可能压缩了创新的深度和代码的严谨性。尽管环境艰难,他依然鼓励年轻一代编程爱好者坚持对技术的热爱,认为有激情的从业者仍能在技术变革中找到充实且有意义的职业道路。 对于未来的程序员和技术从业者,Kernighan的建议显得既谦逊又富有洞见。他坦言没有万能答案,但指出计算机和软件技术将在未来很长一段时间内深刻影响人类生活。
认识到软件背后的硬件运行以及通信系统的重要性,将伴随他们整个职业生涯。最关键的是,投身于你真正感兴趣的技术领域,保持持续学习和好奇心,这才是走得更远的关键。 总结来说,Brian Kernighan对Rust的谨慎评价并非否定其长远价值,而是强调体验门槛和性能优化的挑战。对Linux发行版的多样性,他持开放但不追求细节的态度,反映出现代技术环境的复杂性。对NixOS等新兴技术的陌生,也提醒我们技术成长的持续不断和快速演变。最重要的是,他对计算机科学的热爱和对未来程序员的鼓励,为我们传递了跨越时代的智慧和激励。
未来计算技术的路上,或许正需要像Kernighan这样既深谙历史又敢于质疑新兴趋势的思考者,引导技术更健康、更可持续地发展。 。