Should Designers Code?

Bobtuse Honeybee Pagoda

I am an long-time programmer. I have a keen interest in simple design and providing a pleasurable aesthetic experience in most things I build.

Jon Kolko‘s post code is material: why designers must learn to code got me thinking, and predicting:

Designers don’t need to learn to code. The code will come to them.

My Programming Arc

I wrote my Hello World in FORTRAN at the University of Minnesota in the early 1980s. But I started programming in earnest as a Civil Engineering undergraduate in the mid 1980s in the days when fast was turbo.

Today I am handsomely compensated to jerk around coughed up hair balls of client-side JavaScript.

Thankfully I never had to program in machine code. One great programming leap was the advent of commonly used computer languages like FORTRAN that abstracted the complexities of machine code.

Another Great Leap

Alan Cooper in his office
at Cooper in San Francisco

Programming made a quantum leap when Visual Basic 1.0 was introduced in 1991. Visual Basic pioneered drag and drop design for crafting user interfaces.

Visual Basic derived from a form generator prototype developed by Alan Cooper and his company called Tripod.

Alan Cooper put the “visual” in Visual Basic

The visual nature of the new Visual Basic paradigm abstracted the software maker from the underlying sausage.

The Visual Basic leap for occurred after the 1991 COMDEX/Windows trade show. There have been no equivalent leaps since. We’re overdue.

The Next Great Leap – A Future for Creatives

Returning to my assertion that

Designers don’t need to learn to code. The code will come to them.

I suspect there will be a bright future for creative types. All that’s needed is another revolutionary leap in development tooling that will enable designers to do what programmers do without having to know how to code. Someone will abstract the complexity.

The explosion of rich client applications, and all of the attending JavaScript schmutz, is a programming nightmare for cats like me who have known better times.

Today’s rich client frameworks and persistence schemes have lots of hoop-jumping complications.

 Too much sausage meat! 

Take heart, I think tooling will be invented that will put the sausage back in the case.

It is laudable to know the your work environment and the materials you work with through and through. But in the case of making applications, simplification by abstraction is what frees us to be creative.

Already tools are appearing that enable applications to be built without the gratuitous and frustrating hair balls that require the services of a programmer.

So I think the code will come to the designers. Application development will be made visual, gestural, instinctual and intuitive.

When Fast Was Turbo

By dumb-luck and fortunate timing in the mid-80s, I scored an undergraduate fellowship from the University of Minnesota Civil & Mineral Engineering department to develop engineering applications for two-floppy drive IBM Personal Computers.

With mentoring from three engineering profs and one post-doc, our team of a handful of CE undergraduates benefited from a 2-year grant from IBM to learn and build educational software for engineers. We started our first applications using IBM Pascal (UCSD Pascal) in deference to our benefactor.

At the time one had to boot the IBM PC from a left-hand floppy disk that had MS-DOS and IBM Pascal  on it. 5 MB hard-drives weren’t readily available until a year or two later. We used the right-hand floppy disk for source code and data files.

Around 1984-85, we switched Pascal compilers to Borland’s Turbo Pascal. Turbo Pascal was shockingly fast and lightweight – even by today’s standards. Turbo Pascal represented a quantum leap in our app development.

The Turbo Pascal 3.02 compiler and IDE was only 39,731 bytes. A size-wise comparison to a few contemporary benchmarks:

Reference: Things Turbo Pascal is Smaller Than

By fast I mean builds of 1-2 seconds.

Full rebuilds were about as fast as saying the name of each file in the project aloud. And zero link time. ~ James Hague

That all this was running on an 8MHz Intel 8088 makes it all the more remarkable.