Add a few sample epigrams and the fortunes package.
authorAndre Noll <maan@tuebingen.mpg.de>
Sun, 16 Jun 2019 11:06:44 +0000 (13:06 +0200)
committerAndre Noll <maan@tuebingen.mpg.de>
Tue, 25 Jun 2019 12:49:48 +0000 (14:49 +0200)
This adds a single file containing ~200 tagged epigrams in English
language. The debian/control file is extended to provide the new
"tfortunes" package which ships this data file. The new package is
Recommended: by the tfortune package but tfortune works without it
if epigrams are provided locally.

The debian/copyright file also needs to be adjusted because the
epigrams are under the public domain while the source code remains
GPLv3.

The epigrams were created by running

tfortune -- print -atx pub

on the author's epigram database with "pub" being a tag expression
that filters out epigrams not suitable for public exposure.

Suggested-by: Adam Borowski <kilobyte@angband.pl>
v2 -> v3
~~~~~~~~
Apply fixes provided by Adam Borowski:
 * Fix bogus date in debian/changelog (s/Mon/Tue)
 * Make the data package Arch:all, since it is truly arch-independent
 * Add Multi-Arch header to debian/control

v1 -> v2
~~~~~~~~
Incorporate feedback from Adam Borowski:
 * Fix typo in description of the tfortunes package
 * Update debian/changelog and increase debian version number

Makefile
debian/changelog
debian/control
debian/copyright
debian/rules
debian/tfortune.install [new file with mode: 0644]
debian/tfortunes.install [new file with mode: 0644]
epigrams/en.tfortunes [new file with mode: 0644]

index d9f3197..73c4612 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -60,6 +60,7 @@ uname_rs := $(shell uname -rs)
 
 exe := tfortune
 man := tfortune.6.gz
+epigrams := epigrams/en.tfortunes
 all: $(man) $(exe)
 man build-indep: $(man)
 exe build-arch: $(exe)
@@ -198,6 +199,7 @@ maintainer-clean:
        git clean -dfqx > /dev/null 2>&1
 
 mandir := $(datarootdir)/man/man6
+epidir := $(datadir)/tfortunes/epigrams
 INSTALL ?= install
 INSTALL_PROGRAM ?= $(INSTALL) -m 755
 INSTALL_DATA ?= $(INSTALL) -m 644
@@ -206,9 +208,10 @@ ifneq ($(findstring strip, $(MAKECMDGOALS)),)
 endif
 
 install install-strip: all
-       $(MKDIR_P) $(DESTDIR)$(bindir) $(DESTDIR)$(mandir)
+       $(MKDIR_P) $(DESTDIR)$(bindir) $(DESTDIR)$(mandir) $(DESTDIR)$(epidir)
        $(INSTALL_PROGRAM) $(strip_option) $(exe) $(DESTDIR)$(bindir)
        $(INSTALL_DATA) $(man) $(DESTDIR)$(mandir)
+       $(INSTALL_DATA) $(epigrams) $(DESTDIR)$(epidir)
 
 define README :=
 tfortune - $(SLOGAN)
index d8a579b..7b31b5f 100644 (file)
@@ -1,3 +1,10 @@
+tfortune (1.0.0-2) unstable; urgency=low
+
+  * Fallback to system-wide epigram directory.
+  * New data package: "tfortunes" which contains ~200 epigrams.
+
+ -- Andre Noll <maan@tuebingen.mpg.de>  Tue, 18 Jun 2019 18:33:25 +0100
+
 tfortune (1.0.0-1) unstable; urgency=low
 
   * Initial Release. Closes: #929467
index 872331f..4981f4a 100644 (file)
@@ -11,6 +11,7 @@ Vcs-Git: git://git.tuebingen.mpg.de/tfortune/
 Package: tfortune
 Architecture: any
 Depends: ${shlibs:Depends}, liblopsub1, ${misc:Depends}
+Recommends: tfortunes
 Description: Fortune Cookies with Tags
  Like fortune(6), tfortune is a Unix command line utility which prints
  a random epigram. Epigrams are stored as plain text files, but they
@@ -21,3 +22,15 @@ Description: Fortune Cookies with Tags
  tag expressions define subsets of admissible epigrams. If a tag
  expression is given, epigrams are picked from the admissible subset
  only.
+
+Package: tfortunes
+Architecture: all
+Multi-Arch: foreign
+Depends: tfortune, ${misc:Depends}
+Description: Data files for tfortune
+ This provides a small set of tagged epigrams for tfortune. These are
+ only used if no personal epigrams are found in the per-user epigram
+ directory.
+ .
+  All epigrams are in English language and are considered
+  non-offensive. They were mostly selected from public mailing lists.
index cec5122..ed6d353 100644 (file)
@@ -1,7 +1,10 @@
 Copyright 2018-2019 Andre Noll <maan@tuebingen.mpg.de>
 
