'You have to put in the reps' and other advice to help you learn technology

As my third quarter at Medill came to a close in September I found myself at a crossroads, because after years of being paid to simply put words on a page, I was switching teams.

I had earlier enrolled in the school’s interactive track because deep down, I knew I wanted to learn to code — or rather, I knew I liked the idea of learning to code. Technology is constantly evolving, and journalism technology has an extraordinarily strong community full of smart individuals and can be used to build some seriously useful stuff.

However, this left me in uncharted territory. Where do I apply, and for what types of jobs? Would I be able to compete? Not only had I previously relegated myself to writing and editing-based positions, but also relied on the same underwhelming collection of journo job websites, which I checked daily, usually with similarly underwhelming success. What’s more, my technical qualifications were still in question. At the time, I had just one interactive piece to my name, and recently finished courses on APIs and advanced Javascript with more questions than answers.

So, per a tip from the Lab, I sent an email to 2013 Knight-Mozilla OpenNews fellow Noah Veltman, one of a few “journocoders” who have acknowledged the pressure they can occasionally face to match wits with those who have dedicated far greater portion of their lives to making things on the web.

I heard back from Veltman a week later, and his response was exhaustive and poignant. Here’s a few key points that really stood out:

...the kind of coding you do in the newsroom is so different from true ‘computer science.’ You aren't solving hard CS problems most of the time. You are solving hard design problems and hard editorial problems. Not that the coding is easy, but it's more nuts and bolts, not theory. It ends up being a big grab bag of different techniques and tricks, often held together with duct tape behind the scenes.

A common worry among aspiring newsroom coders is that they’re not on the technical level of those with computer science degrees, and I think it’s easy for them to forget they (we) don’t have to be — especially for the jobs they’ll likely be doing. Obviously, different skill sets are required for different jobs, but don’t make the mistake of assuming that web-focused journalistic positions require the acumen of an M.I.T or hacker school grad.

Just like if you want to be a writer, you must write, if you want to be a coder, you must code. That's it. No amount of strategizing or trying to take the right class or buy the right book is going to shortcut the learning process. You have to put in the reps. Don't be that guy who theoretically wants to do this stuff but avoids actually sitting down and doing it because you haven't gotten to the fun part yet. The sooner you start, and the more time you spend on it, the faster you'll learn, and the faster you'll get to the fun part.

If front-end is your goal, you may want to print the above paragraph, paste it to the top of your doorframe and slap it prior to sitting down at your office/desk/workspace each day, Fightin’ Irish style, because these are words to live by. Becoming proficient at programming languages isn’t magic. You’re never going to find the “right book,” nor should you rely on just one resource to help you along the way.

For me, the “fun part” is something as simple as correctly floating an image so it aligns with a paragraph, transforming a few tags into the beginnings of a horizontal nav-bar by adding an inline display or creating a hover effect over an element. Amateur to some I know, but it’s fun to see these things work, and I doubt I would’ve attained that sense of accomplishment by reading the latest flavor-of-the-week book cover-to-cover. Instead, it’s about diving into something you’ve got a vested interest in, or you’re likely to suffer a handful “false starts” as programmer and entrepreneur Spencer Fry notes in a fairly recent blog post:

It's simple, really. You must have a project in mind that you want to see built. Not any project, but a project that you care so deeply about that nothing can deter you from shipping it.

The lightbulb didn’t go on until age 28 for Fry — a full 10 years after he first decided he wanted to do something “computer related” as a profession. And 10 years ago, learning to code wasn’t as important as it is today or seen as a way to advance journalism career. For instance, consider this recent tweet from Joshua Benton, director of the Nieman Journalism Lab:

Look, not every journalist should learn Python! But if you want to ensure future employment, it’s prob as good an investment as is available.

Basically, if you’re in the journalism industry and you’re neglecting code, you’re playing checkers while everyone else is playing chess. But I’ll reiterate — don’t run out and spend needless amounts of money on every HTML, CSS or Javascript book you can get your hands on. Start small. Download a text editor (and make it Sublime Text), and examine things on the web you’d like to emulate, do some Googling, and go from there. Less talking and more doing — if that is your mindset, the process will be far more educational and rewarding.

Back to advice from Veltman:

...we can all learn more and accomplish more by leaning on each other than by comparing ourselves to each other. It's not a pizza pie. Someone else doing something cool doesn't take anything away from you. Quite the opposite: it paves the way for you to learn interesting things, to build on what they've done, to collaborate. You should welcome being surrounded by intimidatingly smart and accomplished people; punching above your weight is a lot more fun than punching down!

