当我 13 岁时,我们学校接入了互联网——一个 28.8 kbps 的 U.S. Robotics 调制解调器是我们与广阔网络之间唯一的桥梁。在接下来的几年里,我逐渐了解了更多关于 HTML 和网站的基础知识,在我看来,你需要使用像 FrontPage 或传奇的 DreamWeaver 这样的特殊工具才能做出真正有价值的东西。
FrontPage 在第二年被引入学校,但 DreamWeaver 对我来说简直是一个神话。我从未见过它,只是听说过它能为年轻的网络爱好者做出的各种令人惊叹的事情。
直到我在文本编辑器中打开一个 HTML 文件,了解到有一套非常明确的规则,我对它的看法才发生了改变。那时我突然意识到,虽然像 FrontPage 和 DreamWeaver 这样的工具可以使某些任务更容易,但如果我真的希望我的网站是无限的(至少像一个 15 岁的孩子可以想象的那样无限),那么我应该只使用文本编辑器进行编码。
为什么?文本编辑器允许我输入 任何 HTML 规范。不需要有人在编辑器中支持它;我可以准确地告诉网站该做什么。我认识的很多人都可以通过他们父母的办公室套件或其他方式访问其他工具,但我满足于在 Windows 机器上使用记事本。有趣的是,当人们的精美 FrontPage 网站出现问题时,我通常可以通过查看代码几分钟来找出问题所在。
不使用花哨的工具使我对底层技术的理解远胜于我的同龄人。我遇到的麻烦,虽然经常拖慢我的速度,但教会了我比使用向导或模板更多的东西。这种情况一直延续到我早期的系统管理职业生涯,在那里,我没有购买昂贵的解决方案,而是使用开源工具来实现我的目标。
在学校工作,预算远低于商业组织。这增加了我对支出格外保守的另一个原因。我们使用一个开源工具作为我们的 Web 代理,它当时的功能比商业产品多得多。
事实上,开源工具并不总是有人力来创建一些商业产品那样超级棒、自动修复一切、令人眼花缭乱的功能。它们通常没有资金来保护他们的想法并阻止人们复制它们。有时它们确实有点粗糙。但如果你问我,这些缺点也同样存在于商业产品中,而且程度往往非常相似。
我已经数不清有多少次我对专有软件包感到失望,正是因为我对它们期望过高。不同之处在于,在开源世界中,如果我发现问题,我可以尝试修复它。我经常可以直接与开发人员互动并向他们提问,向他们提供他们从未想过的用例,并直接感谢他们对我的日常工作的贡献。
以我的经验,开源通常被认为是“正规”工具的穷人替代品。然而,在我从事 IT 行业的所有年头里,很少有必须使用专有工具的情况。大多数情况下,产品的基本功能集是相同的。有些情况下,我不得不模仿或破解来绕过功能的缺失,以便达到与专有工具相同的效果。在这些情况下,当然,我有时不得不花费更多的时间来解决问题,但我对问题有了更深入的了解,有时甚至发现了更好的解决方案,或者能够使用现有工具开发自己的解决方案。
最重要的是,然后我的解决方法可以与社区共享,以便每个人都可以受益、增强和支持这个过程。
我实际上觉得,不使用顶级工具比拥有无限预算来解决问题更有福。在我看来,在问题上投入过多资金可能与投入过少资金一样具有破坏性。决策可能会变化太快,并且“让某事奏效”的驱动力变成了“寻找另一种替代方案”的驱动力。
我在自己的职业生涯中和从朋友那里听到的故事中都见过这种情况。在招聘时,我更倾向于那些不得不通过发挥可用工具的优势来设计解决方案的候选人,而不是那些仅仅在产品 Y 上花费了 X 收入的人。
到目前为止,我参与过许多项目,几乎所有项目都涉及开源。以下是我参与过的一些项目以及我在工作之外的业余时间用于项目的工具的简要总结。
- 活动摄影:Darktable(照片编辑器)
- 撰写关于 Git 的技术书籍:Git(版本控制)、LaTeX(排版)、Geany(文本编辑器)
- 为教堂活动制作视频:Blender(视频编辑)
- 录制视频播客:Kdenlive(视频编辑)、Cinelerra(视频编辑)
- 录制和混合音乐:Ardour(多轨录音)、jack(音频子系统)、Hydrogen(鼓编辑器)、LinuxSampler(采样软件)
- 创建视觉小说游戏:Python(编写一些工具的脚本)、Ren'Py(视觉小说引擎)
所以对我来说,虽然我有时渴望闪亮、顶级、最昂贵的工具,但我发现我选择的开源替代方案不一定是我想要的工具,但几乎总是我需要的工具。最终,这关乎做出明智的选择,开放的选择。
有一部名为 Default to Open 的短纪录片,如果您正在寻找工具来解决问题或让某事正常工作,我建议您观看它。
2 条评论