ey codemasters q3w

Open discussion about any topic, as long as you abide by the rules of course!
User avatar
plained
Posts: 16366
Joined: Thu Jun 13, 2002 7:00 am

ey codemasters q3w

Post by plained »

i sons been bugging the shit out of me about programming

of course i am clueless

whats a good place for him to begin?

he says he wants to program games
it is about time!
bitWISE
Posts: 10704
Joined: Wed Dec 08, 1999 8:00 am

Re: ey codemasters q3w

Post by bitWISE »

Games, especially interesting ones, can be very tricky things to program. I'd start him off with a basic programming book and if that keeps his interest, then move up to a book centered around games.

C++ is still the top dog as far as serious game development goes but there are some very deep concepts in that language for a beginner to master. C# is a nice step down from C++ and he could potentially start there (Java is on this tier but a little closer to C++, but fuck Java). The easiest but still useful language would be VB.NET.

I'd probably start him off with a VB.NET book that has solid reviews and maybe even work through the exercises with him. The basics are really pretty easy. Once you guys can tackle simple projects without having to stumble around too much, grab a book that gets into game development. The most natural progression would be XNA (but unfortunately Microsoft is dumping this library) and the next more hardcore step up would be DirectX (though they do offer wrappers for DX in VB). At the top end of the challenge spectrum, I would look into C++ and modern OpenGL using GLSL.

Go to this link and download Visual Studio Express 2013 for Windows Desktop to get started:
http://www.visualstudio.com/en-us/downloads/

You can learn a lot of this stuff with online tutorials, but for a true beginner you will like the direction of a book. Sticking with Visual Studio (any version of it really) will be a huge help as well because it is the best development environment by far (trying working with Eclipse for a while and not want to kill yourself).
xer0s
Posts: 12446
Joined: Sat Feb 10, 2001 8:00 am

Re: ey codemasters q3w

Post by xer0s »

If you'd rather him get laid at some point, stick a guitar in his hands...
ToxicBug
Posts: 2011
Joined: Mon May 08, 2006 5:36 am

Re: ey codemasters q3w

Post by ToxicBug »

X2 on what bitWISE said.

I learned how to program three years ago. I did some VBA tutorials (same syntax as VB.NET) and then did a few Excel projects at work with it.

I also did a project with a friend in C#, this showed me what a "real" programming language looks like.

For work I mostly use SQL (T-SQL), but I still do some VBA stuff for Excel.

I tried doing a project in C++, but it's hard. I definitely wouldn't begin with it, at least not without someone guiding me through the whole way.
User avatar
GONNAFISTYA
Posts: 13369
Joined: Sun Jan 23, 2005 8:20 pm

Re: ey codemasters q3w

Post by GONNAFISTYA »

Image
bitWISE
Posts: 10704
Joined: Wed Dec 08, 1999 8:00 am

Re: ey codemasters q3w

Post by bitWISE »

As far as sample projects, here is a good list in order of difficulty:

Tic tac toe
Pong
Tetris
Block breaker
PAC man
Mario

You start off with objects, states, players, loops and so on. Then you add in motion and scoring. Then you add in more complex motion and scoring. Then you add in the idea of progressive levels. Then you add in basic AI. Then you take all those concepts to the next level with animation.

And shit gets real in 3d so be ready for lots of frustration and demotivation.
Last edited by bitWISE on Thu Dec 05, 2013 3:52 pm, edited 1 time in total.
Pext
Posts: 4257
Joined: Thu Aug 28, 2003 7:00 am

Re: ey codemasters q3w

Post by Pext »

Is your son really smart?

http://elm-lang.org/edit/examples/Inter ... /Mario.elm

Also. I don't think the "start at zero" approach bitWISE is advocating is suitable anymore. You don't have to learn game programming by starting from scratch and first writing a game engine.

Other resources:

http://learnpythonthehardway.org

https://www.coursera.org/course/gameprogramming
[requires no programming skills]

https://www.udacity.com/course/cs255
[requires intermediate programming skills]
User avatar
Eraser
Posts: 19174
Joined: Fri Dec 01, 2000 8:00 am

Re: ey codemasters q3w

Post by Eraser »

My suggestion: avoid VB like the plague. Seriously.
Pext
Posts: 4257
Joined: Thu Aug 28, 2003 7:00 am

