Why Figma Wins
kwokchain.com
kwokchain.com
Engineer: So are we changing the nav icons as part of this story, too?
Designer: Oh, no, ignore that. I didn’t have our real icon set so I just grabbed some others
Engineer: This modal doesn’t look like our normal modal, are we supposed to be building a new one?
Designer: Oh, no, ignore that - I’m working on a design for a new modal and I just used that here
Engineer: Ok, do you know our current modal doesn’t support X, so this part of the interaction won’t work?
Designer: Oh, okay, I’ll go update the design I guess
Etc... sometimes makes me wish for the days of Balsamiq / sketch style designs where the idea was to not try to make it photorealistic.
Having said that I guess if you could get Figma completely in sync with your actual UI it’d be pretty nice.
EDIT: I will add that the clickable mockups seem really helpful for our Design team when they're doing user testing, which is happening before the designs get to us. But this is not unique to Figma, InVision can do it, too.
If you put enough work into the design system, and implemented it well for use in code, all you should NEED is a low fidelity shape telling you where to put existing components, and how to string them together. Everyone already knows what a modal looks like, behaves like, etc. they don't need it designed for them every time it comes up. That just wastes everyone's time.
Design is about how it works. That’s more important than how it looks. Low fidelity focuses designers on the app workflow, lets more of the team get involved in design, promotes UI component reuse, and avoids confusing managers about what’s actually finished.
I have no affiliation with them.
In a similar vein (also have zero affiliation) I discovered https://whimsical.com today, which also has a few other promising looking tools like flow diagrams, post-its etc.
App Cooker on iPad is really nice too, though no longer maintained. It exports the storyboard of all the UI screens connected by transition arrows.
It makes it really easy to first building a design system (like Bootstrap, Material Designs, Antd,etc). Which are a bunch of components, from basics like headers, list, to modal, message, cards, etc.
Then just place those components into the wireframe.
If anything need to update, it will be updated from the design system, then sync to the project
In theory, this means the designers are designing with components which are already represented in code, and as long as they update the library with any new or modified components, it should be straightforward: a change in the Figma library represents a change that needs to be reflected in Storybook.
But that's just the theory. In reality, designers often need to work quickly, and the idea of design debt is just as real as tech debt. Indeed, it's probably more of a problem, since there's no such thing as pull requests or automated regression testing for design, so it's harder to spot problems.
Figma already has a way to at least partially address this issue: they provide analytics that show you which of your components are getting detached, as well as a lot of other useful stuff. Unfortunately, the tier that allows this feature costs about 4x as much as the normal pay tier most people use.
I’ve recently started using it with my team and the impact has been positive. Component sandboxing seems to encourage developers to encapsulate CSS within web components. Sandboxing also seems to encourage thinking about web component APIs and designing them for reuse.
How well is Storybook.js catching on as an emerging standard in UI development?
When I joined about six months ago, the team was already using it, and keeping it up to date had become ingrained in the culture. I had nothing to do with it, so I can say it's been a good decision.
I have no idea if it's catching on in the wider world! Anecdotally, of the five places I interviewed at last year, two of them claimed to be using it.
Then you build a much nicer version (perhaps pixel perfect) and then have a lot of users play with it, and then your analytics funnels tell you where the bottlenecks are. So you make even more iterations until you make something that solves the problem in a delightful manner and users are going bonkers about it.
The TLDR is, there is no point getting pixel perfect in the first iteration. Good software requires tons of iterations and the entire pm-design-eng-user workflow should be optimized for faster iterations and learning.
A good design system + mockups get your that.
If it’s a rough wireframe it can be just that, rough.
If it’s a pixel perfect mockup then it’s a contract for final product IMO.
Of course whether there are that many sets of eyes on it depends how big a co you’re working for!
Maybe if the pixel perfect design is diff'd against the final product...
Their imagination is running wild that the mockup being used in the presentation to them means its an unknown time until its ready to ship..
They are imagining that is past whatever deadline they have in mind for it lol
If the modal in your case doesn't support a feature, it would be caught during the wireframing, before anyone has invested too heavily into any particular design.
Also, if the mockup resembled the actual UI but still differs ever so slightly, it's a sign of an inexperienced designer. Either they haven't properly made the actual functionality clear and the visuals are confusing (should it differ from the current features or not) OR the team is in need of a design system which would be used as a basis for all design visualisations and implementations.
Back when I was doing iOS development for a bit I had one designer forcing us to go through every single screen and manually override the default vertical font spacing and kerning settings away from the (company wide) framework we were using -- a change that was fairly trivial on Android but a pain on our iOS stack -- and this ended up taking hours that could have been spent on functionality. And made the app harder to maintain, on top of that. But this was really important to this person that the font spacing match their preference, and also be identical to Android's.
I miss simple wire frames. Some of the more productive projects I was on when doing front end work were done like this: product manager / designer gives a rough idea of layout and flow; developer works with them to throw together the simple flow as just raw HTML, really. Iterate, change, modify based on what does or doesn't work. Then the lipstick came later, once that's all nailed down. Less time wasted.
For my own sanity I've avoided front end work at all now, and have been doing systems level work instead.
Over the past five years or so, the landscape has changed considerably, and many designers have been forced to make a decision to either head down a more UX-oriented path or do something else entirely. The result of this is that we now have a lot of UX designers who never really wanted to do UX, but were forced to adapt and take on a new role due to a changing industry.
Also, look! Engineers are talking to designers.
That's a fair comment.
> Also, look! Engineers are talking to designers.
I think most good teams have had engineers talking to designers since well before Figma :)
I often ended up sitting next to one of the developers, working along-side with him, helping him on the technical issues (reading Stackoverflow and github issues on various repos for example) while he helped me with the designs by challenging and testing as we were wireframing ideas. Kinda like aöpair programming, but for designers and less siloed.
screens 1-25 had a certain nav bar
26-39 had the same nav bar, but everything a few pixels off with a slightly smaller font in off-white, vs white.
screens 40-70 alternated between the first to nav bars, and introduced pull down select boxes with multiple checkboxes in them. the multiple checkboxes represented - in some cases mutually exclusive combinations of things which contrasted with other nav options.
... and so on. Things had to look pixel-perfect - "look, it's a design agency, they put a lot of work in to thinking about how this is supposed to look and work". So.. you'd make the screens exactly the same ('just export all the CSS for each page', etc). But then, when using the app in development, if you went between various screens, and saw the discrepancies - font sizes changes in nav, for example - that caused more negative feedback - "this is broken!".
I tried to demonstrate the design screens were the problem themselves by just paginating between the invision slides - you could see the font sizes jump/change immediately. "now you're just being negative".
I didn't last very long on that project...
Personally, I'd rather just implement the wireframe (or something like it) and try to iron out the interaction wrinkles there where it's much easier to update the design and you don't have to worry about fonts and spacing nearly as much; once the interaction implementation is nailed down, then I think it's a better time to move on to the mockup. Hopefully we'll get an opportunity to try this at some point, but it was enough of a struggle to do a separate wireframe at all that I'm guessing it'll take awhile ;-)
An idea for Figma to mitigate this problem: make a browser extension that can export pages to figma documents. That would make it much easier to have up-to-date designs when doing web development.
Have a plugin which could turn the unfinished modal for example into a wireframe look & feel and then when you have the right icon, turn it off again.
I remember back in the days Expression Blend had some functionality to apply sketchy lines style (based on Bill Buxton's book - Sketching User Experiences).
Also, the prototyping functionality is still rather basic. Axure is much more powerful and ideal for the early sketching and testing phase.
But I'm sure Figma will have more sophisticated prototyping features in the future.
Last time I checked, Figma didn’t support interactive form elements or prototyping conditional branching based on what you type in a form field.
Being able to prototype business logic without having to get developers having to develop something, saves a lot time at early stages when you explore new features with business users and you can also iterate faster and it’s better for user testing as well, as it’s more than just clickable hotmapped images.
I know you could achieve the same with Framer, since you get access to the code, so that’s useful for designers who can code.
Axure is great for designers or product folks who can’t code.
Is the above possible in Figma now?
Setting 1 name [toggle]
Setting 2 name [toggle]
Setting 3 name [toggle]
You want to turn any toggle on and panel with subsettings should appear underneath clicked setting name, shifting down all other settings below. In Axure it is just a checkmark "push widgets below".
Axure is horrible for wireframing and a non-starter for visual design, but it has the most powerful prototyping features I've seen by a long shot. Framer is straight up writing React code, so I don't count that as an option for the vast majority of designers.
I got sucked into using Axure a few years ago and had a blast making interactive, data driven mockups that utilized custom JavaScript to build components.
It was awesome to get some key concepts across but then one day I realized I spent more time fighting the mockup software than if I had just coded it up.
Oops!
Anything that’s actually ready uses the primary/actual colors. It’s actually pretty great apart from 80% of the design being grey at any point in time.
Can you imagine that if designers before this wanted to move an element in a list, they would have to move every single one instead of having some drag and drop swap functionality? That if they wanted to dynamically change a button size for the text inside it, like we can do easily on the web, they simply couldn't?
Basically, Figma is turning design more into something like front-end development, doing things in a design program that engineers could do normally with code. This is because the developers of Figma are themselves coders rather than designers, so they know what real ease of use should look like (ironically). This is the fundamental corporate culture shift that is the difference between Figma and others like Sketch.
Of course, you could go all the way and simply turn the design software into a web/mobile development framework, which is what software like Framer [1] does, which is literally a design software built on React, and it can spit out React code for you once you're done designing.
Just like what happened to HTML and CSS.
Like most other web-SaaS tools, they aren't browser based because its better for the user. They sacrifice speed, native functionality, and usability for owning via server-side control over your wallet on a subscription plan.
The startup market in no-longer customer driven. It is investor thesis driven.
I can concede that SaaS can be, in many cases, be merely investor driven, but I cannot concede that Figma is one of those. Even being investor driven, such as having a subscription business plan, is not bad for the customer per se, as a sustainable business is better than a dead one. Software costs money to make, and more importantly, to upkeep and add features too. I am not sure how you can expect one time fees, especially for enterprise software like Figma is (personal plans are free), in this day and age.
We initially thought we'd need to provision the same number of licenses as we did for Sketch/InVision/Abstract. Turns out way more people started to get involved in the design process and we now have a more inclusive design practice. Content strategists, UX developers, researchers, can all participate early and often. (From a revenue perspective that's a pretty convenient thing for Figma, as each editor costs $45/mo — not only are they eating market shares from the existing pie, but they are also making that pie bigger)
This reads like a long-winded pitch to a Figma investor more than an honest review.
I’ve been wanting to try it out but this article was a little bit of a turn off because it is so enthusiastic. Every tool has strengths and weaknesses so an article like this makes me wonder, what are the trade offs?
I'm not a designer so I don't know how good it is and I only skimmed the article but the high level concepts in the article around managing design workflows make sense, e.g.
> Figma solved this problem. Designs in Figma are not just stored in the cloud; they are edited in the cloud, too. This means that Figma users are always working on the same design. With Dropbox, this isn’t true. The files may be stored in the cloud, but the editing happens locally—imagine the difference between sharing Word files in Dropbox vs. editing in Google Docs.
It sounds like Figma reduces friction in the collaboration process by clever use of cloud based and browser coordination. It's not innovative but it's a good application of existing technology to the design space.
Also, because I’m a programmer, I’ve lived through many tech hype cycles (with mostly open source and developer tools). So over time I’ve become sensitive to this kind of rhetoric. That’s why my initial reaction was skepticism.
Out of curiosity, what do you consider innovative?
I don't hold opinions on what the word should mean, just curious to find all the different meanings of it
Can anyone here lay out a few major differences that I might be missing?
https://help.figma.com/hc/en-us/articles/360038006274-Files-...
that is why it is so easy to migrate into figma from sketch, and impossible to migrate away from figma into anything else...
It better be fixed before they become big enough not to care.
from my point of view the only way to guarantee is to use software that provides open file formats and develops their features around those open formats. inkscape and sketch seem to be doing this
Multiple people can be working on the same thing at the same time and anyone can view the in progress work. This changes the traditional file based workflow where designers pass a file back and forth if they want to keep the work together - often working in a separate file then "merging" the work into a master file one at a time.
Because all the files are online it's possible to see who is working on what including at the very moment. Its really easy for me to get a sense of what other designers are working on and whats been updated recently.
A huge bonus beyond designer collaboration is the way Figma breaks the previous separation of working file and final export. Non-designers can check in on an in-progress file at any time without needing a designer to export some static version of it. This allows designers to work on related things in the same file but each "thing" can be in at various stages of completion without having a negative impact on delivering final work. This is also great for transparency.
I recently came across a Windows-only app called Lunacy which offers Sketch file import and editing for Windows users (I haven't tried the app).
The published Sketch file specification [1] is what allows Figma and Adobe XD (and Lunacy) to import Sketch files. Ironically, neither Figma or Adobe XD publish their file formats.
I think where Figma is pulling ahead of Sketch (in terms of usage behaviour) is that it is being used by more than just designers. In fact, Figma is beginning to encroach (possibly unintentionally) on digital whiteboard tools like Miro and Mural.
Can you imagine that if designers before this wanted to move an element in a list, they would have to move every single one instead of having some drag and drop swap functionality? That if they wanted to dynamically change a button size for the text inside it, like we can do easily on the web, they simply couldn't?
Basically, Figma is turning design more into something like front-end development, doing things in a design program that engineers could do normally with code. This is because the developers of Figma are themselves coders rather than designers, so they know what real ease of use should look like (ironically). This is the fundamental corporate culture shift that is the difference between Figma and others like Sketch.
Of course, you could go all the way and simply turn the design software into a web/mobile development framework, which is what software like Framer [1] does, which is literally a design software built on React, and it can spit out React code for you once you're done designing.
It is really easy to get up to speed to a workable draft sketch so I suggest you just try it out and see.
The fact that a startup took so much time to build things with intention, the fact that they tried multiple, months-long paths before settling on a solution, and the technical details of their solution were so well thought out - I was incredibly impressed.
My point is you probably could have given the exact same business plan to 99 other companies, but without the engineering talent, and importantly the engineering culture, they would not have been nearly as successful.
Kudos to the whole Figma team, I'm envious of what you've built.
To me, is main advantage of Sketch was how many tiny things they got right (before Sketch, I was using Fireworks), and this combined volume of tiny improvements resulted a huge advancement of user experience.
Figma, on the other hand, innovated just one thing: made design online and collaborative. All other tiny niceties are mostly copied. So I prefer to support the guys who crack their heads and innovate.
I also think that Sketch team knows about their main disadvantage, so a web editor for it looks to be in the works.
Software solutions will never fix problems that are caused by people.
Sketch, Figma, whatever the next design tool is. Google Docs, Quip, Notion. Trello, Pivotal Tracker, GitHub/ZenHub, Jira. I've gone through tool-switching fatigue with all of the above. Sometimes it doesn't matter much, other times it bogs us down with metawork for months as you figure out which features you gained, and more importantly, lost.
Back to design. I have seen design die the same way every time. Product misuses design resources, effectively making them contractors that hammer out one-off pieces of work. Those pieces of work get nitpicked by some vocal minority holding a lot of clout, until the end result violates the framework that the designer created.
This frustrates everyone over time.
Designers are frustrated because the systems they built are ignored.
Engineers are frustrated because they are adding new debt with every designed feature that has to rebuild parts of the world to make exceptions to systems work.
Product is frustrated because they just don't get why things are slow after they delivered a clear design to the engineers.
Let it all build up and people will start leaving your company.
So yes, use Figma if it suites your company well. If you're reaching for it because your team is frustrated, maybe consider digging into that more before you swap out yet another piece of software for all the wrong reasons.
Designer here. My experience has been that Figma has done the opposite. It's created a lot of consistency with shared component libraries and standardized type / color styles. Also, the fact that engineers can jump into Figma and inspect CSS has been immensely helpful.
In the design world, Figma is like the equivalent of getting a robust IDE with syntax highlighting, code completion, compilation, and debugging. It's replaced multiple tools and connected people in a way that's never been possible.
That said, I never felt implementing a design once is the hard part, but keeping them maintained and in sync. What are things that worked for you in that regard? E.g. as an engineer, how do I quicky figure out what I need to adapt when a design has changed? I quickly looked at Figma, and while there is a version history, it just seems to switch completly between versions without anymore detail. So I'm bound to miss changes and completly am reliant on the designer annotating manually.
Furthermore, I can also, when I'm building out the first-form HTML implementation of the mock, right-click and copy-as-svg the whole component, which makes for a nice stand in while I work on the rest of the code. It is great.
In reality Design doesn't use components and most pages end up being composed of a bunch of one-off components and we waste a ton of time.
As a side effect of this, the app design isn't consistent across pages because we aren't sharing components.
I recognize that my view of this is from the bottom up in terms of only really having worked for SV startups, but I want to learn more and see if I can't make it work a bit differently this time.
I've been in the design industry for 15 years now. When I was starting out, there was a flurry of philosophizing about design. There was a belief that designers should focus on solving problems instead of just making slick UIs. I don't see that discussion anymore. I see a bunch of "wrists" arguing over which pencil is best.
Maybe I'm just an aging curmudgeon...
I've seen people who knows about the theory and have creative idea, but the end result they made is just...lacking?, because they focus just about the strategy part and kinda look down on the importance of good execution. They may know that it is not good, not what they envisioned, but they don't know how to make it better because they don't know how the production process works, and usually have to accept what the vendor gives you.
But well yeah, there are certainly people that just want to be a wrist and not thinking too much about anything.
"This feature's a 3 if we just do it with native elements or and/or existing UI guidelines, but it's another 5 story on top of that if you really need this ugly crap you're insisting on that'll bloat our bundle by a ton, likely be fragile in a variety of ways, and, realistically, probably have some a11y and cross-platform issues even with a "5" of effort put in."
Suddenly they don't really need it that much, and if they do, well, they have only themselves to blame when "not much" gets done this sprint. Congrats, you just saved them money and (probably) improved the UX and maintainability of the project. Every now and then they'll really insist, which is fine, but if you've got someone who's picking their (let's face it, usually terrible) glittery UI ideas over features & bugfixes more than very occasionally then the project's probably doomed, so at least that becomes clear really fast and you've got numbers to point to if shit gets toxic and the blame-game starts (you did document it, right?)
This is where I believe these products are focused on, essentially agencies try to get sign-off from clients before they begin work, and the better they can show what the final product (and processes) will be like, the better.
Edit: Yes the Waterfall sucks, especially if you're at the bottom.
Agreed that it makes sense for contractual work like this, where you just get sign-off, do the work, maybe iterate a little at the end, and then move on to something completely different. In fact, I would say it's the right tool for the job here, despite how much of a charged term "waterfall" has become.
It can easily fall apart when a single company does this enough though, because it usually comes with the lie that it delivers reusable work. You're not, and it manifests itself through your slow, confusingly inconsistent product. Maybe your customers don't care, but nobody will be proud of their work, and you'll start to gain the reputation of "it's buggy and confusing but it works"
My observation with SV startup organizations is that it is very difficult to get that buy-in from product on something like this. These product teams are groups of people trained to believe that "if we deliver X we get $Y", which prioritizes building as many of X in as little time as possible. And I completely agree on that merit, a company SHOULD strive deliver as many revenue generating changes as possible, that's how you avoid death.
If, as an engineer, you challenge that with a push to make better reusable systems and actually stick to them, you will always be met by opposition. "What's the ROI?" they will ask. It's hard to give one because it's not really quantitative, but everyone in the room (generally, product included) KNOWS it's the right move. What do you do?
Stop wasting time with high fidelity mocks. Engineers shouldn't need a picture perfect rendering of what product wants in order to implement it. The end result almost never ends up being an exact replication anyway for "reasons".
Start doing both of these in parallel: 1. Free up design to build systems that can be used to solve problems. Have them work closely with engineering to ensure the vision will carry ALL the way through to implementation 2. Lean very heavily on low fidelity mocks to hash out the SHAPE of changes to product (inspired by Basecamp https://basecamp.com/shapeup/1.1-chapter-02)
To use object oriented programming as an example, a design system is used in the concrete implementation of the abstract shape of the product requirement. When something doesn't fit into an existing abstraction, you refactor instead of fork.
Designers don’t know the software architectural constraints and what is easy to code up and what is not. Engineers do. PMs know what trade offs they want to make in fidelity for the product, but designers and engineers don’t. What you often end up with is designers spending a lot of time creating designs they think solve the problem, but miss out on a lot of edge cases. They and PM discuss the product design and hand it over to engineers as if their work is done. When the engineer goes to implement it, they find all those edge cases that were missed and the designer has to go and redo a bunch of stuff while engineering is blocked on some of those decisions and PM is concerned why it’s so hard to implement as is.
As a result the designers have a backlog of small busy work changes instead of focusing on the key design questions. No one else has licenses to make updates or knows how to use the tool.
The product team has started using Whimsical which is easier to use and is more reasonably priced for people who only use it occasionally or need to quickly illustrate low fidelity concepts. Now we have two design tools to essentially get around UX and pricing problems.
I completely agree.
I don't see the Figma files as an output that designers produce. I see it as a product on its own that people should be able to collaborate on.
I'm not going to stop a designer from sending me pull requests. In fact, for small mundane updates I'd LOVE it, since it would take this burden away from me. In fact, our inhouse designers all have GitHub accounts, so in theory they are able to.
But when I want to tweak a little thing in a Figma file, like adjust naming of the symbols, clean up icons, add more diverse examples of the content to document edge cases, or to have grounds for my next discussion with a designer or engineer, I'm not allowed to. Also quite often the thing that I want to do is not necessarily meant for designers, but for my fellow developers. Things like technical notes for implementation.
Licensing models that don’t scale can cause tremendous problems. Early on, design can become a bottleneck. Later, simple changes might be rejected because the cost of redesign is too high. In the worst cases, developers will work ahead of design to meet deadlines (since not every team can afford an expert in the design tool) and the resulting variances will be challenging to reconcile/resolve.
Expensive, high learning curve tools can introduce silos and bottlenecks into an organization.
All that being said, I think wanting one tool to serve not just designers but also product teams is probably too high of an expectation. We don't blame developer tooling if designers have a hard time making small updates to demonstrate design concepts. They're different domains, so different tooling is expected.
I'm not dissing Figma, I'm disagreeing with the article about what makes it great.
Figma is very bad for illustration, but as the industry has killed off any semblance of art or technique this doesn’t matter. What does matter is producing something clickable and animated.
So Figma wins because it’s designed to solve the problem designers have now. Not 10 years ago like Sketch.
As much as Figma is in vogue right now, I would rather put money on Notion in the long term. Internal documentation has much higher switching costs than design tools. Notion already has excellent support for Management/Teamwork. They could easily roll out support for prototyping Mobile/Web apps and start eating into Figma's market share.
This is great for quick, informal design work, like prototyping with participants who aren't specialists.
It's a double-edged sword, though. There are good reasons that professional creative workflows often include revision control and sign-off processes attached to distributing specific revisions outside of the internal team.
The standard trend in enterprise software is towards oligopoly, with a few strong incumbents that struggle to actually kill one another as their products converge over time. Most enterprise businesses focus primarily on sales/marketing as they grow, rather than doubling down on a product that can kill incumbents. The fact that Figma has done both is really impressive and as an enterprise product head definitely something that I admire.
- https://github.com/treeform/fidget
- https://www.youtube.com/watch?v=IB8Yt2dqZbo&list=PLxLdEZg8DR...
Since I've been on furlough for the last 3 months and working on a new app for myself I jumped back over to Sketch (since I have a licence and have invested in some plugins) and I have to say I do not like it anywhere near as much as Figma, at this point I've only stuck with Sketch because of the extras I have purchased for it, once I feel got my money's worth from them I'll be over to Figma for everything.
I remember emailing colleagues, googling for "online vector editor" etc.
To be honest I'm not sure it has sunk in even now. I just haven't needed it for a while.
Oh, you didn't mean the poseable japanese action figures[0] made by the Good Smile Company ?
Is there any feature to export the designs into some code friendly format? I didn't see one. I only saw export to image.
Maybe that's a good thing? I certainly don't want to bog designers down into the minutia of implementation ... maybe? But it seemed like such a waste to put all the constraints into Figma and then have to manually figure out where they all are and enter them into your UI framework of choice.
I saw the code inspection feature where you can copy and paste values one at a time.
I guess I'm used to automating this stuff as much as possible. The more automation, the more the designer can tweak things to their heart's content in the actual product. Of course I've mostly done games but some games have very complex UIs and if I didn't automate then every day would be the designers asking "move that 3 pixels right", "make that 4 pixels taller", "change the color to #fe83C7" etc...
Note: I get a figma document is full of stuff not intended to make it into the final product. I've always handled that with labeling, naming conventions, etc and I've always setup some flow where the designer can press a button and see their results live in the dev product in a reasonably short amount of time so they can iterate.
Is that something common in app dev?
They keep improving it with the backing of Adobe (army of devs) and the expertise of creative cloud, along with their community design plugins and remote collab features they just added to the platform. I'm able to quickly mock up designs with ease.
Sketch felt nimble and lightweight compared to Adobe's apps to a lot of designers. And it reflected modern designer workflows. The chance to break out of Adobe's embrace probably appealed to many designers too. Adobe realised they had no app to address the 'experience design' process. The result was a new app: Adobe XD.
But XD came late to the game while Sketch's popularity and influence grew. The XD UI has clearly been influenced by Sketch.
The sheer size of Adobe means that XD is being used (it comes as part of Creative Cloud, but it's also free for anyone to use to encourage takeup). But XD doesn't have 'mindshare' among many designers compared to Sketch or Figma.
There is something similar playing out on the iPad. You would think that Adobe would own the digital painting space here. But they don't (at least, not yet) - it's Procreate that illustrators are flocking to use, not Adobe's Fresco which is playing catch-up.
https://books.google.com/books?id=390ISyA-CUEC&pg=PA49&lpg=P...
It all may be down to being relatively reliable (not that common among design & prototyping tools) and keeping the right balance between adding some slightly advanced prototyping features and still keeping it overall rather simple. Obviously I don't know the truth. Just saying it might be just that, and people are happy with it despite being browser based and without anybody really needing collaborative designing..
I've been watching it though, because I'm curious to see if they'll ever switch away from Electron for their desktop app. As far as I can tell, it doesn't need much from the browser other than a canvas. A lightweight standalone webassembly+canvas runtime would probably be enough to run it with some tweaks and could net significant performance/efficiency improvements (especially if said runtime leveraged Vulkan, Metal, etc). If they do that, it'll grab my attention and may kick off a new way to build cross-platform high-performance desktop apps.
Right now, Sketch seems to be the prevailing product in the overall design community. But in my opinion it's only because it was the first to really get such a strong hold on its niche, and a new product will take its place at the top soon.
What turns me off to it as a person who missed its initial spread is that the vanilla Sketch experience leaves a lot to be desired. It's cool that it supports plugins to extend its functionality, but I don't like how it's expected that you just have to get a bunch of plugins to reach parity with the vanilla features of its competitors. (The Mac only support is also a negative too, but it's not that big of a deal for me.)
It also helps that it's pretty easy on resources — when I first picked it up, my daily driver was a Core 2 Duo MacBook with 4GB of RAM, so back then efficiency was very important. These days I have access to much more powerful machines, but it's still nice that it can sit in the background with large projects open without impacting a browser with dozens of open tabs and mammoth apps like Xcode and Android studio.
So for now, there's just not enough to gain from investing time and effort into moving over to Figma.
hopefully, I would assume there will be additional documentation that refers to a certain version that is approved
---
> That leaves versioning on designers side
how was versioning the designs prior to Figma? whose responsibility was it?
Needless to say, it was a game changer as it increased my productivity as I had a clear goal in mind. I'm never going to delve straight into code w/o a clear design henceforth.
Not all designers like this, but I love how figma makes work available across design teams, and how components becomes easily usable. I discovered my colleagues work by accident all the time.
Now, all this creates other problems, obviously: now designers also need to maintain interdependent assets just like software dependencies.
I used Invision before and loved it (as a developer) for collaborating on creating mockups and putting them into reality.
Now working with a team that uses Figma and helping them create prototypes is...painful. It seems great for creating the design itself but prototyping has been way harder with it than in Invision. I'm wondering if maybe we're just unfamiliar with the right way to use that part of the tool.
Figma is a bit like Sketch+InVision combined. With the InVision part actually better than InVision.
There is also InVision Studio, which was their attempt on full-fledged prototyping tool, but it's largely abandoned now, always suffered with huge reliability and perfomance issues and never became truly usable tool. It's a pity, it looked very promising.
I'm disappointed in the lack of ability to easily control vectors using the alt key that all the other programs have
plugins are rather lacking, wish they had more plugins in their library.
design to code would routinely lop off things like gradients
lacking in feature parity with figma, sketch <- strong point
Animation features are def a strong point but these and a few other gripes are why I use Figma.
If you're a freelancer I'd rather use native apps that have a perpetual license, like the Affinity apps.
If you're part of a bigger team and need collaboration features or easier hand off to engineering teams then yes I think Figma is great.
However, their enterprise licence is $45/month ($540 annually)! That is ludicrous for the functionality that the app provides.
In comparison Microsoft or Adobe software (Photoshop is $250/annum) has immense amount of technology & man month behind - Photoshop has been in development since 1990, and Microsoft Office must be in development for similar amount of period and have perhaps 5K+ employees (wild guess).
I ended up quitting Slack and asking the designer if she could show us the Figma stuff over screenshare on Zoom instead. Obviously multi-tasking is too much to expect these days.
And IMHO the price delta between sketch and figma is basically a rounding error on the wage cost of your designers, so it’s barely even worth thinking about.
I totally agree and have been moving my spec work from Notion to Figma too!
Building enterprise apps means dealing with a lot of forms and grids and making these fully interactive is easier in Axure.
What is the experience for visually-impaired users that need high contrast UIs or braille terminals?