dev.wtf - 开发者参考
开发人员在谈论什么?
现代软件开发是一门复杂的学科。大量的专业术语、俚语、表情符号、梗图和文化背景让新手入门更加困难。
如果我们共同建立参考
书现代软件开发人员的术语和行话的网站。
我想象它就像是开发人员的城市词典和计算机科学基础百科全书的混合体。
替代方案
你可能会想“但是还有很多其他选择”,例如:
- urbandictionary非常适合现象术语,但不适合开发人员专用
- MDN是一个很好的资源,但它的范围仅限于浏览器/JS 特定主题
- emojipedia你想要了解的关于表情符号的一切
- 函数式编程术语- 关于函数式术语
- WikiWikiWeb - 关于软件开发的一些有趣的观点
- 《黑客术语档案》 ——黑客俚语的综合汇编,阐明了黑客传统、民间传说和幽默的许多方面
(您知道其他好的替代方案吗?请告诉我)
是也不是。是的,有很多很棒的资源。不,它们并非涵盖所有领域,所以你需要查阅多个来源,术语也可能有所不同。我觉得这种情况可以改善。
什么?
对于开发人员
当开发者提到“PR”时,他们很可能指的是拉取请求 (Pull Request),而不是公共关系 (Public Relations)。此处的参考内容主要侧重于软件开发相关的主题。
对新手友好
单子是自函子类别中的幺半群,有什么问题?
——摘自《编程语言简史》中的笑话
解释应该以一种通俗易懂的方式进行,显然,简化事物的能力是有限的。我们仍然无法向5岁的孩子正确地解释量子物理学,但我们需要继续努力。
可汗学院用颜色解释公钥密码学就是一个很好的例子,它以一种平易近人的方式解释了复杂的主题。
基础知识
我很难找到一些基本知识的解释,人们经常跳过解释基本知识而写一些复杂的东西(我猜他们觉得有趣且具有挑战性的东西)。
关于这个问题有一篇很好的文章 - Christopher Strachey 的《编程语言的基本概念》,但它是 1967 年的(很多内容仍然相关,但一些术语已经过时了)。
一致性
不同的编程语言使用不同的术语来表示相同的概念,例如,向量、数组、列表、队列的含义可能相同(也可能不同)。如果能够达成某种一致性,并能够列出不同语言之间的对应关系(即所谓的“罗塞塔石碑”),那就太好了。
不是 API 参考
其目的是涵盖基本概念和专业术语,而非成为 API 的参考。我们不想取代devdocs或MDN。
批判性思维
很多想法都被称为“最佳”实践,但这些想法并非灵丹妙药,所有解决方案都存在利弊权衡。这些权衡应该被重点强调,以便读者能够得出结论。
例如:
站在巨人的肩膀上
这并不是要从头开始重做所有内容。如果其他资料中已经对某些主题进行了很好的解释,我们可以引用。
正确,但不无聊
这个想法是为了给计算机科学术语提供正确的定义,但我们也可以在这个过程中享受乐趣,在这里或那里添加一些模因和一些艺术。
图:美国运通的贴纸。
如何?
这将是一个开源项目。一个由 Markdown 文件生成的静态网站,带有前置内容,概念与 Jekyll、Hugo 或 Gatsby 相同。
目前,源代码将托管在 Github 上,因此任何拥有 Github 帐户的人都可以贡献内容。
执行
主要关注内容,实现次之。任何能兼容 Markdown 文件的东西都可以。我选择使用 Hugo 来开发 MVP(最小可行产品),但以后可以更改。
示例
参考主题的一些示例可能涵盖(也可能不涵盖,因为这是一个社区驱动的项目):
- 计算机科学术语:数组、闭包
- 开发术语:控制台、服务器
- 缩写:a11y(可访问性)、l10n(本地化)
- 现象术语:bikeshedding、gatekeeping、10x
- 专业术语:vulns(漏洞)、repo(存储库)
- 网络缩写和表情符号:thx(谢谢),
(╯°□°)╯︵ ┻━┻
(翻表)
细节
每篇文章至少包含标题和定义。可选参数:
- 封面图片:用于社交网络
- 可以自动生成。就像 dev.to 那样
- 标签
- 相关 - 相关文章
- aka - 该术语的其他名称
- 可用于生成重定向页面
我能帮上什么忙?
- 提出问题。如果您发现某些术语令人困惑,请提出问题寻求解释
- 回答问题。发送带有答案的拉取请求
- 编辑语言。有些作者希望得到帮助来修改拼写错误和错误
- 添加图片。您无需成为开发者即可做出贡献,您可以通过提供封面图片和协助设计相关事宜来提供帮助
- 改进代码。您有什么改进网站的想法吗?请发送 PR。
其他想法
聚苯乙烯
我需要提一下,我认识的最好的牛油果开发者 Sara Vieira 也有同样的想法。
概念证明:https://devwtf.netlify.com/。
鏂囩珷鏉ユ簮锛�https://dev.to/stereobooster/dev-wtf-developer-s-reference-4j65封面图片来自unsplash