A curated list of falsehoods programmers believe in.
The logic of the world is prior to all truth and falsehood.
ā Ludwig Wittgenstein[1]
Falsehood articles are a form of commentary on a particular subject, and are appreciated by the developer community at large for their effectiveness and terseness. Theyāre a convenient written form to approach an unfamiliar domain by dispelling myths, point out common pitfalls, show inconsistencies and subtleties.
In a sense, Falsehood articles are a suite of wordy unit-tests covering extensive edge-cases provided by real-world usage.
<
and >
in company names
lead to XSS attacks
- Because
UK allows companies to be registered with special characters, a hacker leveraged them to register
\"><SCRIPT SRC=MJT.XSS.HT></SCRIPT> LTD
, but
also ; DROP TABLE "COMPANIES";-- LTD
,
BETTS & TWINE LTD
and
SAFDASD & SFSAF \' SFDAASF\" LTD
.
tax
- A
PHP 5.4+ tax management library.
YYYY
, yyyy
, and why your year may
be wrong
- String formatting of date is hard.
Lots of things are said, written and believed about postdoctoral
researchers that are simply not true.
.
MR
suffix
as Mister
and drops it.
NSPersonNameComponentsFormatter
- Localized representations of the components of a personās name.
On character encoding, string formatting, unicode and internationalization.
Latin-1
Assumptions
- Most programmers spend so much time with Latin-1
they
forgets about otherās scripts quirks.
hostname-validate
- An attempt to validate hostnames in Python.
libphonenumber
- Googleās common Java, C++ and JavaScript library for parsing,
formatting, and validating international phone numbers. Also available
for C#,
Objective-C,
Python, Ruby and
PHP.
20252
) because he gets
so much mail.
libaddressinput
- Googleās common C++ and Java library for parsing, formatting, and
validating international postal addresses.
addressing
- A PHP 5.4+ addressing library, powered by Googleās dataset.
postal-address
- Python module to parse, normalize and render postal addresses.
address
- Go library to validate and format addresses using Googleās dataset.
/dev/urandom
- There are a few things about /dev/urandom
and
/dev/random
that are repeated again and again. Still they
are false.
mtime
- Part of a post on why fileās mtime
comparison could be
considered harmful.
0.1 + 0.2 != 0.3
.ā
Your contributions are always welcome! Please take a look at the contribution guidelines first.
The header image is based on a modified photo taken in February 2010 by Iza Bella, distributed under a Creative Commons BY-SA 2.0 UK license.
[1]: Notebooks, 1914-1916, page 14e (Harper & Brothers, New York, 1961). [ā]