← Back to context

Comment by robertlagrant

2 years ago

> 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.

    • Yup, which is where I suspect most of the "visual UI builders are not the right tools to express dynamic constraints" objections come from: people are over-constraining the problem space with irrelevant nonsense. Half of the problems stem from abandoning OS standard controls, many of the rest are managing complexity of a large and complex UI codebase that didn't need to exist in the first place.

      It's not like most webapp UIs are particularly well-aligned or consistent anyway, nor they are easy to visually overhaul on marketing teams' whim - so, what's the point? Why use tools that make important and impactful things between difficult and impossible?

      (A possibly legitimate argument against RAD tools is that they encourage mixing business logic with UI code (static and dynamic). I used to be receptive to that, but I long come into conclusion that "separation of content and presentation" is bullshit both conceptually and in practice. And guess what, with React & all, we're all back to mixing UI and business logic - or adding extra layers of complexity to pretend we're not.)

      1 reply →

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.