Hacker Blogs
Work in progress: 15,409 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #186

B

Brian "Beej Jorgensen" Hall

Personal blog · beej.usprogrammingsystems

Brian "Beej Jorgensen" Hall writes Beej's Bit Bucket, a personal blog at beej.us about programming and systems. Since 2008, 233 different Hacker News readers have linked it 285 times, most often “Beej's Guide to Network Programming”. It is still writing: the last post was on 2026-07-21, and you can follow it by feed.

Visit the blog
285mentions?
18recommend?
233HN people?
2008–2026first – last linked?
Links on Hacker News per year · peak 44 in 2023

Often recommended · 18 of 40 sampled comments recommend it, 3 are critical?

Why HN links it

Linked as a free, approachable reference for network programming and C, plus Unix IPC and Git. Commenters credit it with teaching them sockets and C.

Recommended for · 18 comments
Called excellent, approachable and influential; the networking guide is called the best for network-layer topics.
Criticised for · 3 comments
Says git still defaults to master, not main; poll coverage is outdated for many connections; calls it old-fashioned.

Summarised by Claude from a sample of 40 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.

Brian 'Beej Jorgensen' Hall's home page

Most-linked posts?

  1. Beej's Guide to Network Programming
    39 people · 44 mentions · first linked 2017-03-24
  2. Beej's Guide to Network Programming
    27 people · 27 mentions · first linked 2008-04-01
  3. Beej updated the classic Linux network programming guide
    16 people · 16 mentions · first linked 2018-01-21
  4. Beej's Guide to C Programming
    13 people · 14 mentions · first linked 2021-02-11
  5. Beej's Guide to Network Programming (1994-2020)
    10 people · 10 mentions · first linked 2020-01-10
  6. Beej's Guide to Network Programming
    8 people · 8 mentions · first linked 2009-04-29
  7. Beej's Guide to Network Programming (2012)
    5 people · 5 mentions · first linked 2008-08-26
  8. Making
    5 people · 5 mentions · first linked 2026-03-12
  9. Beej's Guide to Networking Concepts
    5 people · 5 mentions · first linked 2023-05-22
  10. Beej's Guide to C Programming (2007)
    5 people · 5 mentions · first linked 2014-04-10

