awesome-falsehood README

The project's README from github.com/kdeldycke/awesome-falsehood. As one markdown file: README.md.

Awesome Falsehood header image

Your brand → here 🚀
SEO is dead. Place your product here to target AI's training data.


English 中文

The logic of the world is prior to all truth and falsehood.
— Ludwig Wittgenstein[1]

A curated Awesome list of falsehoods programmers believe in. A falsehood is an idea that you initially believed was true, but in reality, it is proven to be false.

E.g. of an idea: valid email address exactly has one @ character. So, you will use this rule to implement your email-field validation logic. Right? Wrong! The reality is: emails can have multiple @ chars. Therefore your implementation should allow this. The initial idea is a falsehood you believed in.

The falsehood articles listed below will have a comprehensive list of those false-beliefs that you should be aware of, to help you become a better programmer.

Contents

Meta

Arts

Business

Cryptocurrency

Dates and Time

Education

Emails

Geography

Human Identity

Internationalization

On character encoding, string formatting, unicode and internationalization.

Management

Multimedia

Networks

awesome-falsehood (kdeldycke/awesome-falsehood)

Searching Database…

这是什么东西?一份精心整理的“程序员信以为真的错误观念”清单:这些文章收录了一些听起来显然正确、却在真实世界的极端情况下跌碎的假设,比如以为一个有效的电子邮箱地址里恰好只有一个 @ 字符。
它是需要安装的工具,还是只是用来读的东西?纯粹是阅读材料:整个 README 分成 22 个主题章节——日期、邮箱、姓名、Unicode、地理、价格、网络、排版、电子游戏——每一条都是带简短说明的外部文章链接。
新手应该从哪里开始看?从 Meta(元)章节开始:里面收录的“Falsehoods Programmers Believe”是一篇简要概览,算是对这个题材的快速入门,然后再深入时间、邮箱等具体领域。
这份清单会对每个主题深入讲解,还是我得自己点链接去看?它只负责指引,不负责讲解:每条内容都是一句话,说明对应文章讲了什么;那些详尽的错误观念清单都在文章里,README 本身并没有。
能给我举一个这类错误观念的例子吗?就用导言里自己的例子:“一个有效的电子邮箱地址里恰好只有一个 @ 字符”——实际上邮箱地址可以包含多个 @ 字符,按这条规则写的校验器会拒绝本来能用的地址。其他条目还有:指纹并非人人不同,以及把所有时间都存成 UTC 也并不是万能解法。
这些错误会造成真实损失,还是只是理论上的问题?会造成真实损失:清单里链接了多篇案例,比如 250 美元的内部优惠券在 Google Ads 变成 25,000 美元的广告额度,美国劳工部因日历计算问题多收了 26,000 美元,以及有人利用英国公司名里的特殊字符发动 XSS 攻击。
哪篇文章开创了整个“错误观念”这个题材?按这份清单自己的说法,“Falsehoods about Names”是开创这一切的文章。它排在“人类身份”章节的最前面,旁边还有一篇附详细例子的修订版。
我能把这个清单复用或转载到我自己的文档里吗?可以——这个仓库采用 CC0-1.0 许可证(相当于进入公共领域),你可以直接复制、改编和转载,无需征得许可。
Creator
kdeldycke
Size
2.4 MB
Stars
27.8K
Updated
CommitOct 08
Age
10y
Commits · 90 Days