Removing Abstractions

Why don't more designers write production code? Coding removes abstractions between your idea and the customer. Removing abstractions between you and the final product is the only way to know if it works

Industrial designers know how machines work.

They build prototypes with real materials. Architects understand buildings. Fashion designers know fabric. Stonemasons know rock. Yet software designers rarely understand their material: code.

When I started designing, coding was part of the job. We wrote CSS and HTML with some jQuery. We often worked with complex DOM structures from Drupal or Magento. You’d receive markup and be expected to “go design”.

After a decade in the industry, coding has become a dying art among designers.

Instead, designers hide behind abstractions: mockups, documents, workshops, and user journey maps. These tools aren’t bad. They’re necessary for communication. But we’ve mistaken these communication tools for product design.

Many designers spend excessive time creating these assets because they don’t understand code or how it works in production. They pull engineers in different directions or make wild assumptions and hope for the best.

Modern tools like vO and Replit make prototyping easier. However, they allow designers to avoid learning how code actually works. Throwaway prototypes might help explore ideas, but they create more waste alongside existing documentation and mockups. You’re still working at an abstraction.

You’ll never know if your idea is going to work until you make it.

Remove the abstractions.

Saul Bass advice to students
© 2025 heymynameisrob