I assume it's not a reference to responsive ("self-resizing") HTML, but rather things like user input lag (a common problem in apps.) Better to have a zero-lag async calculation than a nominally faster but UI-blocking synchronous calculation or request.
I think it's actually meant to encourage putting up things like spinners, page transitions, etc. Make the user feel that something is happening, and they won't feel slowed down.
I think the message is this: fast is an impossible standard to meet since there will always be inconsistent user experiences, so aim to be responsive before being fast.
I agree with it very much. When I'm zipping files on Linux and my system grinds to a halt due to hard drive contention, I don't want faster zip times, I just want the damn thing to be responsive while it zips in the background.
If you're running zip from the command line, try setting the priority with 'nice' when you run it. That should allow you to continue using your system while zip crunches away in the background. If you forget to set the priority level at runtime, use 'renice' to set the priority level of a running process.
Go has a weird subset of admin/programmer people who haven't discovered erlang and think they are too good for C.
Node has a weird subset of web people who haven't discovered erlang and think they are too good for deploying a message/job dispatch queue with python or ruby.
If you want to be really bored with all these "modern" programming advancements, learn erlang and lisp and smalltalk. Everything is just reinventing their aspects over and over and over again targeted to audiences as "new new new!"
$ curl https://api.github.com/octocat
MMM. .MMM
MMMMMMMMMMMMMMMMMMM
MMMMMMMMMMMMMMMMMMM _____________________
MMMMMMMMMMMMMMMMMMMMM | |
MMMMMMMMMMMMMMMMMMMMMMM | Speak like a human. |
MMMMMMMMMMMMMMMMMMMMMMMM |_ _________________|
MMMM::- -:::::::- -::MMMM |/
MM~:~ ~:::::~ ~:~MM
.. MMMMM::. .:::+:::. .::MMMMM ..
.MM::::: ._. :::::MM.
MMMM;:::::;MMMM
-MM MMMMMMM
^ M+ MMMMMMMMM
MMMMMMM MM MM MM
MM MM MM MM
MM MM MM MM
.~~MM~MM~MM~MM~~.
~~~~MM:~MM~~~MM~:MM~~~~
~~~~~~==~==~~~==~==~~~~~~
~~~~~~==~==~==~==~~~~~~
:~==~==~==~==~~
You can also append `?s="your message here"` to use it to say something other than one of the GitHub Zen messages.
The comments below demonstrate that, while cute, virtually all of the statements it comes up with are entirely subjective, quite superficial, totally ambiguous, and useless for most things.
After curl-ing for a while in a loop, and sort -u:
Anything added dilutes everything else.
Approachable is better than simple.
Avoid administrative distraction.
Design for failure.
Encourage flow.
Favor focus over features.
Half measures are as bad as nothing at all.
It's not fully shipped until it's fast.
Keep it logically awesome.
Mind your words, they are important.
Non-blocking is better than blocking.
Practicality beats purity.
Responsive is better than fast.
Speak like a human.
Virtual-Notary.Org hereby notes that on
Date: Friday September 13, 2013 10:55.32 EDT (UTC-0400)
a random drawing in the range [1, 100000], inclusive, based on
a hardware source of true randomness, yielded the following decision.
Random Value: 29348
----
run before him.
1:6 And his father had not displeased him at any time in saying, Why
hast thou done so? and he also was a very goodly man; and his mother
bare him after Absalom.
1:7 And he conferred with Joab the son of Zeruiah, and with Abiathar
the priest: and they following Adonijah helped him.
1:8 But Zadok the priest, and Benaiah the son of Jehoiada, and Nathan
the prophet, and Shimei, and Rei, and the mighty men which belonged to
David, were not with Adonijah.
1:9 And Adonijah slew sheep and oxen and fat cattle by the stone of
Zoheleth, which is by Enrogel, and called all his brethren the king's
sons, and all the men of Judah the king's servants: 1:10 But Nathan
the prophet, and Benaiah, and the mighty men, and Solomon his brother,
he called not.
1:11 Wherefore Nathan spake unto Bathsheba the mother of Solomon,
saying, Hast thou not heard that Adonijah the son of Haggith doth
reign, and David our lord knoweth it not? 1:12 Now therefore come,
let me, I pray thee, give thee counsel, that thou mayest save thine
own life, and the life of thy son Solomon.
$ grep bofh .bash_aliases
alias bofh="nc bofh.jeffballard.us 666 | tail -n 1 | sed -e 's/Your excuse is: //'"
$ bofh
The air conditioning water supply pipe ruptured over the machine room
It grabs a random commit message from a github repo and displays it. By default, it pulls from a repo containing the original debian fortunes as commit messages. But you can point it to other repos like this:
53 comments
[ 4.2 ms ] story [ 110 ms ] threadI don't agree with this.
Being fast gets you to far away places, but being responsive gets you places where you want to be.
[edit] okay i get it refreshing gives another message etc. etc.
You don't say.
Is Node.js VS Ruby even a thing?
Node has a weird subset of web people who haven't discovered erlang and think they are too good for deploying a message/job dispatch queue with python or ruby.
If you want to be really bored with all these "modern" programming advancements, learn erlang and lisp and smalltalk. Everything is just reinventing their aspects over and over and over again targeted to audiences as "new new new!"
"Cow Operation"? WTF
Kosh works exceptionally well with tiny zen sayings.
Cows are installed to /usr/share/cowsay/cows
For instance: cowsay -f kosh "Understanding is a three-edged sword."
... and ponysay: http://i.imgur.com/Df09hpV.png
Great conversation starter though!
I currently use the "Cluefire and Damnation"[1] fortunes and pipe it into ponysay[2] at login.
[0]: https://en.wikipedia.org/wiki/Fortune_%28Unix%29
[1]: http://www.cluefire.net/
[2]: https://github.com/erkin/ponysay/
I wonder if GitHub has a static list of quotes (like fortune does) or they generate them dynamically.
Run toward bugs, not away from bugs.
Scaffolding.
100,000 lines... forever.
-----
God says...
Virtual-Notary.Org hereby notes that on Date: Friday September 13, 2013 10:55.32 EDT (UTC-0400)
a random drawing in the range [1, 100000], inclusive, based on a hardware source of true randomness, yielded the following decision.
----run before him.
1:6 And his father had not displeased him at any time in saying, Why hast thou done so? and he also was a very goodly man; and his mother bare him after Absalom.
1:7 And he conferred with Joab the son of Zeruiah, and with Abiathar the priest: and they following Adonijah helped him.
1:8 But Zadok the priest, and Benaiah the son of Jehoiada, and Nathan the prophet, and Shimei, and Rei, and the mighty men which belonged to David, were not with Adonijah.
1:9 And Adonijah slew sheep and oxen and fat cattle by the stone of Zoheleth, which is by Enrogel, and called all his brethren the king's sons, and all the men of Judah the king's servants: 1:10 But Nathan the prophet, and Benaiah, and the mighty men, and Solomon his brother, he called not.
1:11 Wherefore Nathan spake unto Bathsheba the mother of Solomon, saying, Hast thou not heard that Adonijah the son of Haggith doth reign, and David our lord knoweth it not? 1:12 Now therefore come, let me, I pray thee, give thee counsel, that thou mayest save thine own life, and the life of thy son Solomon.
http://whatthecommit.com
http://git-fortune.bclune.org
It grabs a random commit message from a github repo and displays it. By default, it pulls from a repo containing the original debian fortunes as commit messages. But you can point it to other repos like this:
http://git-fortune.bclune.org/twbs/bootstrap
Inspired by What the Commit? and /usr/bin/fortune.
I got "practicality beats purity", that is in it ("Special cases aren't special enough to break the rules. Although practicality beats purity.").
$ zen
A Node Module which prints the zens (offline list). https://github.com/arjunbajaj/github-zens