This is too important. Although many web-makers won’t admit it, there’s a level of insolence that exists between those that “know what they’re doing,” and those that don’t. Pop culture occasionally reinforces this stereotype, and, for whatever reason, it’s often intimidating for a novice to ask an experienced developer for help. This needs to change. Breaking down that wall and encouraging collaboration between tech and writing teams can improve journalists’ comprehension of code and also enhance productivity.

The most important thing you learn as you learn to code isn't specifics, it's confidence.

Webmaking is not for the impatient. Bugs invariably pop up no matter how skilled you are. A significant moment in my journey toward technology comprehension occurred during the dawn hours in early June, with the deadline for a mock-website I’d been working on for an interactive producing class looming.

It was my first time hosting a site on Wordpress, and I’d been battling its infamous “loop” since early that afternoon, attempting to cohesively align all the elements on my homepage. Hours of immense frustration later, I was a click away from sending in an unfinished product before I came across a plug-in that allowed me to alter Wordpress’ CSS from within the CMS itself. The code in my text editor was too fragile to touch, but the changes made in the plug-in finally resolved my issues. Is duct tape holding it together? Sure (maybe a little Elmer’s Glue, too). But hey, it worked.

Mentally, I consider myself in a better place than when I began my fellowship with the Knight Lab five months ago. I’ve graduated from “I want to code, please teach me” to “Maybe I can figure out what’s not working on my own (hint: check the console), but if I have a question, I’m not afraid to ask.” Working with lab veterans Tyler Fisher and Rebecca Lai during our weekly Open Lab Hours hasn’t hurt, either. However, there’s always more to learn, and with a post-grad internship with the Lab on the horizon, I’ll have more opportunities to continue putting in my reps.

Latest Posts

  • Prototyping Augmented Reality

    Something that really frustrates me is that, while I’m excited about the potential AR has for storytelling, I don’t feel like I have really great AR experiences that I can point people to. We know that AR is great for taking a selfie with a Pikachu and it’s pretty good at measuring spaces (as long as your room is really well lit and your phone is fully charged) but beyond that, we’re really still figuring...

    Continue Reading

  • Capturing the Soundfield: Recording Ambisonics for VR

    When building experiences in virtual reality we’re confronted with the challenge of mimicking how sounds hit us in the real world from all directions. One useful tool for us to attempt this mimicry is called a soundfield microphone. We tested one of these microphones to explore how audio plays into building immersive experiences for virtual reality. Approaching ambisonics with the soundfield microphone has become popular in development for VR particularly for 360 videos. With it,...

    Continue Reading

  • How to translate live-spoken human words into computer “truth”

    Our Knight Lab team spent three months in Winter 2018 exploring how to combine various technologies to capture, interpret, and fact check live broadcasts from television news stations, using Amazon’s Alexa personal assistant device as a low-friction way to initiate the process. The ultimate goal was to build an Alexa skill that could be its own form of live, automated fact-checking: cross-referencing a statement from a politician or otherwise newsworthy figure against previously fact-checked statements......

    Continue Reading

  • Northwestern is hiring a CS + Journalism professor

    Work with us at the intersection of media, technology and design.

    Are you interested in working with journalism and computer science students to build innovative media tools, products and apps? Would you like to teach the next generation of media innovators? Do you have a track record building technologies for journalists, publishers, storytellers or media consumers? Northwestern University is recruiting for an assistant or associate professor for computer science AND journalism, who will share an appointment in the Medill School of Journalism and the McCormick School...

    Continue Reading

  • Introducing StorylineJS

    Today we're excited to release a new tool for storytellers.

    StorylineJS makes it easy to tell the story behind a dataset, without the need for programming or data visualization expertise. Just upload your data to Google Sheets, add two columns, and fill in the story on the rows you want to highlight. Set a few configuration options and you have an annotated chart, ready to embed on your website. (And did we mention, it looks great on phones?) As with all of our tools, simplicity...

    Continue Reading

  • Join us in October: NU hosts the Computation + Journalism 2017 symposium

    An exciting lineup of researchers, technologists and journalists will convene in October for Computation + Journalism Symposium 2017 at Northwestern University. Register now and book your hotel rooms for the event, which will take place on Friday, Oct. 13, and Saturday, Oct. 14 in Evanston, IL. Hotel room blocks near campus are filling up fast! Speakers will include: Ashwin Ram, who heads research and development for Amazon’s Alexa artificial intelligence (AI) agent, which powers the...

    Continue Reading

Storytelling Tools

We build easy-to-use tools that can help you tell better stories.

View More