Live data from Hacker News

Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

jeremymorgan.com

31–40 of 42 posts

Re: Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

#31

You could add links to the other chapters at the beginning of each article. This way it will be much easier for readers to navigate through the series.

I'm going to add a menu or nav bar for this, you're right it does seem a bit hard to find especially since I've stuffed other articles between them.

Re: Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

#32

Why take all the pain of creating/editing screenshots, explaining through an article? You could have made a video instead. I personally prefer videos to articles when it comes to learning something -new-.

Actually I'm going to be working on Videos to accompany every tutorial but honestly I don't know if I'll stick with it.

The reasons being: (1) I am horrible at editing and producing videos and that time I spend struggling could be time creating more written tutorials and (2) I'm not sure that people will really want / appreciate it yet. Many people (myself included) prefer text. You can't always be in a quiet place or have headphones on to listen, and reading a page at your own pace seems to be easier than video. But I am considering it, I'll do one or two and see what the feedback is for that.

Re: Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

#33
Thank you everyone for your feedback on this. My reason for going to HN is because it's comprised of experts and people in the field which is not my target audience but can help steer me in the right direction. With your suggestions I'll be changing and adapting as I go, and I'll go back and make past ones better and the end product will be of far higher quality. So I appreciate everyone reading this and responding back, and I'm pretty sure the newer folks using these will to.

Re: Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

#34

I find interesting that you took the approach of explaining a console application instead of a form app. More interesting from a technical point of view but maybe less interesting for a someone who just wants to hack something together to see what happens. When I started using C I always found hard to follow this tutorial because I like to use what I learnt in my own programs but I really did had no ideas of what con…

as I explained in another question it's mostly so the reader can get really "hands on" and write the code out by hand without code completion and other assistance. It may not be for everyone, but for core language stuff I think it's essential. Later in the series I'll definitely be integrating Visual Studio more

I agree with your choice. This is definitely the best way to learn.

Re: Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

#35

FYI >> Using Statement - Defines the scope for your application’s objects and disposes them when they’re done. This isn’t super important now, but I’m going to cover some other ways we can implement using statements in C#. What you need to know now is it’s including the types in the System namespace in your scope so you can use them. This is entirely wrong. The 'using' in your example is the using directive, not the…

After looking at the documentation I believe you're correct. I'll fix my explanation of this so it doesn't confuse. Thank you. My reason for focusing on the command line is simply because I want the reader to focus on the code, and the nitty gritty. The possibility of mistakes is high, which they'll learn from. Visual Studio is the greatest tool I've ever used and you can't really build anything valuable without it b…

I agree about the IDE building bad habits. Almost all people I know who started programming in Visual Studio have atrocious formatting habits - they believe code formatting is something they don't need to care about because the IDE will do it automatically for them.

Re: Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

#36

FYI >> Using Statement - Defines the scope for your application’s objects and disposes them when they’re done. This isn’t super important now, but I’m going to cover some other ways we can implement using statements in C#. What you need to know now is it’s including the types in the System namespace in your scope so you can use them. This is entirely wrong. The 'using' in your example is the using directive, not the…

> Also, I really don't see why you are focussing on using the command line to compile programs. This is really not user friendly. The possibility for mistake is very high, which will certainly throw the target user of his/her tracks.

I disagree.

In the Netherlands, the driving exam includes being able to accelerate from a standstill while facing uphill. On first glance, this is ridiculous, since virtually all of the Netherlands is flat (and by that I entirely flat). It is a big hassle and hampers learning, because driving instructors have to drive long detours just to get to a city's single 5 meter long sloped road. More learning time is wasted, because there's a queue before that slope, entirely made up of other driving students (not kidding!).

However, at second glance, you realize that learning this useless thing is great because it allows you to do more with your car than the absolute basics. For example, I can take a car holiday abroad or queue in parking garages without getting nervous about how that thing with the hand break worked again.

It's similar for programming. As these tutorials are clearly meant for learning C# as a first programming language, immediately giving the user tools that do some of the hard work for them hampers their learning, because it is difficult for them to separate between the programming language concept and its corresponding tool support.

By learning the concepts independently from the tool (both language constructs and compiler toolchain concepts), the learner gets a more general understanding of what's going on.

Need to do Go later? Ah, a compiler, I know what that is.

Need to do Ruby later? Ah, no worries, I've done without autocomplete before, and oh, hey, classes and methods!

Re: Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

#37

I find interesting that you took the approach of explaining a console application instead of a form app. More interesting from a technical point of view but maybe less interesting for a someone who just wants to hack something together to see what happens. When I started using C I always found hard to follow this tutorial because I like to use what I learnt in my own programs but I really did had no ideas of what con…

The mostly linear execution of a console app is IMHO much easier to understand than the event-based paradigm of most GUI frameworks.

Re: Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

#38

One thing that jumped out at me right away is your indentation style which is a wee bit messy. New programmers need to be taught good/consistent coding style in the early stages of their development as well as how to use the language. Your examples should reflect what are generally accepted, though not mandatory, conventions. The first thing I do if I'm coaching/mentoring a C#/.NET novice is to get them to follow the…

^this

There's bad indentation e.g. a for block not indented, and a mixture of C and Java style indentation. I recommend following the standard Microsoft style indentation which is place the opening brace on a new line on its own.

Also, "it will compile and run, then ask the user to press a key go back". One missing 'to' doesn't seem so bad but the accumulation of these little details really adds up.

Really nice though, I like taking the user back to the console and command line and walking them through everything. Best of luck.

Re: Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

#39
"Side Note: if we end up never putting anything in this variable the compiler will spit back an error. It’s ok to initialize with nothing as long as you populate it later."

You mean if we end up /using/ it before we put anything in it we'll get an error. If we never put a value in it, the compiler will spit back a warning.

"Then we will break out of the loop and move on."

What loop?

Re: Show HN: My C# Tutorial Series: Coding Basics. How am I doing so far?

#40

FYI >> Using Statement - Defines the scope for your application’s objects and disposes them when they’re done. This isn’t super important now, but I’m going to cover some other ways we can implement using statements in C#. What you need to know now is it’s including the types in the System namespace in your scope so you can use them. This is entirely wrong. The 'using' in your example is the using directive, not the…

> Also, I really don't see why you are focussing on using the command line to compile programs. This is really not user friendly. The possibility for mistake is very high, which will certainly throw the target user of his/her tracks. I disagree. In the Netherlands, the driving exam includes being able to accelerate from a standstill while facing uphill. On first glance, this is ridiculous, since virtually all of the…

A great analogy.
Post reply on HN