
Show HN: Coding Monkey - thomship
https://www.codingmonkey.io
======
cgrusden
Initial feedback, why does this site have all the fancy loading gifs etc, why
not just ake it basic html like sites like
[https://learnpythonthehardway.org/book/](https://learnpythonthehardway.org/book/)
? It will help keep the maintainability of the site down since this feels like
overkill for a info site

~~~
thomship
To be honest I just used the Aurelia Skeleton app -
[https://github.com/aurelia/skeleton-
navigation](https://github.com/aurelia/skeleton-navigation) which had font
awesome already part of the project so I just used it cause it was readily
available and did the job. Frontend work is certainly not my strong suit!

------
thomship
Hey HN!

Coding Monkey is a site to practise coding in C#. It isn't anything new
(Coding Bat, Hacker Rank all do the same and better) and still rough around
the edges but it is the first side project I have actually finished and
shipped so any feedback would be great.

~~~
kwhitefoot
Not sure that I can see much value in it if the response to a failure is just
a compiler error message. The response should explain why the submitted
solution is wrong and give a suggested solution with an explanation of why it
is to be preferred.

For instance this compiles in Visual Studio 2015 but fails on Coding Monkey:

    
    
        public class StringManipulation
        {
            public string GetFirstLetter(string input)
            {
                return input.SubString(0, 1);
            }
        }
    

with this error:

CS1061 5 'string' does not contain a definition for 'SubString' and no
extension method 'SubString' accepting a first argument of type 'string' could
be found (are you missing a using directive or an assembly reference?)

What's going on? MSDN says that string is an alias for System.String which
definitely has SubString().

I don't use C# very much but I do use .Net very heavily so I am very
interested to know why that code doesn't work on Coding Monkey. Perhaps it
will improve my code.

Edit: I do realize that explaining why something is wrong is a seriously
difficult task, but eventually the same wrong answers will appear repeatedly
so a canned response should be possible in the end, at least for some code.

~~~
thomship
Hey - I think that is a problem on my side. I have taken the site down for now
after someone gave me some feedback on a security issue. To be honest I am not
too sure what is going on here but I shall have a look - while changing the
code execution engine to be a bit more secure/robust.

As far as canned responses it is a good idea - and would definitely add some
value, for now, I wanted to get a rough copy out to see what the feedback
looks like and I shall have a look to see how I might be able to do this.

------
mikerg87
How can I track my progress. Anyway to know how many compiles / runs it took
to get an exercise right

Is fun though

~~~
thomship
Yeah, it definitely needs some user progress tracking. I like how CodingBat
does this - it tells you how many times you attempted and even has graphs. It
is something I am looking to add once I get some of the more fundamental
things (security) right.

