Is data journalism teaching repeating the same mistakes of online journalism teaching? It’s a genuine question: I don’t know the answer, but I’m seeing some parallels, and I’d welcome a proper debate.
Let me explain what I mean: a decade ago teaching online journalism was problematic: few lecturers were able to teach it. Journalism faculties were full of print and broadcast experience, but very few who had worked online.
One of the symptoms of this was a tendency to teach ‘online journalism’ as HTML production, in the same way that desktop publishing was taught, leaving little or no space to explore the editorial qualities of the medium.
What we ended up with was shovelware journalists: graduates who could create their own webpage but not write well for it. Thankfully, that’s now a rarity.
The brain drain
Now look at the picture surrounding data journalism teaching: tutors with experience of data journalism are relatively rare in universities for the same reasons as before.
Financial Times data journalist Martin Stabe once told a class of mine that discussions about data journalism tended to fall into two recurring themes: “It’s easy to do data journalism” or “everyone should learn to code”.
These debates have led to some courses being developed which combine computer science with journalism. On the one hand I’m excited about the potential – but is this the most effective way to create data journalists?
We don’t have classes on spelling
Programming is undoubtedly enormously useful to journalists, but so is spelling, grammar, an understanding of art theory and sound engineering.
But few courses run classes on those topics in isolation from the journalism process. We teach subbing as part of classes that get them working on writing stories. They learn art theory without calling it that, when we teach them how to compose a shot.
Hell, they even learn a little HTML while studying classes on running a news website.
So why take classes in computer science?
If data journalism is “social science on a deadline” then why don’t we get students to take classes from social science? (Arguably just as useful – sociology students investigate some areas with enormous potential for journalism).
Story-led or tool-led
As I say, I don’t have the answers here – only questions.
I ask them because I’ve seen many journalists try to learn programming and give up trying to learn programming because, ultimately, if what you want to do is find and tell stories, reading a book on JavaScript or Ruby is not going to give you much satisfaction.
And I ask them because of the dizzying array (pun intended) of programming I find myself touching on in classes: Google Refine Expression Language and command line (cleaning data) Python and regex (scraping), JavaScript, HTML and CSS for interactivity, SQL (analysis) and R for anything you like. The basic principles don’t take long. Which technologies students pursue depends on what the story demands.
In this sense programming takes in as wide a range of activities as spelling (after all, spelling and grammar is a code and the alphabet is a technology).
So how do we find space for it within our teaching without making it something outside journalism?
Will we end up with ‘tool-centric’ journalists in the same way as we had shovelware journalists?
Or is programming analogous to a ‘second language’ for students wanting to report in another country?
Comments welcome.
This is, I think, a breadth vs depth debate.
For specialist news apps or visual journalism teams like ours at the FT, there is really no getting away from programming. We write scrapers, data-cleaning scripts, build data visualisations and other front-end web development tasks. We also need people who have a deep understanding of UX, graphic design for the web and cartography, but UK journalism courses have frankly not provided them in sufficient depth for our needs. We’ve increasingly looked to courses outside journalism schools to fill these jobs. I’m very excited by the emergence of more technically-sophisticated journalism courses, because they may help fix this.
That said, there are relatively few jobs to be had in specialist teams like this, especially at entry level. For most reporting jobs, “data journalism” means what most courses have been teaching: strong numeracy, statistical methods, data acquisition and cleaning skills, some relatively basic spreadsheet and automated chart-making skills. Applicants with these skills make excellent reporters, and have a big advantage over those who do not have them. They are also equipped to acquire more advanced skills on the job.
Perhaps the answer is to teach basic data journalism (including principles of programming) as a required first term course and make some advanced specialist skills elective options in a subsequent term.
Thanks. I guess my question relates more to ‘pure’ programming. Students can learn all sorts of programming on a data journalism module, and in pursuit of stories, but learning it in isolation is what I’m specifically wondering about.
I think providing a context, reason or rationale for learning programming (“applied programming”) as part of a journalism course makes most sense for most people who just want to get stuff done. Programming as automation. Use whatever coding or programming principles you can to help you produce something or do something, and then use that code as a basis for critique (if you have time) to learn how to do it better – more efficiently, elegantly or idiomatically.
“Pure programming” courses may well put people off (“why is this relevant?”) although they perhaps offer the advantage of trying to teach the subject in a more principled way. But if we assume that a majority of students won’t be coding full time, we want as many as possible at least to leave with some ideas about what’s possible in the practice of journalism context, not least because they’ve seen it’s possible.
So learning how to reuse code is a Good Thing for a practitioner to do – you don’t need to be able to write a thousand lines of code to use a thousand lines of code. Being able to pattern match and read code well enough to see what to change to make it work for you is another Good Thing to know. Even something as trivial as tweaking this search on /teaching programming/: /https://onlinejournalismblog.com/?s=teaching%20programming/ to one for pages about /digital journalism newsroom/ etc. That’s just an investigative trick, right?
Some people will benefit from a more thorough exposure to coding principles and the use of this language or that language. Perhaps one question to ask is: what do we need to teach people about code and programming in order for them to: a) realise code may help in a particular situation; b) start using it themselves; c) ground them enough that they can go on to learn more about it as independent/self-taught learners?
Sounds like we need a post on ‘What programming should be teach’…
I think computer science has a lot to teach the field of journalism. The ability to break down information or problems beyond their immediate material context is a central element of computational thinking. Any journalism based on analysing data requires a similar ability. How this overlap is framed is key to developing a syllabus that would satisfy the skill demand in the media industry. Ideally it should include instructors from both ‘camps’.
When I took Columbia’s Lede Program last summer, it was broadly pitched as a ‘digital humanities’ course. It wasn’t totally focused on journalism but offered a practical ‘primer’ of several CS and programming concepts which have direct applications to journalism. For example, the programmer’s mindset of open and networked workflows, being patient when debugging errors, automating repetitive tasks and the goal of ‘un-blackboxing’ hidden mechanisms.
The practical side of learning a programming language, in this case Python, was incredibly valuable. Paul I think you made a great analogy about programming as a ‘second language’ for students who wanting to report in another country. Programming skills are not a replacement for reporting skills. They can open up previously inaccessible data, e.g through web scraping or API querying, and provide new analysis tools such as text analysis algorithms. In both cases, a user still needs to apply their investigative mindset to reveal a story.
An interesting question is how far can go down the programming route and still call yourself a journalist? How about a news application developer who has never had to pick up a phone to call a source? This opens up navel-gazing questions of what counts as journalism today and going forward. Does it have to include writing anymore? In my opinion, being able to write succinctly about complex issues will always be critical to developing the instinct to find a story.
BTW I found this recent paper by Mark Coddington ‘Clarifying Journalism’s Quantitative Turn’ very interesting reading. http://www.tandfonline.com/doi/abs/10.1080/21670811.2014.976400?journalCode=rdij20#.VLbMP6Z3QU4
I’am an online journalism teacher and data journalism is one of the topics I’ve explored in my classes. I code in Python too but I think that students must learning to tell stories as journalists do . The tools , the enviroment, the medium ( new or old ) must be the support for that main task and challenge ( because all is changing) but not the final goal of the learning process. An inversion of values can generate good crunch numbers but poor journalists with a small perception of what really makes them different from others professionals.
Pingback: Guest post: 10 lessons from data journalism training | Online Journalism Blog
I think a lot of people are getting way too hung up on the ‘should journalists learn to code so they can be real data journalists’ issue. I learnt to code as a mature student but the most important thing I was taught was how to solve problems in a logical manner. I use that skill every day and especially when I am doing data journalism work.
But I do not consider learning to code to be a prerequisite for ‘data journalists’ (the term is still being defined anyway…) but understanding of what it is *possible* to do with computer science techniques and logical problem solving is.
If I want a good fast coder I go hire one. Simples.
If I want a slow Python coder who can do a bit of MySQL so they can change the detail of the way they interrogate data as the information emerges from raw ‘stuff’ and thinking ahead to creating a vector graphic in Illustrator to fit in a tiny mobile web page as well as an A2 print infographic then I do it myself.
We know that the data journalism production process is long, often complex and can span many disciplines. Consequently before the story can be written a data journalist needs to be able to think how to get from A all the way through to Z using the right tools and approaches.
Being able to visualise in your minds eye how raw messy data might be turned into a compelling visual story is what needs to be taught.
My type of data journalism is very much “social science on a deadline” [nice phrase, might well steal it!] and my personal view is that “social science on a deadline” might be a better way for both teachers and students of journalism to consider the subject.
There again I have never done a journalism course in my life so what would I know?
Pingback: Media Picks #5 – Smart journalism, crowdfunding, online video and data journalism | Media Hack
Reblogged this on andreaspinopico.
Pingback: Newsletter Farol Jornalismo #29 Mais sobre diversidade e Charlie Hebdo; algoritmos não são deuses e outros assuntos | Farol Jornalismo
Pingback: Teaching data journalism in developing countries: lessons from ODECA | Online Journalism Blog
Pingback: Here’s the thinking behind my new MA in Data Journalism | Online Journalism Blog
Pingback: Designing data journalism courses: reflections on a decade of teaching | Online Journalism Blog