Sign in to follow this  
Salvo Agosta

How to start?

Recommended Posts

Salvo Agosta    118
Hi guys,

My name's Salvatore, i'm 18 and i'm from Italy.
I hope you can help me.
But before i start explaining what I need to know....sorry for my bad english, I'm working to improve it, I know it's fundamental for game
development.

Now,
I would like to be a game developer but i don't know how to start.
I don't know any programming language and my mind got sooo confused because i had too different advice from my "friends".

So, I would like to learn an "universal" language, something that can be useful for flash games but for complicated games too.

Someone of you can help me to understand what study?

Take in mind i'm starting from 0.

Some guys told me it's better starting with AS3 and after that study C++, another one told me it's better starting with C# and rest there.
How can I study 2-3 languages right now if I don't know anyone? [img]http://public.gamedev.net//public/style_emoticons/default/huh.png[/img]
I would like to start studying an universal language.

Hope you can help me.
Thanks,
Salvo. [img]http://public.gamedev.net//public/style_emoticons/default/happy.png[/img] Edited by B.IOB

Share this post


Link to post
Share on other sites
Salvo Agosta    118
UHm....I understand.
I would like to do falsh games just to learn the basics stuff that are needed to do more complicated games....
You think C# is helpful?
So I don't have to study C++?

Do you know some good books to study C# for game dev? Edited by B.IOB

Share this post


Link to post
Share on other sites
Salvo Agosta    118
Uhmm...it make sense. [img]http://public.gamedev.net//public/style_emoticons/default/unsure.png[/img]
But there are a lot of paths, and if I choose the wrong one?
Sorry but i've a lot of fear about take the wrong decision.
Thanks 4 the link. [img]http://public.gamedev.net//public/style_emoticons/default/happy.png[/img] Edited by B.IOB

Share this post


Link to post
Share on other sites
nobodynews    3126
There is no correct way. There is no universal language. You shouldn't learn 2-3 languages at the same time. Someday you should learn 2-3 languages really well and you'll probably use many more than that. Flash may or may not be dying but it has a huge install base that won't be going away for awhile; don't base your decision on that. Once you become good at one language learning a new language is much easier. I think beginners should wait on C++ because it has a higher learning curve than many other languages. If you were to pick two languages like C++ and C# then I believe it would take less time to learn C# then C++ than the other way around because of C++'s learning curve getting away with learning the fundamentals of programming.

My default suggestion for beginners is C# or Python, but Action Script would be fine as well. But above all I suggest you don't give up. There is no best path but the only path that gaurantee's failure is to quit. So don't worry so much about doing things right or wrong. If you have questions we're here to help.

Good luck.

Share this post


Link to post
Share on other sites
kseh    3838
Programming is programming.

That article should also have pointed out that for any given language you'll see some very similar concepts. Variables, conditionals, input, output, loops, functions. The syntax can be quite a bit different but the thought process behind getting a program to do what you want it to is generally the same. So any language that you have access to can be used to get your feet wet. Then at some point you'll think to yourself, "Hey I want to do something more advanced," and you search around or ask a questions to do that specific thing and maybe you find out that it's time to try another language that would do what you want to do better.

If you go into this whole programming thing expecting that you'll only ever be using one language, you're really holding yourself back. If you start off thinking that you'll try a few different languages, then maybe it's fair to say what language you start with doesn't matter too much because you're already planning on switching to something else when the time is right.

For the record, my vote for a language to start with would be C#.

Share this post


Link to post
Share on other sites
GameCreator    997
You mentioned in two posts now that you'd like to make flash games. [i][b]Do it![/b][/i] I know some C++ and ActionScript. I think you will appreciate Flash and ActionScript because the results are more immediate, so your learning is rewarded faster.

That said, you don't need to be committed to it to the bitter end. Focus on it for a few weeks and you'll know if it's for you. C++ has more options as far as engines and libraries you can use it with (I use a 3D engine called [url="http://www.leadwerks.com/werkspace/page/Products/le2"]Leadwerks[/url]) but as people have said, there are no wrong choices to start learning.

Share this post


Link to post
Share on other sites
Salvo Agosta    118
Ok I got the lesson.
I didn't say i wont learn another language, but i needed something 4 start....and you said i must move.
I'm just doubting about C# and C++ because i know C++ is the A+ language for the game industry, but it's the most diffcult, so I could try to learn C# and change at the end.
I will learn it and when the time to change will come i will be ready.
wont give up, it's my dream to become a game developer and it's my obligation and right to defend it.
I will try and if i will fail i will try again until i'll have success..
Thanks all of you. Finally I got a decision.
See you in the forum.

Share this post


Link to post
Share on other sites
Salvo Agosta    118
[quote name='GameCreator' timestamp='1351873769' post='4996586']
You mentioned in two posts now that you'd like to make flash games. [i][b]Do it![/b][/i] I know some C++ and ActionScript. I think you will appreciate Flash and ActionScript because the results are more immediate, so your learning is rewarded faster.

That said, you don't need to be committed to it to the bitter end. Focus on it for a few weeks and you'll know if it's for you. C++ has more options as far as engines and libraries you can use it with (I use a 3D engine called [url="http://www.leadwerks.com/werkspace/page/Products/le2"]Leadwerks[/url]) but as people have said, there are no wrong choices to start learning.
[/quote]
Yes but for a guy that can't programming...it's difficult learn 2 language at the same time...i need just one to start and another to learn later.

Share this post


Link to post
Share on other sites
Zwonkie    508
I would recommend to start out with either C# or AS3, they are pretty understandable languages and it will allow you to start making games pretty quick. Then after a few years, look into C++ if you feel like it. You will probably discover that C++ is easy to understand after learning C# or AS3 but will still require some time to learn completely/fully.

Share this post


Link to post
Share on other sites
kseh    3838
This may be a bad analogy but maybe the way to think about the whole learning C# vs C++ thing might be like choosing to first learn MS Paint vs Photoshop. There's a lot of power and great tools in Photoshop but if you've never opened a paint program before it really isn't the place to start.

Share this post


Link to post
Share on other sites
lride    674
I taught myself C++ as my first language and I didn't think it was difficult.
If you have a strong desire for C++, go for it. This is why I learned C++ first despite many discourages by peers and I never regret it.

