Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How can we make this better? #1

Closed
tommeagher opened this issue Jan 12, 2015 · 5 comments
Closed

How can we make this better? #1

tommeagher opened this issue Jan 12, 2015 · 5 comments

Comments

@tommeagher
Copy link
Collaborator

Friends, thanks for joining the team for this year's PyCAR bootcamps.

To start this off, would you each take a few minutes to review the repo, which the folks at IRE kindly forked from last year's lessons, and offer your thoughts on how we should update it?

After that discussion, we can divvy up the batting lineup for the day, but I wanted to start with some more open-ended thoughts.

What do you like that's in here (or you remember from last year) and what would you like to change?

As a reminder, we ended last year ( tommeagher#19 ) by pondering whether to deal with encoding and agreeing to jettison wakari. What else?

@hbillings, @kevinschaul, @katiepark, @chrislkeller, @rdmurphy, what do you think? Feel free to respond to this thread or open new issues as needed.

Oh, and @esagara, accept the invite to the team already.

@hbillings
Copy link
Collaborator

I remember my module needs some work. Gotta get on that.

Otherwise, I think the only thing I'd suggest considering is some discussion of debugging. We never really got to that last year and it might be helpful.

@chrislkeller
Copy link
Collaborator

May just edit with thoughts as I work through the projects in the next couple of days...

  • immediate thoughts
    • Agree on letting go of wakari... Are we in a position to do that...
    • Possible to have the projects lead into each other more gracefully?
    • Looking back I wonder if first project - strings, ints, etc - is too early to have the code structured as functions. Permission to write gibberish?
  • down the rabbit hole thoughts
    • Everyone wants to scrape a website. I'm torn on this but folks need something to work toward...
      • ID some everyday tasks folks will use (geocode, json to csv, output findings to text)
    • One thing I use all the time are conversion scripts - csv to json, txt to json - and a geocoder script...
    • Any mileage in showing them how to use something like open states API? Can still show the fundamentals but while creating something they could use...
    • Do we go down a reporter path and a dev path? Are they different enough when someone is starting out?

@tommeagher
Copy link
Collaborator Author

@hbillings I thought we had a discussion of debugging on the agenda last year. Did we just not get to that? It'd be great to include if we can.

@chrislkeller, are we assuming that everyone is going to rework or sharpen the same lessons they did last year?

Yes, we can get rid of Wakari. We can have Anaconda installed on all of the (Windows) machines, and use Windows Powershell/ipython with a Text editor. Seems like the easiest/fastest way to do it, but am open to other ideas. Whatever we settle on, @richardsalex can help get the computers prepped.

It would be possible to have all the projects of the day gracefully glide together, Chris, but it may be more work than we need. I kind of liked the different projects last year that reflected common tasks a reporter coding in a newsroom might take on.

  • Looking back I wonder if first project - strings, ints, etc - is too early to have the code structured as functions. Permission to write gibberish?

Chris, yes, I think you can write gibberish. I think the format you did, with a series of progressive files, works really well for a tutorial at home. If I recall correctly, in our session last year, we compressed a lot of that, and jumped to the later steps. @esagara and @hbillings, please correct me if I'm wrong. You may be able to condense that, Chris, into fewer steps that still contain all the elements and build on one another.

Our target audience for the class is data reporters who want to learn to code to improve their stories. Those starting out who want to be devs would probably need to learn the same concepts as those on the reporter path. Based on the people in the class last year, our students were comfortable in Excel and Access and wanted to get better stories via scraping and munging. Some will definitely move on to mapping, apps and other things, but they gotta learn the basics first. Can we teach JSON to CSV? Probably, we just need to figure out which lesson that should fall into.

Maybe we should reframe the question a bit: What kind of projects are going to be enticing enough that the students will find them immediately applicable and will give them the incentive to keep learning when they get back to their own newsrooms. I thought the ones we did last year hit that sweet spot pretty well, but we can always improve.

I think OpenStates might be beyond the scope of the day, but I'd be interested to hear what others think.

I'd encourage any of you to start filing tickets for revision or change tasks you want to take on (or you notice someone else needs to). If anyone else wants to weigh in on this general thread, please do. Otherwise, in a few days, I'll start hashing out more specific issues and setting some milestones.

Thanks again for all your work, everyone!

@tommeagher
Copy link
Collaborator Author

fwiw, I thought I'd share a little feedback I just got from one of our attendees last year:

Last year I really enjoyed your bootcamp but I was lost on the basic principals of python. Since then I have worked my way through codeacademy and spent the last year playing about with python.

For me the tip calculator in codeacademy is a great test on whether someone can create a basic variable and function - make additions to the function, print results and preform calculations. If they don't have those basics then I don't think they'll successfully be able to repeat your exercises independently.
...

I tried to run in python before I could walk and it really kicked me in the ass. learning things like explicit string conversions and if/else/elif helped me enormously. I tried to scrape before but I was only mimicking someone else's code and didn't know how to de-bug when I ran into difficulty.

Tragically I was the only programming (albeit badly) journalist in my old newsroom and it meant when I hit a brick wall I was stalled.... It really limited my ability to attempt ambitious data projects and we ended up sticking to FOIs, Excel and SQL.

I want to deliver a project this year where I scrape, parse, clean and analyse a data set and then find my stories.

@tommeagher
Copy link
Collaborator Author

I think this discussion is winding down, so I'll close this one. If anyone has specific questions you want to kick around, please feel free to open another issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants