Slashdot Mirror


The Site That Teaches You To Code Well Enough To Get a Job

HughPickens.com writes Wanna be a programmer? Klint Finley reports that software developer Katrina Owen has created a site called Exercism.io where students can learn to craft code that's both clear and efficient and get a lot of feedback on what they're doing right and what they're doing wrong. Exercism is updated every day with programming exercises in a variety of different languages. First, you download these exercises using a special software client, and once you've completed one, you upload it back to the site, where other coders from around the world will give you feedback. Then you can take what you've learned and try the exercise again. The idea was to have students not only complete the exercises, but get feedback. Exercism.io now has over 6,000 users who have submitted code or comments, and hundreds of volunteers submit new exercises or translate existing ones into new programming languages. But even Owen admits that the site is a bit lacking in the usability department. "It's hard to tell what it is just by looking at it," she says. "It's remarkable to me that people have figured out how to use it."

3 of 131 comments (clear)

  1. Re:PHP would be nice... by __aaclcg7560 · · Score: 3, Informative

    If you have the discipline to write good code, you can write good code in PHP.

  2. Face Palm by lsllll · · Score: 3, Informative

    Looking at their example conversation, I had no choice but to face palm. Having never looked at Ruby code before, I was able to deduce perfectly well what the first iteration was doing. Do we really need to expand a function that can accomplish its task in one line into a function that may be a little more readable?

    I wonder how today's programmers would make do with resources that were available in the early days of computing, or even when the IBM PC came out. Having to deal with small amounts of RAM caused programmers to be extremely creative in their programming. Granted that we do not have to go to such extremes today to write programs, reading about such practices is still very inspiring.

    --
    Is that a roll of dimes in your pocket or are you happy to see me?
  3. Re:coding is easy, implementing seems mysterious by Anonymous Coward · · Score: 2, Informative

    You're not a coder at all. And there's nothing wrong with that, you just need to start at the absolute beginning. Start by learning some algorithms in pseudocode (Quicksort, trees, linked lists, graphs, etc.) so that you become familiar with the programming mindset (logic and visualization).

    Then pick a language that you can starting implementing them in (Python, done). All you'll need is Linux distro like Ubuntu and Ctrl-Alt-T to get a bash shell and vim. Or a Mac since it's BSD-based. No Windows.

    Once you've broken through the mental wall you're currently stuck behind, then start reading more detailed articles around that single language. In parallel, read and practice the bash command line and develop an understanding of the underlying OS.

    Don't get overwhelmed by the huge number of frameworks, libraries and languages out there, getting your arms around them comes with time. The point is that everything blossoms from building up from a solid base, and if you're truly motivated to stick with it.

    But most important of all...don't just read. You must type, run and debug constantly. There are way too many hipsters that call themselves programmers because they read some Ruby articles on the interwebs. Don't be one of them.

    Best of luck.