This is the order I think you should learn C++.[list=1]
[*]Learn how to write "Hello, World!"
[*]Learn to get user input.
[*]Learn all control structure(if-else, while, for) / Learn to write your own functions
[*]Learn pointers and arrays(This is the C++ threshold that can be tough for some people. Java, C# and python don't have pointers)
[*]and so on..(OOP concepts)
[/list]
If you cross the threshold, you are fine. However if you think you aren't ready yet, you can consider switching to C# or Java for a period.
The time you've spend C++ won't be a waste because the languages share very similar syntax so you'll pick up very fast.

I read [url="http://www.amazon.com/Primer-Plus-Edition-Developers-Library/dp/0321776402/ref=sr_1_1?ie=UTF8&qid=1351888907&sr=8-1&keywords=c%2B%2B+primer+plus"]C++ primer plus[/url] by stephen prata.This book assumes you have no previous programming experience. Edited by lride

Share this post


Link to post
Share on other sites
Camilo    189
Honestly, while C++ is my language of choice for most tasks, I wouldn't start with it. Nowadays I would recommend people start with a scripted language, which allows you to try stuff out quickly and doesn't force you to learn how to handle compilation. In particular I think [i]Python[/i] is a good pick, because it forces relatively sane coding practices on you, and has a nice set of standard libraries. It's not the most usual choice in game programming, but, hey, game programming is just programming, in the end.

The downside of this would be: you don't get to manage your memory. So, as soon as you have grasped some of the most basic concepts of procedural and OO programming: variables, functions, execution control, classes, inheritance, you should try to learn a little C, so you know how that stuff works behind the curtains, while profiting from your knowledge of OOP and applying it to this new language.

Make sure you keep advancing your understanding of high-level programming while you deal with them bits & voids *, too. Read up on functional programming, on design patterns, and keep writing in Python.

And, then, maybe, someday, C++. After that, you'll be able to pick up the basics of almost any language in a few days. Except for crazy suff like Prolog, maybe. Edited by Camilo

Share this post


Link to post
Share on other sites
Salvo Agosta    118
[quote name='Zwonkie' timestamp='1351877605' post='4996607']
I would recommend to start out with either C# or AS3, they are pretty understandable languages and it will allow you to start making games pretty quick. Then after a few years, look into C++ if you feel like it. You will probably discover that C++ is easy to understand after learning C# or AS3 but will still require some time to learn completely/fully.
[/quote]

Ok thanks...! Is that what I was trying to understand....because i don't feel ready for C++.
So, i think is better starting with something "easier" and after that study C++

[quote name='lride' timestamp='1351888999' post='4996661']
I taught myself C++ as my first language and I didn't think it was difficult.
If you have a strong desire for C++, go for it. This is why I learned C++ first despite many discourages by peers and I never regret it.

This is the order I think you should learn C++.[list=1]
[*]Learn how to write "Hello, World!"
[*]Learn to get user input.
[*]Learn all control structure(if-else, while, for) / Learn to write your own functions
[*]Learn pointers and arrays(This is the C++ threshold that can be tough for some people. Java, C# and python don't have pointers)
[*]and so on..(OOP concepts)
[/list]
If you cross the threshold, you are fine. However if you think you aren't ready yet, you can consider switching to C# or Java for a period.
The time you've spend C++ won't be a waste because the languages share very similar syntax so you'll pick up very fast.

I read [url="http://www.amazon.com/Primer-Plus-Edition-Developers-Library/dp/0321776402/ref=sr_1_1?ie=UTF8&qid=1351888907&sr=8-1&keywords=c%2B%2B+primer+plus"]C++ primer plus[/url] by stephen prata.This book assumes you have no previous programming experience.
[/quote]

Ok...thanks!
[quote name='Camilo' timestamp='1351893895' post='4996678']
Honestly, while C++ is my language of choice for most tasks, I wouldn't start with it. Nowadays I would recommend people start with a scripted language, which allows you to try stuff out quickly and doesn't force you to learn how to handle compilation. In particular I think [i]Python[/i] is a good pick, because it forces relatively sane coding practices on you, and has a nice set of standard libraries. It's not the most usual choice in game programming, but, hey, game programming is just programming, in the end.

The downside of this would be: you don't get to manage your memory. So, as soon as you have grasped some of the most basic concepts of procedural and OO programming: variables, functions, execution control, classes, inheritance, you should try to learn a little C, so you know how that stuff works behind the curtains, while profiting from your knowledge of OOP and applying it to this new language.

Make sure you keep advancing your understanding of high-level programming while you deal with them bits & voids *, too. Read up on functional programming, on design patterns, and keep writing in Python.

And, then, maybe, someday, C++. After that, you'll be able to pick up the basics of almost any language in a few days. Except for crazy suff like Prolog, maybe.
[/quote]
Okay, thanks 4 the advice!

Share this post


Link to post
Share on other sites
Sparkon    579
Hey! if you need anything i'd be glad to help you out! ( i'm italian too). If you wanna talk you can add me on skype ZOMBATOR676.
Beyond this.. IMHO you should start with python/pygame, It's a Object Oriented scripting language (beside that it's extremely powerful) with many modules built-in ( from socket to regex ) and will teach you quite good programming habits ( if you don't indent the program is not gonna run :P).

Share this post


Link to post
Share on other sites
3Ddreamer    3826
Hi, B.IOB

The C# and its supporting technologies are very common in the general program development world. It's a great language that seems to be increasing in the size of its base. Microsoft and other organizations agressively support and promote the C# development environment. Some popular and high quality games continue to be made with it.

The C# is the core of the .Net Framework, allowing you the potential to develop high quality games and other programs (other languages supported, too). Some ways to go with C# would be XNA, SharpDX, or MonoDevelop/Mono, and others. It might be a good idea to look at Unity 3D, too. For beginners, perhaps a year or more should be used with C# and XNA.

The Visual Studio (an IDE - Integrated Development) is used by many developers and should be considered for long term developing. You could get Visual Studio Express at some point until you need more, by the way.

Make simple console programs with your chosen programming environment. Programs like "Hello World", simple data base, and letter display program are your crucial first things to learn.

After you feel confident that you know how to make basic programs, then start making simple console games, like crossword puzzles and Tic-Tac-Toe.

Next stage would be making simple 2D games like Pong, Tetris, Asteroids, Defender, PacMan, and so on. Make about 5 to 10 such games, being sure to finish each very well before going to the next.

Always enjoy the journey in game development. [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]

Clinton

Share this post


Link to post
Share on other sites
Serapth    6671
[quote name='mholmes' timestamp='1351989994' post='4997036']
The new boston is a great site for video tuts
[/quote]

One of these days I really need to check out some of these tutorials.

I have heard, repeatedly, from people that are very good programmers, that these tutorials teach some extremely bad practices.

Share this post


Link to post
Share on other sites
Sparkon    579
[quote name='Serapth' timestamp='1351994492' post='4997057']
[quote name='mholmes' timestamp='1351989994' post='4997036']
The new boston is a great site for video tuts
[/quote]

One of these days I really need to check out some of these tutorials.

I have heard, repeatedly, from people that are very good programmers, that these tutorials teach some extremely bad practices.
[/quote]

The tutorials are not bad, but as far as i've seen ( i'm not a very good programmer [img]http://public.gamedev.net//public/style_emoticons/default/tongue.png[/img] ) the guy that makes the video does not have any kind of experience(except some websites). You can read on his "about" page [url="http://thenewboston.org/about.php"]http://thenewboston.org/about.php[/url] that he just reads book and the makes the video about them. Since he is teaching a lot of different subjects with no "real world" experience he does not have any good habit to teach. In my opinion tutorials are useful whenever you forget something and you want to give a simple look on how to implement something particular or after reading a book, if you missed something.

Beyond that i've seen some tutorials,vlogs and shows and he seems funny ;P ( indiechatter is better though)

p.s. excuse my english Edited by Sparkon

Share this post


Link to post
Share on other sites
Salvo Agosta    118
[quote name='Sparkon' timestamp='1351967623' post='4996935']
Hey! if you need anything i'd be glad to help you out! ( i'm italian too). If you wanna talk you can add me on skype ZOMBATOR676.
Beyond this.. IMHO you should start with python/pygame, It's a Object Oriented scripting language (beside that it's extremely powerful) with many modules built-in ( from socket to regex ) and will teach you quite good programming habits ( if you don't indent the program is not gonna run [img]http://public.gamedev.net//public/style_emoticons/default/tongue.png[/img]).
[/quote]

Hey, thanks 4 the answer, i always like an help!
Right now, i'm still thinking about the language program, a lot of people told me too much different opinions. >_< I'm so confused. I'll add you to skipe. I need to install it.
Solo, una cosa...perchè rispondere in inglese se sei italiano? [img]http://public.gamedev.net//public/style_emoticons/default/tongue.png[/img]

[quote name='mholmes' timestamp='1351989994' post='4997036']
The new boston is a great site for video tuts
[/quote]
Thanks, i'll check it out!

[quote name='3Ddreamer' timestamp='1351990169' post='4997037']
Hi, B.IOB

The C# and its supporting technologies are very common in the general program development world. It's a great language that seems to be increasing in the size of its base. Microsoft and other organizations agressively support and promote the C# development environment. Some popular and high quality games continue to be made with it.

The C# is the core of the .Net Framework, allowing you the potential to develop high quality games and other programs (other languages supported, too). Some ways to go with C# would be XNA, SharpDX, or MonoDevelop/Mono, and others. It might be a good idea to look at Unity 3D, too. For beginners, perhaps a year or more should be used with C# and XNA.

The Visual Studio (an IDE - Integrated Development) is used by many developers and should be considered for long term developing. You could get Visual Studio Express at some point until you need more, by the way.

Make simple console programs with your chosen programming environment. Programs like "Hello World", simple data base, and letter display program are your crucial first things to learn.

After you feel confident that you know how to make basic programs, then start making simple console games, like crossword puzzles and Tic-Tac-Toe.

Next stage would be making simple 2D games like Pong, Tetris, Asteroids, Defender, PacMan, and so on. Make about 5 to 10 such games, being sure to finish each very well before going to the next.

Always enjoy the journey in game development. [img]http://public.gamedev.net//public/style_emoticons/default/smile.png[/img]

Clinton
[/quote]

Thanks, i'll try to enjoy it.
I was asking myself how to start and i've seen a lot of people telling me a lot of different opinion, this is so confusing!
I hope to decide what i should do fastly because i know i've a lot of work to do.

I've thought about C#, i've take from a friend of mine "Beginning C# throught Game Programming" but it seems confusing because it's different to the C++ version.
There are no games like the C++ version.
I can't understand, maybe because he borrowed me the second version? Edited by B.IOB

Share this post


Link to post
Share on other sites
3Ddreamer    3826
Well, if that book is confusing you, then you probably should not work with C++ as a first language, in my opinion. Work very hard for a little while in the book. After a few days of hard effort in it, if it still is too confusing, then I would recommend other books or online internet tutorials of a very beginner level. Microsoft and many sites have beginner tutorials in C#, including this website:
[u]C# Workshop[/u]
[url="http://www.gamedev.net/forum/83-c-workshop/"]http://www.gamedev.n.../83-c-workshop/[/url]

Stay at the task! I had trouble too, so I know that you can do this. Focus! Work hard, but enjoy it!

Let us know in 2 or 3 days how it is going, okay?

Clinton

Share this post


Link to post
Share on other sites
Serapth    6671
[quote name='B.IOB' timestamp='1352040045' post='4997182']

I've thought about C#, i've take from a friend of mine "Beginning C# throught Game Programming" but it seems confusing because it's different to the C++ version.
There are no games like the C++ version.
I can't understand, maybe because he borrowed me the second version?
[/quote]

You really need to focus on learning (whichever) language basics first before you start even thinking about games.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this