Get it Out There While it’s Hot

Don’t let your fear of criticism stop you from sharing your creativity and changing the world.

M. David Green
On Collaboration

--

As a web developer, I wrestle constantly with the balance between good code structure and getting the job done. When compared against the idealized vision of clean code in my head, starting anything new is a challenging commitment. Making the wrong choice early on can lock a code base into a path that’s difficult to change down the road. And web technology evolves so quickly that the choices, and their implications, are rarely clear-cut and almost impossible to stay on top of.

The same fears are familiar to creative people everywhere who identify with the products of their efforts. When faced with a challenge like that, I think we may all need to embody the lesson my sister says she learned as a child from our family dachshund:

The way to move the living room carpet into the family room is to grab a corner and just start tugging.

Take a moment to picture our little dachshund dragging our living room carpet inch by inch down the hall and into another room.

Sharing the Flawed Implementation of Your Vision

Recently I watched an HTML5 Developer’s Conference presentation by Tony Parisi, one of the folks pushing to make 3D graphics and animation part of the mainstream of web development. In the video, Tony is demonstrating his own proposed extension for HTML that would allow any developer to create complex 3D elements right in the markup, without having to do any coding other than including a standard library script.

In a few lines of HTML, Tony was able to show cubes, spheres, texture mapping, and a bunch of other sexy 3D deliciousness. The audience was too impressed to wait until the end, and started immediately hammering Tony with questions about stability and availability.

But beyond the coolness of the technology Tony was working on, I was struck by the coolness of Tony himself. He was standing in front of a room of web developers, showing off a live demo of a project that was not stable, that didn’t yet account for current best practices around extending HTML, and that Tony himself warned people not to use unless they wanted to rewrite everything every few days as the syntax evolved.

At one point, Tony blurted out that he should probably prefix the names of his new proposed HTML elements with a “gl-” to protect them from the global HTML namespace. “I just thought of that right now,” he said, as he went on with his presentation. A concept like that might have been one of the first things considered if the project had been developed for publication, using the latest web components library instead of being written as a custom implementation. But Tony clearly developed this with passion, not polish, in mind.

Tony wasn’t questioning how clean and well structured his Javascript was, whether he had created a framework that was fully documented and inviting for other developers, what libraries and contingencies his audience would be familiar with, or a plethora of other niggling criticisms. Any one of these factors, and a hundred more that any intelligent procrastinator could come up with, might have stopped him from sharing his ideas with the world at such an early stage.

Instead, Tony put it out there bluntly that there are aspects of developing a solution like this that just aren’t his bag. He was up there selling the sizzling potential of his approach, never pretending it was a fully plated steak. He stood up in front of a discriminating audience with the bare minimum of code necessary to create a compelling example. His pitch wasn’t that someone should come and start using his code in real world projects, but rather that anyone interested was welcome to come and help him turn it into something complete and useful.

It’s Not All About You

The tendency to think of authorship as something exclusive to one person, that reflects on the quality and value of that person, can get in our way when we have an idea we might want to share. But that tendency is more a function of our society and our current cultural biases than it is a reflection of practical reality.

The concept of authorship puts all the burden on the shoulders of one heroic artist. Any work presented in this context feels as if it were the sweat and blood of the isolated individual who conceived and created it. Because of this, any criticism of the work is easily perceived as a personal attack on the creator. That’s a harsh environment for a creative soul nurturing the tender seedling that is an initial implementation of what might be an original idea.

Tony’s approach presented him less as the isolated artist showing off his incorruptible work, and more as an enthusiastic producer gathering a team of collaborators. Using the resources at his disposal–which came down to his own experience and talent–Tony put together a minimal viable example of what he wanted to see in the world. Then he applied his skill at presenting, to lay that basic implementation out before a select group of other skilled people in a venue that attracts technology lovers, and invited them to share in the effort to make this a reality.

I was very impressed that Tony had the confidence and ambition to spread his unfinished pet project out in front of a potentially critical and technically sophisticated audience, despite knowing it was handcrafted in disposable code and wasn’t ready to use. In the process, he generated excitement and interest in his audience, and may have encouraged others with complementary skills to come help him complete his ideas. Tony’s approach demonstrates the value of focusing on getting ideas out into the world, rather than sitting on them until they can be perfected.

Creativity is a Dialogue, Not a Lecture

What’s possible often has very little to do with what’s practical. And what’s worth sharing may not have anything to do with how well perfected it is. In fact, there’s a solid argument to be made that there is no point in sharing something that has been perfectly finished. Once something is perfect, any input or reinterpretation is a step backward, so there is no room for the audience to reach in and pull out their own unique experience.

But one of the key benefits of sharing is to establish that fragile dialogue between the creator and the observer, so that the two can collaborate on the experience that sits somewhere between them. Otherwise, showing off a new creation is just an exercise in ego gratification, and the only possible result is either pure admiration from those who recognize the unsullied genius of the creator’s accomplishment, or shattering disappointment and frustration at trying to prove the flawlessness of a fully realized vision.

There’s nothing wrong with you for coming up with an intermediate solution to the problem you want to solve. And there’s nothing wrong with being better at one aspect of creation than another, or recognizing that working as part of a team can sometimes be more productive than working in isolation. What may be wrong is judging yourself against the standards of a superhero and expecting every aspect of your work to be perfectly clean, current, and correct according the the constantly shifting standards of the outside world.

Don’t Wait Until it’s Perfect

It’s time to start building flawed, incomplete, accessible things that excite us, and making them public. It’s time to let go of the notion that what you make is a direct reflection of who you are, especially if that’s keeping you from putting your work out into the world. Write that crappy skeleton implementation of the hottest feature you can imagine from the code library of your dreams, then rush out and give a talk. Infect your audience with a vision of what you hope this first stab in the dark could someday become, with help.

I learned a lot from Tony’s presentation about the potential of 3D markup syntax. But it also reminded me that it isn’t necessary to create a fully fleshed-out XML schema, or re-implement everything in Polymer syntax, before giving a presentation about it to a room full of code experts.

Just because your raw code or other creation may not be perfect, that doesn’t mean it can’t inspire others and change the world, unless you hide it away and refuse to share it.

--

--

M. David Green
On Collaboration

The human instinct to network is vital enough to thrive in any medium that allows one person to connect to another. (Agile coach and host of HacktheProcess.com)