M

Martijn Faassen

blog.startifact.com · Personal blog · on HN since 2013

Martijn Faassen, a Python and Rust developer, writes about Python style, web frameworks, succinct data structures, and the Xee XPath and XSLT engine.

What HN saysHN links it for his posts on Xee as a libxslt alternative, succinct data structures, and his take on what is Pythonic.
37HN people shared it
9linked it in comments
37stories submitted
1.7Kstory points
7 months agolast shared
2013people per year2026

Most-shared posts

  1. 1
    What is Pythonic? (2005)
    5 people · 42 points · first shared 2014 · 20 comments on HN
  2. 2
    Succinct data structures
    3 people · 588 points · first shared 2025 · 105 comments on HN
  3. 3
    Xee: A Modern XPath and XSLT Engine in Rust
    3 people · 384 points · first shared 2025 · 232 comments on HN
  4. 4
    Repeat Yourself, a Bit
    3 people · 5 points · first shared 2025 · discussion on HN
  5. 5
    Framework Patterns (2019)
    2 people · 273 points · first shared 2019 · 43 comments on HN
  6. 6
    The Curious Case of Quentell
    2 people · 82 points · first shared 2024 · 7 comments on HN
  7. 7
    The Emerging GraphQL Python Stack
    2 people · 6 points · first shared 2015 · discussion on HN
  8. 8
    The Humble for Loop in JavaScript
    2 people · 3 points · first shared 2024 · discussion on HN
  9. 9
    Random Rust Impressions
    2 people · 3 points · first shared 2022 · discussion on HN
  10. 10
    The Gravity of Python 2
    2 people · 3 points · first shared 2014 · 2 comments on HN
  11. 11
    Don’t look down on print debugging
    1 people · 112 points · first shared 2024 · 157 comments on HN
  12. 12
    Roll Your Own Frameworks
    1 people · 111 points · first shared 2020 · 69 comments on HN
  13. 13
    The humble for loop in Rust
    1 people · 94 points · first shared 2024 · 56 comments on HN
  14. 14
    I Was a 1980s Teenage Programmer
    1 people · 6 points · first shared 2024 · discussion on HN
  15. 15
    The Call of Python 2.8
    1 people · 6 points · first shared 2014 · discussion on HN

What HN people wrote when they linked it

noduerme · 2023-07-29
I think that's a great reason then! AI has really given Python a whole new life. I personally find pythonic style[0] easy to follow but really odd and uncomfortable to code in. It's certainly different enough to give you new challenges. [0] https://blog.startifact.com/posts/older/what-is-pythonic.html
kristianp · 2026-04-16
A better intro to them is at https://blog.startifact.com/posts/succinct/
xvilka · 2025-08-19
There is a better alternative to libxslt - xee[1][2]. It was discussed[3] on HN before. [1] https://blog.startifact.com/posts/xee/ [2] https://github.com/Paligo/xee [3] https://news.ycombinator.com/item?id=43502291
faassen · 2025-03-28
Anything could be supported with sufficient effort, but streaming hasn't been my priority so far and I haven't explored it in detail. I want to get XSLT 3.0 working properly first. There's a potential alternative to streaming, though - succinct storage of XML in memory: https://blog.startifact.com/posts/succinct/ I've built a succinct XML library named Xoz (not integrated into Xee yet): https://github.com/Paligo/xoz The parsed in memory overhead goes down to 20% of the original XML text in my small experiments. There's a lot of questions on how this functions in the real world, but this library also has very interesting properties like "jump to the descendant with this tag without going through intermediaries".
pak · 2014-01-27
Yes, it is. Coming to this mess from the joy of bundler/gems, npm, or hell, even CPAN will ruin your afternoon. It is just an unfortunate circumstance of the community not efficiently converging on well designed standards quickly enough, and so, the rocky soil has sprouted strange twisty crops. There are articles on how the setuptools/distutils frankenhack pretty much set off the whole trainwreck that you see today, e.g.: http://blog.startifact.com/posts/older/a-history-of-python-packaging.h… Armin (the OP) has also written about this sad history previously: http://lucumr.pocoo.org/2012/6/22/hate-hate-hate-everywhere/
shadowmint · 2014-01-09
Which statistics? I'm honestly curious. I presume you've read http://blog.startifact.com/posts/python-2-gravity.html? All the new python3/python2 libraries I've noticed adhoc recently have been doing the horrible 'polyglot' one-code-base-support-python2-and-python3 thing, or been in python2.
veddox · 2015-10-06
We are a product of our history - and the same goes with the community around any given technology, not to mention the technology itself. Understanding that history helps you to understand the mindset of the people who created the technology and why and how they designed it. Understanding that will in turn enable you to appreciate and utilize the strengths and weaknesses of said technology better. One good example: the Unix philosophy. Unix originated back in the 70s, with slow, expensive time-sharing computers, many of which still used printing teletypes. Any text output was expensive in that it used ink and paper and took a long time. Therefore the principle of silence was born: if a program doesn't need to say anything, it shouldn't. See also the principles of smallness and modularity - each program should do one (and only one) thing well, but it should be easy to combine different programs to suit one's needs. You simply couldn't run any very large programs back then, and later on it turned out that chaining several together was actually a pretty good design principle anyway. (For more details, see ESR's "The Art of Unix Programming".) Knowing this history will help one appreciate the philosophy, understanding the philosophy will help one write good programs for that context. Second example: take the Python language. Its community places a prime on "pythonicness" (http://blog.startifact.com/posts/older/what-is-pythonic.html), a set of guidelines/rules/principles that…

Keyboard shortcuts

/Search
j kNext / previous blog
EnterOpen selected blog
vVisit the blog site
fFollow / unfollow
lSwitch grid / list view
dSwitch dark mode
g hHome
g pTop posts
g tTopics
g fFollowing
g lLiked
g yHistory
g qFAQ
EscBack / close