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

C

Charles Leifer

Personal blog · charlesleifer.com · on HN as cleiferprogrammingweb

Charles Leifer's personal blog at charlesleifer.com covers programming and web. Since 2009, 77 different Hacker News readers have linked it 179 times, most often “Your idea sucks”. It is still writing: the last post was on 2026-06-29, and you can follow it by feed.

Visit the blog
179mentions?
77HN people?
2009–2026first – last linked?
Links on Hacker News per year · peak 36 in 2015

The author on HN?

cleifer · 10 karma · member since 2026

https://charlesleifer.com/

From their public HN profile, which links to this site.

Most-linked posts?

  1. Your idea sucks
    5 people · 8 mentions · first linked 2017-05-05
  2. AsyncIO
    4 people · 4 mentions · first linked 2023-06-10
  3. Going Fast with SQLite and Python
    3 people · 4 mentions · first linked 2017-11-08
  4. New features planned for Python 4.0
    3 people · 3 mentions · first linked 2020-07-02
  5. Five reasons you should use SQLite in 2016
    3 people · 3 mentions · first linked 2016-01-07
  6. What happened to Python?
    3 people · 3 mentions · first linked 2017-02-17
  7. Building a Markov-chain IRC bot with Python and Redis (2012)
    3 people · 3 mentions · first linked 2020-12-09
  8. Describing projects as “For Humans” must stop
    3 people · 3 mentions · first linked 2016-03-13
  9. Tokens and Dreams
    2 people · 4 mentions · first linked 2026-05-05
  10. /blog/compiling-sqlite-for-use-with-python-applications/
    2 people · 3 mentions · first linked 2018-08-15