-This package is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License, version 3.
+The code of this package is free software; you can redistribute it
+and/or modify it under the terms of the GNU General Public License,
+version 3. On Debian GNU systems, the complete text of the GNU General
+Public License can be found in `/usr/share/common-licenses/GPL-3'.
 
-On Debian GNU systems, the complete text of the GNU General Public
-License can be found in `/usr/share/common-licenses/GPL-3'.
+All epigrams provided by the tfortunes package are believed to be in
+the public domain. Please notify the author if there is an epigram
+which is not.
index 513610c..03a9279 100755 (executable)
@@ -6,7 +6,8 @@ export DEB_BUILD_MAINT_OPTIONS = hardening=+all
 
 # plain dh_auto_configure uses options which configure does not understand
 override_dh_auto_configure:
-       ./configure --prefix=/usr --bindir=/usr/games
+       ./configure --prefix=/usr --bindir=/usr/games \
+               --datadir=/usr/share/games
 # needed because dh_autoreconf overwrites our configure wrapper
 override_dh_autoreconf:
        $(MAKE) configure.sh
diff --git a/debian/tfortune.install b/debian/tfortune.install
new file mode 100644 (file)
index 0000000..d26b408
--- /dev/null
@@ -0,0 +1,2 @@
+debian/tmp/usr/share/man/*
+debian/tmp/usr/games/*
diff --git a/debian/tfortunes.install b/debian/tfortunes.install
new file mode 100644 (file)
index 0000000..9c397e4
--- /dev/null
@@ -0,0 +1 @@
+debian/tmp/usr/share/games/tfortunes/*
diff --git a/epigrams/en.tfortunes b/epigrams/en.tfortunes
new file mode 100644 (file)
index 0000000..bb38738
--- /dev/null
@@ -0,0 +1,728 @@
+Saying you don't care about privacy because you have nothing to hide
+is like saying you don't care about free speech because you have
+nothing to say.                            -- The Juice Media (2016)
+---- privacy,society
+One is less than two, even for large values of one.
+---- math,geek
+It's well known that time is money and knowledge is power. On the other hand,
+we know that power equals work/time. Putting this together we end up with
+       money = time = work/power = work/knowledge.
+In particular, money approaches infinity as knowledge goes to zero.
+---- math,society
+Recursion n.:
+        See Recursion.
+                -- Random Shack Data Processing Dictionary
+---- math,self-reference
+The best defense against logic is ignorance.
+---- math,geek,logic
+A mathematician named Klein
+Thought the Mobius band was divine.
+       Said he, "If you glue
+       The edges of two,
+You'll get a weird bottle like mine!
+---- math,limerick
+Of course, the development space is neither three-dimensional nor
+euclidian.                               -- Linus Torvalds (2006)
+---- math,vcs,programming
+Math is hard, lets go shopping  -- Barbie
+---- math
+If you open any random box nobody was looking into, chances are you'll
+find a dead cat there.                         -- Yossi Kreinin (2010)
+---- math,physics
+Reiser4 refuses to mount unless supplied with the homotopy group of
+the tangent bundle of hard drive, for sure.
+                                           -- Nikita Danilov (2004)
+---- math,filesystem,linux
+There are two kinds of statistics, the kind you look up and the kind
+you make up.                                       -- Archie Goodwin
+---- math,society
+On a scale of 1 to 10, how likely is it that this question is using
+binary?                                                 -- XKCD 953
+---- math,geek
+Hard work often pays off after time, but laziness always pays off now.
+---- work
+[X] <---- nail here for a new monitor
+---- hardware
+The only person who always got his work done by Friday was Robinson Crusoe
+---- pun
+Quidquid latine dictum sit, altum sonatur.
+Whatever is said in Latin sounds profound.
+---- latin
+Fools ignore complexity. Pragmatists suffer it. Some can avoid it.
+Geniuses remove it.     -- Perlis's Programming Proverb #58 (1982)
+---- programming,society
+They laughed at Galileo.  They laughed at Copernicus.  They laughed
+at Columbus. But remember, they also laughed at Bozo the Clown.
+---- society
+> Remember, there's no "I" in "Team".
+No, but there's a "U" in "people who apparently don't understand the
+relationship between orthography and meaning".          -- xkcd 1562
+---- pun,society
+Don't criticize a man until you've walked a mile in his shoes, that
+way when you criticize him you're a mile away and have his shoes.
+                                                            -- Anon
+---- society
+Look: MY part of the Titanic is rising.
+---- society
+if you really want this, then you should look at your walls and
+double-check that they are nice and softly padded.
+                                       -- Linus Torvalds (2009)
+---- society
+Hard data has a nasty habit of busting assumptions.  -- Dave Chinner (2014)
+---- logic,technology
+After all is said and done, a hell of a lot more is said than done.
+---- society
+How come everyone's going so slow if it's called rush hour?
+---- pun
+Great minds think alike, but fools rarely differ.
+---- pun
+Better stay silent and look stupid than open your mouth and leave no
+doubt about it.                                    -- French proverb
+---- society
+A child of five could understand this! Fetch me a child of five.
+---- pun
+Fast, cheap, good. Pick two.
+---- society
+I don't mean to go all language nerd on you, but I just legit adverbed
+"legit", verbed "adverb", and adjectived "language nerd".
+                                                   -- xkcd 1443 (2014)
+---- language,geek
+Life in plastic, it's fantastic.
+                       -- Barbie
+---- pun
+Imitation is the sincerest form of flattery.
+---- society
+Did I mention my belief in the true meaning of "intelligence"?
+Intelligence is the ability to avoid doing work, yet get the work done.
+                                                     --  Linus Torvalds
+---- society
+The wheel was invented by someone overthinking "pushing". -- xkcd 1592
+---- pun,technology
+It wouldn’t be so bad if only morning didn’t come so early.
+                                     --  Sheila Moss (2004)
+---- society
+Given enough trust, pigs fly just nice.
+---- pun
+Fashion is usually a form of ugliness so intolerable that we have to
+alter it every six months.                            -- Oscar Wilde
+---- fashion,society
+Any computer with a mouse is worthless. -- Wombat's Law
+---- comp,gui
+Unix _IS_ user friendly - it's just selective about who its friends are.
+---- comp,unix
+Press any key to continue or any other key to quit.
+---- comp
+If it doesn't run Unix, forget it. -- Wombat's Law
+---- comp,unix
+Hiroshima '45 - Chernobyl '86 - Windows '95
+---- comp,windows
+This is hand-driven virus -- please delete all files from your
+hard drive manually.
+---- comp
+The day Microsoft makes something that doesn't suck is probably
+the day they start making vacuum cleaners.
+---- comp,microsoft
+Friend's don't ask friends to open Microsoft Documents.
+---- comp,microsoft
+Computer games don't affect kids; I mean if Pac-Man affected us as
+kids, we'd all be running around in darkened rooms, munching magic
+pills and listening to repetitive electronic music.
+                           -- Kristian Wilson, Nintendo, Inc, 1989
+---- comp
+He died at the console, Of hunger and thirst.
+Next day he was buried, Face down, nine-edge first.
+And the last bug in sight, An ant passing by,
+Saluted his tombstone, And whispered, "Nice try." -- GNU Humor Collection
+---- comp
+First we thought the PC was a calculator. Then we found out how
+to turn numbers into letters with ASCII - and we thought it was a
+typewriter. Then we discovered graphics, and we thought it was a
+television. With the World Wide Web, we've realized it's a brochure.
+                                                    -- Douglas Adams
+---- comp,www
+I think there is a world market for maybe five computers.
+                  -- Thomas Watson, chairman of IBM, 1943
+---- comp,unix
+Bad taste in programming?  Just about everything that inflicts a GUI
+interface without a scriptable command-line equivalent.
+                                                   -- NRArnot (2007)
+---- comp,gui
+When you say "I wrote a program that crashed Windows", people just
+stare at you blankly and say 'Hey, I got those with the system,
+*for free*'.                              -- Linus Torvalds (1995)
+---- comp,windows
+Novice Users: People who are afraid that simply pressing a key might break
+their computer. Intermediate Users: People who don't know how to fix their
+computer after pressing a key that broke it. Expert Users: People who break
+other people's computers.
+---- comp
+Build a system that even a fool can use, and only a fool will use it.
+---- comp,gui
+In January of 2009 we had our first tech support call where the new
+user needed to be told, "Well, have you tried turning it on?" We
+consider this a huge road sign on our path to becoming a mainstream
+computer company.                        -- http://www.zareason.com
+---- comp
+login: yes
+password: I don't know, please tell me
+password is incorrect
+login: yes
+password: incorrect
+---- comp,unix
+My life's project is to hunt down the guy who invented mail client
+wordwrapping, set him on fire then dance on his ashes.
+                                           -- Andrew Morton (2009)
+---- comp,mail
+I've never felt it worth my time to work out the magic voodoo to get
+page numbers in Word. I just write them on by hand afterwards.
+                                                       -- epa (2009)
+---- comp,microsoft
+Bicrement: Adding 2 to a variable.
+  -- New Programming Jargon (2010)
+---- comp,programming,geek
+Hindenbug: A catastrophic data-destroying bug.
+              -- New Programming Jargon (2010)
+---- comp,programming,geek
+Happy filesystems are all alike, but every corrupted filesystem is
+unhappy in its own way.                  -- Jonathan Corbet (2011)
+---- comp,filesystem
+Your users do not "love" your software. Your users are temporarily
+tolerating your software because it's the least horrible option
+they have.                                       -- aklaver (2012)
+---- comp,software
+A computer once beat me at chess, but it was no match for me at
+kick boxing.                                     -- Emo Philips
+---- comp
+The best way to accelerate your Windows-PC is at 9.81 m/s^2 out of the window.
+---- comp,windows
+World war III will be faught on the command line.
+---- comp,geek
+The user is a peripheral that types when you issue a read request.
+                                                    –- P. Williams
+---- comp,geek
+Who the heck is General Failure, and why is he reading my harddisk?
+---- comp
+Why do geeks get Halloween and Christmas confused?
+Because 31 oct = 25 dec
+---- comp,geek
+VI VI VI -- The editor of the beast.
+---- comp,vi
+God IS real, unless declared integer.
+---- programming,pun
+Your today's smiley: /bin/sh> :() { :& :& } ; :
+---- programming,geek,shell
+First off, I'd suggest printing out a copy of the GNU coding standards,
+and NOT read it. Burn them, it's a great symbolic gesture.
+                                     -- linux/Documentation/CodingStyle
+---- programming,open source
+Tabs are 8 characters, and thus indentations are also 8 characters.
+There are heretic movements that try to make indentations 4 (or
+even 2!)  characters deep, and that is akin to trying to define the
+value of PI to be 3.             -- linux/Documentation/CodingStyle
+---- programming
+Apply Stevens to offender's cranium until something gives; if it's the
+book, replace with fresh copy and repeat.            -- Al Viro (2003)
+---- programming,unix,geek
+Never _ever_ make your source-code look worse because your tools suck.
+                                              -- Linus Torvalds (2003)
+---- programming
+Use lower case l to indicate long constants. e.g. 10l is more likely to be
+mistaken for 101 that 10L is.
+                          -- Roedy Green: How To Write Unmaintainable Code
+---- programming,C
+Make sure that every method does a little bit more (or less) than
+its name suggests. As a simple example, a method named isValid(x)
+should as a side effect convert x to binary and store the result in
+a database.        -- Roedy Green: How To Write Unmaintainable Code
+---- programming
+Nothing can kill a maintenance engineer faster than a well planned
+Hungarian Notation attack.
+                  -- Roedy Green: How To Write Unmaintainable Code
+---- programming
+I'll Take a Dozen: Never use one housekeeping variable when you could
+just as easily use two or three.
+                     -- Roedy Green: How To Write Unmaintainable Code
+---- programming
+The Nested Switch is the most difficult type of nesting for the human
+mind to unravel.     -- Roedy Green: How To Write Unmaintainable Code
+---- programming,C
+If you have a deeply nested mixture of if/else statements and blocks,
+especially with misleading indentation, you can trip up even an expert
+maintenance programmer.
+                      -- Roedy Green: How To Write Unmaintainable Code
+---- programming,geek
+If you need several variables of a given type, just define an array
+of them, then access them by number. Pick a numbering convention that
+only you know and don't document it.
+                     -- Roedy Green: How To Write Unmaintainable Code
+---- programming
+No Skill Required: You don't need great skill to write unmaintainable code.
+Just leap in and start coding. Keep in mind that management still measures
+productivity in lines of code even if you have to delete most of it later.
+                          -- Roedy Green: How To Write Unmaintainable Code
+---- programming
+Make sure that your program cannot possibly compile with any of the
+compiler error checking diagnostics enabled.
+                   -- Roedy Green: How To Write Unmaintainable Code
+---- programming
+If you discover a bug in your compiler or interpreter, be sure to make that
+behaviour essential for your code to work properly.
+                           -- Roedy Green: How To Write Unmaintainable Code
+---- programming
+Buy a copy of a baby naming book and you'll never be at a loss for
+variable names.   -- Roedy Green: How To Write Unmaintainable Code
+---- programming
+Use constant names like LancelotsFavouriteColour instead of blue and
+assign it hex value of $0204FB. If a maintenance programmer can't quote
+entire Monty Python movies from memory, he or she has no  business
+being a programmer. -- Roedy Green: How to write unmaintainable code
+---- programming
+Choosing The Best Overload Operator: Stroustroup can use the shift
+operator to do I/O, why should you not be equally creative?
+                  -- Roedy Green: How to write unmaintainable code
+---- programming,C++
+Through clever use of defines and ifdefs, a master of obfuscation
+can make header files declare different things depending on how many
+times they are included.
+                  -- Roedy Green: How to write unmaintainable code
+---- programming,C
+Cut and paste should be a federal crime. -- Steven Rostedt (2012)
+---- programming,gui
+I personally hate Yoda code ("Null the pointer is not, young Jedi").
+                                                -- Jörn Engel (2006)
+---- programming,geek
+The reason people have trouble wrapping their heads around git is
+because they have been braindamaged by CVS and SVN, and just don't
+understand the fairly fundamental new concepts and workflow.
+                                          -- Linus Torvalds (2006)
+---- programming,vcs
+Maybe "perl -pi -%££@$" will do it. And if not, just add random
+characters until it works. "It's the perl way".
+                                       -- Linus Torvalds (2007)
+---- programming,perl
+Write programs that do one thing and do it well. Write programs to
+work together. Write programs to handle text streams, because that
+is a universal interface.                         -- Doug MacIlroy
+---- programming,unix,history
+Open source is driven by coders, not by dreamers who want to offload
+the work of implementing their whacky ideas to other people instead of
+getting their ass up and doing it themselves.    -- Adrian Bunk (2007)
+---- programming,open source
+The funny thing is that all those people that want their favourite
+software to be rewritten in their favourite programming language
+always wants someone else to rewrite it for them.
+                                        -- Andreas Ericsson (2007)
+---- programming,language
+Don't look at the structure being passed or biarch issues caused
+by it unless you want to take the second look at your dinner.
+                                               -- Al Viro (2013)
+---- programming,C,geek
+It is easier to write an incorrect program than understand a correct one.
+                                                 -- Alan J. Perlis (1982)
+---- programming,society
+A language that doesn't affect the way you think about programming,
+is not worth knowing.                      -- Alan J. Perlis (1982)
+---- programming,education,language
+We should stop using CPP, which is the outdated tech of the sixties. We
+should go with the new wave of the seventies and use this shiny new
+"C" language that's all the rage with features like type checking
+and stuff.                                        -- Ingo Molnar (2008)
+---- programming,C
+Have you ever noticed the difference between a 'C' project plan,
+and a C++ project plan? The planning stage for a C++ project is three
+times as long. Precisely to make sure that everything which should be
+inherited is, and what shouldn't isn't. Then, they still get it wrong.
+                                          -- fake Stroustrup interview
+---- programming,C,C++
+Doing "unsigned i;" is an act of insane vandalism, punishable by
+spending five additional years coding in fortran.
+                                         -- Andrew Morton (2008)
+---- programming,C,language
+Looking through foo_ioctl() instances is a wonderful way to lower pH
+in stomach.                                        -- Al Viro (2009)
+---- programming,geek,biology
+Static typing errors can be detected during compilation and need not
+wait until execution time. Any language which passes the burden of
+this mechanical process on to the programmer is one where programs
+will have numerous latent bugs.              -- Keith Packard (2009)
+---- programming,language
+10. It's impossible to get wrong. This ideal is represented by the
+dwim() (Do What I Mean) function, where misuse means the implementation
+has a bug.                                       -- Rusty Russel (2008)
+---- programming,language
+Code is more like poetry: change this line, and now the next line
+doesn't rhyme, or you've broken the rhythm, or you've put angry words
+into a happy poem, that sort of trouble.      -- Yossi Kreinin (2008)
+---- programming
+You can tell a "good" programmer from a "bad" one by their attitude
+towards redundancy and dependencies. The good ones hate them, the
+bad ones don't care.                        -- Yossi Kreinin (2010)
+---- programming,society
+[C++] has those many complementary defects amplifying each other
+and this awful smug, misguided culture that eats the brains of the
+brightest, turning them into cannibalistic template metaprogramming
+zombies.                                    -- Yossi Kreinin (2010)
+---- programming,C++,society
+Using C instead of C++ has several practical benefits: faster
+development cycle, reduced complexity, better support by tools such
+as debuggers, higher portability and interoperability. When C++ is an
+option, C is probably a better option.               -- Yossi Kreinin
+---- programming,C,C++
+Exceptions are concessions to the fact that most programmers are
+incapable of dealing with the environments in which their functions
+operate, incapable of designing their programs in terms of small
+interfaces, and incapable of documenting those interfaces.
+                                                   -- arakyd (2009)
+---- programming,language,geek,offfensive
+When the comments do not match the code, they probably are both wrong.
+                                              -- Steven Rostedt (2011)
+---- programming
+Creating a perfect API is like committing the perfect crime. There
+are at least fifty things that can go wrong, and if you are a genius,
+you might be able to anticipate twenty-five of them.
+---- programming
+It seems that every decade has its own fashionable Unix scripting language.
+The original scripting language, used in the 1970's was sed.  But awk became
+the fashionable language in the 1980's, then perl in the 1990's, and now python
+in the 2000's.  Who knows what will be next?          -- Matthew Szudzik (2009)
+---- programming,language,perl,python
+Personally I've avoided C bitfields like the plague in any code
+I've written.                            -- David Miller (2012)
+---- programming,C
+One thing I learned was never trust the BIOS, even if you wrote it.
+                                            -- Andre Hedrick (2003)
+---- programming,hardware
+Please find large crayon and write on forehead "when fixing a bug,
+be sure to describe the end-user impact of that bug".
+                                           -- Andrew Morton (2012)
+---- programming
+Programming is not just an act of telling a computer what to do:
+it is also an act of telling other programmers what you wished the
+computer to do.                            -- Andrew Morton (2012)
+---- programming,society
+C++ provides you with half the tools you need to write good generic
+data structures and all the rope you need to hang yourself while
+chasing that pipe dream.                     -- liljencrantz (2012)
+---- programming,C++
+We wield regular expressions like weapons. To the uninitiated,
+even the most innocuous regex looks like the result of nauseous
+keyboard. To us, however, it's pure poetry.
+                              -- Veteran Unix admin trait No. 3
+---- programming,geek,society
+I find it very strange that CS programs emphasize writing code. Skill
+at reading code is much harder to acquire, and more valuable.
+                                                        -- njs (2011)
+---- programming,society,education
+If you write interfaces with more than 4 or 5 function arguments,
+it's possible that you and I cannot be friends.
+                                           -- David Miller (2015)
+---- programming,society
+Many in truth stagnate yet in the Desert of Delay, or linger ever in
+the ghastly limbo called Perpetual Beta.           -- The Loginataka
+---- programming
+Always code as if the guy who ends up maintaining your code will be
+a violent psychopath who knows where you live.    -- Martin Golding
+---- programming,society
+Deleted code is debugged code. -- Jeff Sickel
+---- programming
+The point of sending patches is that it's the best way to ask questions
+about the code because it first requires the patch submitter to think
+about the change and to document the reasons for making it. Many,
+many questions are answered in the process of making a change and
+writing a decent commit message.                 -- Dave Chinner (2015)
+---- programming,vcs
+It's like someone took a transcript of a couple arguing at Ikea and
+made random edits until it compiled without errors.
+                                                -- xkcd 1513 (2015)
+---- programming
+It's like a salad recipe written by a corporate lawyer using a phone
+autocorrect that only knew excel formulas.       -- xkcd 1513 (2015)
+---- programming
+If it was hard to write, it should be hard to understand.
+---- programming
+If a reviewer's comment doesn't result in a code change then it should
+result in a changelog fix or a code comment.  Because if the code
+wasn't clear enough to the reviewer then it won't be clear enough to
+later readers.                                 -- Andrew Morton (2010)
+---- programming,vcs
+We don't plan for "future" development other than a single patch
+series, as we have no idea what that development is, nor if it will
+really happen.                         -- Greg Kroah-Hartman (2015)
+---- programming,vcs
+Writing code is often quite a small part of a developer's job, and
+the more experienced the developer, the smaller that proportion.
+                                             -- Simon Geard (2016)
+---- programming
+Extremely productive developers don’t have supernatural coding
+skills; their secret is to write only the code that matters.
+                                      -- Peter Hutterer (2016)
+---- programming
+All talk about "enough eyes" isn't worth much when the readers of
+code in question feel like ripping their eyes out...
+                                                -- Al Viro (2016)
+---- programming,geek
+Any question which a reviewer asks should be viewed as a defect in
+the patch. The patch isn't finished until people can read it without
+having questions.                            -- Andrew Morton (2014)
+---- programming,development
+If more people treated review as a selfless act that should be returned
+in kind, then we wouldn't have a review bottleneck like we do...
+                                                 -- Dave Chinner (2016)
+---- programming,development
+And I would *STRONGLY* recommend to stay away from drivers/staging
+while you are learning C - it's like trying to use a public restroom
+wall as a sex-ed textbook.                         -- Al Viro (2016)
+---- programming,linux
+Your lucky number of the day: 0f f0 c7 c8
+---- comp,geek,history
+Windows: Brought to you by the makers of Edlin!
+---- comp,windows,history,geek
+WYSIWYG is a step backwards. Human labor is used to do what computer can
+do better.
+---- comp,gui
+> Just say, in unambigous words, what kind of patch you would accept, if any.
+.procmailrc one would do nicely.                            -- Al Viro (2001)
+---- comp,geek,unix
+For extra privacy that message had been twice encrypted with ROT13
+---- comp
+Userspace is just a load test for the kernel.          -- Greg KH (2003)
+---- comp,linux,geek
+ln -s /usr/src/linux/.config .signature
+                -- Andrew Morton (2004)
+---- comp,linux,geek,mail
+All software sucks, be it open-source of proprietary. The only question
+is what can be done with particular instance of suckage, and that's
+where having the source matters.                      -- Al Viro (2004)
+---- comp,programming,open source
+If it is considered harmful, don't call it a goto, call it "Hyperlink".
+---- comp,www,geek,programming
+Of course, the rules _do_ matter in the sense that there has to be some point
+to the consistency. You can have a consistent rule that "the ChangeLog entries
+must rhyme", and I think it's a great rule, and I encourage anybody who wants
+to to set up such a "rhyming kernel tree", but that doesn't mean that it makes
+a lot of difference to people ;).                     -- Linus Torvalds (2005)
+---- comp,geek,vcs
+You don't exist. Go away!::
+    The passwd(5) gecos field couldn't be read
+Your parents must have hated you!::
+    The password(5) gecos field is longer than a giant static buffer.
+Your sysadmin must hate you!::
+    The password(5) name field is longer than a giant static buffer.
+                                              -- git-var.txt(2005-10)
+---- comp,unix,programming
+Real men never define acronyms; they understand them genetically.
+                 -- Roedy Green: How To Write Unmaintainable Code
+---- comp,programming,biology
+Linux became only possible because 20 years of OS research was
+carefully studied, analyzed, discussed and thrown away.
+                                         -- Ingo Molnar (1999)
+---- comp,linux
+Really good taste would be a GUI interface that generated command lines
+where you could see them (and scroll, edit and re-execute them). Then
+the GUI would become a learning tool rather than a barrier to learning.
+                                                      -- NRArnot (2007)
+---- comp,gui
+We wire a copy of it up to the email lists so that it autonags
+patch-senders over the usual trivial junk.  Think of it as an
+akpm-over-SMTP server.                          -- akpm (2007)
+---- comp,mail,geek,programming,vcs
+The only way to guarantee no regressions is to make no progress.
+                                        -- Linus Torvalds (2007)
+---- comp,programming
+Distributed history isn't one-dimensional. You *cannot* linearize it
+as some one-dimensional time. Impossible. Any system that tries is
+broken. Fundamentally.                      -- Linus Torvalds (2007)
+---- comp,vcs
+When in doubt, use brute force.  -- Ken Thompson
+---- comp,history,unix
+MacOS: It could be worse but it'll take time.
+---- comp,apple
+MacOS: Putting new limits on productivity.
+---- comp,apple
+Rules of Optimization:
+Rule 1: Don't do it.
+Rule 2 (for experts only): Don't do it yet.
+                            -- M.A. Jackson
+---- comp,programming
+If you know what you are doing, three layers is enough; if you don't
+even seventeen levels won't help.                  -- Mike Padlipsky
+---- comp,programming,geek
+It's only about 1000 lines of perl, so what can go wrong in that?
+---- comp,programming,perl
+Producing canonical file names for Windows operating systems is
+extremely complex and beyond the scope of this standard. The best
+advice is to try to avoid making decisions based on a path, directory,
+or file name.                                   -- www.cert.org (2008)
+---- comp,windows,filesystem
+Optimization hinders evolution.            -- Alan J. Perlis (1982)
+---- comp
+In software systems it is often the early bird that makes the worm.
+                                           -- Alan J. Perlis (1982)
+---- comp
+Purely applicative languages are poorly applicable. -- Alan J. Perlis (1982)
+---- comp,geek,programming
+Editing is a rewording activity. -- Alan J. Perlis (1982)
+---- comp,pun
+The key point is that by using proprietary formats/interfaces, EVERY
+time you want to switch to another program, you pay huge costs. In
+contrast, using open standards, the switching cost is tiny (ideally
+zero). Which is why proprietary formats and interfaces subvert the
+usual role of competition.                 -- dwheeler on lwn (2008)
+---- comp,open source
+The DRM enforcement regime requires that the user be prevented from
+understanding how their own computer works.    -- tialaramex (2009)
+---- comp,open source
+I'd rather write programs that write programs, than write programs.
+                                                   -- Richard Sites
+---- comp,geek,programming
+Crying that it's an application bug is like crying over the speed
+of light.                                -- Linus Torvalds (2009)
+---- comp,programming,geek
+Really, that performance is so bad that I'm beginning to wonder if I
+am somehow measuring something wrong. How could they ship something
+so crappy through so many versions?
+      -- Jeff King on the Solaris system regex implementation (2009)
+---- comp,solaris,geek
+Pretty much any time you're executing BIOS code you're going to have
+*some* platform which has severe memory corruption somewhere.
+                                            -- H. Peter Anvin (2009)
+---- comp,geek
+Every closed driver I had access to was an utter piece of rubbish so
+far, and you'll need the code to prove otherwise.
+                                         -- Christoph Hellwig (2009)
+---- comp,open source
+It is too bad that the speed of light hasn't kept pace with the
+changes in CPU speed and network bandwidth.
+                                      -- <wietse@porcupine.org>
+---- comp,hardware
+If you know what you're doing, you can get full value for your
+money. If you don't know what you're doing, you can spend just as
+much and get little more value than the raw disks in the box. There
+is no substitute for competence.                      -- ncm (2009)
+---- comp,hardware
+> When you start editing a file, it tells you who else has it open.
+Wow. I can almost hear the punch card reader in the background.
+                                                  -- tutufan (2009)
+---- comp,vcs,geek
+CONTENT (of a piece of Mail)
+      It's text.
+           -- RFC 524 (1973)
+---- comp,mail,pun
+Configuration Programmer: Someone that says they are a programmer but
+only knows how to hack at configuration files of some other pieces
+of software configuration to make them do what they want.
+                                     -- New Programming Jargon (2010)
+---- comp,programming
+We know it's not a valid absolute timeout, since there's no way
+somebody is "waiting" for something that happened in the sixties.
+Yeah, yeah, maybe you're waiting for flower power and free sex. Good
+for you. But if you are, don't ask the Linux kernel to wait with you.
+Ok?                                          -- Linus Torvalds (2010)
+---- comp,geek
+Al immediately figured out how to delete a third of the code I'd
+spent the last year carefully massaging, and then outlined how to
+rewrite the other two-thirds of the code more elegantly.
+                                         -- Valerie Aurora (2010)
+---- comp,programming
+[Cups] feels the need to open the PPD files for every known printer. The
+result: 2500 stat() calls and 400 opens. On a system with no attached printer.
+                                                           -- J. Corbet (2006)
+---- comp,unix,geek
+There's no reason why a reboot should ever be necessary other than kernel
+or hardware changes, and a reboot is simply another temporary approach to
+fixing the problem. If the problem occurred once and was "fixed" by a
+reboot, it'll happen again.             -- Veteran Unix admin trait No. 9
+---- comp,unix
+Nobody ever fixed a problem caused by a full /var partition by
+rebooting the box.
+---- comp,unix
+Note that remote fs behaviour is a much more academic issue - anyone
+relying on inotify on those needs professional help of a different
+kind.                                              -- Al Viro (2011)
+---- comp,geek,linux
+Bugs are like mushrooms - found one, look around for more...
+                                           -- Al Viro (2011)
+---- comp,programming
+Wait a week or two for ReiserFS V4 to ship to you.
+                             -- Hans Reiser (2004)
+---- comp,linux,geek
+Hardware raid controllers are like bricklayers: Their work is hard
+and repetitive, and if you ask for something complicated, things go
+horribly wrong.
+---- comp,geek
+The reason for not disclosing the driver code is that publishing
+might put the innocent and unprepared reader in danger of gastric
+ulcer and eyecancer.                    -- Thomas Gleixner (2012)
+---- comp,programming,open source
+The strategy of deferring work probably predates mankind, but only
+in the last few decades have workers recognized this strategy's value
+in simplifying parallel algorithms.         -- Paul E. McKenny (2011)
+---- comp,geek,programming
+We are apparently better off trying to avoid udev like the plague.
+                                          -- Linus Torvalds (2012)
+---- comp,linux
+So saying "ACPI is buggy" is like saying "water is wet".
+                                -- Linus Torvalds (2012)
+---- comp,geek
+Encourage things like per-host random keys - with the stupid UEFI
+checks disabled entirely if required. They are almost certainly going
+to be *more* secure than depending on some crazy root of trust based
+on a big company, with key signing authorities that trust anybody
+with a credit card.                          -- Linus Torvalds (2013)
+---- comp,security,geek
+Inotify is a kludge that kinda-sorta works for local disk-backed
+filesystems, if you do not mind a pile of races.  For anything else
+it's completely worthless.                        -- Al Viro (2013)
+---- comp,geek,linux,filesystem
+Modern software barely works when the hardware is correct, so relying
+on software to correct hardware errors is like asking Godzilla to
+prevent Mega-Godzilla from terrorizing Japan. -- James Mickens (2013)
+---- comp,hardware
+One of the main causes of the fall of the Roman Empire was that,
+lacking zero, they had no way to indicate successful termination of
+their C programs.                                   -- Robert Firth
+---- comp,programming,C
+Shitty performance is practically a design goal of /dev/urandom. You
+are NOT supposed to hit it more than once per minute per thread.
+                                            -- George Spelvin (2015)
+---- linux,unix,geek
+This new light bulb can run for years without even having an internet
+connection!                                       -- bcopeland (2016)
+---- comp,geek
+You can unlock this door to your house even if you don't have your
+phone with you!                                -- bcopeland (2016)
+---- comp,geek
+New actual ink requires no battery and lasts for centuries with
+no charging!                                -- bcopeland (2016)
+---- comp,geek
+Configuration-management systems tend to invent a domain-specific
+configuration language that (eventually) becomes Turing complete.
+                                        -- Google LCX team (2016)
+---- comp,geek
+I'd much rather break this obviously historical connection, but
+patching people's wetware is a lot harder than getting a patch into
+the kernel tree....                         -- Theodore Ts'o (2017)
+---- comp,geek,kernel
+Vendors of all OS's have released enough buggy but signed kernel images
+over the past years that rummaging around in the archive will find you
+a wide choice of signed boot images that'll then let you do wtf you
+like including chaining some other target.           -- Alan Cox (2017)
+---- comp,geek,microsoft
+The generation of random numbers is too important to be left to chance.
+                                                 -- Dan Kaminski (2018)
+---- comp,geek,pun
+Standards are not some kind of holy book that has to be revered.
+Standards too need to be questioned.    -- Linus Torvalds (2018)
+---- comp,geek
+If you can't make new CPUs faster than the old ones, sometimes it
+suffices to make the old CPUs slower than the new ones.
+                                                    -- NCM (2018)
+---- comp,cpu
+There is only one hard problem in computer science: naming and
+off-by-one errors.
+---- comp,self-reference
+> I've yet to see a legitimate use case for putting this brain damage
+> in the kernel
+Without overly complicated code security researchers wouldn't have
+any work to do!                                    -- marcH (2019)
+---- comp,security,programming