multiplayer-editing

4 posts

figma

Raising the (table) stakes on tables in FigJam | Figma Blog (opens in new tab)

FigJam introduced native tables to make roadmapping, planning, and organizing information clearer and easier to edit collaboratively. The team deliberately focused on visual presentation rather than complex data manipulation, prioritizing simplicity for both table creators and viewers. Building the feature required extensive work on multiplayer conflict resolution, responsive editing controls, and visual clarity at different zoom levels. ## Why FigJam Needed Tables - Internal teams were already creating tables with stickies and shapes for: - Feature requirements and prioritization - Project tracking - Product marketing messaging - Design critique feedback - Brainstorming and vote counting - Native tables improve performance and reduce the effort of assembling makeshift grids. - The core requirements were to make tables: - Clear - Easy to create - Editable by everyone - FigJam intentionally avoided becoming a complex spreadsheet or data-manipulation tool. ## Designing for Creators and Users - The team treated table creation and table editing as equally important experiences. - A single toolbar click creates a pre-styled table, similar to other FigJam elements. - Users can choose from a limited style palette, while the entire table remains visually consistent. - Adding rows or columns derives styling from the neighboring row or column. - Changing a table’s color automatically adjusts its text for readability. - Programmatically drawn borders help separate cells without creating excessive visual noise. ## Multiplayer Editing Challenges - Tables may contain many cells edited simultaneously by users at different zoom levels. - Unlike ordinary elements, simultaneous table edits cannot simply use “last update wins” behavior. - Changes often need to be merged so multiple users’ contributions are preserved. - Multiplayer support consumed at least half of the engineering effort. - The team spent months addressing concurrency bugs and edge cases, including collaborative typing in the same cell. - Testing included simulated second users, such as a script that repeatedly typed “FigJam.” ## Interaction Design for Collaborative Tables - Standard FigJam selection-based editing became visually overwhelming when multiple people edited different cells. - The team changed table behavior in two important ways: - Editing controls appear on hover and follow the user’s cursor. - A prominent button lets users add a complete row or column. - Table functionality adapts to zoom level: - At distant zoom levels, users can move and arrange the table. - At closer zoom levels, they can resize it and add rows or columns. - This approach keeps the interface uncluttered while exposing more controls when they are useful. The resulting feature keeps tables intentionally simple and presentation-focused while making them native to FigJam’s collaborative, visual environment. For teams that need lightweight planning, tracking, or structured brainstorming, native tables are preferable to building grids manually from shapes or sticky notes.

figma

Introducing branching: space to iterate and explore freely | Figma Blog (opens in new tab)

Figma introduced branching in beta to help large design teams experiment without risking changes to shared files. The feature combines the freedom of isolated exploration with Figma’s multiplayer collaboration, while keeping the main file as the approved source of truth. Branches are auto-saved and can later be merged into the main file by editors. ## The challenge of decentralized design systems - Design systems were spread across teams and tools, creating inconsistencies and forcing designers to switch contexts. - Centralized systems improved reuse and efficiency but introduced governance challenges. - In large systems such as Netflix’s Hawkins, many contributors may update files, even when the latest changes are not approved for production. - Teams needed a way to protect shared libraries while still allowing designers to explore new ideas. ## Branching built around simplicity - Figma considered traditional workflows involving commits and nested branches too complex. - The product adopted two principles: simplicity and consistency. - Branches work within Figma’s existing multiplayer model, retaining real-time collaboration. - Work is automatically saved, eliminating the need for explicit commits. - Designers can create a branch from any file, experiment safely, and merge approved updates into the main file. ## Future plans and availability - Figma planned to expand branching with features such as reviews. - The company was also exploring a unified approach to versioning across branching and multiplayer workflows. - The beta initially launched for Organization-plan customers, with access granted gradually. Branching is intended to let organizations centralize their design systems without limiting experimentation. Teams managing shared libraries should use branches for exploratory work and merge only reviewed, approved changes into the main file.

figma

Meet us in the browser | Figma Blog (opens in new tab)

