HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
globalcitizen
taoup
Ruby2014–2026
globalcitizen / taoup

taoup

The Tao of Unix Programming (Ruby-powered ANSI colored fortunes)

4Distinct people
228Mentions
1Explicit recommenders
445GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

The Tao of Unix Programming (Ruby-powered ANSI colored fortunes)

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

This made me think of my favorite quote attributed to Einstein: Nationalismus ist eine Kinderkrankheit. Er ist die Masern der Menschheit. "Nationalism is an infantile disease.…

contingencies used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 7:24:48 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year228 dated mentions

Observed mentions: 2014-05-29 07:10:05 UTC to 2026-09-29 19:05:04 UTC.

0102030402014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 10 mentions; 1 submissions, 9 comments20142015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 13 mentions; 0 submissions, 13 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 8 mentions; 0 submissions, 8 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 31 mentions; 0 submissions, 31 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 20 mentions; 0 submissions, 20 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 29 mentions; 0 submissions, 29 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 24 mentions; 0 submissions, 24 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 21 mentions; 1 submissions, 20 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 39 mentions; 0 submissions, 39 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 12 mentions; 0 submissions, 12 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 8 mentions; 0 submissions, 8 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 11 mentions; 1 submissions, 10 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC1019
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC13013
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC808
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC31031
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC20020
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC29029
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC24024
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC21120
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC39039
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC12012
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC808
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC202
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC11110

What Hacker News says

