Skip to content
February 5, 2013 / Damien Irving

Getting past a programming impasse

What do you do when you get stuck while programming? You’ve asked around the office – nobody can help you. You’ve read the relevant online documentation and tried numerous Google search terms – that hasn’t helped either. You’re at an impasse.

Until recently, I knew of only two ways out of this situation. The first involves taking a break for 24 hours or so, before coming back to the problem. It’s basically the advice your mother would give you. Sometimes it works, but let’s face it – you’re not going to miraculously gain new knowledge by simply taking a time out.

The second involves posting your question on a relevant mailing list. Most software packages have a mailing list (e.g. I’m on the UV-CDAT and matplotlib mailing lists) and I must say I’ve had some pretty good success in getting assistance via this method. The biggest problem is that your question needs to be software specific. If you have a more general question about how to organise your data, keep track of your code, combine multiple data processing steps into a sensible workflow, or break up your code into meaningful functions, you’re out of luck.

That’s where Software Carpentry can help. Starting in January this year, they have initiated weekly online office hours. Every Thursday afternoon from 4-6pm EST (i.e. east coast time in North America, which conveniently for me is 8am AEDST on Friday in Australia), they make three or so tutors available to people who have previously attended one of their boot camps. Via online communication platforms like EtherPad, Sreenleap, Skype and/or Google+ Hangout, you can basically sit down with a computing guru and explain your problem. I logged into last week’s session with one question, showed a script I’ve been working on to one of the tutors, and walked away with an answer to three questions.

Great initiatives like this require support in order to continue long term, so don’t be shy. If you have a programming question in the coming weeks, log in for an online office hours session (even if you are yet to attend a boot camp, I’m sure they won’t mind if you join in). Like me, you’ll probably come away with answers to many more questions than you started with!

Advertisements

3 Comments

Leave a Comment
  1. Éric Araujo / Feb 6 2013 15:56

    That’s another great initiative from SC! I would also recommend that you check if your city has user group for your programming language and then go to a meetup or project night.

    • drclimate / Feb 6 2013 16:22

      Thanks for the suggestion, Eric – I just signed up to my local Python Users Group! (I had no idea it even existed)

  2. drclimate / Jul 24 2013 11:05

    In the months since writing this post, Software Carpentry online office hours have been inconsistently available. If and when they are running, they still represent your best option for programming advice. The next best alternative, however, is to post your question on Stack Overflow (http://stackoverflow.com/). Questions on Stack Overflow can can software specific, but they don’t have to be – there are all sorts of questions up there about general programming.

    If you want to know more about how to make the most of Stack Overflow, check out this great talk from PyConAu: http://pyvideo.org/video/2216/getting-the-most-out-of-stack-overflow

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: