Stories
Slash Boxes
Comments

SoylentNews is people

posted by martyb on Friday September 23 2016, @02:49PM   Printer-friendly
from the bonus-points-for-clean-compile? dept.

Codingame has developed a platform to gamify coding education for developers, and provide a channel for employers to find prospective employees. From the website:

Practice & learn the fun way
    Practice pure code

Learn new concepts by solving fun challenges in 25+ languages addressing all the hot programming topics.
    Learn from the best

In a matter of hours, discover new languages, algorithms or tricks in courses designed by top developers.
    Become the expert

Our approach has been designed to lead advanced developers to the next level.

There might be developers, team leaders, or employers in the Soylent community who would find it useful.


Original Submission

This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 3, Insightful) by Anonymous Coward on Friday September 23 2016, @03:04PM

    by Anonymous Coward on Friday September 23 2016, @03:04PM (#405559)

    Lets hear it for extrinsic motivation!

    Having written research papers on the gamification in education and remaining unconvinced of its ability to encourage deep learning, I have to say that this kind of thing is unlikely to really do much because focusing on reward and recognition is fine until there isn't any and you are having to slog through a problem because of interest (or to keep a job so you can continue to live). Intrinsic motivation will beat it over the long term every time.

    That said, encouraging more kids to try programming so that they can see if they have an interest in taking it further is a good thing - its just the reliance on gamification that worries me (exacerbated by the use of the trivializing word, 'coding'). However, as this may be aimed at adults, I see little point in this other than as a service that gathers data to sell.

    • (Score: 2) by Thexalon on Friday September 23 2016, @04:47PM

      by Thexalon (636) on Friday September 23 2016, @04:47PM (#405607)

      Here's the thing about gamifying coding: If you're coding something fun, it's already pushing the reward centers of your brain as soon as you get the damn thing to actually work correctly. So you get them started with writing games, or graphics, or something else totally pointless and silly, not spreadsheets or (ugh) business applications, they have fun with it, and don't see coding as too much of a chore.

      So all the alleged benefits of gamifying go away.

      --
      The only thing that stops a bad guy with a compiler is a good guy with a compiler.
    • (Score: 2) by jelizondo on Friday September 23 2016, @06:46PM

      by jelizondo (653) Subscriber Badge on Friday September 23 2016, @06:46PM (#405656) Journal

      What is a game but a drill in colorful clothes.
      - The Diamond Age, Neal Stephenson

    • (Score: 2, Interesting) by johaquila on Friday September 23 2016, @09:49PM

      by johaquila (867) on Friday September 23 2016, @09:49PM (#405732)

      Fact is that in practice, when gamification is well done, it works for most people. The question it can replace intrinsic motivation when none exists. A lot of people are intrinsically motivated to learn something but for some reason can't make use of the fact. For example because they have even more intrinsic motivation to do something else.

      In the case of Duolingo it is well known that it works. With its 'streak' system, Duolingo creates an incentive not to skip even one day of learning with it. With its 'XP', 'level' and 'keep the tree golden' systems it creates incentives to do (much) more than the bare minimum to preserve the streak. (There are also additional site features that reward actual competence in the language: tests, and opportunities to use the learned language for communication in the forums.) These incentives are of course extrinsic factors. But together with the addictive rhythm of using Duolingo, they are the basis for lasting behaviour change towards a daily routine of language learning.

      For some people this does in fact not work at all because they have no extrinsic motivation at all. (E.g., they may reach enormous amounts of XP and a high 'level' while never leaving lesson 1, not asking why the interface doesn't prod them to continue, before a year or so has passed.)

      To most users, Duolingo constantly provides the good feeling that comes with applying something correctly that you learned recently. Yes, they could also get it outside Duolingo by doing lessons from a book. But most wouldn't do it. Yet they are doing the equivalent in Duolingo because it's gamified.

      Of course, after some amount of language learning with Duolingo, its users may well reach a point where they no longer need the gamification. In particular, after finishing a Duolingo course one should have no trouble reading easy books in the new language. In my experience this is one of the most effective ways to get to a much higher level. There is a certain danger that there is a long gap after finishing a book. Here the gamification comes in again, as Duolingo provides incentives to continue using the site daily even after the course is finished. Therefore, learners are more likely to start reading another book rather than forget about the language.

      I am not yet convinced that Codingame uses gamification in the most effective way. They certainly get some things right - maybe even enough things.

  • (Score: 0) by Anonymous Coward on Friday September 23 2016, @03:54PM

    by Anonymous Coward on Friday September 23 2016, @03:54PM (#405579)

    People have different preferred learning styles. In addition, many people learn better from multiple approaches.

    Gamification is unlikely to produce a star programmer (or anything else, other than a star gamification player), but if it helps people get their feet wet, more power for them. BTW I feel the same about online videos like Khan Academy.

    • (Score: 0) by Anonymous Coward on Friday September 23 2016, @04:27PM

      by Anonymous Coward on Friday September 23 2016, @04:27PM (#405595)

      You are right that people have preferred learning styles, however the actual effect of learning in your preferred style versus a different one is negligible. The whole learning styles stuff has been thoroughly debunked for some time now. This lecture covers learning styles and some of the other big 'neuro' myths in learning: https://www.youtube.com/watch?v=V_a9En4YgH8 [youtube.com]

      Some topics don't lend themselves particularly well to particular styles anyway. Programming is a practical discipline and ultimately the learning is best achieved by doing it (i.e. Kinesthetic, in the VAK inventory), though you generally can pick up some of it by, say, reading or perhaps watching a video (i.e. Visual). It is unlikely that listening to a learning resource on programming would do anyone any good, though (i.e. Auditory).

      • (Score: 1, Funny) by Anonymous Coward on Friday September 23 2016, @04:54PM

        by Anonymous Coward on Friday September 23 2016, @04:54PM (#405611)

        This lecture covers learning styles and some of the other big 'neuro' myths in learning: " rel="url2html-1962">https://www.youtube.com/watch?v=V_a9En4YgH8

        Yeah, well thanks, but no thanks for the link. I don't learn well from lectures. I'm more of a hands-on guy.

      • (Score: 2) by JNCF on Friday September 23 2016, @04:59PM

        by JNCF (4317) on Friday September 23 2016, @04:59PM (#405617) Journal

        It is unlikely that listening to a learning resource on programming would do anyone any good, though (i.e. Auditory).

        I think you're mostly correct, but podcasts that focus on a particular ecosystem that is relevant to your interests can give you a rough overview of some new libraries and major updates to libraries or languages while you're also focused on washing the dishes (or whatever). It's definitely not ideal for the nitty gritty details, but I've found some useful leads that I later googled details on.

    • (Score: 2) by dyingtolive on Friday September 23 2016, @05:02PM

      by dyingtolive (952) on Friday September 23 2016, @05:02PM (#405619)

      You lose a lot in the non-interactive nature of the Khan videos, but I think looking at them as a replacement for proper instruction is the wrong way to do it. They're a great refresher course for someone who just needs a nudge in the right direction.

      I'm really scruffy with math that's much more complicated than Algebra or Trig. Used to be pretty sharp ten years ago in college, but I just don't use them on a regular basis. I ran into an issue about a year ago I actually needed Calc for. A couple Khan videos later and I was back up to speed.

      --
      Don't blame me, I voted for moose wang!
      • (Score: 0) by Anonymous Coward on Friday September 23 2016, @06:13PM

        by Anonymous Coward on Friday September 23 2016, @06:13PM (#405644)

        I prefer to think of them as a form of entertainment. They are interesting but I view ones on topics I don't have a practical need for.

      • (Score: 0) by Anonymous Coward on Friday September 23 2016, @09:00PM

        by Anonymous Coward on Friday September 23 2016, @09:00PM (#405715)

        I'm a big fan of Schaum's outlines, $20 a pop, for review of basic math (precalculus through linear algebra and differential equations). Take one of them somewhere to a quiet place where you can work on them for at least 90 minutes at a stretch, preferably sipping coffee. Bring a college-ruled pad and at least two good ball-point pens. It takes a long time (calendarwise) to work through even one book.

        I always feel satisfied when I'm carting a couple dozen double-sided sheets of scribbling off to the recycle bin as I leave.

      • (Score: 0) by Anonymous Coward on Friday September 23 2016, @10:34PM

        by Anonymous Coward on Friday September 23 2016, @10:34PM (#405751)

        but I think looking at them as a replacement for proper instruction is the wrong way to do it.

        What is "proper instruction"? "proper" is subjective. Some people prefer self-education and excel at doing so. Maybe you don't, but others might.

  • (Score: 3, Informative) by Marand on Saturday September 24 2016, @03:32AM

    by Marand (1081) on Saturday September 24 2016, @03:32AM (#405835) Journal

    No real opinion on the concept, but they get points for a few things:

    1. No requirement to sign up for anything to see the basic overview/tutorial of the concept. More sites should do this, because requiring a sign-up process can discourage people. Why sign up if you aren't sure you're interested in something?

    2. Doesn't cover everything, but there are more language choices than I expected it to have. In addition to the obvious stuff (C#, C++, Java, Javascript, Python, PHP) they also have a respectable mix of other things. The full list of languages: C#, C++, Java, Javascript, Python, Bash, C, Clojure, Dart, F#, Go, Groovy, Haskell, Lua, ObjectiveC, OCaml, Pascal, Perl, PHP, Ruby, Rust, Scala, Swift, VB.NET

    3. Has emacs and vim editing mode options

    4. There's a plugin that allows use of external editors in addition to the web-based IDE.

    In a way it reminds me of 4clojure [4clojure.com], a Clojure puzzle solving site, though 4Clojure is more tutorial-esque in introducing concepts, less shiny, and only focuses on one language.

    • (Score: 2) by Marand on Saturday September 24 2016, @05:35AM

      by Marand (1081) on Saturday September 24 2016, @05:35AM (#405859) Journal

      I looked at a couple of the puzzles and noticed one problem with the "hey cool, lots of languages here" approach the site takes. Each puzzle starts with a skeleton file to get you started; sets up namespaces, some variables, gives you an idea of where to go from there. The problem with that is it sets up the templates in a similar way in every language, which means you get pushed toward imperative solutions even in the available functional languages, because part of the code is set up imperative-style for you before you start.

      That's not to say you can't solve them functionally, but I think that makes them less useful as a learning tool because it could subtly encourage bad habits. I was looking at some of the published Clojure solutions on the easier things and that seems to be exactly the case: lots of people using loop/recur as an imperative bludgeon, def being used for variable assignment in loops, stuff like that.

      It might be fun for intermediate practice once you've gotten more comfortable with FP style elsewhere, though, since a functional approach requires stripping out all the skeleton code and rewriting ground-up to be functional.