Top all-time · #2195
W. Richard Stevens
Personal blog · kohala.comprogrammingsystems
W. Richard Stevens's personal blog at kohala.com covers programming and systems. Since 2008, 37 different Hacker News readers have linked it 43 times, most often “Structured Programming with Go to Statements (1974)”. No feed was found, so read it on the site itself.
Most-linked posts?
- /start/4 people · 6 mentions · first linked 2009-07-25
- Structured Programming with Go to Statements (1974)3 people · 4 mentions · first linked 2019-08-08
- "Doors" in Solaris: Lightweight RPC Using File Descriptors (1996)3 people · 3 mentions · first linked 2019-06-02
- /start/tcpipiv2.html2 people · 2 mentions · first linked 2012-10-08
- /start/apue.html2 people · 2 mentions · first linked 2009-10-07
- Grap – Kernighan and Bentley's language for typesetting graphs [PS]2 people · 2 mentions · first linked 2023-12-13
- /start/troff/troff.html2 people · 2 mentions · first linked 2015-06-30
What Hacker News says?
I don't have any one complete book that I can recommend, and I don't even really have a great reading list for this. But I'll make an attempt to share what I think is useful as a starting point. 1. Systems Operations is first and foremost about understanding systems, in all of their complexity, which means understanding the internals of your OS primarily. 2. Performance and networking, in particular, are super impor…
Comment linking /start/tcpipiv1.html
on “My £4 a month server can handle 4.2M requests a day”Submitted "Doors" in Solaris: Lightweight RPC Using File Descriptors (1996) as a story · 128 points
HN discussionUsing separate programs like eqn. ( http://www.kohala.com/start/troff/v7man/eqn/eqn2e.ps )
Comment linking /start/troff/v7man/eqn/eqn2e.ps
on “Vim 8.0 is coming”Submitted Implementing Software Timers (1990) as a story · 66 points
HN discussionThe irony is that the very paragraph in which Knuth made that statement (and the paper, and Knuth's programming style in general) is very much pro-optimization. He used that statement in the sense of "Sure, I agree with those who say that blind optimization everywhere is bad, but where it matters…". Here's the quote in context: > There is no doubt that the grail of efficiency leads to abuse. Programmers waste enormo…
Comment linking /start/papers.others/knuth.dec74.html
on “It takes a PhD to develop that”Submitted Prentice Hall Interview with Rich Stevens, Author of Unix Programming (1997) as a story · 4 points
HN discussionPlan 9 troff might work! It works with utf8 out of the box[0], and while I haven't used it for complex math typesetting, there is a command (eqn [1]) that was developed for it. I'd recommend Ali Rudi's port (neatroff [2][3]) for a minimalist implementation. There's also Heirloom Documentation Tools [4] which is an implementation of *roff-and-friends that uses Knuth's paragraph-at-once algorithm (instead of the origi…
Comment linking /start/troff/troff.html
on “Ask HN: What are you surprised isn’t being worked on more?”Submitted W. Richard Stevens' Home Page as a story · 3 points
HN discussionWhat really helped me understand and troubleshoot network communications at the socket level was the book by W. Richard Stevens[0]. I think this is because he starts with an introduction to TCP, and builds from there. Knowing TCP states and transitions is important to reading packet dumps, and in general debugging networking. Also, no matter what platform you're using, there is probably a socket implementation somew…
Comment linking /start/unpv12e.html
on “What they don't teach you about sockets”Submitted The Story of Ping (1999) as a story · 3 points
HN discussionWhenever GOTO comes up, I have to mention Knuth's beautiful paper that was part of that argument: "Structured Programming with go to Statements" (1974). Some quotes: " At the I F I P Congress in 1971 I had the pleasure of meeting Dr. Eiichi Goto of Japan, who cheerfully complained that he was always being eliminated. " " For many years, the go to statement has been troublesome in the definition of correctness proofs…
Comment linking /start/papers.others/knuth.dec74.html
on “Edsger Dijkstra carried computer science on his shoulders (2020)”Submitted “Doors” in Solaris: Lightweight RPC Using File Descriptors (1996) as a story · 3 points
HN discussionHow about some good _annotated_ code? :) http://www.kohala.com/start/tcpipiv2.html - 15K line implementation of TCP/IP stack from BSD. Fantastic book, reads like a novel. http://www.pbrt.org/ - fairly detailed write up on building a pretty decent 3D renderer
Comment linking /start/tcpipiv2.html
on “Nobody's just reading your code”Submitted Technical details of the attack described by Markoff in NYT as a story · 2 points
HN discussionGo and grab yourself the latest edition of the excellent Advanced Programming in Unix by Stevens [1]. C in practical action. (Yes, I'm in the dive in the deep end learning camp.) [1]: http://kohala.com/start/
Comment linking /start/
on “To become a good C programmer (2011)”Submitted Grap – Kernighan and Bentley's language for typesetting graphs [PS] as a story · 2 points
HN discussionI'd start at http://www.kohala.com/start/
Comment linking /start/
on “Must Read CS Books For Self Self-Taught Programmers”Submitted Richard Stevens – frequently asked questions as a story · 2 points
HN discussionW. Richard Stevens wrote some excellent Unix and TCP/IP books in the 1990s. He used troff / groff RIP Richard, your books were amazing and his son thought he was cool because his book was in Wayne's World 2 http://www.kohala.com/start/ https://www.salon.com/2000/09/01/rich_stevens/
Comment linking /start/
on “Writing my PhD using groff”Submitted Debugging Mars Pathfinder (the real story) as a story · 2 points
HN discussionhttp://www.kohala.com/start/
Comment linking /start/
on “Advanced Linux Programming – book with free PDF (2001)”Submitted Turning Pic into HTML as a story · 1 points
HN discussion> I haven't looked to see if every question is covered by these, but here's some standard textbooks I like: The good thing is @cpervica has suggested standard textbooks, as opposed to suggesting obtuse texts unreachable to a beginner. Algorithms: I think a beginner might be confused by Sedgewick's terse coding style. Computer Architecture and Operating Systems: I haven't read either of the books. I would add http://…
Comment linking /start/tcpipiv2.html
on “The software development final exam: Algorithms and Data Structures”Submitted Structured Programming with Go to Statements (1974) as a story · 1 points
HN discussion> [...] and this book ( http://www.kohala.com/start/apue.html ) > are both very good. this refers to the first edition of APUE - there is also a very good (IMHO) second edition co-authored by S. Rago (a former collegue of W. Richard Stevens): http://apuebook.com/ (first edition: 1992, second edition: 2005) The second edition mainly adds better coverage of POSIX (much of which was developed after the first edition wa…
Comment linking /start/apue.html
on “I like Unicorn (Rack HTTP server) because it's Unix”Submitted Richard Stevens Biography as a story · 1 points
HN discussionThis book ( http://www.unpbook.com ) and this book ( http://www.kohala.com/start/apue.html ) are both very good. Not to mention keeping abreast of new stuff in the Linux Kernel at http://www.lwn.net or http://kernelnewbies.org/LinuxChanges . As productive as dynamic languages make us, I think we sometimes forget that this is all typically built on Linux/C, and that's not changing anytime soon. A _good_ hacker should…
Comment linking /start/apue.html
on “I like Unicorn (Rack HTTP server) because it's Unix”The master has passed away, but here is the real deal (tm) in Unix: http://www.kohala.com/start/ There is nothing more I can say -- I am so in awe...
Comment linking /start/
on “I like Unicorn (Rack HTTP server) because it's Unix”I miss http://www.kohala.com/start/
Comment linking /start/
on “TCP is harder than it looks”I haven't tried it, but you should be able to have multiple processes listen on the same UDP port bound to localhost using SO_REUSEPORT. Send broadcast UDP packets (using SO_BROADCAST) so they all get it. From here: http://www.kohala.com/start/mcast.api.txt "More than one process may bind to the same SOCK_DGRAM UDP port if the bind() is preceded by: int one = 1; setsockopt(sock, SOL_SOCKET, SO_REUSEADDR, &one, sizeo…
Comment linking /start/mcast.api.txt
on “Beej's Guide to Unix IPC (2010)”