Re: ey codemasters q3w

Post by Pext »

Eraser wrote:My suggestion: avoid VB like the plague. Seriously.
sucarK
Posts: 8
Joined: Wed Aug 21, 2013 4:02 pm

Re: ey codemasters q3w

Post by sucarK »

X3 what bitwise said.

I'd strongly recommend c# though. I made a few games for the xbox 360 for the kids. Really easy to pick up.
User avatar
MKJ
Posts: 32581
Joined: Fri Nov 24, 2000 8:00 am

Re: ey codemasters q3w

Post by MKJ »

Banned again?
bitWISE
Posts: 10704
Joined: Wed Dec 08, 1999 8:00 am

Re: ey codemasters q3w

Post by bitWISE »

Eraser wrote:My suggestion: avoid VB like the plague. Seriously.
What would you recommend as a first language? There are very few things C# can do that the same version of VB can't. The stricter nature of C# is great and I definitely prefer it to VB, but after eight years of enterprise level development in VB I can only point out three serious flaws that lead to headaches. The relaxed types lead to a lot of cast from string to X errors during runtime if your team is retarded, polymorphism is crippled by the weak typing, and you can't have the only parameter to a method be an optional integer because VB will think it is an array when you call it. But I really don't think the language would be holding him back and would be an easier intro for someone so young.

JavaScript is much more of an abomination than VB, it's OOP is hacked mess, it runs differently depending on which browser you're in, and while the ability to edit and debug in something like Firebug is nice the lack of a great IDE makes large projects painful.

That coursera class uses the same framework I mentioned in my post. I'm not saying write your own game engine, but the more you understand the easier it will be to do something on your own. An "engine" really doesn't matter on my game list until you hit Mario. The rest are all simple DrawSprite commands in a loop.
User avatar
seremtan
Posts: 36011
Joined: Wed Nov 19, 2003 8:00 am

Re: ey codemasters q3w

Post by seremtan »

plained why don't you get him building redstone circuit in minecraft? it's not a transferable skill, but it might get him a handle on some basic concepts

i don't actually know what i'm talking about, though
User avatar
plained
Posts: 16366
Joined: Thu Jun 13, 2002 7:00 am

Re: ey codemasters q3w

Post by plained »

ok thank you for responding code/wise men there is alot here for me to check out before i can ask specific questions thanks again

plained
it is about time!
SoM
Posts: 8489
Joined: Fri Dec 03, 1999 8:00 am

Re: ey codemasters q3w

Post by SoM »

have a looky at these aswell

clicky

clicky

there's this one site i just can't remember atm, but it's very good, will get back to you on this one
[color=red][WYD][/color]S[color=red]o[/color]M
User avatar
Eraser
Posts: 19174
Joined: Fri Dec 01, 2000 8:00 am

Re: ey codemasters q3w

Post by Eraser »

bitWise, the reasons you mention are pretty big issues and would mostly be what I'm referring to. I guess it's still better than bloody PHP though. It also doesn't stick to certain syntax ground rules I've come accustomed to with C family languages, which is just very confusing. I guess that's personal preference, but if you're a C# developer, Java code or even C++ code will look much more familiar than when you're coming from a VB background. That problem is even worse with PHP.

I think that the looseness (weak typing for example) of VB might make it look like it's a great way to start programming, but the truth is that weak typing doesn't mean you don't have to bother with the type of your variables. In fact, the language moves the responsibility of typing from the compiler to the coder. Eventually you have to understand how data typing works because sooner or later, data types will come bubbling up in VB and when you don't understand the difference between a byte, a float and an int and how type casting works, you're bound to run into problems.
User avatar
Κracus
Posts: 5970
Joined: Tue Oct 16, 2007 12:38 am

Re: ey codemasters q3w

Post by Κracus »

MKJ wrote:Banned again?
No just couldn't remember my password to log in with my phone.
bitWISE
Posts: 10704
Joined: Wed Dec 08, 1999 8:00 am

Re: ey codemasters q3w

Post by bitWISE »

Eraser wrote:bitWise, the reasons you mention are pretty big issues and would mostly be what I'm referring to. I guess it's still better than bloody PHP though. It also doesn't stick to certain syntax ground rules I've come accustomed to with C family languages, which is just very confusing. I guess that's personal preference, but if you're a C# developer, Java code or even C++ code will look much more familiar than when you're coming from a VB background. That problem is even worse with PHP.

I think that the looseness (weak typing for example) of VB might make it look like it's a great way to start programming, but the truth is that weak typing doesn't mean you don't have to bother with the type of your variables. In fact, the language moves the responsibility of typing from the compiler to the coder. Eventually you have to understand how data typing works because sooner or later, data types will come bubbling up in VB and when you don't understand the difference between a byte, a float and an int and how type casting works, you're bound to run into problems.
That's true. I suppose if you're going to learn it, you might as well learn proper syntax instead of the weirdness of VB. And the relaxed nature doesn't help if it just shifts compiler errors into runtime errors. I think I'm projecting my own trouble trying to learn C++ as my first language onto C# but it really doesn't have as many rough edges.
SoM
Posts: 8489
Joined: Fri Dec 03, 1999 8:00 am

Re: ey codemasters q3w

Post by SoM »

Κracus wrote:
MKJ wrote:Banned again?
No just couldn't remember my password to log in with my phone.
get off the crack lol
[color=red][WYD][/color]S[color=red]o[/color]M
User avatar
Κracus
Posts: 5970
Joined: Tue Oct 16, 2007 12:38 am

Re: ey codemasters q3w

Post by Κracus »

I would except I have ambitions to become mayor of Toronto.
User avatar
Eraser
Posts: 19174
Joined: Fri Dec 01, 2000 8:00 am

Re: ey codemasters q3w

Post by Eraser »

bitWISE wrote:That's true. I suppose if you're going to learn it, you might as well learn proper syntax instead of the weirdness of VB. And the relaxed nature doesn't help if it just shifts compiler errors into runtime errors.
It's related to the law of leaky abstractions. We continually abstract away complexity in order to have a simpler base platform to work with, but all abstractions tend to have that which they're abstracting away come leak through, and when that happens, you better know how that complex system underneath works if you want to have any hope of solving the problem.
bitWISE wrote:I think I'm projecting my own trouble trying to learn C++ as my first language onto C# but it really doesn't have as many rough edges.
Yeah, C++ is kind of rough for me too. Nowadays I mostly use Java or C# (and a bit of Javascript here and there) and recently I tried to pick up C++ coding in order to be able to use cocos2d-x but it was too much of a pain in the arse and I kind of gave up on that because I was too lazy learning all the basics again while I could just go and do the same thing using MonoGame for Android/iOS (an open source XNA implementation) as well.

I must say I also found ANSI C much simpler to work with (when modding Quake 3) than C++.
User avatar
Κracus
Posts: 5970
Joined: Tue Oct 16, 2007 12:38 am

Re: ey codemasters q3w

Post by Κracus »

For learning I really think C# is the way to go. Free software from microsoft, in depth, again fee, tutorials etc... That's the main reasons I like it. Plus it kinda gives you a good platform to learn the other less user friendly languages.
User avatar
Eraser
Posts: 19174
Joined: Fri Dec 01, 2000 8:00 am

Re: ey codemasters q3w

Post by Eraser »

I think one pretty big advantage of C# is that.... (wait for it).... it just works.

Install Visual Studio Express and bam, you're good to go. With Java for example, you'll quickly run into having to configure things that a person who's new to all of it really doesn't understand.

I would also prefer C# or Java because of the garbage collector systems underneath there. No worries about dealing with pointers and allocating and deallocating memory space for your data, that's all taken care of for you. That might contradict my leaky abstractions story, but I think that not having to deal with that stuff at first really makes it much easier to grasp the basic programming paradigms.
Pext
Posts: 4257
Joined: Thu Aug 28, 2003 7:00 am

Re: ey codemasters q3w

Post by Pext »

Also: I like clojure - it might not be as adopted as the c/java languages but learning it teaches a lot. Also i found it to be really convenient to set up a simple homepage with clojure. I liked it a lot better than python.

The next language i'll look into is haskell.
User avatar
mrd
Posts: 4289
Joined: Sat Mar 25, 2000 8:00 am

Re: ey codemasters q3w

Post by mrd »

Don't forget to teach him pseudo-code ay?
Post Reply