What Hacker News says?

  1. Let me start by saying this is wonderful work. Thank you for creating such a comprehensive resource. I haven't read through it all, but one thing did catch my eye. Section 5.1 ( https://beej.us/guide/bggit/html/split/branches-and-fast-for... ) > The default branch is called main. > The default branch used to be called master, and still is called that in some older repos. This is not true. Git still defaults to `mast…

    Comment linking /guide/bggit/html/split/branches-and-fast-forward-merges.html

    on “Beej's Guide to Git”
  2. Submitted Beej's Guide to Git as a story · 1062 points

    HN discussion
  3. [1] https://beej.us/guide/bgipc/

    Comment linking /guide/bgipc/

    on “Beej's Guide to Git”
  4. Submitted Beej's Guide to Network Programming (1994-2020) as a story · 993 points

    HN discussion
  5. pkage · 2025-02-05Recommends
    I remember reading the excellent Beej's Guide to Network Programming[0] and Beej's Guide to Unix IPC[1] as a teenager, which were incredibly approachable while still having depth—fantastic reads both and very influential on the programmer I ended up being. [0] https://beej.us/guide/bgnet/ [1] https://beej.us/guide/bggit/

    Comment linking /guide/bggit/

    on “Beej's Guide to Git”
  6. Submitted Beej’s Guide to C Programming [pdf] as a story · 507 points

    HN discussion
  7. Or you can get it from the official source [0] and not some PDF on a file sharing site linked from an HN comment. [0] https://beej.us/guide/bgnet/

    Comment linking /guide/bgnet/

    on “Beej's Guide to Network Programming (1994-2020)”
  8. Submitted Beej's Guide to C Programming (2007) as a story · 427 points

    HN discussion
  9. That is covered[1], though it is outdated if you want it to be able to handle as many connections as possible in a fast way. There are also thousands of higher-level libraries that would let you avoid having to deal with these lower-level APIs directly. [1] https://beej.us/guide/bgnet/html/#poll

    Comment linking /guide/bgnet/html/

    on “Beej's Guide to Network Programming (1994-2020)”
  10. Submitted Beej's Guide to Learning Computer Science as a story · 415 points

    HN discussion
  11. Well, anything that'll run gcc. He does include a section for Windows programming for the brave - - https://beej.us/guide/bgnet/html/#windows

    Comment linking /guide/bgnet/html/

    on “Beej's Guide to Network Programming (1994-2020)”
  12. Submitted Beej updated the classic Linux network programming guide as a story · 414 points

    HN discussion
  13. Beej has had great guides for many things on the internet for decades. I fondly remember learning C from Beej's guide to C [1] upon being recommended by WinterMute (from the Nintendo homebrewing community). Best introduction to programming I've seen by far! [1]: https://beej.us/guide/bgc/

    Comment linking /guide/bgc/

    on “Beej's Guide to Network Programming (1994-2020)”
  14. Submitted Beej's Guide to Network Programming as a story · 333 points

    HN discussion
  15. in case somebody is interested in offline version, there are pdf versions as well https://beej.us/guide/bgnet/

    Comment linking /guide/bgnet/

    on “Beej's Guide to Network Programming (1994-2020)”
  16. Submitted Beej's Guide to Network Programming as a story · 245 points

    HN discussion
  17. https://beej.us/guide/bgipc/html/multi/index.html is also good

    Comment linking /guide/bgipc/html/multi/index.html

    on “Beej's Guide to Network Programming (1994-2020)”
  18. Submitted Goto (2007) as a story · 243 points

    HN discussion
  19. 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 /guide/bgnet/

    on “My £4 a month server can handle 4.2M requests a day”
  20. Submitted Beej's Guide to Unix IPC (2015) as a story · 220 points

    HN discussion
  21. You can make a living as a frontend dev without having to touch those topics much. Other devs: desktop app devs, mobile devs, backend devs, devops devs, network devs, data scientists, game devs get exposed to those a little bit more. If you are interested in learning a lot of those at the same time, write a server in C. https://beej.us/guide/bgnet/html/multi/index.html

    Comment linking /guide/bgnet/html/multi/index.html

    on “Things I Don’t Know as of 2018”
  22. Submitted Adding Mastodon Comments to Your Blog as a story · 195 points

    HN discussion
  23. I'm still reading through the article, but I have to say that I'm pleasantly surprised by QUIC and HTTP/3. I first learned socket programming around the fall of 1998 (give or take a year) in order to write a game networking layer: https://beej.us/guide/bgnet/ Here are just a few of the immediately obvious flaws I found: * The UDP checksum is only 16 bits, when it should have been 32 or arbitrary * The UDP header is…

    Comment linking /guide/bgnet/

    on “HTTP/3 explained”
  24. Submitted Beej's Quick Guide to GDB (2009) as a story · 174 points

    HN discussion
  25. Using your language of choice: You open a socket on a port, listen for connections, when connection from client arrives read bytes from the socket, parse http request from those bytes, do something that may yield bytes in response, write the response bytes to the socket, close the socket (optional). https://beej.us/guide/bgnet/

    Comment linking /guide/bgnet/

    on “Websocketd”
  26. Submitted Beej's Guide to Network Programming (2012) as a story · 170 points

    HN discussion
  27. - operating system in three easy pieces ( https://pages.cs.wisc.edu/~remzi/OSTEP ) is incredible for learning OS internals - beej's networking guide is the best thing for network layer stuff https://beej.us/guide/ - explained from first principles great too https://explained-from-first-principles.com/ - pintos from Stanford https://web.stanford.edu/class/cs140/projects/pintos/pintos_...

    Comment linking /guide/

    on “Let's Build the GPT Tokenizer [video]”
  28. Submitted Beej's Guide to Learning Computer Science as a story · 152 points

    HN discussion
  29. Topics to study should include: Unix IPC, signals and syscalls, filesystem and kernel implementation details, and network/socket programming. Being able to read and write C programs goes a really long way. Beej's guides are a good resource. I learned a lot from them. Guide to network programming: https://beej.us/guide/bgnet/html/multi/index.html Guide to Unix IPC: https://beej.us/guide/bgipc/ The Unix Programming En…

    Comment linking /guide/bgipc/

    on “Ask HN: What should a systems/low-level software engineer know?”
  30. Submitted Beej's Guide to Unix IPC (2010) as a story · 148 points

    HN discussion

Search all of HN for beej.us

Linked by the same people?