Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    B

    Better Programming

    medium.com/better-programming · Publication · on HN since 2019

    Better Programming is a Medium publication where many authors post about software development, languages, architecture, team habits, and tooling.

    Visit blogHN submissions
    ProgrammingCareer & Work
    What HN says

    HN commenters mostly link specific articles, share paywall-bypass links, and cite posts on documenting why in git history and a Docker turnaround.

    Stats for nerds
    266HN people shared it
    546linked in comments
    2.5Kstory points
    Aug 2026last shared
    2020people per year2026

    Top posts on HN

    1. 1
      NumPy Illustrated: The Visual Guide to NumPy
      2 people · 345 points · first shared 2020 · 106 comments on HN
    2. 2
      React created roadblocks in our enterprise app
      1 person · 206 points · first shared 2021 · 290 comments on HN
    3. 3
      Modern-Day Architecture Design Patterns for Software Professionals
      1 person · 167 points · first shared 2020 · 68 comments on HN
    4. 4
      Save your Linux machine – Recovering your root password and more
      1 person · 93 points · first shared 2020 · 33 comments on HN
    5. 5
      It’s time to move on from OOP?
      2 people · 77 points · first shared 2019 · 126 comments on HN
    6. 6
      Object-Oriented Programming – The Trillion Dollar Disaster
      9 people · 45 points · first shared 2019 · 11 comments on HN
    7. 7
      We throw away our power as engineers working for other people
      2 people · 36 points · first shared 2020 · 52 comments on HN
    8. 8
      Migrate to Python 3 Now, There's Little Time Left
      1 person · 35 points · first shared 2020 · 22 comments on HN
    9. 9
      How the Gap in the Resume of Many Working Mothers Affects Their Career
      1 person · 32 points · first shared 2019 · 5 comments on HN
    10. 10
      A Python Substitute? I Tried the Best Programming Language You’ve Never Heard Of
      1 person · 32 points · first shared 2020 · 25 comments on HN

    What HN people wrote when they linked it

    • peter_d_shermanAug 2020

      Related:

      https://medium.com/better-programming/here-are-the-three-virtues-of-good-programmers-e561e061ea19

      Also, here's my interpretation / rephrasing / translation of the 3 virtues:

      Laziness (Larry Wall): "The quality that makes you go to great effort to reduce overall energy expenditure. It makes you write labor-saving programs that other people will find useful and document what you wrote so you don't have to answer so many questions about it."

      My Translation:

      Efficiency. Choose the most efficient solution to a problem, and if there isn't one, then invent it. Automate any manual repetitive process that can be automated, even if* extraordinary large amounts of time and manual repetitive effort are required to automate it in the first place! (Related: The 5th Labor Of Hercules, The Augean Stables)*

      Impatience (Larry Wall): "The anger you feel when the computer is being lazy. This makes you write programs that don't just react to your needs, but actually anticipate them. Or at least pretend to."

      My Translation:

      The Most Efficient Use Of Resources Possible (AKA "The Knowlege Of A Better Way Of Doing Things"), the anger you feel when a better path / solution is known -- but for whatever reason (management, etc.) that path / solution, is not or cannot be taken. This makes you take the initiative, and ask for forgiveness later (if you screw up), rather than permission earlier (that is, never start on the solution if the answer from higher-ups early on is…

    • SomeoneDec 2020

      “It, like the semicolon, always has been and will be.”

      Not the best of examples. It hasn’t always been. Early fortran and lisp didn’t have it. Reading https://medium.com/better-programming/a-brief-history-of-the-8efda9dde2b8, it seems Algol and PL/I set the trend to make it popular.

      Looking at newer languages, I also get the impression it’s on the way out. Rust has them, but python, scala, go and swift try to avoid them (https://python-reference.readthedocs.io/en/latest/docs/operators/semicolon.html: “Avoid having multiple statements on a single line. Though the language definition allows one to use a semi-colon to delineate statements, doing so without reason makes one’s code harder to read”, https://golang.org/doc/effective_go.html#semicolons: “Like C, Go's formal grammar uses semicolons to terminate statements, but unlike in C, those semicolons do not appear in the source. Instead the lexer uses a simple rule to insert semicolons automatically as it scans, so the input text is mostly free of them.”, https://docs.swift.org/swift-book/LanguageGuide/TheBasics.html#ID316: “Unlike many other languages, Swift doesn’t require you to write a semicolon (;) after each statement in your code, although you can do so if you wish. However, semicolons are required if you want to write multiple separate statements on a single line”)

    • rektideOct 2020

      honestly it feels like a colossal amount of software development process is designed to prevent exactly this. put it on the backlog. we'll come back to it. i very much appreciate some of the sensibilities of trying to bring bring your team with you, but also i feel like 95% of the world outright fears & is desperate to wrench control (and a sense of purpose) from those who can & those who aspire. ultimately we are very very alone in many cases in what we make of our positions, and excellence & a mentality of chasing the unlimited & great is often quickly sacrificed to support a more manageable corporate existence.

      apologies. i am fairly blunt in first writings, it takes me time to refine, synthesize, be nice. this is many many sided; engineers so far to little to create inroads & expose their wonders, which is just one of innumerable problems in this tension. there's, in this case, some good recent writing on the topic on HN, huzzah. "We throw away our power as engineers working for other people."[1][2] the tension is real.

      [1] https://news.ycombinator.com/item?id=24773266

      [2] https://medium.com/better-programming/we-throw-away-our-power-as-engineers-working-for-other-people-8aeb36fca691

    • rsandersSep 2020

      This advice is confusing. CPU is a "compressible" resource -- pods don't get killed for (trying to) exceed it. Pods don't get evicted from nodes based on CPU starvation, so autoscaling your node count won't help if you end up with a set of pods on a node that need more CPU than the node can provide. They'll just starve each other.

      If your service allows horizontal scalability, you can use autoscaling of pods with Horizontal Pod Autoscaler (ideally also with a cluster autoscaler) to increase pod count for a given service when some percentage of the requested CPU is exceeded, whether or not you set a CPU limit. Setting the cpu_request appropriately for your pods is critical to ensure that node CPU is not oversubscribed by the Kubernetes pod scheduler.

      Pods where mem & CPU requests = limits are given the highest class of service ("guaranteed"). For your most critical and latency sensitive services, this is the best approach when also coupled with HPA. Assuming a 4.19 kernel or later, I suppose.

      https://medium.com/better-programming/the-kubernetes-quality-of-service-conundrum-eebbbb5f89cf

    • greshakeMar 2023

      Segmenting different data sources is the main approach pursued by OpenAI afaik (ChatML for example). That has not worked so far, as you can see in this prompt golfing game: https://ggpt.43z.one/ The goal is to find the shortest prompt that subverts the "system" instructions (which GPT was trained to obey). Inputs can not "fake" being from the system and yet it only takes 1-5 characters for all the puzzles so far.

      I've also elaborated on why this problem is harder than one may think in a blogpost:
      https://medium.com/better-programming/the-dark-side-of-llms-we-need-to-rethink-large-language-models-now-6212aca0581a

      It's easy to come up with solutions that seem promising, but so far no one has produced a solution that holds up to adversarial pressure. And indirect prompt injection on integrated LLMs increases the stakes significantly.

    • invalidnameOct 2021

      Publications and spread. I have a larger following on Medium than I have in dev.to or hashnode. So I post there and usually provide a canonical link to the actual article in a more "decent" location.

      The value is the publication such as https://medium.com/javarevisited/ which I usually use or https://medium.com/better-programming which is a bit more painful (for the submitter). But the benefit is that both have orders of magnitude more followers than I do. When an article goes up in a publication I get huge viewer numbers.

      Monetization isn't available in my country so I never enabled it as an option. I'm not sure if I would turn it on to begin with as all my new content on medium isn't exclusive to the platform.

    Related

    Level Up Codinglevelup.gitconnected.com224 people

    We reduced our server costs by moving away from AWS

    Level Up Coding
    Publication · last shared 2026
    The Startup (Medium)medium.com/swlh1.2k people

    “User engagement” is code for “addiction”

    The Startup (Medium)
    Publication · last shared 2026
    Better Humansmedium.com/better-humans167 people

    The Secret Power of ‘Read It Later’ Apps

    Better Humans
    Publication · last shared 2026
    RedMonkredmonk.com354 people

    Programming Language Rankings: June 2016

    RedMonk
    Publication · last shared 2026
    Javarevisitedmedium.com/javarevisited22 people

    White Papers to Learn System Design and Software Architecture

    Javarevisited
    Publication · last shared 2026
    Better Web Typebetterwebtype.com15 people

    A guide to rhythm in web typography

    Better Web Type
    Personal · last shared 2025
    programming is terribleprogrammingisterrible.com124 people

    Write code that is easy to delete, not easy to extend

    programming is terrible
    Personal · last shared 2026
    Sketch App Sourcesmedium.com/sketch-app-sources32 people

    Sketch Aims to Become a Development Platform

    Sketch App Sources
    Company · last shared 2023