What Hacker News says?

  1. New features planned for python 4.0: http://charlesleifer.com/blog/new-features-planned-for-pytho...

    Comment linking /blog/new-features-planned-for-python-4-0/

    on “Sunsetting Python 2”
  2. Submitted Nginx: a caching, thumbnailing, reverse proxying image server as a story · 209 points

    HN discussion
  3. I put together a list of my own, including screenshots with a small code snippet. Might be helpful as this list does include some that are not listed on programmingfonts.org: http://charlesleifer.com/blog/monospace-font-favorites/

    Comment linking /blog/monospace-font-favorites/

    on “Programming Fonts – Test Drive”
  4. Submitted SQLite: Small, Fast, Reliable – Choose any three as a story · 208 points

    HN discussion
  5. I compiled a large list of monospace coding fonts a couple years ago. Includes screenshots and links: http://charlesleifer.com/blog/monospace-font-favorites/ Hope someone else finds it useful.

    Comment linking /blog/monospace-font-favorites/

    on “Lesser Known Coding Fonts”
  6. Submitted Using python and k-means to find dominant colors in images as a story · 189 points

    HN discussion
  7. Not the poster, but I did some benchmarks with embedded databases and Python if you're interested in completely useless, unscientific data: http://charlesleifer.com/blog/completely-un-scientific-bench...

    Comment linking /blog/completely-un-scientific-benchmarks-of-some-embedded-databases-with-python/

    on “We’re pretty happy with SQLite and not urgently interested in a fancier DBMS”
  8. Submitted Kyoto Tycoon in 2019 as a story · 111 points

    HN discussion
  9. I have written several "Use Sqlite!" posts that have made the rounds on hackernews... reading this watered down post, which is devoid of any new, surprising or usable info, it strikes me that repping SQLite has achieved meme status. If you want tangible info you can actually use, read sqlites documentation. There's a wealth of information there. Here are some of posts, for the Python crowd: http://charlesleifer.com/…

    Comment linking /blog/my-list-of-python-and-sqlite-resources/

    on “We’re pretty happy with SQLite and not urgently interested in a fancier DBMS”
  10. Submitted Multi-threaded SQLite without the OperationalErrors (2017) as a story · 76 points

    HN discussion
  11. The source tree for sqlite3 now contains an extension named lsm1 that contains both the standalone lsm kv database as well as a virtual table extension which allows you to use it directly from sqlite3. Some info on python integration can be found here: http://charlesleifer.com/blog/using-sqlite4-s-lsm-storage-en... In peewee 3.0a I've also added built-in support for using the lsm1 virtual table if you're interested.

    Comment linking /blog/using-sqlite4-s-lsm-storage-engine-as-a-stand-alone-nosql-database-with-python/

    on “Work on SQLite4 has concluded”
  12. Submitted Peewee, a lightweight python ORM as a story · 75 points

    HN discussion
  13. > Some SQLite wrappers (notably, Python's) mess with the start and rollbacks of transactions and make this appear buggy. @coleifer (author of peewee) has a pretty informative blog post exploring — in part — transactional semantics, which might be of value to people who want to know more about this. https://charlesleifer.com/blog/going-fast-with-sqlite-and-py...

    Comment linking /blog/going-fast-with-sqlite-and-python/

    on “How to Corrupt a SQLite Database File”
  14. Submitted Aspirational Clownmaxxing and Joey's cadillac todo list as a story · 51 points

    HN discussion
  15. This might benefit from SQLite's Virtual tables: https://sqlite.org/vtab.html With Virtual Tables you can expose any data source as a SQLite table -- then you can use every SQL feature that sqlite offers. You can just tell sqlite how to iterate through your data with a few functions, with an option to push down filtering information for efficiency. You can also create your own aggregates, functions etc. Here's an ar…

    Comment linking /blog/extending-sqlite-with-python/

    on “A Git query language”
  16. Submitted What happened to Python? as a story · 51 points

    HN discussion
  17. Charles provided really great documentation on how to build this here: http://charlesleifer.com/blog/compiling-sqlite-for-use-with-... Or if you're feeling lazy (like I was), there's a fork of his library at https://github.com/karlb/pysqlite3 which compiles the 3.25.0 amalgamation by default. This worked for me: $ python3 -mvirtualenv venv $ source venv/bin/activate $ pip install git+git://github.com/karlb/pysqlite3…

    Comment linking /blog/compiling-sqlite-for-use-with-python-applications/

    on “SQLite Release 3.25.0 adds support for window functions”
  18. Submitted "j" for switching directories - hacking "cd" with python as a story · 46 points

    HN discussion
  19. For Python folks interested in using these features, you might be interested in this post [0] which describes how to compile the latest SQLite and the python sqlite3 driver. I've got a fork of the standard lib sqlite3 driver that includes support for user-defined window functions in Python as well which may interest you. [0] http://charlesleifer.com/blog/compiling-sqlite-for-use-with-... [1] https://github.com/colei…

    Comment linking /blog/compiling-sqlite-for-use-with-python-applications/

    on “SQLite Release 3.25.0 adds support for window functions”
  20. Submitted Shortcomings in the Django ORM and a look at Peewee, a lightweight alternative as a story · 37 points

    HN discussion
  21. I experienced a twist on this. A guy who had very different aesthetic taste wanted me to merge some patches. He got real entitled about it, eventually I banned him. THEN he did the "appeal to Twitter" and made malicious edits to the project page on wikipedia. He made a huge stink and wasted hours of both of our time. It was unreal! I wish I was joking. I wrote about it, discussing my motivations for open source: htt…

    Comment linking /blog/your-idea-sucks/

    on “If it's not fun anymore, you get nothing from maintaining a popular package”
  22. Submitted My beef with gittip as a story · 18 points

    HN discussion
  23. > some of the more complex SQL syntax that Postgres supports are missing, but more importantly, it can only ever do one write or read to the database predictably I don't know...it's recently added upsert compatible with Postgres syntax as well as support for window functions. Additionally, sqlite has a sophisticated json extension. > it can only ever do one write or read to the database predictably WAL mode addresse…

    Comment linking /blog/going-fast-with-sqlite-and-python/

    on “At 22 years old, Postgres might just be the most advanced database yet”
  24. Submitted Using Redis Pub/Sub and IRC for Error Logging with Python as a story · 14 points

    HN discussion
  25. I had a similar thing happen. The CTO of a company was using a library I wrote, and he ran into things he wanted to change. When I disagreed, I was accused of sabotaging my own library, by refusing to fix it's obviously broken aspects. Guy went on a smear campaign on hn, Reddit, Twitter, Wikipedia. Literally made me miserable for weeks. I wrote about it, more here if you're curious: http://charlesleifer.com/blog/you…

    Comment linking /blog/your-idea-sucks/

    on “Matz: We are mere mortals”
  26. Submitted New features planned for Python 4.0 as a story · 13 points

    HN discussion
  27. My limitation with it is that it means I have to recompile sqlite for my use case. That's sometimes easy and obvious to do, but it's a lot more of a pain if it's, say, the sqlite embedded in my language interpreter and I just signed myself up for compiling a custom Python to support my project. That said, I just googled it and it turns out I'm being a bit dramatic— it's actually not super hard to dynamically link Py…

    Comment linking /blog/compiling-sqlite-for-use-with-python-applications/

    on “Show HN: Stanchion – Column-oriented tables in SQLite”
  28. Submitted Looking at registration patterns in Django as a story · 13 points

    HN discussion
  29. If you are into alternative storage engines for SQLite, there is also an LSM (Log-Structured Merge-tree) extension in the main repository that is not announced nor documented but seems to work. It’s based on the SQLite 4 project. https://github.com/sqlite/sqlite/tree/master/ext/lsm1 https://www.charlesleifer.com/blog/lsm-key-value-storage-in-...

    Comment linking /blog/lsm-key-value-storage-in-sqlite3/

    on “Show HN: Stanchion – Column-oriented tables in SQLite”
  30. Submitted More fun with Canvas - a JavaScript Starfield in as a story · 12 points

    HN discussion

Search all of HN for charlesleifer.com

Linked by the same people?