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

M

metablog

Personal blog · blog.metaobject.com · on HN as mpweiherprogrammingdesign

metablog is a personal blog at blog.metaobject.com about programming and design. Since 2012, 47 different Hacker News readers have linked it 461 times, most often “UIs are not pure functions of the model (2018)”. The last post was in 2024, but the archive is still widely read.

Visit the blog
461mentions?
47HN people?
2012–2026first – last linked?
Links on Hacker News per year · peak 61 in 2019

The author on HN?

mpweiher · 61,278 karma · member since 2012

http://blog.metaobject.com/ http://www.metaobject.com/ http://objective.st/

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

Most-linked posts?

  1. UIs are not pure functions of the model (2018)
    7 people · 21 mentions · first linked 2018-12-31
  2. M1 Memory and Performance
    6 people · 8 mentions · first linked 2020-11-13
  3. The Safyness of Static Typing
    5 people · 9 mentions · first linked 2014-06-18
  4. Cc -Osmartass
    4 people · 25 mentions · first linked 2014-04-14
  5. Jitterdämmerung
    4 people · 16 mentions · first linked 2015-10-06
  6. Blackbird: A reference architecture for local-first connected mobile apps
    3 people · 10 mentions · first linked 2022-06-21
  7. Instant Builds
    3 people · 6 mentions · first linked 2019-11-07
  8. The Curious Case of Swift's Adoption of Smalltalk Keyword Syntax
    3 people · 5 mentions · first linked 2020-06-14
  9. Model Widget Controller (MWC) Aka: Apple “MVC” Is Not MVC
    3 people · 4 mentions · first linked 2015-04-03
  10. Native-GUI distributed system in a tweet
    3 people · 4 mentions · first linked 2022-08-10

What Hacker News says?

  1. Yes, I think the promises of the "we can JIT all the overhead away"-camp were always overblown, and never materialized in practice. This is another very strong datapoint for that hypothesis[1]. However, it is important not to conflate "scripting language" and "dynamic language" and "interpreted". While there is some correlation there, it is not a necessary one. Objective-C is an example of a fast AOT-compiled pretty…

    Comment linking /2021/07/deleting-code-to-double-performance-of.html

    on “A 10x Faster TypeScript”
  2. Submitted Meltdown patch reduces mkfile(8) throughput to less than 1/3 on OS X as a story · 253 points

    HN discussion
  3. Indeed, one of the articles cited by the article that this discussion is about ( https://blog.metaobject.com/2020/11/m1-memory-and-performanc... ) links to a paper saying that GC needs 4x the memory to match manual memory management and then makes a huge wacky leap to say that ARC could achieve that with less. It can't. ARC will always be slower than manual memory management because it behaves the same way as naive…

    Comment linking /2020/11/m1-memory-and-performance.html

    on “Apple Silicon M1: Black Magic Fuckery”
  4. Submitted “What Alan Kay Got Wrong About Objects” as a story · 241 points

    HN discussion
  5. Nope, as proven by performance tests, https://github.com/ixy-languages/ixy-languages And the fact that M1 has special instructions dedicated to optimize RC, https://blog.metaobject.com/2020/11/m1-memory-and-performanc... Memory overhead in languages with tracing GC (RC is a GC algorithm) only happens in languages like Java without support for value types. If the language supports value types, e.g. D, and there is st…

    Comment linking /2020/11/m1-memory-and-performance.html

    on “Apple Silicon M1: Black Magic Fuckery”
  6. Submitted What Happens to OO When Processors Are Free? (2015) as a story · 196 points

    HN discussion
  7. > "M1 and memory efficiency" Hi folks! It looks like my blog post[1] was the primary source for this (it's referenced both by this post and by the Gruber post), and to be clear, I did not claim that this helps ARM Macs use less RAM than Intel Macs. I think John misunderstood that part and now it has blown up a bit... I did claim that this helps Macs and iPhones use less RAM than most non-Apple systems, as part of Ap…

    Comment linking /2020/11/m1-memory-and-performance.html

    on “Apple Silicon M1: Black Magic Fuckery”
  8. Submitted Inserting 130M SQLite rows per minute from a scripting language as a story · 163 points

    HN discussion
  9. This blog post, written by mpweiher shortly after the initial public release of React Native, explains why it can't truly be considered "native": http://blog.metaobject.com/2015/04/reactnative-isn.html Xamarin is much closer to native. In particular, unless you choose to use Xamarin Forms, you'll be using each platform's native UI APIs, so your UI will be indistinguishable from an app written in the platform's nativ…

    Comment linking /2015/04/reactnative-isn.html

    on “Xamarin now free in Visual Studio, and Xamarin SDK being open-sourced”
  10. Submitted The Curious Case of Swift's Adoption of Smalltalk Keyword Syntax as a story · 147 points

    HN discussion
  11. Other languages need special hardware to beat C#, so I guess the language wasn't the issue. https://github.com/ixy-languages/ixy-languages https://blog.metaobject.com/2020/11/m1-memory-and-performanc...

    Comment linking /2020/11/m1-memory-and-performance.html

    on “Before the iPhone, I worked on a few games for what were called "feature phones"”
  12. Submitted Maybe visual programming is the answer, maybe not as a story · 136 points

    HN discussion
  13. 1. The WWW would like a quick word with you regarding function calls having won. 2. You are making an invalid assumption, which is that we only get to have one tool in our toolbox, and therefore one tool has to "win". Even if function calls were the best tool, they would still not always be the right one. With the benefit of hindsight, it’s clear that these properties of structured programs, although helpful, do not…

    Comment linking /2019/02/why-architecture-oriented-programming.html

    on “Cap'n Web: a new RPC system for browsers and web servers”
  14. Submitted Lisp Macros, Delayed Evaluation and the Evolution of Smalltalk as a story · 136 points

    HN discussion
  15. Big fan of Cap'n'Proto and this looks really interesting, if RPC is the thing that works for your use-case. However, stumbled over this: The fact is, RPC fits the programming model we're used to. Every programmer is trained to think in terms of APIs composed of function calls, not in terms of byte stream protocols nor even REST. Using RPC frees you from the need to constantly translate between mental models, allowin…

    Comment linking /2019/02/why-architecture-oriented-programming.html

    on “Cap'n Web: a new RPC system for browsers and web servers”
  16. Submitted UIs are not pure functions of the model (2018) as a story · 134 points

    HN discussion
  17. > cool optimizations ... but ... fickle ... internals ... Yes. I wrote about this in some detail 2 years ago, Jitterdämmerung : http://blog.metaobject.com/2015/10/jitterdammerung.html

    Comment linking /2015/10/jitterdammerung.html

    on “Maybe you don't need Rust and WASM to speed up your JS”
  18. Submitted Jitterdämmerung as a story · 132 points

    HN discussion
  19. Yeah, Swift-most-everything is pretty slow, but particularly parsing/generating. Pre-Swift Foundation serialisation code was already...majestic, and in the Swift conversion they've typically managed to slow things down even further. Which didn't seem possible, but they managed. I have given a bunch of talks[1] on this topic, there's also a chapter in my iOS/macOS performance book[2], which I really recommend if you…

    Comment linking /2010/05/xml-performance-revisited.html

    on “Simdjson – Parsing Gigabytes of JSON per Second”
  20. Submitted Dependency Injection is a Virtue as a story · 119 points

    HN discussion
  21. So glad I am not the only one! What I found interesting was that the original developer(s) of react.js seems a lot more up-front about this: https://omny.fm/shows/future-of-coding/1-1-how-reactjs-was-c... Of course, the whole idea of, in-theory, re-creating the UI at every refresh cycle is not part of MVC, so that is new and interesting. Considering all the work that has to be done to undo that abstraction (as it do…

    Comment linking /2018/12/uis-are-not-pure-functions-of-model.html

    on “Fuchsia OS Introduction”
  22. Submitted Mkfile(8) is severely syscall limited on OS X as a story · 102 points

    HN discussion
  23. AOT native results in slower runtimes for applications with one simple exception: startup time. In every other case a modern JIT compiler like the JVM will win due to gathering information and layered compilation. That's not necessarily true. JIT compilation is severely constrained in the amount of analysis that it can do for the simple reason that JIT has to be fast . Fast enough to not noticeably slow down the app…

    Comment linking /2015/10/jitterdammerung.html

    on “The JVM is not that heavy”
  24. Submitted Making invisible glue code first-class as a story · 91 points

    HN discussion
  25. UI is not a pure function of state[0], "UI state" is relatively stable and does not have to be recreated constantly when data input changes. [0] https://blog.metaobject.com/2018/12/uis-are-not-pure-functio... >you want to be able to reevaluate your templates repeatedly with new state No you don't. It is inefficient and increases complexity. You then have to extract and keep track of state yourself where the platform…

    Comment linking /2018/12/uis-are-not-pure-functions-of-model.html

    on “VanillaJSX.com”
  26. Submitted Why I don't mock as a story · 90 points

    HN discussion
  27. A couple of corrections: 1) Mac OS X does not store a bitmap for every widget, that's iOS's architecture. It stores a bitmap for every window. Having a layer (GPU-stored bitmap) was only introduced once CoreAnimation was ported to OS X. It was and is optional. 2) OS X Views also have a -drawRect: method that works the same way. 3) In fact that's how MVC works. See http://blog.metaobject.com/2015/04/model-widget-cont…

    Comment linking /2015/04/reactnative-isn.html

    on “Flux is the new WndProc”
  28. Submitted Why Architecture Oriented Programming Matters (2019) as a story · 86 points

    HN discussion
  29. This "glue code" — ETL pipelines, integrations, and custom workflows — is the dark matter of the enterprise software universe. Hmmm...solving glue code, the "dark matter of [enterprise] software". Maybe I should apply? ;-) https://blog.metaobject.com/2021/06/glue-dark-matter-of-soft...

    Comment linking /2021/06/glue-dark-matter-of-software.html

    on “YC: Requests for Startups”
  30. Submitted Glue: The Dark Matter of Software as a story · 79 points

    HN discussion

Search all of HN for blog.metaobject.com

Linked by the same people?