What would you say is the unique selling proposition of Subform?


#1

The question came to mind today when Anima App released Auto-Layout, which is flexbox-like layouting for sketch:

This functionality was your main pitch in the Subform kickstarter video and in the follow-up medium article about pushing pixels.

 

Sketch now offers all what was promising about subform: there are overrides and datasets, flexbox layout, full atomic design possibility and clever techniques. Even states is covered, although they are not collected in one entity.

The Figma team works really hard and fast to keep up with sketch, their tool is really solid and usable.

Webflow is slower in keeping up but has released global swatches, a feature that was heavily requested via their new wishlist site. Also they still are the only design tool that offers creation in the medium of the final product. I'm excluding tools like wix, froont and pinegrow since they are not as advanced.

 

As I see it, the only thing that can be done better with drawing tools is better UX inside the tools for the designers. Maybe I'm wrong and adobe cracks hassle-free, direct export-to-production-code tomorrow, but I wouldn't bet on them.

A completely different approach are 'declarative design tools', as Jon Gold calls them. This article covers his thinking. A combination of drawing tool and rule-based declarative options is where I believe the near future of design tools is. Whoever comes out with the most usable solution first will be ahead. I'm sure you've read Viljami Salminen's article about tools and processes, a great read.

 

But back to my initial question: Where in this landscape do you plan to place subform? What makes it unique?


#2

Hey David!

It's a great question, thanks for bringing it up.

We're definitely (finally!) seeing some advancement in tooling for digital product design. A competitive marketplace means that there's a need for a solution, so that's good news.

There's a lot of talk about there being "one true tool" that does it all in UI/UX, but I don't personally think things will shake out that way. In nearly every other creative software vertical (CAD, 3D, compositing, etc) there are multiple successful tools in the market. Everyone's workflow is unique and different tools excel at and emphasize different things. Even in UI right now, only 34% of designers are using Sketch.

So, the short answer is that I think it's a big tent and there's lots of room for everybody. XD, Webflow, Figma, Sketch, etc... are all addressing this space differently.

More tactically, as you mentioned in your previous post about Anima's other Sketch plug-in, these sorts of bolt-on layout plugins are great in theory, but fall down quickly in daily use.

Building a user-friendly, but still visually expressive layout engine is a tough challenge. And it requires some breaking changes from the old, print-based semantic models that tools like Sketch use. (Sketch was initially just built as a lightweight vector drawing program.) Kevin and I have worked really hard on this problem and I'm super excited about where we've ended up. (It's mostly a testament to Kevin's genius)

And I think you can extrapolate this out to things beyond just layout. Execution matters. The plugins and fancy techniques for accomplishing a lot of these things (components, datasets, etc) in Sketch don't work well for me personally. They're always half-baked and don't really address the complexity inherent in creating, specifying, and building UIs. We've talked to (literally) thousands of designers and teams and heard a lot of similar feedback.

That said, I think plugins like Anima's or workarounds like weirdly nested symbols to approximate states will work well for a lot of designers—and that's great.

We're impatient to get the next release out and we're working really hard on it. Webflow's been around for 4 years and raised $3 million in venture capital, Figma's been working on their product for 3.5 years and has raised $18 million.

We're just two guys with a little bit of cash from our gracious Kickstarter backers. :slight_smile:


#3

I think it's worth saying that a lot of things are wrong with Sketch. It's override handling is buggy, and things like cut and paste can often remove a whole series of overrides. Performance with massive files is sluggish, and jerky. And relying on plugins like Stacks, Craft, etc. is a bad idea. I use Craft occasionally to insert data into Sketch, but the main thing I was excited about, syncing of our pattern library, failed miserably, and it's data insertion (the one thing I use somewhat often) fails frequently as well. Having worked in design since the mid-90s I've learned time and time again that relying on a plugin will eventually screw you up, and require rebuilding of some asset.

I feel a lot of designers using Sketch are building simple patterns that correspond to a mobile app that is less than a couple dozen screens. I design for enterprise desktop, mobile, and web applications where the amount of patterns, and views far surpass those of a simple mobile application or website design. This is what I'm looking at Subform to handle, and I'm still waiting on a more modern UI to form itself alongside of it's more modern approach to dealing with patterns. Subform was marketed (to me) as a tool to build, and work on your pattern library. You can build interfaces with it, but it's purpose is to make constructing, and working with your pattern library easier. Things like searching for a component via a command line interface, and utilizing variables were what drew me in.


#4

I think it's worth saying that a lot of things are wrong with Sketch. It's override handling is buggy, and things like cut and paste can often remove a whole series of overrides.

Components and overrides are a tough challenge, both technically and from a UX standpoint. Agree that Sketch's behavior leaves a lot to be desired—and their handling of symbols is not particularly sophisticated. (You can't edit them inline, you can't override individual styles without nested symbols and other hacks, etc.)

If I was going to hazard a guess, a lot of Sketch's bugginess comes from the fact they just bolted on this functionality incrementally, without thinking through the model.

We've tried to tackle the complexity with open eyes—Kevin's spent a lot time on the semantic model in Subform. I think it will pay off in terms of reliability and consistency. That said, this stuff is hard and we won't be 100% perfect out of the gate, either.

And relying on plugins like Stacks, Craft, etc. is a bad idea.

This is something that Kevin and I have also talked a lot about. I understand why plugins are popular in Sketch, but I think a lot of designers are starting to realize the trade-offs. When Sketch changes their file format and semantics, plugins break. There's no standard of quality among plugin developers, so they're often buggy. There's no promise that the developers will continue to update them. And if you pass a file that uses a Sketch plugin to someone that doesn't have it, you can end up with a mess.

In general, we'd rather deliver the functionality that designers want as a part of the core app, rather than outsourcing it to a bunch of developers working on plugins in their spare time.

I design for enterprise desktop, mobile, and web applications where the amount of patterns, and views far surpass those of a simple mobile application or website design...

This is exactly the use case we want to optimize Subform for. Thanks for writing this up, Brian, it's well said and very much in line with our own thoughts.