Design-to-Code Workflow

Improved Ways of Working To Bridge the Gap for Seamless Product Development

Richard Banfield
6 min readAug 2, 2024
Side-by-side painting from the Tension series, which I painted in 2023

An Unlikely Source of Help

The digital product development landscape has been a hot mess for a while. After a few decades of broken Agile promises and unrealized tool utopia (I’m still licking my wounds from InVision), the light at the end of the tunnel is coming from the most unlikely place: a profit motivated trend towards tool consolidation and tighter budgets.

Alongside the current SaaS reckoning and the inevitable cycles of unbundling and bundling, enterprises are having to find ways to adopt expensive AI tech while simultaneously keeping the lights on. This tension highlights the need for adaptability in product operations. Knapsack emerged from this austerity culture with a goal to create a solution that makes it possible to do more with less, and faster. At the heart of that approach is a simple idea: unify design and code.

We probably don’t need another transformation lecture but the symptoms are plain to see. During Covid we all got bloated and now we’re paying the price. We’e left with a the heap of disjointed tools and workflows, leading to multiple handoffs, inconsistencies in design and code and inefficiencies in getting product shipped. Today, most product designers find themselves battling community and role fragmentation, budget cuts and the dramatic consolidation of tooling, and the usual “this was probably was feature not a product” attrition.

Even if you’ve lived through a few cycles, it’s frustrating to navigate the overshooting in hiring and tool acquisition with layoffs, budget adjustments and restructuring. It’s a distraction from work. But it’s this tightening of belts and attrition that’s forcing us to ask the hard questions, and that’s a good thing.

A New Era of Design-To-Code Opportunities

These pendulum swings in how we work are nothing new but they are still painful. One obvious change in product operations is how Agile (or Agile-ish) methodologies are eroding in popularity and giving way to more fluid, context-specific methodology. The promise of Agile, and even Lean development, haven’t been fully realized because the design and development practices were also tied to inadequate tooling. Linear tooling workflow and handoffs meant teams were forced to do linear work.

To really change how you’re working your practices need to inform the way the tools work, not the other way around.

But now there’s a light at the end of the tunnel. Having worked with 100’s of enterprises and startups and interviewed thousands of leaders, it’s safe to say there’s no singular way to work that suits every context. However, there are ways to reduce the complexity and avoid having to undo poor decisions downstream. As Charlie Munger would say, being less stupid is easier than being consistently smart. The primary way to be less stupid is to make sure there is less that can go wrong. Here’s how we’re making it happen.

The Challenge: A Disconnect Between Design and Code

In the traditional linear workflow, digital components created by developers often deviate from the original designs. This discrepancy results in multiple revisions, rework and QA issues. It slows down the entire development process. Until recently it’s been an almost unavoidable cycle of miscommunication that hinders productivity.

The Solution: A Unified Platform

Knapsack takes design-to-code integration to the next level by managing components across design, code, and documentation seamlessly. By connecting and comparing properties and data, it ensures consistency and alignment as your system scales. You can visualize and organize patterns from a birds-eye view, keeping your teams organized across all facets of system usage, management, and experience.

Side-by-side design, code and docs comparison is a non-linear breakthrough for designers, developers and PMs to manage workflow.

This enhanced component and pattern management simplifies the previously manual process of maintaining the relationship between coded components and design sources. This was the promise we tried to deliver with InVision (and the still-birthed InVision One), but we were unable to overcome the round-tripping between DSM (Design System Manager), Studio and the original prototyping tool. With Knapsack, we’ve create a streamlined, automated interface fostering cross-functional collaboration.

We know it works because several Fortune 100 companies are using the platform as I’ve described above. For instance, a large home improvement brand has utilized this new “Patterns” dashboard to facilitate discussions around matching design specs with engineering specs, highlighting its powerful capabilities. This feature not only supports current operations but also paves the way for future enhancements like roadmapping, note-taking, commenting, and component versioning. Internally, this marks a significant step toward comprehensive product management within the tool.

Integration with tools like JIRA and GitHub could significantly enhance this system, allowing for the association of patterns with tickets or issues. This is monumental for enterprise teams adhering to strict sprint and workflow standards, serving as a central point for team check-ins and grooming sessions. Somewhat surprisingly, the non-linear tools still provides value to teams forced to use linear workflows

KISS

It starts with KISS — keep it simple, so we don’t need to exhaust ourselves trying to outsmart the linear workflows and handoffs. Keeping things simple in product ops is easier than it sounds, so let’s break it down into two key ideas.

  • The first way is to ensure documentation is dynamic. Docs are automatically updated and easily accessible documentation that keeps everyone on the same page.
  • The second way is to manage components and patterns efficiently. For that you need a unified source of truth so you can utilize components and patterns to maintain consistency.

These ideas are supported by specific features and controls that will be used cross-functionally or within silos. Here’s a break down the specifics of what a unified design system platform can do for product teams:

1. Better Visibility and Control: Centralized documentation and component libraries offer a transparent view of the project, reducing ambiguity.

2. Streamlined Collaboration: By bridging the gap between designers and developers, Knapsack fosters a more collaborative environment, enhancing cross-functional efficiency.

3. Reduced Maintenance Time:Dynamic documentation cuts down hours spent on updates, freeing up time for more critical tasks.

4. Accelerated Development Speed:By minimizing the need for revisions, Knapsack speeds up the development cycle, allowing teams to deliver products faster.

5. Consistency Across Teams:A unified platform ensures that all teams adhere to the same standards, reducing the risk of discrepancies.

6. Confidence in Documentation Accuracy:Real-time feedback loops and automatic updates ensure that documentation is always up-to-date and accurate.

Knapsack’s impact is evident through our partnerships, such as with Sherwin Williams, where our pattern management capabilities have been pivotal. Internally, we see diverse personas benefiting from our tools, from designers leveraging dynamic documentation to developers utilizing component management.

Looking Ahead: The Future of Design-to-Code

Knapsack’s design-to-code approach lays the foundation for future advancements in digital product development. By removing the ambiguity between the design and code there’s a real potential for new ways of working to find traction. For example, design-to-code platforms allows faster prototyping and composition. Creating prototypes is a crucial step in the design and development process, allowing cross-functional teams to visualize and test new ideas quickly. In the simplest of terms, they save product teams time and money. For non-technical users such as researchers, UX designers, marketers, and even some product managers, leveraging design-to-code platforms can make the prototyping process so much easier.

As we continue to refine our platform, our features and functionality are aimed at empowering teams to achieve faster time-to-market, enhance innovation, and maintain consistency across all stages of product development. Integrating our tools into existing tech stacks seamlessly, we provide a scalable solution that adapts to evolving needs. Knapsack’s purpose isn’t just just about keeping up with industry changes but leading the charge towards a more efficient, collaborative, and innovative future in digital product development.

--

--

Richard Banfield

Dad, artist, cyclist, entrepreneur, advisor, product and design leader. Mostly in that order.