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 · #654

J

James Bennett

Personal blog · b-list.orgprogrammingweb

James Bennett's personal blog at b-list.org covers programming and web. Since 2007, 96 different Hacker News readers have linked it 146 times, most often “Let's Talk about LLMs”. It is still writing: the last post was on 2026-08-10, and you can follow it by feed.

Visit the blog
146mentions?
5recommend?
96HN people?
2007–2026first – last linked?
Links on Hacker News per year · peak 17 in 2008

Rarely recommended · 5 of 39 sampled comments recommend it?

Why HN links it

HN readers link James Bennett's Django and Python posts, especially the no-service post on Django architecture and a primer on usernames and passwords.

Recommended for · 5 comments
Service-layer post recommended; usernames 'very good primer'; magic 'interesting'; request post 'great starting point'.

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

I'm James, a software developer living in California.

Most-linked posts?

  1. Let's Talk about LLMs
    6 people · 6 mentions · first linked 2026-04-09
  2. Boring Python: dependency management (2022)
    5 people · 5 mentions · first linked 2022-05-13
  3. Against Service Layers in Django
    5 people · 5 mentions · first linked 2020-03-16
  4. Let's talk about WSGI
    4 people · 5 mentions · first linked 2009-08-10
  5. Variations on the Death of Python 2
    4 people · 4 mentions · first linked 2020-05-05
  6. Truths programmers should know about case (2018)
    3 people · 4 mentions · first linked 2018-11-26
  7. On Python packaging
    3 people · 3 mentions · first linked 2008-12-14
  8. Django, Accelerated
    3 people · 3 mentions · first linked 2007-09-05
  9. Let’s talk about usernames
    3 people · 3 mentions · first linked 2018-02-11
  10. How Django processes a request
    2 people · 3 mentions · first linked 2011-04-23