31 sources
There are three rules for writing the novel. Unfortunately, nobody knows what they are. - 'W. Somerset Maugham on enterprise architecture', Peter Hilton In practice, designing seems to proceed by oscillating between sub-solution and sub-problem areas, as well as by decomposing the problem and combining sub-solutions. - Nigel Cross Firmitas, utilitas, venusitas. ("Firmness, utility, delight") - Marcus Vitruvius, De Architectura (22BCE) Less tongue in cheek, there are quite a few decent, mature systems encouraging thinking from different perspectives. Examples include De Bono's hats system, IDEO's mantras for innovation, Skillman's englightened trial and error, 99% perspiration (ie. just stay focused), design for data, partitioning the problem, prioritizing simplicity and clarity, prototyping, Alan Kay's dream while you are awake, etc. Cull
Read the rest
ed from http://github.com/globalcitizen/taoup .. there are more there :)
In Ask HN: Resources on how to improve abstract thinking skills?
Why not work around the expectation and simply migrate offline? (eg. dump DB, hack dumpfile/stream, load new CSV?) While you may lose instantaneous constraint validation, it would almost certainly be faster and allow you to work with known and well tested tools. Conforms to the Unix design philosophy: "Store data in flat text files." / "Write programs to handle text streams, because that is a universal interface." http://github.com/globalcitizen/taoup Since you were nominally optimizing for migration, a zoom-out perspective may be to note that upgrading SQLite3 versions vs. upgrading major RDBMS versions is trivial/fast, relatively rarely required, also cohabitation of multiple versions works a lot easier, any kind of CI/CD process is going to be orders of magnitude faster and use much less CPU/memory/disk space, which means smaller build
Read the rest
artifacts and thus faster transfer/download.
In Work on SQLite4 has concluded
Relevant quotes from http://github.com/globalcitizen/taoup ... Optimization considered harmful: In particular, optimization introduces complexity, and as well as introducing tighter coupling between components and layers. - RFC3439 Design up front for reuse is, in essence, premature optimization. - @AnimalMuppet To speed up an I/O-bound program, begin by accounting for all I/O. Eliminate that which is unnecessary or redundant, and make the remaining as fast as possible. - David Martin The fastest I/O is no I/O. - Nils-Peter Nelson The cheapest, fastest and most reliable components of a system are those that aren't there. - Gordon Bell Safety first. In allocating resources, strive to avoid disaster rather than to attain an optimum. Many years of experience with virtual memory, networks, disk allocation, database layout, and other resource
Read the rest
allocation problems has made it clear that a general-purpose system cannot optimize the use of resources. - Butler W. Lampson (1983) Crowley's 4th rule of distributed systems design: Failure is expected. The only guaranteed way to detect failure in a distributed system is to simply decide you have waited 'too long'. This naturally means that cancellation is first-class. Some layer of the system (perhaps plumbed through to the user) will need to decide it has waited too long and cancel the interaction. Cancelling is only about reestablishing local state and reclaiming local resources - there is no way to reliably propagate that cancellation through the system. It can sometimes be useful to have a low-cost, unreliable way to attempt to propagate cancellation as a performance optimization. Optimization: Prototype before polishing. Get it working before you optimize it. - Eric S. Raymond, The Art of Unix Programming (2003) Before optimizing, using a profiler. - Mike Morton Spell create with an 'e'. - Ken Thompson (referring to design regrets on the UNIX creat(2) system call and the fallacy of premature optimization) The No Free Lunch theorem: Any two optimization algorithms are equivalent when their performance is averaged across all possible problems (if an algorithm performs well on a certain class of problems then it necessarily pays for that with degraded performance on the set of all remaining problems). An efficient program is an exercise in logical brinkmanship. - Edsger Dijkstra Choose portability [high level] over efficiency [low-level]. - Mike Garcanz: The Unix Philosophy Laziness is the mother of efficiency. - Marian Propp Jevons Paradox: As technology progresses, the increase in efficiency with which a resource is used tends to increase (rather than decrease) the rate of consumption of that resource. It brings everything to a certainty, which before floated in the mind indefinitely. - Samuel Johnson, on counting ... and the kicker... Those who don't understand Unix are condemned to reinvent it, poorly. - Henry Spencer
In What's So Bad About Posix I/O?
Wiener's Eighth and Final Law: You can never be too careful about what you put into a digital flight-guidance system. - Earl Wiener, Professor of Engineering, University of Miami (1980) It seems that we are locked into a spiral in which poor human performance begets automation, which worsens human performance, which begets increasing automation. The pattern is common to our time but is acute in aviation. Air France 447 was a case in point. - William Langewiesche, 'The Human Factor: Should Airplanes be Flying Themselves?', Vanity Fair, October 2014 Eventually mean/median system performance deteriorates as more and more pure slack and redundancy needs to be built in at all levels to make up for the irreversibly fragile nature of the system. The business cycle is an oscillation between efficient fragility and robust inefficiency. Over the co
Read the rest
urse of successive cycles, both poles of this oscillation get worse which leads to median/mean system performance falling rapidly at the same time that the tails deteriorate due to the increased illegibility of the automated system to the human operator. - Ashwin Parameswaran (2012) ... from my fortune clone @ http://github.com/globalcitizen/taoup
In Tesla’s Push to Build a Self-Driving Car Sparks Dissent Among Its Engineers
Working link http://www.papert.org/ Alan Kay on kids... Children need to learn how to use the 21st century, or there's a good chance they will lose the 21st century. - Alan Kay (2016) Television is the last technology we should be allowed to invent without a Surgeon General's warning on it. - Alan Kay With a good programming language and interface, one - even children - can create from scratch important simulations of complex non-linear systems that can help one's thinking about them. - Alan Kay (2016) Most of my ideas come in "waking dreams" (this is a state that most children indulge in readily, but it can be retained in a more or less useful way - I don't think you quite get into adulthood by retaining it, so it's a tradeoff). Main thing about ideas is that, however they come, most of them are mediocre down to bad - so steps have to be
Read the rest
taken to deal with this major problem. - Alan Kay (2016) ... from my fortune clone, http://github.com/globalcitizen/taoup
In Explaining Programming to Six-Year-Olds
Immutability: The property of functional programmers that prevents them from shutting up about pure functional programming. - @raganwald Computation is not just about functions. If computation were about functions then quicksort and bubble-sort were the same because they're computing the same function. As I said a computing device is something that goes through a sequence of states and what an assignment statement is doing is it is telling you here is a new state, and also there's the notion of it's non-determinism, so the new state is not a function of the old state. So functional programming in a sense - functions - don't solve the problem of programming. - Leslie Lamport Perhaps functional programming is best for S-Programs and P-Programs... S-Programs are programs whose function is formally defined by and derivable from a specificatio
Read the rest
n. P-Programs [are problems] that can be precisely formulated but whose solution must inevitably reflect an approximation of the real world. E-Programs are inherently even more change prone. They are programs that mechanize a human or societal activity. - Meir M. Lehman, Proceedings of the IEEE, Vol. 68, No. 9, September 1980. ... from my fortune clone @ http://github.com/globalcitizen/taoup
In What are potential disadvantages of functional programming?
The preconditions of revolution exist in the UK, and most western countries. The number of active pre-conditions is quite stunning, from elite isolation to concentrated wealth to inadequate socialisation and education, to concentrated land holdings to loss of authority to repression of new technologies especially in relation to energy, to the atrophy of the public sector and spread of corruption, to media dishonesty, to mass unemployment of young men and on and on and on. [...] Preconditions are not the same as precipitants. We are waiting for our Tunisian fruit seller. The public will endure great repression, especially when most media outlets and schools are actively aiding the repressive meme of 'you are helpless, this is the order of things.' When we have a scandal so powerful that it cannot be ignored by the average Briton or America
Read the rest
n, we will have a revolution that overturns the corrupt political systems in both countries, and perhaps puts many banks out of business. Vaclav Havel calls this 'The Power of the Powerless.' One spark, one massive fire. - Robert David Steele, ex-Marine, ex-CIA, Open Source Intelligence Expert in The Guardian, 2014-06-19 ... from my fortune DB @ https://github.com/globalcitizen/taoup
In China Tells Carriers to Block Access to Personal VPNs by February

Showing the 15 most recent of 31 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.