Datawrapper step-by-step installation guide for Ubuntu on AWS

In my role as a data developer, I’ve recently been setting up a company-wide installation of Datawrapper, an open-source data visualization tool. Preparing a test server with the application, I hit some (ok, more than some) bumps along the way. It ended up taking far longer than I initially expected, but thankfully I extensively documented the process.

When I went to install Datawrapper on a production server, the setup was a breeze.

In the spirit of open-source (and in solidarity with improving the open-source world), below is an embedded gist of steps to get your own Datawrapper running — and avoiding common problems.

Let me know if you have any questions or suggestion on how to improve it! Now to see if the Datawrapper folks will release more of their plugins…
:)

Continue reading Datawrapper step-by-step installation guide for Ubuntu on AWS

Lessons from the past for “The Future of Programming”

Watch Bret Victor – The Future of Programming and then read his notes.

Bret Victor – The Future of Programming from Bret Victor on Vimeo.

In his notes there’s a link to a 1987 Alan Kay video in which Kay narrates footage of a demo Sketchpad around 4:14. It’s from 1962. Whoa.

My previous exposure to Victor came reading and later re-reading his Learnable Programming manifesto, which is radically practical and completely re-shaped my perception of how programming should work.

As someone who is basically self-taught in code, The Future of Programming video stands as similar shift in mindset for me. It also rekindled my interest in reading The Early History of Smalltalk by Kay (h/t Jeff Larson).

Update: Here’s the Hacker News comment thread

Code curiosity: Scala, AngularJS and staying up-to-date

The newsroom developer team, of which I am a former member, is using Scala for one of its new systems. So last night curiosity got the best of me — I don’t remember the precise reason — and I started reading a tutorial (the site is currently down; cached version here).

Then tonight I explored AngularJS after reading about one recent use for a collaborative writing system. That article also led me to read about Scala’s Play framework:

Although my day-to-day work doesn’t usually involve writing code anymore (or, if it does, it’s usually updating previously-built Django apps), my fascination with programming and coding concepts continues.

In this case, I’d previously heard of both Scala and AngularJS and briefly glanced at the latter’s site. But I didn’t know why exactly they were useful and how they’re distinguished from other tools. Now I do and that knowledge will help in my role as a project manager, teacher, presenter or if I roll up my sleeves and start a new code project for work.

Overall, just a good reminder to stay fresh and be aware of what tools are out there and what they do.

Bonus: While we’re at it, this little lesson reminds of a nugget from a 2010 post I wrote about computational thinking:

Learning different programming languages: On the bus back from Philly, I listened to a tech podcast on which Kevlin Henney, author of 97 Things Every Programmer Should know, asserted that programmers should learn other languages to inform and improve how they write their primary language. …

And why is that post fresh in my mind? Because of this:

</loop>

“Why develop in the newsroom?” Opportunities abound!

“Why develop in the newsroom?” asks Dan Sinker. In short, I’d say because you have near limitless opportunities to solve interesting problems. For example:

  • How can we find better ways to tell stories?
  • How do we uncover new information and find meaning in it?
  • How do we properly inform people about their communities?
  • How do we foster and contribute to important conversations?
  • How do we hold public officials and powerful figures to account?
  • How do we increase understanding of complex issues?

In The Washington Post‘s newsroom, where I work, developers are a highly valued bunch. There are far more ideas and a far greater desire to collaborate with developers than we have time or resources for — and we probably have more coders than many newsrooms.

Developing in a newsroom is not about “IT” or support — it’s about building things. Things that our audience and others across the newsroom use. We have folks who do a mix of the following:

  • analyze data
  • create visuzalizations
  • build interactives
  • develop news applications
  • create platforms and services
  • build APIs

These individuals work in different areas — from graphics to digital design to the embedded developer team. Personally, I coordinate data and technology projects for a specific desk — local — and occasionally use code. I previously did a six-month stint on the embed team after starting at the Post as a producer.

“Six-month stint?” What does that mean? It means my newsroom gave me half a year to improve my self-taught code skills and build projects alongside full-time developers. How awesome is that? I’m forever grateful for this opportunity to level-up my coding abilities, build strong relationship on that team and better manage projects because of those two things.

Another example of the value our organization places on fostering and recruiting developers is evident in this excerpt from Miranda Mulligan’s response to the “Why develop in the newsroom?” question:

Earlier this year, the Washington Post and Medill School announced a partnership to offer programmers scholarships to study journalism at the school. The hope is that those programmers will eventually bring their technical skills to news organizations around the country. The Washington Post will assist the Knight Foundation — which helped originally fund the program — in paying for the education of three scholars over a three-year period. After graduating, the scholars will work a paid internship with the Post’s tech team. If you have questions about the scholarship program, please contact Rich Gordon at richgor@northwestern.edu.

Opportunities abound. Whether they’re hard journalistic problems or even hard computer science problems, you’ll have the opportunity to tackle a wide range of projects. Bring other domain knowledge or expertise — science, business, sports, politics, whatever. I’m ridiculously excited just thinking of all the possibilities.

Join a newsroom! Apply for the 2014 Open News Fellowship! Apply for the Medill program!

Also, be sure to read the other excellent responses to Dan’s question: