> If the thing you’re trying to build doesn’t fit with our framework, you probably have a design flaw!<p>Yes and no. Whenever we move to a higher level of abstraction, we (almost?) always lose control. Even in C, there are some behaviors that require coding in assembly to squeeze out every last bit of performance, or using `unsafe` in various languages to break out of a managed environment. In both of these cases, they are code smells. Is it possible you have a valid reason for writing assembly by hand? Absolutely. But you better have a good reason for doing so, because it sacrifices readability.<p>The same applies to these “drag-and-drop” feature builders. The key is adding in hooks to create custom behavior easily. For Deja Vu, this is by creating your own concepts.<p>I think the biggest issue here is the target audience. We haven’t found a large enough group of people that enjoys working at this level of abstraction to help grow the community. Anecdotally, developers I know tend stick to their level of abstraction. C devs hate JS and vice-versa, arguing over control vs simplicity.