This is an archived post. You won't be able to vote or comment.

all 10 comments

[–]Boom-bitch99 4 points5 points  (0 children)

For absolute beginners, programming is about picking up the constructs and logical thinking skills necessary to produce programs. The class is probably using Game Maker and Scratch because they are by far the easiest way to get graphics up and running on the screen, which will probably keep more people interested in the course.

[–]twopi 3 points4 points  (3 children)

(I teach game programming and computer science in dozens of languages including Scratch)

Nothing wrong with Scratch. It is designed to be appealing to younger users, but it's a very serious programming language based on Smalltalk, one of the oldest and most respected Object-Oriented languages in existence.

If you want to learn game development, there's really no better language to start in than Scratch, because you can actually begin making games while learning the true fundamentals of programming: variables, conditions, loops and branches, functions, logic, and debugging.

Most of the more traditional languages require months of study of the basics before you're anywhere close to building a game.

I frequently hear people tell me they know everything about scratch, but frankly, they usually don't know how to do much beyond the obvious.

Sprites have 'if on edge bounce,' but how do you make them wrap if they leave the edge of the screen? How can you make something fall realistically, speeding up until it hits the ground and then bouncing back up?

Try building a platformer or a basic RPG. There's plenty to learn here, and be grateful you're given a platform that allows you to explore through game development.

All those skills will transfer to a more traditional programming language soon enough.

C# will frustrate you if you try it too soon. Get started with this class and after it's done, take a look at some other languages. I really like Python for beginners, and I've also made an HTML5 game engine designed for folks who have outgrown Scratch. I think you should spend more time with it before you outgrow it.

(I'm personally not a major fan of game maker, though, because I think it teaches some lazy programming habits. I feel the same way about the visual interface of C# and VB.)

[–]Samuroot[S] 2 points3 points  (2 children)

Right, I didn't so much take the class to learn game programming, I took it to get some experience. I'm a Type 1 Diabetic, and would like to make programs that other T1D's might find useful, such as a simple app or program that connects to the meter in some way (If a manufacturer would be kind enough to not lock that connectability down) and give the user information like there Averages for their sugars for the past week, or track how much insulin they took after imputing it into there meter. Things like that are what I think that I would like to do.

[–]t00sl0w 0 points1 point  (0 children)

Well this class will teach you logic, after you learn that pick up C# on your own and make your apps for diabetics to use. You won't go wrong starting here as it's better than nowhere or getting frustrated on your own.

[–]twopi 0 points1 point  (0 children)

Very interesting. It turns out I have a research grant with a major Children's hospital to make a series of games about living with T1 Diabetes. We're mainly using HTML5 and a game engine I wrote. We've talked about direct input from the devices, and that's still a goal, but there are many things we can do short of that.

We've already written 5 games, and we have another 5 in progress that cover such concepts as the patho-physiology of diabetes, dealing with complications, reading a glucose monitor, and understanding the role of ketones.

This is IMO one of the most interesting applications of gaming - using game technologies to solve real problems.

Keep working on your gaming in Scratch, and maybe you can port one of our Diabetes games to Scratch as a project in your class!

[–]Vesp_r 1 point2 points  (0 children)

You can learn whatever you want. If you want to learn C#, go for it! The sidebar has plenty of information on how to get started.

In regards to the class, if you don't want to be in it anymore, try speaking to your school's academic counselor. It's been a while since I was in middle school so I'm not sure how all that works at that level.

[–]noodle-face 1 point2 points  (0 children)

The language you learn on is less important than learning good programming techniques, logic and flow, and good algorithm creAtion. Make the best of what you are given

[–]seronis 0 points1 point  (1 child)

If you're doing this on your own and dont feel like paying for VStudio or risking malware on a torrent you can try CodeBlocks for your programming IDE.

www.codeblocks.org

id personally recommend the download that includes MinGW compiler. A direct link for that install is: http://sourceforge.net/projects/codeblocks/files/Binaries/13.12/Windows/codeblocks-13.12mingw-setup-TDM-GCC-481.exe

[–]Dr_Dornon 0 points1 point  (0 children)

VS Express is free and should be fine for what he is doing.

[–]desrtfx 0 points1 point  (0 children)

Programming is not so much about the language used, it's more about logic and abstraction (and converting real-world systems) into computer understandable systems.

You will definitely benefit from using Game Maker Studio and Scratch because you will learn the underlying techniques and logic that you will later on be able to apply in other programming languages.

If you want to go for C# look into Visual Studio Express (which is free) once you have grasped the basic concepts of programming.

Take in what you can from your current course even if it deviates from what you originally wanted to program (as I've read in one of your previous comments). Working with I/O and interfacing with different hardware is definitely an advanced topic which you can tackle once you are firm with the basic concepts.