On becoming a code artist

An interview with Scott Murray, author of Interactive Data Visualization for the Web

Scott Murray, a code artist, has written Interactive Data Visualization for the Web for nonprogrammers. In this interview, Scott provides some insights on what inspired him to write an introduction to D3 for artists, graphic designers, journalists, researchers, or anyone that is looking to begin programming data visualizations.

What inspired you to become a code artist?

Scott Murray

Scott Murray: I had designed websites for a long time, but several years ago was frustrated by web browsers’ limitations. I went back to school for an MFA to force myself to explore interactive options beyond the browser. At MassArt, I was introduced to Processing, the free programming environment for artists. It opened up a whole new world of programmatic means of manipulating and interacting with data — and not just traditional data sets, but also live “data” such as from input devices or dynamic APIs, which can then be used to manipulate the output. Processing let me start prototyping ideas immediately; it is so enjoyable to be able to build something that really works, rather than designing static mockups first, and then hopefully, one day, invest the time to program it. Something about that shift in process is both empowering and liberating — being able to express your ideas quickly in code, and watch the system carry out your instructions, ultimately creating images and experiences that are beyond what you had originally envisioned.

Why did you decide to write Interactive Data Visualization for the Web?

Scott Murray:D3.js is the most powerful tool for creating visualizations on the web, hands down. Yet when I tried to use it for a project in late 2011, there wasn’t a lot of useful information available on how to use it. A few early members of the community had written tutorials, but they assumed a level of JavaScript familiarity that I didn’t have. The official D3 documentation is excellent, but not necessarily accessible to beginners. So I set about banging my head against the wall for a few weeks, struggling to learn the peculiarities of D3, and taking notes every time I encountered a challenging concept or had a revelation. Once the project was done, I revisited my notes and starting writing tutorials that would introduce each of those challenging concepts to beginners — those new to JavaScript, and even HTML and CSS. (I’m seeing more people drawn to JavaScript via D3, just as my first experiences with JavaScript were thanks to jQuery.) My goal was to spare others the frustrations I experienced. Within months, the tutorials on my site were getting a lot of traffic, and people wrote in to request more tutorials: on the basics, on interactivity, on mapping. So I expanded the tutorials into a full-length book.

Who do you envision reading this book? What will they learn after reading your book?

Scott Murray: This book is for anyone interested in learning how to use D3 to create and publish visualizations on the web: journalists, designers, data scientists, statisticians, students, researchers, and would-be mapmakers. The book includes an introductory chapter on web fundamentals — HTML, CSS, JavaScript — so it’s very accessible to people new to web development, and even programming generally. There are also more than 100 code examples that accompany the book, so it’s easy to follow along and tweak the examples as you learn. In the end, anyone who works through the book will have a grip on all the basic concepts of D3. You’ll be able to make charts and graphs, even highly customized geographic maps with data overlays. And hopefully you’ll be inspired to learn more, experiment, and share your creations with the datavis community.

Any words of advice for an aspiring code artist?

Scott Murray: Start making things now. I get to work with students, and I see them get stuck in their heads, trying to plan out every last detail before they start working on a project. This results in the project never starting at all, or being finished in a very rushed fashion. People (myself included) often have a tendency to over-think things, especially intimidating projects that will involve learning something new, or trying something we’ve never tried. While thinking is good, over-thinking prevents us from doing. And, in reality, doing is a critical part of thinking — you can’t really separate the two. So I suggest getting comfortable with not knowing what you’re doing before you do it. Just start making things now, today, even if you feel underprepared or like you don’t have all the answers you need yet. Guess what? No one has all the answers (even though we pretend to). We’re all just here figuring this stuff out as we go. So don’t over-think it, start producing projects, and get those projects out in the world. You’ll learn what you need to learn along the way.

O’Reilly Strata Conference — Strata brings together the leading minds in data science and big data — decision makers and practitioners driving the future of their businesses and technologies. Get the skills, tools, and strategies you need to make data work.

Get the O’Reilly Data Newsletter

Stay informed. Receive weekly insight from industry insiders.

Featured Video

Is Privacy Becoming a Luxury Good? Julia Angwin discusses how much she has spent trying to protect her privacy, and raises the question of whether we want to live in a society where only the rich can buy their way out of ubiquitous surveillance.