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

M

m1el

Personal blog · m1el.github.ioprogrammingsecurity

m1el is a personal blog at m1el.github.io about programming and security. Since 2015, 11 different Hacker News readers have linked it 20 times, most often “The Most Expensive Anti-Pattern”. The last post was in 2021, but the archive is still widely read.

Visit the blog
20mentions?
11HN people?
2015–2022first – last linked?
Links on Hacker News per year · peak 6 in 2015

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

Why HN links it

HN commenters link m1el's woscope pages on oscilloscope-style vector graphics and the jsonht page on representing DOM trees as JSON. They are cited in threads on XML, JSON, DOM libraries and vector rendering.

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

Byte Juggling

Most-linked posts?

  1. /jsonht.htm
    4 people · 5 mentions · first linked 2016-05-26
  2. The Most Expensive Anti-Pattern
    3 people · 3 mentions · first linked 2015-07-22
  3. How to draw oscilloscope lines with WebGL
    2 people · 2 mentions · first linked 2017-12-30
  4. Extracting TLS keys from an unwilling application (2020)
    2 people · 2 mentions · first linked 2020-04-11

What Hacker News says?

  1. Here's the music and oscilloscope art demo, the artistic goal of the project ... https://m1el.github.io/woscope/

    Comment linking /woscope/

    on “XXY Oscilloscope”
  2. Submitted Extracting TLS keys from an unwilling application (2020) as a story · 145 points

    HN discussion
  3. This reminds me of an old joke about binary XML: <byte> <bit>1</bit> <bit>1</bit> <bit>0</bit> <bit>1</bit> <bit>0</bit> <bit>1</bit> <bit>1</bit> <bit>0</bit> </byte> >It's easy to make a concise representation of DOM trees as JSON: http://m1el.github.io/jsonht.htm It is not concise. Here is an example of a single div tag overhead: ["div",{"class":"some classes"}, ... ] <div class="some classes"> ... </div> Also, i…

    Comment linking /jsonht.htm

    on “When XML Beats JSON: UI Layouts”
  4. Submitted How to draw oscilloscope lines with WebGL as a story · 143 points

    HN discussion
  5. > JSON for lists, XML for trees No. JSON is a recursive data structure that can represent trees as well. It's easy to make a concise representation of DOM trees as JSON: http://m1el.github.io/jsonht.htm I find it really sad that people don't know or consider s-expressions to represent trees. (Department {:name "Scranton Branch"} (Employee {:name "Michael Scott" :title "Regional Manager"} (Department {:name "Sales"}…

    Comment linking /jsonht.htm

    on “When XML Beats JSON: UI Layouts”
  6. Submitted The Most Expensive Anti-Pattern as a story · 75 points

    HN discussion
  7. I had this exact idea almost a year ago: https://github.com/m1el/du-flamegraph find $1 -type f | xargs -n32 -d'\n' -- du -ab \ | awk -F'\t' '{print $2" "$1;}' | sed 's#/##;s#/#;#g' \ | flamegraph.pl --title "Disk usage" --countname "bytes" \ --nametype "file" --width 1900 --minwidth 0.05 ... and tested it using linux sources: http://m1el.github.io/du-flamegraph/linux-sources.svg http://m1el.github.io/du-flamegraph/i…

    Comment linking /du-flamegraph/dota2.svg

    on “Where has my disk space gone? Flame graphs for file systems”
  8. Submitted Show HN: WebGL-powered oscilloscope emulator as a story · 42 points

    HN discussion
  9. underst0rm · 2019-04-05Recommends
    I have had great success using the ideas presented here ( http://m1el.github.io/woscope-how/index.html ) for simulation of traditional vector graphic screens. It is very fast and easily modified to allow for intensity modulation as well.

    Comment linking /woscope-how/index.html

    on “Blend2D – 2D Vector Graphics Engine”
  10. Submitted The Most Expensive Anti-Pattern as a story · 10 points

    HN discussion
  11. > I was playing with the idea of using JS objects as a template engine: http://m1el.github.io/jsonht.htm , and I'm pretty happy with it. Isn't that the same as (among several other things) React's JSX?

    Comment linking /jsonht.htm

    on “Faster DOM”
  12. Submitted The Most Expensive Anti-Pattern as a story · 3 points

    HN discussion
  13. I was playing with the idea of using JS objects as a template engine: http://m1el.github.io/jsonht.htm , and I'm pretty happy with it. I think DOM is pretty damn fast in modern browsers. `innerHTML` can be slower than creating elements from a JS object! Here's the script I'm using for timing: https://gist.github.com/m1el/b28625b3b9261f0fab819e866133e49... My results in Chrome are: dom: 2663.580ms, innerHTML: 10999.4…

    Comment linking /jsonht.htm

    on “Faster DOM”
  14. Submitted Extracting TLS keys from an unwilling application as a story · 2 points

    HN discussion
  15. Once you have partial evaluation, it's really easy. I've done this (and with jsfuck too!) http://m1el.github.io/jsdeobfuscate/

    Comment linking /jsdeobfuscate/

    on “JSFuck – esoteric JavaScript”
  16. I had a similar attempt. http://m1el.github.io/jsonht.htm

    Comment linking /jsonht.htm

    on “RE:DOM – Tiny DOM library”
  17. I did a similar thing to a Mischief decompression algorithm. http://m1el.github.io/mischief/part-2.html

    Comment linking /mischief/part-2.html

    on “Reverse Engineering Might and Magic III Compression”
  18. There is another bug I think we must get rid of: generating HTML using printf techniques. Not only we should have verified parser, but also verified serializers. http://m1el.github.io/printf-antipattern/ (EDIT: I know it is badly written and there are errors, but, I'm looking forward to rewriting it)

    Comment linking /printf-antipattern/

    on “The Bugs We Have to Kill [pdf]”

Search all of HN for m1el.github.io

Linked by the same people?