Figma’s five-year journey demonstrates how browser-based software can transform design from a siloed, offline activity into an open, collaborative practice. Although this shift initially threatened designers’ sense of control and identity, the browser’s multiplayer, accessible nature encourages shared ownership and transparency. Field argues that this ethos should extend beyond design to all software and society. ## The Browser as a Radical Bet - Figma launched by betting on the browser rather than traditional desktop software. - The founders were drawn to browser-native values: - Collaboration - Transparency - Accessibility - Figma offered practical benefits such as cross-platform support, multiplayer editing, and a single source of truth for files. ## Why the Change Felt Threatening - Moving design from an offline, single-player experience into a shared browser environment challenged established workflows. - Designers worried that transparency could lead to: - Over-demystification of the creative process - Increased micromanagement - Tighter deadlines - Loss of control over their work - Broader access also raised an identity question: if anyone can design, what does it mean to be a professional designer? ## From “My Ideas” to “Our Ideas” - Collaborative digital spaces encourage teams to treat work as shared rather than individually owned. - This requires trust, transparency, and a willingness to let others modify or remix personal creative work. - Figma’s multiplayer environment makes collaboration part of the process, especially when people might otherwise hide unfinished or blocked work. ## Digital Spaces and Broader Access - The browser represents a larger transition from physical spaces to digital ones, accelerated by COVID-19. - Unlike physical spaces, digital spaces can be open by default and less hierarchical. - Browser-based tools reduce dependence on expensive hardware, specialized software, and restrictive titles or credentials. - Figma aims to make design accessible throughout the entire process, from ideation through production. ## A Broader Software Philosophy - Field sees the browser as more than a productivity improvement; it is a medium for cultural change. - Software makers have a responsibility to make platforms usable by more people, not fewer. - The ideal is to create environments where people can work together, embrace creative messiness, learn from failure, and leave ego aside. The article recommends building software around openness, accessibility, and collaboration. Figma’s experience suggests that browser-native tools can help replace siloed expertise with shared participation.

figma

Reflecting on Figma’s First Year | Figma Blog (opens in new tab)

Figma’s first year focused on proving that a browser-based design tool could deliver both powerful graphics performance and trustworthy collaboration. The company moved from being dismissed as a “toy” to becoming a serious platform through rapid feature releases, performance improvements, and better support for existing Sketch workflows. Its central insight was that multiplayer editing creates not only collaboration, but also a shared source of truth for entire product teams. ## Building a Browser-Based Design Platform - Figma faced major technical challenges in rendering complex graphics smoothly in a browser. - It also had to persuade designers that a web-based tool could be reliable enough for professional work. - The team spent its first year speaking with designers, engineers, and product managers to understand the needs of growing organizations. - Figma invested heavily in: - Faster file loading and rendering - Workflow improvements and polish - Continued refinement of Sketch import - Because releases came so quickly, the company collected its major updates in one anniversary retrospective. ## Collaborative Design and Multiplayer Editing - Public multiplayer editing launched on September 28, 2016, making Figma the first design tool to offer simultaneous editing. - Designers initially reacted both enthusiastically and skeptically to the idea of “pair design.” - After a year, teams were using multiplayer editing to: - Ship products under tight deadlines - Mentor designers remotely - Conduct more efficient design critiques - The larger benefit was a single source of truth: - Files could be shared through a persistent URL. - Updates appeared at the same location without requiring teams to synchronize assets manually. - Teams avoided overwritten files and outdated versions. - Different roles could work directly with the design: - Copywriters could test messaging. - Developers could inspect design attributes for implementation. - Product managers could monitor progress without relying on Slack updates. ## Components and Design Systems - As design became more central to product development, companies needed systems for maintaining consistent UI elements across teams and files. - Figma introduced components on December 8, 2016, allowing designers to synchronize reusable elements such as navigation menus and status bars. - Component overrides let designers customize individual instances—for example, changing color or typography—without disconnecting them from the underlying component. - This balanced flexibility with consistency, allowing teams to benefit from a broader design system while still adapting individual designs. Figma’s first-year progress suggests that browser-based design succeeds when performance, compatibility, and collaboration are treated as equally important. Its persistent shared files and emerging design-system features aimed to make the design process more connected across the entire product team.