While we haven’t been as active as we’d like with this project, some of the effects of this little experiment continue to appear.
Describe your experiences learning code.
Lots has happened since I first launched this experimental project a year ago… I wrote some thoughts down at my personal blog/site.
Thanks to colleague Keith Smilely for passing along this essay by Bret Victor (@worrydream): Learnable Programming: Designing a programming system for understanding programs
Programming is a way of thinking, not a rote skill. Learning about “for” loops is not learning to program, any more than learning about pencils is learning to draw.
People understand what they can see. If a programmer cannot see what a program is doing, she can’t understand it.
If you are part of the Learn Code community or someone using these platforms, go read this essay!
As users on these platforms, we’ve all felt the frustrations Victor describes and many of us thought it was our shortcomings. “Maybe I’m not smart enough to get programming,” I’ve thought to myself. But, thanks to my LCFJWM cohort, I know that is not the case.
In fact, these platform shortcomings are the main reason I’m trying to create Phase 2 of this project.
Again, these are great platforms to understand terms, get the basics of the concepts… but we need something more. And, as journalists, we need specific and relevant projects. There are many folks, besides LCFJWM, working on this… so stay tuned!
I started Code Year as part of this project (a Tuesday morning group), but after members kept missing weeks over and over, our group fell apart. I already knew how to code, but was really interested in Codecademy’s model — and when presented with challenges where I couldn’t just copy and paste the same old code I always reuse, I do think I learned a few things or at least considered some things differently. And I had fun helping my group along each week, for the month that we lasted.
But I wanted to come back and report that, on my own, I completed Code Year today. The quality of instructions diminished notably towards the end (less users through those units, so less refinement, I guess), so it got rocky toward the end.
For those still working through it: it CAN be done. Slogging through in marathons on slow days helped. Getting interruption-free time was key. If I jumped in for 15 minutes then had to switch back to something more urgent, those 15 minutes were a waste because I hadn’t made enough progress for anything to really stick yet. Then I’d come back later and have to restart the unit from the beginning just to remember WTF the exercise was about. Having more relevant exercises would be a big help, though, because sometimes you get to the end thinking, “Well, it says my code passes. I couldn’t tell you what it does or if there’s a point.”
I’m curious to see what comes of round two. Robert, I know you said on the View Source podcast that you’d like to have programmers paired with the groups. I’d be interested in volunteering for that, or for helping develop more newsroom-friendly curricula.
A huge congratulations to Katie! Thank you for letting me know about your accomplishment.
It was an informal conversation — where I fear I rambled — but I (excitedly) talk about what I’m thinking for the next stage.
I’m still working things out in my head, but listen to the episode for a preview:
If the HTML5 player didn’t load, go straight to the episode page: http://3rdaverad.io/shows/view-source/episodes/learn-code-for-journalism/
/* start lessons learned since launch */
When I came up with this idea, I was hoping to get nine people to join me in a Google+ hangout, together awkwardly hacking away at Code Year lessons. Well, there were considerably more people interested.
When the dust finally settled, 100 people signed up for this project… apparently there is strong interest among journalists to learn programming together using these two platforms.
So, it’s been a couple of months since this project launched. Here are some highlights:
- A total of 100 people signed up for this project through the application form. Not only from across the country, but also around the globe… including Korea and Sweden.
- The tech skill level was across the board, but more at the basic HTML level.
- Many participants had tried the Code Year lesson plan, but, like other New Year’s resolutions, gave up on it.
- Of those that signed up, about a quarter dropped out almost immediately. Why did they drop out? Well based on the responses, a few people signed up out of curiosity about the project… and really didn’t want to commit.
- After coordinating schedules with the remaining participants, we ended up with twelve timeslots, or cohorts, meeting throughout the week. The “class” sizes ranged from three to a maximum of nine.
- There were some tech glitches the first week, as people started to use Google+ and Hangouts for the first time. Some never got their camera to work, but were still able to participant. One person had to use their phone to participate in the Hangout.
- At this stage, a few wanted to change timeslots and yet others dropped out not being able to sustain the weekly commitment. But the majority stayed on.
- In the first week I asked people to share their experiences… did this meet their expectations? Where they still into the project? The responses were exactly what I’d hope: People enjoyed the concept.
- In terms of feedback, one participant wished there was a live coder/expert participating to help the cohort along. (One timeslot actually has this.) Also, while Code Year is a powerful platform, some of the lessons are a little clunky. They would benefit from an editor to make sure the wording flows and makes sense to a n00b.
Since the initial email, I have been too busy to check in. That said, my cohort, which meets Mondays at 3PM PT, has been meeting every week and has made progress. (We even met during a holiday week.)
In other words, it worked!
I’m committed to learn these lessons with a group of strangers that want to learn. While we have never met before this project, my cohort shows a sense of camaraderie as we stumble through but successfully figure out these lessons.
We help each other out. We feel safe enough to ask “stupid questions” (and believe me I’ve asked some). We dissect the lessons to help figure out what the heck it is asking. We review each other’s code to see what we’re missing.
In short, we’re learning together!
While I’m still collecting data – I plan to send out a survey soon – I have gained a lot of insight and learned some lessons on how to organize something like this.
And one thing is clear… there needs to be a second wave!
Stay tuned for details.
/* end lessons learned since launch */
/* start redesign site */
I coded up the original Learn Code for Journalism site by hand on my flight home from SXSW 2012.
I was thinking something clean and simple… but I wasn’t thinking something scalable.
Well, like many things on the Web, I’ve moved into WordPress using a great responsive design theme called Ari.
With this CMS, I hope to have more updates… so please stay tuned.
/* end redesign site */
Colleague Dani Fankhauser recently wrote a piece on the different, emerging platforms that are facilitating learning/skills building.
Learn Code for Journalism project was among those listed: Best Tools to Learn New Content Creation Skills
/* start form */
Sorry… applications to participate in this pilot project are now closed. Thanks for your interest!
/* end form */
10,000 Words’ Elana Zak wrote up a nice piece profiling our project.
A big thanks to her for the support and coverage: An Experiment with Google+ Hangouts and Code Year