2017-04-05 09:34:37 -04:00
|
|
|
|
# Awesome Falsehood [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) [![Build Status](https://travis-ci.org/kdeldycke/awesome-falsehood.svg?branch=master)](https://travis-ci.org/kdeldycke/awesome-falsehood)
|
2016-09-08 05:22:55 -04:00
|
|
|
|
|
2016-09-08 06:18:23 -04:00
|
|
|
|
A curated list of awesome falsehoods programmers believe in.
|
2016-09-08 05:22:55 -04:00
|
|
|
|
|
2016-09-08 20:04:13 -04:00
|
|
|
|
> The logic of the world is prior to all truth and falsehood.
|
|
|
|
|
> - Ludwig Wittgenstein
|
|
|
|
|
|
2016-09-08 05:22:55 -04:00
|
|
|
|
|
2016-09-08 19:44:50 -04:00
|
|
|
|
## Contents
|
|
|
|
|
|
2016-09-08 19:51:21 -04:00
|
|
|
|
- [Foreword](#foreword)
|
2017-09-19 10:57:11 -04:00
|
|
|
|
---
|
2016-09-08 19:44:50 -04:00
|
|
|
|
- [Meta](#meta)
|
2016-12-27 11:17:17 -05:00
|
|
|
|
- [Arts](#arts)
|
2016-09-12 07:22:40 -04:00
|
|
|
|
- [Business](#business)
|
2016-09-12 05:56:49 -04:00
|
|
|
|
- [Dates and Time](#dates-and-time)
|
2016-09-08 19:44:50 -04:00
|
|
|
|
- [Emails](#emails)
|
|
|
|
|
- [Geography](#geography)
|
2016-09-12 07:20:12 -04:00
|
|
|
|
- [Human Identity](#human-identity)
|
2017-09-19 10:53:59 -04:00
|
|
|
|
- [Internationalization](#internationalization)
|
2016-12-26 19:22:39 -05:00
|
|
|
|
- [Multimedia](#multimedia)
|
2016-09-08 19:44:50 -04:00
|
|
|
|
- [Networks](#networks)
|
2016-09-12 05:56:49 -04:00
|
|
|
|
- [Phone Numbers](#phone-numbers)
|
|
|
|
|
- [Postal Addresses](#postal-addresses)
|
2016-12-27 10:09:28 -05:00
|
|
|
|
- [Science](#science)
|
2016-12-27 11:39:21 -05:00
|
|
|
|
- [Society](#society)
|
2016-09-12 07:26:55 -04:00
|
|
|
|
- [Software Engineering](#software-engineering)
|
2017-09-19 10:03:07 -04:00
|
|
|
|
- [Typography](#typography)
|
2017-09-19 10:57:11 -04:00
|
|
|
|
---
|
2016-09-08 19:44:50 -04:00
|
|
|
|
- [Contributing](#contributing)
|
2016-09-12 06:05:57 -04:00
|
|
|
|
- [Good Candidates](#good-candidates)
|
|
|
|
|
- [*Falsehood* Articles](#falsehood-articles)
|
|
|
|
|
- [Libraries](#libraries)
|
|
|
|
|
- [Data Structures](#data-structures)
|
2016-09-08 19:44:50 -04:00
|
|
|
|
- [License](#license)
|
|
|
|
|
|
|
|
|
|
|
2016-09-08 19:11:28 -04:00
|
|
|
|
## Foreword
|
2016-09-08 06:15:51 -04:00
|
|
|
|
|
2016-09-08 19:11:28 -04:00
|
|
|
|
*Falsehood* articles are a form of commentary on a particular subject, and are
|
2016-09-08 19:16:46 -04:00
|
|
|
|
appreciated by the developer community at large for their effectiveness and
|
2016-11-03 14:34:24 -04:00
|
|
|
|
terseness. They're a convenient written form to approach an unfamiliar domain
|
|
|
|
|
by dispelling myths, point out common pitfalls, show inconsistencies and
|
2016-09-08 19:16:46 -04:00
|
|
|
|
subtleties.
|
2016-09-08 06:15:51 -04:00
|
|
|
|
|
2016-10-06 01:28:47 -04:00
|
|
|
|
In a sense, *Falsehood* articles are a suite of wordy unit-tests covering
|
|
|
|
|
extensive edge-cases provided by real-world usage.
|
2016-09-08 18:18:43 -04:00
|
|
|
|
|
|
|
|
|
|
2016-09-08 18:19:40 -04:00
|
|
|
|
## Meta
|
|
|
|
|
|
2016-09-08 20:13:24 -04:00
|
|
|
|
- [Falsehoods Programmers
|
2017-04-05 09:37:12 -04:00
|
|
|
|
Believe](https://spaceninja.com/2015/12/07/falsehoods-programmers-believe/) - A
|
2016-09-08 20:13:24 -04:00
|
|
|
|
brief list of common falsehoods. A great overview and quick introduction into
|
|
|
|
|
the world of falsehoods.
|
2016-12-27 09:06:51 -05:00
|
|
|
|
- [Falsehoods About
|
2017-01-11 08:55:32 -05:00
|
|
|
|
Programming](https://chiselapp.com/user/ttmrichter/repository/gng/doc/trunk/output/falsehoods.html) -
|
2016-12-27 09:06:51 -05:00
|
|
|
|
A humbling and fun list on programming and programmers themselves.
|
2016-12-27 09:07:21 -05:00
|
|
|
|
- [Falsehoods About Falsehoods
|
2017-01-11 08:55:32 -05:00
|
|
|
|
Lists](https://kevin.deldycke.com/2016/12/falsehoods-programmers-believe-about-falsehoods-lists/) -
|
2016-12-27 07:46:23 -05:00
|
|
|
|
Meta commentary on how these falsehoods shouldn't be handled.
|
2016-09-08 18:19:40 -04:00
|
|
|
|
|
|
|
|
|
|
2016-12-27 11:17:17 -05:00
|
|
|
|
## Arts
|
|
|
|
|
|
|
|
|
|
- [Falsehoods About
|
|
|
|
|
Music](https://literateprogrammer.blogspot.fr/2016/07/falsehoods-programmers-believe-about.html) -
|
|
|
|
|
False assumption that might be made in codifying music.
|
|
|
|
|
|
|
|
|
|
|
2016-09-12 07:22:40 -04:00
|
|
|
|
## Business
|
|
|
|
|
|
|
|
|
|
- [Falsehoods About Online
|
|
|
|
|
Shopping](http://wiesmann.codiferes.net/wordpress/?p=22201) - Covers prices,
|
|
|
|
|
currencies and inventory.
|
|
|
|
|
- [Falsehoods About
|
|
|
|
|
Prices](https://gist.github.com/rgs/6509585) - Covers currencies, amounts and
|
|
|
|
|
localization.
|
2016-12-13 05:41:45 -05:00
|
|
|
|
- [Falsehoods About
|
|
|
|
|
IBANs](https://github.com/globalcitizen/php-iban/blob/master/docs/FALSEHOODS.md) -
|
|
|
|
|
International Bank Account Numbers are not immune to mistakes.
|
2017-04-21 10:39:47 -04:00
|
|
|
|
- [Falsehoods About Job
|
|
|
|
|
Applicants](https://web.archive.org/web/20170114022820/https://medium.com/@creatrixtiara/falsehoods-programmers-believe-about-job-applicants-99280437c616) -
|
|
|
|
|
Assumptions about job applicants and their job histories aren’t necessarily
|
|
|
|
|
true.
|
2016-12-27 10:39:53 -05:00
|
|
|
|
- [Falsehoods About
|
|
|
|
|
Economics](http://exple.tive.org/blarg/2016/09/22/falsehoods-programmers-believe-about-economics/) -
|
|
|
|
|
Economics are not simple or rational.
|
2017-04-21 10:37:20 -04:00
|
|
|
|
- [CLDR currency
|
|
|
|
|
definitions](http://unicode.org/cldr/trac/browser/tags/release-31/common/supplemental/supplementalData.xml#L81) -
|
|
|
|
|
Currency validity date ranges overlap due to revolts, invasions, new
|
|
|
|
|
constitutions, and slow planned adoption.
|
2016-09-12 07:22:40 -04:00
|
|
|
|
- [`tax`](https://github.com/commerceguys/tax) - A PHP 5.4+ tax management
|
|
|
|
|
library.
|
|
|
|
|
|
|
|
|
|
|
2016-09-12 05:56:49 -04:00
|
|
|
|
## Dates and Time
|
2016-09-08 05:22:55 -04:00
|
|
|
|
|
2016-09-12 05:56:49 -04:00
|
|
|
|
- [Falsehoods About
|
|
|
|
|
Time](http://infiniteundo.com/post/25326999628/falsehoods-programmers-believe-about-time) -
|
2016-09-08 20:13:24 -04:00
|
|
|
|
Seminal article on dates and time.
|
2016-09-12 05:56:49 -04:00
|
|
|
|
- [More Falsehoods About
|
|
|
|
|
Time](http://infiniteundo.com/post/25509354022/more-falsehoods-programmers-believe-about-time) -
|
2016-09-08 20:13:24 -04:00
|
|
|
|
Part. 2 of the article above.
|
2016-09-12 05:56:49 -04:00
|
|
|
|
- [Falsehoods About Time and Time
|
2017-01-11 08:55:32 -05:00
|
|
|
|
Zones](https://www.creativedeletion.com/2015/01/28/falsehoods-programmers-date-time-zones.html) -
|
2016-09-08 20:13:24 -04:00
|
|
|
|
Another takes on time-related falsehoods, with an emphasis on time zones.
|
2016-09-12 07:18:08 -04:00
|
|
|
|
- [Critique of Falsehoods About
|
|
|
|
|
Time](https://gist.github.com/thanatos/eee17100476a336a711e) - Takes on the
|
2016-11-03 14:34:24 -04:00
|
|
|
|
first article above and provides an explanation of each falsehood, with more
|
2016-11-03 14:48:21 -04:00
|
|
|
|
context and external resources.
|
2017-03-21 12:18:40 -04:00
|
|
|
|
- [Your Calendrical Fallacy Is Thinking…](http://yourcalendricalfallacyis.com) -
|
2017-03-21 13:11:47 -04:00
|
|
|
|
List covering intercalation and cultural influence, made by a community of iOS
|
|
|
|
|
and macOS developers.
|
2016-09-12 07:18:08 -04:00
|
|
|
|
- [Time Zone Database](https://www.iana.org/time-zones) - Code and data that
|
|
|
|
|
represent the history of local time for many representative locations around
|
|
|
|
|
the globe.
|
|
|
|
|
- [The Long, Painful History of Time](http://naggum.no/lugm-time.html) - Most
|
2016-12-27 10:58:13 -05:00
|
|
|
|
of the idiosyncrasies in time keeping can find an explanation in history.
|
2016-11-03 14:51:38 -04:00
|
|
|
|
- [You Advocate a Calendar Reform](https://qntm.org/calendar) - Your idea will
|
|
|
|
|
not work. This article tells you why.
|
2016-11-06 16:33:14 -05:00
|
|
|
|
- [So You Want to Abolish Time Zones](https://qntm.org/abolish) – Abolishing
|
|
|
|
|
timezones may sound like a good idea, but there are quite a few complications
|
2016-12-01 12:55:03 -05:00
|
|
|
|
that make it not quite so.
|
2017-04-24 13:36:20 -04:00
|
|
|
|
- [The Problem with Time & Timezones](https://www.youtube.com/watch?v=-5wpm-gesOY) -
|
2017-09-17 11:35:22 -04:00
|
|
|
|
A video about why you should never, ever deal with timezones if you can help
|
|
|
|
|
it.
|
2017-09-17 11:43:40 -04:00
|
|
|
|
- [$26,000 Overcollection by Labor
|
|
|
|
|
Department](http://digital.vpr.net/post/rounding-error-computer-code-leads-26000-overcollection-labor-department) -
|
|
|
|
|
The consequence of wrong calendar accounting.
|
2016-09-08 05:22:55 -04:00
|
|
|
|
|
|
|
|
|
|
2016-09-08 05:58:21 -04:00
|
|
|
|
## Emails
|
|
|
|
|
|
2016-09-12 05:56:49 -04:00
|
|
|
|
- [I Knew How to Validate an Email Address Until I Read the
|
2017-01-11 08:55:32 -05:00
|
|
|
|
RFC](https://haacked.com/archive/2007/08/21/i-knew-how-to-validate-an-email-address-until-i.aspx/) -
|
2017-10-16 04:12:23 -04:00
|
|
|
|
Provides intricate examples that are unsuspected valid email addresses
|
|
|
|
|
according the RFC-822.
|
2016-09-08 05:58:21 -04:00
|
|
|
|
|
|
|
|
|
|
2016-09-08 06:13:07 -04:00
|
|
|
|
## Geography
|
|
|
|
|
|
2016-12-28 10:18:00 -05:00
|
|
|
|
- [Falsehoods About
|
2016-09-12 07:16:03 -04:00
|
|
|
|
Geography](http://wiesmann.codiferes.net/wordpress/?p=15187) - Takes on places,
|
|
|
|
|
their names and locations.
|
2016-09-12 07:16:22 -04:00
|
|
|
|
- [Falsehoods About
|
|
|
|
|
Maps](http://www.atlefren.net/post/2014/09/falsehoods-programmers-believe-about-maps/) -
|
|
|
|
|
Covers coordinates, projection and GIS.
|
2016-09-08 06:13:07 -04:00
|
|
|
|
|
|
|
|
|
|
2016-09-12 07:20:12 -04:00
|
|
|
|
## Human Identity
|
2016-09-08 05:22:55 -04:00
|
|
|
|
|
2016-09-12 05:50:34 -04:00
|
|
|
|
- [Falsehoods About
|
2016-09-12 07:15:14 -04:00
|
|
|
|
Names](https://www.kalzumeus.com/2010/06/17/falsehoods-programmers-believe-about-names/) -
|
|
|
|
|
The article that started it all.
|
2016-09-12 07:20:12 -04:00
|
|
|
|
- [Falsehoods About
|
|
|
|
|
Gender](https://gist.github.com/garbados/f82604ea639e0e47bf44) - Gender is part
|
2016-09-29 06:41:40 -04:00
|
|
|
|
of human identity and has its own subtleties.
|
2016-10-18 11:21:32 -04:00
|
|
|
|
- [Gay Marriage: The Database Engineering Perspective](https://qntm.org/gay) -
|
|
|
|
|
How to store a marriage in a database while addressing most of the falsehoods
|
|
|
|
|
about gender, naming and relationships.
|
2017-04-21 10:12:56 -04:00
|
|
|
|
- [Falsehoods Programmers Believe About
|
|
|
|
|
Families](https://shkspr.mobi/blog/2017/03/falsehoods-programmers-believe-about-families/) -
|
|
|
|
|
You can't really define a family with strict rules.
|
2016-12-27 11:34:54 -05:00
|
|
|
|
- [Personal Names Around the
|
|
|
|
|
World](https://www.w3.org/International/questions/qa-personal-names) - How do
|
|
|
|
|
people's names differ around the world, and what are the implications for the
|
|
|
|
|
Web?
|
2016-09-08 20:13:24 -04:00
|
|
|
|
- [XKCD #327: Exploits of a
|
2016-10-06 11:19:42 -04:00
|
|
|
|
Mom](https://xkcd.com/327/) - Funny take on how implementation of a falsehood
|
|
|
|
|
might lead to security holes.
|
2016-10-23 15:50:49 -04:00
|
|
|
|
- [Hello, I’m Mr. Null. My Name Makes Me Invisible to
|
|
|
|
|
Computers](https://www.wired.com/2015/11/null/) - Real-life example on how
|
|
|
|
|
implemented falsehood has negative impact on someone's life.
|
2016-09-12 05:56:49 -04:00
|
|
|
|
- [HL7 v3
|
2017-01-11 08:55:32 -05:00
|
|
|
|
RIM](https://www.hl7.org/implement/standards/product_brief.cfm?product_id=186) -
|
2016-09-08 20:13:24 -04:00
|
|
|
|
A flexible data model for representing human names.
|
2016-09-12 07:15:40 -04:00
|
|
|
|
- [Apple iOS
|
2016-09-12 05:56:49 -04:00
|
|
|
|
`NSPersonNameComponentsFormatter`](https://developer.apple.com/library/ios/documentation/Miscellaneous/Reference/NSPersonNameComponentsFormatter_Class/index.html) -
|
2016-09-08 20:13:24 -04:00
|
|
|
|
Localized representations of the components of a person’s name.
|
2018-02-12 18:12:42 -05:00
|
|
|
|
- [Falsehoods About Me](https://skylarmacdonald.com/falsehoods/) - Issues at the
|
|
|
|
|
intersection of names and gender and internationalisation.
|
2016-09-08 05:22:55 -04:00
|
|
|
|
|
|
|
|
|
|
2017-09-19 10:53:59 -04:00
|
|
|
|
## Internationalization
|
|
|
|
|
|
|
|
|
|
- [Falsehoods About
|
|
|
|
|
Language](http://garbled.benhamill.com/2017/04/18/falsehoods-programmers-believe-about-language/) -
|
|
|
|
|
Translating a software from English is not as straightforward as it seems to
|
|
|
|
|
be.
|
|
|
|
|
- [i18n Testing Data](https://github.com/patch/i18n-testing) - Real-word
|
|
|
|
|
international and diverse name data for unit testing and QA.
|
|
|
|
|
- [Internationalis(z)ing Code](https://www.youtube.com/watch?v=0j74jcxSunY) -
|
|
|
|
|
A video about things you need to keep in mind when internationalizing your
|
|
|
|
|
code.
|
|
|
|
|
|
|
|
|
|
|
2016-12-26 19:22:39 -05:00
|
|
|
|
## Multimedia
|
|
|
|
|
|
|
|
|
|
- [Falsehoods About
|
|
|
|
|
Video](https://haasn.xyz/posts/2016-12-25-falsehoods-programmers-believe-about-%5Bvideo-stuff%5D.html) -
|
|
|
|
|
Cover it all: video decoding and playback, files, image scaling, color spaces
|
|
|
|
|
and conversion, displays and subtitles.
|
|
|
|
|
|
|
|
|
|
|
2016-09-08 18:16:51 -04:00
|
|
|
|
## Networks
|
|
|
|
|
|
2016-09-12 05:56:49 -04:00
|
|
|
|
- [Falsehoods About
|
2016-09-12 07:15:14 -04:00
|
|
|
|
Networks](http://blog.erratasec.com/2012/06/falsehoods-programmers-believe-about.html) -
|
|
|
|
|
Covers TCP, DHCP, DNS, VLANs and IPv4/v6.
|
2016-12-27 09:58:33 -05:00
|
|
|
|
- [Fallacies of Distributed
|
|
|
|
|
Computing](https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing) -
|
|
|
|
|
Assumptions that programmers new to distributed applications invariably make.
|
2016-09-08 18:16:51 -04:00
|
|
|
|
|
|
|
|
|
|
2016-09-12 05:56:49 -04:00
|
|
|
|
## Phone Numbers
|
2016-09-08 06:22:33 -04:00
|
|
|
|
|
2016-09-12 07:16:50 -04:00
|
|
|
|
- [Falsehoods About Phone
|
|
|
|
|
Numbers](https://github.com/googlei18n/libphonenumber/blob/master/FALSEHOODS.md) -
|
|
|
|
|
Covers phone numbers, their representation and meaning.
|
2016-09-08 20:13:24 -04:00
|
|
|
|
- [`libphonenumber`](https://github.com/googlei18n/libphonenumber) - Google's
|
|
|
|
|
common Java, C++ and JavaScript library for parsing, formatting, and validating
|
|
|
|
|
international phone numbers. Also available for
|
|
|
|
|
[C#](https://github.com/erezak/libphonenumber-csharp),
|
|
|
|
|
[Objective-C](https://github.com/iziz/libPhoneNumber-iOS),
|
|
|
|
|
[Python](https://github.com/daviddrysdale/python-phonenumbers),
|
|
|
|
|
[Ruby](https://github.com/sstephenson/global_phone) and
|
|
|
|
|
[PHP](https://github.com/giggsey/libphonenumber-for-php).
|
2016-09-08 06:22:33 -04:00
|
|
|
|
|
|
|
|
|
|
2016-09-12 05:56:49 -04:00
|
|
|
|
## Postal Addresses
|
2016-09-08 05:22:55 -04:00
|
|
|
|
|
2016-09-12 05:56:49 -04:00
|
|
|
|
- [Falsehoods About
|
2016-09-12 07:15:14 -04:00
|
|
|
|
Addresses](https://www.mjt.me.uk/posts/falsehoods-programmers-believe-about-addresses/) -
|
|
|
|
|
Covers streets, postal codes, buildings, cities and countries.
|
2016-11-03 14:34:40 -04:00
|
|
|
|
- [Letter Delivered Despite No Name, No
|
2016-10-26 05:27:17 -04:00
|
|
|
|
Address](https://twitter.com/loriskumo/status/735851511331356672) - Ultimate
|
|
|
|
|
falsehood about postal addresses: you do not need one.
|
2018-02-19 17:49:36 -05:00
|
|
|
|
- [Regex and Postal
|
|
|
|
|
Addresses](https://smartystreets.com/articles/regular-expressions-for-street-addresses) -
|
|
|
|
|
Why regular expressions and street addresses do not mix.
|
2016-09-08 20:13:24 -04:00
|
|
|
|
- [`libaddressinput`](https://github.com/googlei18n/libaddressinput) - Google's
|
|
|
|
|
common C++ and Java library for parsing, formatting, and validating
|
|
|
|
|
international postal addresses.
|
|
|
|
|
- [`addressing`](https://github.com/commerceguys/addressing) - A PHP 5.4+
|
|
|
|
|
addressing library, powered by Google's dataset.
|
|
|
|
|
- [`postal-address`](https://github.com/scaleway/postal-address) - Python
|
|
|
|
|
module to parse, normalize and render postal addresses.
|
2016-09-08 05:33:09 -04:00
|
|
|
|
|
|
|
|
|
|
2016-12-27 10:09:28 -05:00
|
|
|
|
## Science
|
|
|
|
|
|
|
|
|
|
- [Falsehoods About Systems of
|
2017-01-11 08:55:32 -05:00
|
|
|
|
Measurement](https://web.archive.org/web/20150222171255/https://stevemoser.org/blog/2013/08/07/falsehoods-programmers-believe-about-systems-of-measurement/) -
|
2016-12-27 10:09:28 -05:00
|
|
|
|
On working with systems of measurement and converting between them.
|
|
|
|
|
|
|
|
|
|
|
2016-12-27 11:39:21 -05:00
|
|
|
|
## Society
|
|
|
|
|
|
|
|
|
|
- [Falsehoods About Political
|
|
|
|
|
Appointments](https://twitter.com/oliver_dw/status/737930439575404544) -
|
|
|
|
|
Designing election systems has its own tricks.
|
2016-12-29 12:25:30 -05:00
|
|
|
|
- [Falsehoods About Women In
|
|
|
|
|
Tech](https://gist.github.com/Su-Shee/5d1a417fa9de19c15477) - Myth about women
|
|
|
|
|
in STEM (Science, Technology, Engineering, Math) industries.
|
2016-12-27 11:39:21 -05:00
|
|
|
|
|
|
|
|
|
|
2016-09-12 07:26:55 -04:00
|
|
|
|
## Software Engineering
|
2016-09-08 18:18:02 -04:00
|
|
|
|
|
2016-09-12 05:56:49 -04:00
|
|
|
|
- [Falsehoods About
|
2016-09-12 07:15:14 -04:00
|
|
|
|
Versions](https://github.com/xenoterracide/falsehoods/blob/master/versions.md) -
|
2016-10-18 15:48:31 -04:00
|
|
|
|
Attributing an identity to a software release might be harder than thought.
|
2016-09-12 07:26:55 -04:00
|
|
|
|
- [Falsehoods About Build
|
2017-01-11 08:55:32 -05:00
|
|
|
|
Systems](https://pozorvlak.livejournal.com/174763.html) - Building software is
|
2016-10-18 15:48:31 -04:00
|
|
|
|
hard. Building software that builds software is harder.
|
2016-12-27 05:56:52 -05:00
|
|
|
|
- [Myths About File
|
|
|
|
|
Paths](https://yakking.branchable.com/posts/falsehoods-programmers-believe-about-file-paths/) -
|
|
|
|
|
Diversity of file-systems and OSes makes file paths a little harder than we
|
|
|
|
|
might think of.
|
2016-12-27 10:18:06 -05:00
|
|
|
|
- [Falsehoods About REST
|
|
|
|
|
APIs](http://slinkp.com/falsehoods-programmers-believe-about-apis.html) -
|
|
|
|
|
Pitfalls to be mindful of when creating and documenting APIs.
|
2016-12-29 03:19:50 -05:00
|
|
|
|
- [Falsehoods About
|
|
|
|
|
CSVs](https://donatstudios.com/Falsehoods-Programmers-Believe-About-CSVs) -
|
|
|
|
|
While RFC4180 to exists, it is far from definitive and goes largely ignored.
|
2016-12-29 08:46:12 -05:00
|
|
|
|
- [Falsehoods About Package
|
|
|
|
|
Managers](https://meta-package-manager.readthedocs.io/en/develop/falsehoods.html) -
|
|
|
|
|
Covers package and their managers.
|
2016-09-12 07:26:55 -04:00
|
|
|
|
- [Big List of Naughty
|
|
|
|
|
Strings](https://github.com/minimaxir/big-list-of-naughty-strings) - Challenge
|
|
|
|
|
your assumptions about strings.
|
2016-09-08 18:18:02 -04:00
|
|
|
|
|
|
|
|
|
|
2017-09-19 10:03:07 -04:00
|
|
|
|
## Typography
|
|
|
|
|
|
2017-09-19 10:43:13 -04:00
|
|
|
|
- [Falsehoods About Fonts](https://github.com/RoelN/Font-Falsehoods) -
|
|
|
|
|
Assumptions about typography on the web and in desktop applications.
|
2017-09-19 10:03:07 -04:00
|
|
|
|
|
|
|
|
|
|
2016-09-08 19:35:58 -04:00
|
|
|
|
## Contributing
|
|
|
|
|
|
|
|
|
|
Your contributions are always welcome! Please take a look at the [contribution
|
|
|
|
|
guidelines](CONTRIBUTING.md) first.
|
|
|
|
|
|
|
|
|
|
|
2016-09-12 06:05:57 -04:00
|
|
|
|
## Good Candidates
|
|
|
|
|
|
|
|
|
|
Here is a non-restrictive list of items which are good candidates for inclusion
|
|
|
|
|
in this awesome list.
|
|
|
|
|
|
|
|
|
|
### *Falsehood* Articles
|
|
|
|
|
|
|
|
|
|
Articles following the *falsehood* scheme are prime candidates for inclusion in
|
|
|
|
|
this awesome list.
|
|
|
|
|
|
|
|
|
|
These articles starts with the hypothesis that developers have a naive, simple
|
|
|
|
|
view of the subject at hand. Then proceed to list a set of candid assumptions
|
|
|
|
|
that might be held by such programmers. Each one is intentionally false, and
|
|
|
|
|
sometimes illustrated by a counter-example.
|
|
|
|
|
|
|
|
|
|
A list of falsehood is crafted as a progression that is designed to refine
|
|
|
|
|
concepts. Having read the whole list of falsehood, the reader should possess a
|
|
|
|
|
global, if not complete, overview of the domain being targeted by the article,
|
|
|
|
|
including most, if not all, its pitfalls, edges-cases and inconsistencies.
|
|
|
|
|
|
|
|
|
|
In the worst case, these articles might provoke an emotional reaction and cause
|
|
|
|
|
flipping table. `(╯°□°)╯︵ ┻━┻`
|
|
|
|
|
|
|
|
|
|
### Libraries
|
|
|
|
|
|
|
|
|
|
When possible, we provide a list of programming libraries or modules that may
|
|
|
|
|
solve, or try to, the complexities and idiosyncrasies pointed by the
|
|
|
|
|
*falsehood* articles above.
|
|
|
|
|
|
|
|
|
|
So we can put back tables in place. `┬─┬ ノ( ゜-゜ノ)`
|
|
|
|
|
|
|
|
|
|
### Data Structures
|
|
|
|
|
|
2016-09-29 06:45:07 -04:00
|
|
|
|
Data models and structures generic enough to cover and address most of the
|
2016-09-12 06:05:57 -04:00
|
|
|
|
falsehoods are also welcome in this page.
|
|
|
|
|
|
|
|
|
|
|
2016-09-08 19:16:46 -04:00
|
|
|
|
## License
|
2016-09-08 05:33:09 -04:00
|
|
|
|
|
2017-01-11 08:55:32 -05:00
|
|
|
|
[![CC0](https://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0/)
|
2016-09-09 13:46:26 -04:00
|
|
|
|
|
|
|
|
|
Content of this repository is licensed under the [Creative Commons CC0
|
|
|
|
|
license](https://creativecommons.org/publicdomain/zero/1.0/).
|
|
|
|
|
|
2017-01-11 08:55:32 -05:00
|
|
|
|
To the extent possible under law, [Kevin Deldycke](https://kevin.deldycke.com)
|
2016-09-09 13:46:26 -04:00
|
|
|
|
has waived all copyright and related or neighboring rights to this work.
|