Take the python challenge

python-challenge-level-1

It’s hard to believe that we haven’t covered this one before. If you enjoyed out Barcode challenges from last week, perhaps now is the time for you to take the Python Challenge. We made it through the first 18 levels about a year back but with a total of 33 levels we’re not even close to being finished.

This is an excellent opportunity to learn Python if you’ve never tried it, or test your skills if you’ve already got them. We’d suggest using IDLE which is available as part of the Python language download. Because Python is an interpreted language, IDLE allows you to try out each line of the code you are writing and add it to your program as you get different sections working.

The levels start out fairly easy and require some sniffing around, such as looking at the source code, and dissecting images with Python’s various libraries. As you pass each level, you will be granted access to the Python Challenge forums in order to see how others solved the level. By solving each level and then seeing what different solutions entail you grow your knowledge of the language and reinforce your understanding of how to use it.

Comments

  1. Falcolas says:

    Yeah, but don’t do this if you are not a fan of riddles. Programming skills I’ve got in spades. Riddle skills I don’t got.

  2. therian says:

    Why Python ? why not C ? C would be much more related to hacks because it apply to uC and low level which needed in thought projects.

  3. VIPER! says:

    ARE YOU ASKING FOR A CHALLENGE!!?!?

    -20XD6

  4. Eraser says:

    Python eats C for dinner.

  5. CH says:

    Here’s a hint so as not to waste your time.
    Challenge No.5 includes a verbal riddle, that I’ll give away for two reasons:
    1) It Isn’t a python challenge, it’s totally unrelated to actual programming (except maybe a knowledge of terminology)
    2) It’s totally CRAP!
    Apparently the author thinks “Peak Hill” sounds enough like “pickle” to constitute a riddle. It doesn’t!

  6. pythonnoob says:

    when it said this is a good way to learn python i thought “hey cool lets do this” but
    i dont even understand the first level
    lol i know nothing about python

  7. pythonnoob says:

    yay i got the first lvl

    lol

  8. jamieriddles says:

    A real hacker would bruteforce the urls

  9. Josh says:

    I gotta say that IDLE kinda sucks… I use ActiveState Komodo edit, but eclipse with a python interpreter works just as well

  10. zetsway says:

    I agree with Eraser. You can do so many hacks w/ Python

  11. walt says:

    i wonder if the challenge works on monitors that aren’t from the mid 90’s.

  12. therian says:

    @Eraser yeah right, and they all drown in java(sarcasm)

  13. riazap says:

    @therian: You really are a luddite, aren’t you?

  14. Dan says:

    “reinteract” is a good interactive python program. You can edit your program and run it like a Mathematica notebook.

  15. therian says:

    @riazap maybe, I just like power

  16. Brad says:

    @therian Your comment about C would be a better language for hack a day….

    Use C to do the challenge. There is no requirement on “how” you find the answer.

    Better yet find a micro you like and do it in uP assembly.

    I used a shift register for one of them. Would have been just as easy to do it in asm.

  17. Randy says:

    I agree with the comments that this method of teaching, riddles, does NOT teach the language. Could be presented better.

  18. brian says:

    @Brad:

    If he couldn’t figure out that the challenges didn’t strictly require Python, I doubt he could solve them with C.

  19. Colin says:

    @Randy:

    While I can understand you thoughts about puzzles not being the greatest way to teach programing, it does on the other hand make you think and to come up with solutions. More to the point, if you know a certain language fairly well, it will will exercise problem solving skills.

    Being able to look at abstract concepts and figure out a solution is pretty vital to being a decent programmer.

  20. Dan says:

    I could only get through the first four before I lost interest… There are a lot of languages I use but those first four problems seemed easiest to solve in shell. What could be easier than using “tr” for problem 2? The first one was easiest to do with a calculator, “gp” is the one I use. The third problem can be easily solved using egrep and vim. The fourth is just a one-liner using curl and tr, although the “twist” he put in that one ended up wasting some time.

  21. cptfalcon says:

    @CH, I agree. The problems aren’t well defined, you simply do not know what you’re solving if it is abstract enough (peak hill and pickle?). I simply lost interest on problem 5.

  22. pedant says:

    “Python is an interpreted language”

    There’s no such thing. Python is a language which is often run by an interpreter. There are also several compilers and more in the works.

  23. Thanks for the info, I have never really used Python before but have been told that it’s a great language for writing security applications, I’ll have a go at the riddle when I’m more proficient with the language

  24. scott says:

    I have been doing the “challenge” for the past few days. Yes, I have learned some new python and gotten some good exposure to some new modules. That said, the amount of learning python vs. spending time in a labyrinth of riddles (mostly just for the author’s apparent amusement at watching ants fry under a magnifying glass), I’d have to say it’s not a good method to teach or inspire programming in python at all. For my money, take the same challenges and pose them as direct questions and let interested programmers work on them I think the riddles aspect is a huge turnoff to most people – it’s 90% riddles and 10% programming. If that much.

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

Follow

Get every new post delivered to your Inbox.

Join 93,704 other followers