Hacker News new | past | comments | ask | show | jobs | submit login

This is an armchair analysis but I feel like an ECS architecture here would really take this to the next level (flexibility and performance wise). But that is just my two cents.

Some examples: context dependent rendering, having multiple "types" at once, etc...




At http://story.ai the editor makes use of an ECS (Shipyard Crate in WASM). The flexibility it affords us has been super powerful particularly in support of constructs that are close to a programming language (values in and out of scope, suggestions and autocompletions, determining whether a "skill" is fully formed for publishing etc)

I haven't given extensive thought to where we diverge from Notion as the comment below mentions them moving away from it, but just wanted to say that your armchair analysis fits with our view.


Ah yes, thanks! This is definitely what I was curious about, I've never done game development and I wasn't aware of this architecture but I definitely ended up with a hybrid/better than naive ECS architecture. It's quite fast, that's why I wondering about notions struggles with performance issues, seems like it may be in part because they use inheritance of blocks and nodes instead of composition.


In a previous iteration of Notion used a kind of model kinda like ECS, where each block was represented by multiple records called "reference" and "composite", so a block could have different type depending on context. From an internal doc on history:

> We later decided this wasn't useful or necessary and collapsed them into one thing. WTF was I thinking??




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: