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

Top all-time · #2391

I

ionel's codelog

Personal blog · blog.ionelmc.roprogramming

ionel's codelog is a personal blog at blog.ionelmc.ro about programming. Since 2013, 32 different Hacker News readers have linked it 39 times, most often “Terrible choices: MySQL (2014)”. The last post was in 2023, but the archive is still widely read.

Visit the blog
39mentions?
32HN people?
2013–2025first – last linked?
Links on Hacker News per year · peak 9 in 2015

Too few sampled comments (8) to say how often HN recommends it.?

Why HN links it

HN readers link Ionel Cristian Mărieș's posts on Python packaging (including the src layout), Python internals such as metaclasses and attribute lookup, and readable tracebacks, as references on those topics.

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

Most-linked posts?

  1. Terrible choices: MySQL (2014)
    4 people · 4 mentions · first linked 2016-04-04
  2. Understanding Python Metaclasses (2015)
    3 people · 3 mentions · first linked 2018-01-29
  3. An underrated feature in Python 3
    3 people · 3 mentions · first linked 2014-08-05
  4. Packaging a Python Library
    3 people · 3 mentions · first linked 2019-02-13
  5. Packaging a Python Library
    2 people · 2 mentions · first linked 2014-06-08
  6. The problem with packaging in Python
    2 people · 2 mentions · first linked 2015-02-25
  7. Memory use and speed of JSON parsers
    2 people · 2 mentions · first linked 2015-12-09
  8. Adding Django stacktraces to log messages
    2 people · 2 mentions · first linked 2013-12-10

What Hacker News says?

  1. > I have one package manager: pip. It works Funny, because this is not the general sentiment in the Python community. See links like [1], [2], [3]. Thankfully, things are improving. [1] http://lucumr.pocoo.org/2012/6/22/hate-hate-hate-everywhere/ [2] https://www.reddit.com/r/Python/comments/zrm3h/there_have_be... [3] https://blog.ionelmc.ro/2015/02/24/the-problem-with-packagin...

    Comment linking /2015/02/24/the-problem-with-packaging-in-python/

    on “How it feels to learn JavaScript in 2016”
  2. Submitted An underrated feature in Python 3 as a story · 112 points

    HN discussion
  3. Yeah, I adopted the “src” dir layout after reading this post some time back: https://blog.ionelmc.ro/2014/05/25/python-packaging/#the-str... It describes some of the outdated motivations for the other layouts commonly seen with python, as well as the many benefits of the “src” layout.

    Comment linking /2014/05/25/python-packaging/

    on “How to create a Python package in 2022”
  4. Submitted The most underrated feature in Python 3 as a story · 96 points

    HN discussion
  5. Wonderful. I’ve never seen this resource before. A related article I got a lot out of was ‘Understanding Python Metaclasses’, an in-depth breakdown of Python class instantiation. Here’s the link to that: https://blog.ionelmc.ro/2015/02/09/understanding-python-meta...

    Comment linking /2015/02/09/understanding-python-metaclasses/

    on “A Guide to Python's Magic Methods (2012)”
  6. Submitted Memory use and speed of JSON parsers as a story · 94 points

    HN discussion
  7. a_bonobo · 2015-06-27Recommends
    Python 3 has changed the "standard" traceback to be more readable and include more information, maybe that one is more to your liking: http://blog.ionelmc.ro/2014/08/03/the-most-underrated-featur...

    Comment linking /2014/08/03/the-most-underrated-feature-in-python-3/

    on “The Three Great Virtues of a Programmer: Laziness, Impatience, and Hubris”
  8. Submitted Sins of software development as a story · 56 points

    HN discussion
  9. The src directory is becoming a popular option. See https://blog.ionelmc.ro/2014/05/25/python-packaging/#the-str... for an enumeration of the reasons. Another resource might be https://hynek.me/articles/testing-packaging/

    Comment linking /2014/05/25/python-packaging/

    on “The State of Python Packaging”
  10. Submitted Terrible choices: MySQL (2014) as a story · 45 points

    HN discussion
  11. I suppose it's not that hard [1] to write a logging filter to display SQL just like devserver does but without all that monkeypatching ? [1] http://blog.ionelmc.ro/2013/12/10/adding-stacktraces-to-log-...

    Comment linking /2013/12/10/adding-stacktraces-to-log-messages/

    on “Django Debug Toolbar 1.0 beta released”
  12. Submitted The problem with packaging in Python as a story · 44 points

    HN discussion
  13. Sure, but adding too many sources will make me seem snide or bitter. But as an example: https://www.youtube.com/watch?v=emgJtr9tIME MySQL vs PostgreSQL - Why you shouldn't use MySQL https://dev.mysql.com/doc/refman/5.5/en/glossary.html#glos_a... http://grimoire.ca/mysql/choose-something-else https://blog.ionelmc.ro/2014/12/28/terrible-choices-mysql/ the fact that https://dev.mysql.com/doc/refman/5.6/en/mysql-real-es…

    Comment linking /2014/12/28/terrible-choices-mysql/

    on “Show HN: Natika – Simple PHP Forum for Developers”
  14. Submitted Terrible choices: MySQL as a story · 17 points

    HN discussion
  15. This sort of thing makes me think Python is very complex: What `instance.foobar` actually does: https://blog.ionelmc.ro/2015/02/09/understanding-python-meta... Unless `instance` is actually a class, in which case it does: https://blog.ionelmc.ro/2015/02/09/understanding-python-meta... Unless it's looking up a special method (`__add__` etc), in which case it does something different again. This is much more complex t…

    Comment linking /2015/02/09/understanding-python-metaclasses/

    on “Python is the new Basic”
  16. Submitted Python debugging tools as a story · 13 points

    HN discussion
  17. Submitted Packaging a Python Library as a story · 10 points

    HN discussion
  18. Submitted Python's Tox tricks and patterns (2015) as a story · 5 points

    HN discussion
  19. Submitted Terrible choices: MySQL (2014) as a story · 4 points

    HN discussion
  20. Submitted Memory use and speed of JSON parsers as a story · 4 points

    HN discussion
  21. Submitted The problem with packaging in Python as a story · 4 points

    HN discussion
  22. Submitted Understanding Python Metaclasses (2015) as a story · 4 points

    HN discussion
  23. Submitted Understanding Python Metaclasses (2015) as a story · 3 points

    HN discussion
  24. Submitted Dealing with Docker (in Python apps) as a story · 3 points

    HN discussion
  25. Submitted Packaging a python library as a story · 3 points

    HN discussion
  26. Submitted Terrible Choices: MySQL as a story · 2 points

    HN discussion
  27. Submitted Packaging a Python Library as a story · 2 points

    HN discussion
  28. Submitted Notes on Debugging as a story · 2 points

    HN discussion
  29. Submitted Memory use and speed of JSON parsers as a story · 2 points

    HN discussion
  30. Submitted Understanding Python metaclasses as a story · 2 points

    HN discussion

Search all of HN for blog.ionelmc.ro

Linked by the same people?