What Hacker News says?

  1. Mozilla is not funded by Google anymore, and hasn't been for several years (the Google contract ended back when I was still working at Mozilla). If you're interested, I wrote up some notes/thoughts from my experience in one of the sessions about EME and whether to implement it: http://www.b-list.org/weblog/2013/oct/16/eme/

    Comment linking /weblog/2013/oct/16/eme/

    on “W3C abandons consensus, standardizes DRM, EFF resigns”
  2. Submitted Let’s talk about usernames as a story · 900 points

    HN discussion
  3. I was working for Mozilla when EME first came up, and sat in one of the big sessions at that year's Mozilla Summit about it. Wrote up some thoughts here: http://www.b-list.org/weblog/2013/oct/16/eme/

    Comment linking /weblog/2013/oct/16/eme/

    on “Save Firefox”
  4. Submitted Reddit takes a new direction as a story · 392 points

    HN discussion
  5. James Bennet is of the same opinion as you re service layers https://www.b-list.org/weblog/2020/mar/16/no-service/ https://www.b-list.org/weblog/2020/mar/23/still-no-service/

    Comment linking /weblog/2020/mar/23/still-no-service/

    on “Django for Startup Founders: A better software architecture for SaaS startups”
  6. Submitted Litestar is worth a look as a story · 343 points

    HN discussion
  7. Those are interesting pointers; appreciate it! My own experience over the past three years has been similar. I tried using Pipenv, and then Poetry, for internal projects at my company; in both cases the tool seemed overly complicated for the problem, slow, and I had a hard time getting co-workers on board. About a year and a half ago, I saw [Boring Python: dependency management]( https://www.b-list.org/weblog/2022/m…

    Comment linking /weblog/2022/may/13/boring-python-dependencies/

    on “Uv: Python packaging in Rust”
  8. Submitted Django core no more as a story · 170 points

    HN discussion
  9. I wrote about this a while back: http://www.b-list.org/weblog/2013/jan/29/persistence/ Since then I've started noticing services rolling out the ability to specify someone to take over your account after you die, and I suspect the legal framework around wills and estates is robust enough that you could leave instructions (and have them enforced) to delete things.

    Comment linking /weblog/2013/jan/29/persistence/

    on “Apple Is Said to Be Working on an iPhone Even It Can’t Hack”
  10. Submitted How Python does Unicode as a story · 165 points

    HN discussion
  11. karolsputo · 2021-12-07Recommends
    I recommend this post when thinking about fat models/service layers https://www.b-list.org/weblog/2020/mar/16/no-service/

    Comment linking /weblog/2020/mar/16/no-service/

    on “Django 4.0”
  12. Submitted Boring Python: dependency management (2022) as a story · 114 points

    HN discussion
  13. This seems reasonable if you are considering only English speakers sharing files with other English speakers. https://www.b-list.org/weblog/2018/nov/26/case/

    Comment linking /weblog/2018/nov/26/case/

    on “Reasons to prefer Linux over Windows (2014)”
  14. Submitted Destroy all hiring processes as a story · 112 points

    HN discussion
  15. rdslw · 2018-02-13Recommends
    This is very good primer on the topic, including unicode normalization, punycode and others, with ultra short python examples and links to more info. https://www.b-list.org/weblog/2018/feb/11/usernames/

    Comment linking /weblog/2018/feb/11/usernames/

    on “Best practices for user account, authorization and password management”
  16. Submitted Yes, I have opinions on your open source contributions as a story · 104 points

    HN discussion
  17. I don’t think GP was offering a comparison so much as a related item to check out. Why would you not recommend code that checks the hashed password against a local DB? See also the “pwned-passwords-django” process here: https://www.b-list.org/weblog/2018/mar/06/two-new-projects

    Comment linking /weblog/2018/mar/06/two-new-projects

    on “The Legitimisation of Have I Been Pwned”
  18. Submitted On "magic", once again (from James Bennet, Django dev) as a story · 83 points

    HN discussion
  19. I think SQLAlchemy vs Django ORM was a 2007 blogging topic: https://www.b-list.org/weblog/2007/sep/04/orm-wars/

    Comment linking /weblog/2007/sep/04/orm-wars/

    on “Rewrite It in Rails”
  20. Submitted Truths programmers should know about case (2018) as a story · 80 points

    HN discussion
  21. I think James Bennett's post on magic is interesting: http://www.b-list.org/weblog/2009/jul/23/magic/ In particular, there is a comment[0] that I think is particularly worth reading: There are two different definitions of magic in play here. 1. The use of advanced language features in a manner that might be confusing to a novice programmer. 2. The use of ANY language feature to automate some process that a programme…

    Comment linking /weblog/2009/jul/23/magic/

    on “How two Pythonistas accidentally fell in love with Rails”
  22. Submitted Let's talk about Python 3.0 as a story · 64 points

    HN discussion
  23. Another post on the same subject written a few years ago: http://www.b-list.org/weblog/2008/dec/14/packaging/

    Comment linking /weblog/2008/dec/14/packaging/

    on “Python Packaging: Hate, hate, hate everywhere”
  24. Submitted On Python packaging as a story · 50 points

    HN discussion
  25. That would require an array of 32 bit integers (basically UTF-32). It wastes a lot of space for most characters and doesn't help that much with indexing since user perceived characters can still be composed of many codepoints. Different languages take different approaches. Python 3.3+, I believe, looks at the string and chooses ASCII/UCS-2/UCS-4 based on the character that takes the highest amount of bytes [1]. Elix…

    Comment linking /weblog/2017/sep/05/how-python-does-unicode/

    on “Validating UTF-8 strings using as little as 0.7 cycles per byte”
  26. Submitted On branching as a story · 49 points

    HN discussion
  27. So I guess I pretty much vote no on this one thanks for asking Yeah, this is precisely the kind of stuff people said would cause JSON to "lose" to XML -- how could you ever build anything without schemas and types and bunches of metadata to ensure you were using it correctly? And this debate is not new; it's been around a long time, and I wrote about it at length literally ten years ago: http://www.b-list.org/weblog…

    Comment linking /weblog/2006/dec/21/i-cant-believe-its-not-xml/

    on “Fixing JSON”
  28. Submitted Let's talk about WSGI as a story · 48 points

    HN discussion
  29. That’s a hard spot to be in. I can hear your pain on how you want you idea to be launched. Honestly, learning django is no brainer. Django guys have done an amazing job building the framework. On a side note, why is your prototype taking that long? In today’s world, you can build complex apps faster than you can think off. Here is some links that can be handy for your django learning. All the best! This is a excelle…

    Comment linking /weblog/2007/sep/04/django-accelerated/

    on “Ask YC: Startup crisis. Out of money and tech co-founder has bailed.”
  30. Submitted Slicehost is smarter than I am as a story · 44 points

    HN discussion

Search all of HN for b-list.org

Linked by the same people?