Hey there. It has been a week since @figmadesign's #Schema2021 conference, so as a public service, I thought I would rate all the talks on a scale from 1 to 10.
A+ thinking around dealing with contributions from your design team, having fun while working, and a demo of their amazing plugin (Moria) which they use for everything.
Rating: 10/10
Mastering the art of code - aligned UI kits by @HonzaTmn
So useful, and chock full of advice on how to set up your design system, as well as how to alert your team to breaking changes.
I learned so much! Tons of useful, directly actionable info.
Rating: 10/10
Reimagining Atlassian design system, from product to platform by @jenniesyip
Possibly the talk most densely packed with info nuggets.
Super interesting look at the evolution of Atlassian's design system. Great advice at both the tactical and conceptual levels!
* Build small parts that can work well together.
* Build large parts out of small parts.
This applies to design systems because they are getting so large and complex that maintaining them is like maintaining code.
2/n
By exposing nested instance props, you can now build a large component (like a dialog box) out of small components (like a button) and expose a UI to your end users that lets them configure everything properly.
3/n
...and it's pretty easy for the scales to tip over right now. Just existing in the world is pretty frustrating. So if work ends up being a little frustrating, you can can slip into burnout pretty quickly.
Burnout can feel like...
...I worked super hard on this and no one cared.
...or they just found stuff to criticize.
...or I just got more work dumped on me.
It can even feel like...
...I didn't even do anything last week and no one noticed.
I couldn't be more excited about a feature release than this one.
Combining branching with realtime multiplayer was a huge technical and UX challenge, and the team has been relentless in their pursuit of a seamless solution.
Why is this hard? On an engineering level, writing code for Figma can sometimes feel like a distributed computing problem.
Multiple networked clients are making changes to a single data representation which needs to eventually sync up.
2/n
Now throw into the mix the notion of multiple versions of that data representation, along with user expectations for how you can see the different versions, merge between them, etc.
It's hard to make this all feel seamless, and the team has done a great job!
3/n