← Back to context

Comment by jillesvangurp

2 years ago

Basically this is what Figma could be if you could add behavior to the UI. Somehow the web has been running backwards for years now. We lost flash in favor of HTML 5, which sort of fizzled out in terms of creative people actually doing a lot with it. We used to have simple application builders in IDEs like Visual Basic, Delphi, Borland JBuilder. Even Eclipse had a simple swing UI builder thing for a while. For the web we had dream weaver, frontpage, etc.

I'm not saying those tools were perfect; because they weren't. But we never really got good substitutes for them. We now have people "designing" stuff in Figma and then handing over for implementation to some developer team that essentially then recreates the whole thing pretty much from scratch. There's something deeply stupid/wasteful about needing to do that.

> We now have people "designing" stuff in Figma and then handing over for implementation to some developer team that essentially then recreates the whole thing pretty much from scratch. There's something deeply stupid/wasteful about needing to do that.

I'm not sure how wasteful it is really. There is some overlap, but not loads in my experience. Most of the time spent on frontend is the stuff behind the components: behaviour; device interaction; security; API calls.

  • I've had a weirdly large fraction of my career spent on making UI rather than business logic.

    That said, the business logic in apps is, half the time, a needlessly complex shim on what is ultimately "here's a REST API you can do in one or two lines via `Codable` etc. except we're anticipating needing to support several API providers… oh no the money ran out".

    • > I've had a weirdly large fraction of my career spent on making UI rather than business logic.

      Same here. None of my employers could go more than 2 years or so, before the head of UX would declare "Our app is no longer 'fresh' enough, and our competitors are adding 'pop' and 'zing' to their apps! We must stop what we are doing and totally redesign our app, create custom controls, and flex our brand onto the user!" Too much of my career has been turning a designer's Photoshop graphic pixel-for-pixel into an application, without regard to the OS's standard controls or conventions.

      2 replies →

  • There is quite some overlap, but the CSS generated by Figma is not really useful and of a grade I’d want in my application. On the other hand, there is a gradient where building in all the behaviour you could want in a designer application, makes the application so complex that it become unusable for designers.

I don't think visual UI builders were ever the way forward. These work well for static UIs, but once you try to express dynamic constraints, they fall apart.

Figma shows this: I find it useful to absolutely position elements (and maybe work with symbols) for a quick prototype, but once I bring in autolayout, I end up dealing with exactly the same issues as with CSS-flexbox and grids - except in a vastly inferior system, where I don't have version control, refactoring tools and chatGPT. Also, subjectively, I find it much easier to work directly with XML-structure, than to double-click (or cmd-click) through 15 groups in order to select a specific component, and then modify its properties in a textual form.

I'm guessing that's why Apple and Android deprecated their interface builders in favor of DSLs.