Hello there, I am a computer science teacher who teaches Visual Basic to 11-14 year olds and c# to 15-16 year olds. I am always on the lookout for stand alone resources that I can tell the kids to play with at home. I was really excited to discover exercism, I love the look and feel of the site.
Unfortunately, for raw beginners at school, even your Hello World program might be beyond them. Here’s why.
As a school, we teach students to program in VB console and, of course their first code is “Hello World”. We tell the kids to always write code between Sub Main() and End Sub and to use Console.WriteLine to write to the screen. Typical VB code would look like this:
Module Module1
Sub Main()
Console.WriteLine(“Hello, World!”)
Console.ReadKey()
End Sub
End Module
exercism’s beginner code, however is substantially different:
Public Module HelloWorld
Public Function Hello() As String
Return “Hello, World!”
End Function
End Module
Pretty much none of what I learned in the top program, works in the bottom one. Indeed, I would argue that setting up a Function and returning a value from that is really not beginner code at all.
I looked at your c# Hello World code to and, the same thing applies
Hello World (actually the code given as Default in Visual Studio)
using System;
namespace Hello_World
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine(“Hello World!”);
}
}
}
exercism’s Hello World
public static class HelloWorld
{
public static string Hello() => “Hello, World!”;
}
I can see that your code is more elegant but, again, it isn’t really beginner code. Try explaining what an “Expression bodied method” is to a 14 year old! Even the ones paying attention would think that => means “equal to or more than”.
So, I would have loved to direct my students to your site but, your “easy” tasks are too difficult for them. If I directed them to exercism, most of them would give up straight away.
My advice would be to use the Hello World program plus some starter questions to help users decide if they are ready for your site. If not then, point them to some resources.
Your site is great but, I don’t think its for absolute beginners. Assessing user’s competence at the beginning might save them a lot of time and provide you with useful data.
Have a great day! SJ