20 ms·
The Tao of Programming (1987)
- poutinepapi 3y agoHA! I remember when my "Programacion 1" teacher sent us this as part of our curriculum circa 18 years ago or so. Good to know it's still going around.
- revskill 3y agoWhat's the difference between multiplication and addiction conceptually ? It's one of my mystery in programming. The Tao has no answer for it.
- chimpanzee 3y ago> What's the difference between multiplication and addiction conceptually? Addiction is multiplication by infinity.
- liquidise 3y agoPossibly the most thoughtful and profound reply to a typo i've seen.
- deleted 3y ago[deleted]
- KMag 3y agoIn any field, there's always an additive inverse, not so for multiplication.
- dhosek 3y agoExactly. In fact, there will always be some element a in a field¹ for which there is no multiplicative inverse. This is why with boolean algebra, both ⋀ and ⋁ are multiplication operators (for ⋀, T has no inverse; for ⋁, F has no inverse). ⸻ 1. To be clear for readers, when KMag and I say, “field,” we’re referring to a specific mathematical construct in which there are + and × operators and symbols 0 and 1, the former being the additive identity and the latter the multiplicative identity.
- gilcot 3y agofoo times boo ...means you are adding foo, boo times... see[1]@[2] so it's a kinda shortcut. [1] https://wikimedia.org/api/rest_v1/media/math/render/svg/e12e0ec9572a5430da7af15b101284975d36f19c https://wikimedia.org/api/rest_v1/media/math/render/svg/e12e... [2] https://en.wikipedia.org/wiki/Multiplication https://en.wikipedia.org/wiki/Multiplication Similar relation between exponentiation (power) and multiplication... see[3]@[4] [3] https://wikimedia.org/api/rest_v1/media/math/render/svg/dcb8949e2c2dbe952c87d89e208b8018f107ad79 https://wikimedia.org/api/rest_v1/media/math/render/svg/dcb8... [4] https://en.wikipedia.org/wiki/Exponentiation https://en.wikipedia.org/wiki/Exponentiation
- pyinstallwoes 3y agoGiven that multiplication is repeated addition, then division is repeated subtraction.
- revskill 3y agoSo x / 0 should be equal to x right ? Because you substract x zero time.
- pyinstallwoes 3y agoI similarly went down that route and found the answer to be at least plausibly more definitive than undefined. It also still reaches an intuition on what dividing by zero means, and it is not that it equals zero, but that the amount of cycles to do are 0. As in index is still 0 in the array.
- gilcot 3y agoAh ha... :) I wouldn't see division as exact opposite (or symmetrical inverse) of multiplication. Multiplication is both left-distributive and right-distributive, and thus distributive. Unlike multiplication and addition, division is not commutative, neither associative in general.
- pyinstallwoes 3y ago
- bee_rider 3y agoSince it is from the 80’s, maybe the Motorola 68000 can answer your question. Looks like… more than 60 clock cycles. Yikes! https://oldwww.nvg.ntnu.no/amiga/MC680x0_Sections/timstandard.HTML https://oldwww.nvg.ntnu.no/amiga/MC680x0_Sections/timstandar...
- diogenes4 3y agoI don't get the connection to daoism. This just seems like a set of super context-sensitive worldviews set in a certain style.
- jmfldn 3y agoIt's written in a set of Tao Te Ching-style aphorisms for humorous effect. That's the connection I guess!
- diogenes4 3y agoIt would come off as a lot more meaningful if it didn't try to pass itself off as a religious text the author clearly didn't value.
- bowsamic 3y agoThere was a period in hacker history when hackers thought they were reviving some kind of ancient zen and dao traditions, but in a very light and not really very appreciative way
- omoikane 3y agoThe rest of the text might be parody of Taoist texts, but the opening is a Kung Fu (1972) reference: When you can snatch the pebble from my hand, it will be time for you to leave. https://tvtropes.org/pmwiki/pmwiki.php/Main/WhenYouSnatchThePebble https://tvtropes.org/pmwiki/pmwiki.php/Main/WhenYouSnatchThe... I don't think the Tao Te Ching or Zhuangzi has the pebble quote.
- ChrisArchitect 3y ago(1987)
- ChrisArchitect 3y agoBunch of discussion from 3 years ago on it: https://news.ycombinator.com/item?id=25031486 https://news.ycombinator.com/item?id=25031486
- TerrifiedMouse 3y agoI wonder what would replace COBOL in 1.2 if it was written today.
- smokel 3y agoJava, C#, JavaScript, TypeScript, Python, PHP, Go, Rust, C, C++ come to mind. The Tao (sometimes) opposes rituals and tradition, and that is exactly what these languages excel in. It is probably wiser to continue unfolding the landscape of programming languages.
- worik 3y ago> Java, C#, JavaScript, TypeScript, Python, PHP, Go, Rust, C, C++ come to mind. Yes. Unfortunately
- vlowther 3y agoNothing. You have to get into INTERCAL territory to find something more tedious to work with than COBOL.
- dang 3y agoRelated: The Tao of Programming - https://news.ycombinator.com/item?id=33210739 https://news.ycombinator.com/item?id=33210739 - Oct 2022 (3 comments) The Tao of Programming (1987) - https://news.ycombinator.com/item?id=25031486 https://news.ycombinator.com/item?id=25031486 - Nov 2020 (63 comments) The Tao of Programming (1987) - https://news.ycombinator.com/item?id=19023159 https://news.ycombinator.com/item?id=19023159 - Jan 2019 (57 comments) The Tao of Programming - https://news.ycombinator.com/item?id=8035332 https://news.ycombinator.com/item?id=8035332 - July 2014 (43 comments) The Tao of programming - https://news.ycombinator.com/item?id=1180356 https://news.ycombinator.com/item?id=1180356 - March 2010 (1 comment) The Tao of Programming - https://news.ycombinator.com/item?id=963860 https://news.ycombinator.com/item?id=963860 - Nov 2009 (21 comments) The Tao Of Programming - https://news.ycombinator.com/item?id=595501 https://news.ycombinator.com/item?id=595501 - May 2009 (11 comments) The Tao of Programming - https://news.ycombinator.com/item?id=541426 https://news.ycombinator.com/item?id=541426 - April 2009 (2 comments) The Tao of Programming - https://news.ycombinator.com/item?id=185506 https://news.ycombinator.com/item?id=185506 - May 2008 (1 comment) The Tao of Programming - https://news.ycombinator.com/item?id=26907 https://news.ycombinator.com/item?id=26907 - June 2007 (1 comment)
- theK 3y agoTherad histories like these make me remember, man, I do LOVE hacker news!!! Thank you @dang for the many years of service and excellent moderation <3 EDIT: typos
- mikhailfranco 3y agoThese lists should be shown to the submitter, or auto-populated and pinned-collapsed at the head of the new thread. Perhaps impose a moratorium period of (at least) 3 months for resubmission. Would stop a lot of dupes in new.
- pyinstallwoes 3y agoIf it spawns further, renewed interest, why?
- 3y ago
- Angostura 3y agoRead the headline and was immediately taxed back to CIX when the Taos guys were teasing their operating system in a conference of the she name.
- worik 3y agoSurrender! to compile Weather the ferocious storm You will find true bliss
- encomiast 3y agoI was thinking of sharing this with some younger colleagues on slack and paused. Is this a little culturally insensitive by today's standards? I work with someone from China and have no idea what their thoughts on using the Tao like this would be. On the other hand, maybe I'm being overly sensitive.
- highwind 3y agoI'm Korean and if I were to write an article titled "Program like the cowboys of old west" (I've no clue what that article will be about but), would Americans be offended? Within Korean culture, Doh (도) is a same concept as Tao but I'm not offended. I think you are being overly sensitive.
- cglong 3y ago> if I were to write an article titled "Program like the cowboys of old west" (I've no clue what that article will be about but) It'd be about this! :D https://en.wikipedia.org/wiki/Cowboy_coding https://en.wikipedia.org/wiki/Cowboy_coding
- Jtsummers 3y agohttps://en.wikipedia.org/wiki/Cowboy_coding https://en.wikipedia.org/wiki/Cowboy_coding And as an American, I would not be offended. Cowboy coders might be if the article is approaching it from the derogatory perspective.
- dhosek 3y agoThe big difference is that Tao has religious overtones to it, while cowboys of the Old West, doesn’t. I think OP was more concerned about the fact that this is grabbing something out of another culture and potentially misusing it or using it in a way that others might not approve. A perhaps more apropos analogy might be The Ten Commandments of Programming, which would be OK with most people, although the Torah of Programming, which employed Jewish stereotypes in its telling would be more problematic. And having typed that, this is where the potential issue with the article could lie: less in the title and more in the body and whether it employs stereotypes or culturally insensitive appropriations.
- thyrsus 3y ago"Though a program be but three lines long, someday it will have to be maintained." I am instantly reminded of /bin/true which originally was a 0 byte length file with the execute bits set. Then the edict came down that all programs were to bear an AT&T copyright...
- marcosdumay 3y agoIt's always nice to run "/bin/true --version". On my machine it's on version 8.32. But it's a program that run many more commands than just true. It's a good reminder that things are always more complicated than they seem.
- zamadatix 3y agoAdding on to the complexity of things: I have a /bin/true but, as noted by /bin/true --help, my shell has its own true as well!
- martincmartin 3y agotrue.
- unwind 3y agoThe source for GNU's true (from coreutils [1]) seems to be 80 lines which is ... infinitely more than 0 of course, but still quite manageable especially for a core utility. Oh, and I "love" how the coreutils code considers string comparison to be hard enough to warrant a macro (in system.h [2]): #define STREQ(a, b) (strcmp (a, b) == 0) [1]: https://github.com/coreutils/coreutils/blob/master/src/true.c https://github.com/coreutils/coreutils/blob/master/src/true.... [2]: https://github.com/coreutils/coreutils/blob/master/src/system.h https://github.com/coreutils/coreutils/blob/master/src/syste...
- sosuke 3y agoPage with all the formatting this page removed: https://web.archive.org/web/20010208180818/http://misspiggy.gsfc.nasa.gov/tao.html https://web.archive.org/web/20010208180818/http://misspiggy....
- js2 3y agoThat doesn't seem to be line-wrapped correctly either. How about this one? http://www.canonical.org/~kragen/tao-of-programming.html http://www.canonical.org/~kragen/tao-of-programming.html
- orbit7 3y agoThe title reminds me to give The Tao of Physics another read.
- _kst_ 3y agoI'm reasonably sure this book is still under copyright. It seems that a lot of people don't care about that for certain books.
- fsckboy 3y agothe arc of 1000 unlicensed copies begins with your first curl
- euiq 3y agoIntellectual property rights should be abolished.
- matheusmoreira 3y agoCompletely agree.
- russh 3y agoThat's a slippery slope. First, it's only the Intellectual property rights, then the Intellectual property, and finally, the Intellectual.
- oarabbus_ 3y agoThere are countries in which there is no IP protection, it's not the utopia you think it is.
- jackblemming 3y agoThe comments in this thread are about respecting copyright and if Tao is culturally insensitive. Is this really “hacker” news? What the hell happened to this generation? Did the establishment win?
- 22289d 3y ago> But do not program in COBOL if you can avoid it. lol I don't know anything about COBOL but I can feel all of the people that must have triggered. Which is surely why the author included it. Probably like if today that said PHP or Lisp.
- dangerboysteve 3y agoAnd those who wrote in Assembly would dunk on those C programmers. And those who wrote in binary would dunk on the Assembly devs. And those that only had 0's would dunk on those binary devs.
- JackFr 3y ago“Pfft” - Ada Lovelace & Joseph Marie Jacquard
- AnimalMuppet 3y agoNot Lisp, no. COBOL was like picking your nose with boxing gloves on (h/t Michael Pavlinch). It was appallingly clumsy to use. Lisp was like programming directly in the compiler's abstract syntax tree, with both the plusses and the minuses of that. It was almost the opposite extreme from COBOL. Or to put it a different way: I don't program in Lisp because that language isn't a good fit for how my brain works and the kind of problems I work on. I don't program in COBOL because I don't like reading things that take that long to come to the point.
- matheusmoreira 3y agoThey're not wrong. I actually tried learning COBOL at some point and it really is pretty bad. On the other hand, ALGOL turned out to be a surprisingly elegant language and I certainly understand how it influenced pretty much everything that we use today. I actually wish C had more of ALGOL in it. Lisps were never on the same tier as COBOL or PHP.
- rramadass 3y agoCOBOL is just a different "styled" language than the Algol family of languages. It is fashionable to dunk on it because of its english-like verbosity which is quite alien to Programmers who initially came from a mathematical background and hence were used to succinct notation. You just have to get used to it. My first job (decades ago on a mainframe) was in COBOL-85 and i found it fine particularly in its strong File handling capabilities which i used to build a simple RDBMS-like system. You might want to peruse the wikipedia article just to see what it offers - https://en.wikipedia.org/wiki/COBOL https://en.wikipedia.org/wiki/COBOL
- heresie-dabord 3y agoAfter the Epilogue, there will be a Fork. "Your Pride is your greatest fault," said the Master Programmer to a novice. "You will stand helpless before an ocean of spaghetti, mocked by great clouds." "All your full-stack enterprise-grade orchestrated containers will exist only to pretty-print JSON."
- lpapez 3y agoI laughed out loud at that last one, hits close to home.
- wheelerof4te 3y ago"You will stand helpless before an ocean of spaghetti, mocked by great clouds." Wow. Was this a prophecy?
- sdwr 3y agoNostradockerdesktop
- onesphere 3y agoclass=""
- ru3ty 3y agoTao
- takinola 3y agoThe sections on attaining enlightenment could have been written by Calvin's dad.
- hcks 3y agothis is the book that made me realise programmers are losers
- tiznow 3y agoand not your lived experiences?
- krior 3y agoyou have been here for four years and never realized this before?
- randomopining 3y agoThere's the programmers that just use it as a tool to accomplish stuff -- that's cool. There's the ones that overcomplicate and overmystify everything, nerding out in pointless discussions etc -- that's just not cool at all to me.
- twh270 3y agoRelated-ish, http://www.thecodelesscode.com/contents http://www.thecodelesscode.com/contents, "An illustrated collection of (sometimes violent) fables concerning the Art and Philosophy of software development, written in the spirit of Zen kōans.
- nighmi 3y agoThe Ozymandius is amazing: http://www.thecodelesscode.com/case/234 http://www.thecodelesscode.com/case/234
- neilv 3y agohttp://www.catb.org/jargon/html/koans.html http://www.catb.org/jargon/html/koans.html
- MrVandemar 3y agoSee also Zen Master Greg! http://myths.com/pub/humor/zmgreg/index.html http://myths.com/pub/humor/zmgreg/index.html
- bentobean 3y agoI think this jives with the spirit of the discussion: https://grugbrain.dev/ https://grugbrain.dev/
- deleted 3y ago[deleted]
- deleted 3y ago[deleted]
- ww520 3y agoIt would be interesting to finetune a LLM with The Tao of Programming and/or The Zen of Motorcycle Maintenance, and see what it would spit out.