GPWiki.org
GPWiki.org
It is currently Sun May 26, 2013 5:25 am

All times are UTC




Post new topic Reply to topic  [ 13 posts ] 
Author Message
PostPosted: Sun Sep 30, 2012 6:09 pm 
Rookie

Joined: Sun Sep 30, 2012 6:01 pm
Posts: 3
Hey all. I'm just starting in this whole programming scene and I was wondering if anybody could give me a good place to start learning. Any replies will be greatly appreciated! :spin


Top
 Profile  
 
PostPosted: Sun Sep 30, 2012 10:37 pm 
Lord of Cheesecakes

Joined: Sun Jun 24, 2012 12:49 am
Posts: 342
I'm a book kind of person. I learned by example... with introductory C++ books I bought. Here's a nice website if you're interested in C++ (for reference/forums), though I do not recommend the tutorial they have there: http://cplusplus.com

Hey, do you know what a compiler is, and do you have any idea on where to get one? If you don't, then I'll try pointing you in a good direction. Don't even bother "learning" if you can't test what you learn. Obtaining a compiler/IDE is the first step.

For now, all you need to know about the term 'compiler' is that a compiler is a program which reads your code and *outputs* a program which you can then execute; a preliminary step to run the program you've designed. IDE stands for "Integrated development environment", which is pretty much where you make and edit your code. 'IDE' Wikipedia page: http://en.wikipedia.org/wiki/Integrated ... nvironment

Here's an IDE which I recommend: http://www.codeblocks.org/downloads/26

If you're on Windows, download the codeblocks-10.05mingw-setup.exe installer file from either of the mirrors. To explain what this is: it will include a C++ compiler known as G++, which is part of GCC (GNU Compiler Collection), made for Windows; MinGW (Minimalist GNU for Windows).

_________________
What most people don't understand is what I like to explain as a thing that I understand.


Top
 Profile  
 
PostPosted: Tue Oct 02, 2012 2:41 am 
Rookie

Joined: Sun Sep 30, 2012 6:01 pm
Posts: 3
Thank you so much!! i appreciate it. :D Now I have another question. I am currently learning the language Python because I was told it was a good language for beginners. Is this true or am i just waisting my time???


Top
 Profile  
 
PostPosted: Tue Oct 02, 2012 4:05 am 
Lord of Cheesecakes

Joined: Sun Jun 24, 2012 12:49 am
Posts: 342
I don't like Python... but don't listen to me. :thumbs

Especially if you want to program games, I recommend C++. I guess Python is alright (I don't feel comfortable saying that, yet I'm trying to be fair), but I just found it... well honestly I think it will screw you up prior to C++. That's just my biased opinion. I hate being the only who has visited your topic so far, because I don't like being viewed responsible for your learning experience. But yeah, I say C++ man! Well, would you at least like to try C++? You should. And with every good programming experience, you should become extremely confused at least once or twice (or a hundred times). That's what these (and the cplusplus.com) forums are for! :D

EDIT: Also, I hope you understand the differences between the nature of C++ as a 'programming language' (i.e. preliminary steps to execution) in contrast to Python. They're quite different.

_________________
What most people don't understand is what I like to explain as a thing that I understand.


Top
 Profile  
 
PostPosted: Tue Oct 02, 2012 4:51 pm 
Rookie

Joined: Tue Oct 02, 2012 4:48 pm
Posts: 2
I really recommend Python as a first programming language to learn. It has a gentle learning curve but is still powerful enough to be used by professionals. Here's a free book for complete beginners: http://inventwithpython.com "Invent Your Own Computer Games with Python"

It basically shows you how to program by making small games like Tic Tac Toe and Hangman.


Top
 Profile  
 
PostPosted: Tue Oct 02, 2012 5:17 pm 
Rookie

Joined: Sun Sep 30, 2012 6:01 pm
Posts: 3
I want to try to go straight to C++. Sorry for asking so many questions but do u know any good sites that teach C++?

Thank you both for your advice it is greatly appreciated :D


Top
 Profile  
 
PostPosted: Tue Oct 02, 2012 5:58 pm 
Bytewise

Joined: Sun Oct 16, 2011 3:09 pm
Posts: 277
Location: Here (where else?)
So you want to go in at the deep end eh? :)

If you are serious, I'd not waste my time with the Internet, and buy a good book or take a course.
It may cost some money, but in return you get things explained properly, instead of the ad-hoc, incomplete information you can get for free, which leaves you hunting for trivial stuff for hours to days.

I don't know why you want to learn C++ as first language, but please be warned, it is really the deep end. C++ can get quite complicated, which is useful if you need it, but very confusing when trying to grasp programming.

Python is a much friendlier language for learning to program. It is also a useful language, even for advanced programmers. I use it every day, even though I also program in Java and C++.

_________________
My project: Messing about in FreeRCT, dev blog, and IRC #freerct at oftc.net


Top
 Profile  
 
PostPosted: Wed Oct 03, 2012 1:22 am 
Lord of Cheesecakes

Joined: Sun Jun 24, 2012 12:49 am
Posts: 342
My problem with Python lies especially in its use as a mere learning step prior to programming with more difficult-to-learn languages that have a more concrete, low level nature... (which I think are the real pick for game programming). I believe such languages, like Python, will destroy the ability to write efficient low level code, particularly for the task of game programming. It annoys me when people don't know how to think in a low level way. It really drives me nuts...

I know several other game programmers (3 in fact) who completely agree, so don't say I'm unusually biased or something. If you want to be a game programmer, Python is not the way to start. Maybe C++ is too hard as a first language (it really shouldn't be too hard, as long as you have some good C++ beginners' books), but I would definitely not begin as a game programmer by Python. If you really really want to try something else first, take a look at C# or Java. I've honestly never tried either of the two (though I have used Python plenty), but I heard these are both significantly easier than C++, especially with the mountains of "pre-made" (standard libraries?) code they provide, which should be extremely helpful for getting started. I know they are also quite suitable for game programming.

_________________
What most people don't understand is what I like to explain as a thing that I understand.


Top
 Profile  
 
PostPosted: Wed Oct 03, 2012 8:54 pm 
Bytewise

Joined: Sun Oct 16, 2011 3:09 pm
Posts: 277
Location: Here (where else?)
This is a bit derailing from the topic, but how exactly is Java preserving what Python destroys?
Both languages use references and objects extensively, where in Java things are more confusing with different semantics between primitive and non-primitive types (eg "1 == 2" versus "new Integer(1) == new Integer(2)"). Is it just that in Java you have to write "int i;" first? I don't buy that tbh.

Let's not forget the bloat that typical Java style adds, getters and setters all over the place, interfaces, and classes for everything. Does that make efficient code?

I do agree with you to some extent. Writing efficient code is an art that you will not learn very well with Python (but in my opinion also not with Java or C#, hence my question). However, someone learning C/C++ as first language is also not going to write efficient code, and he's not learning that either by struggling through pointers, malloc, arrays, compiler settings, and segmentation faults due to stupid memory management mistakes.

Giving him a language that allows him to be productive, and write useful programs that will cover 90+ percent of the code adequately seems more useful to me than using a language that allows him to write that last 10 percent if only he knew how, and which is mostly just making life miserable for the other 90+ percent of the time. C++ will drag him down to low-level implementation details that need to be handled instead of towards high-level conceptual thinking where making a smart decision is way more effective than all optimizations you can ever write in C++.

(Please don't take things personally, I am deliberately somewhat being provocative here, my project is in C++ and only partly in Python, so I don't entirely practice what I preach. I am interested in hearing counter arguments from you to get a deeper understanding of the topic.)

_________________
My project: Messing about in FreeRCT, dev blog, and IRC #freerct at oftc.net


Top
 Profile  
 
PostPosted: Thu Oct 04, 2012 2:59 am 
Lord of Cheesecakes

Joined: Sun Jun 24, 2012 12:49 am
Posts: 342
No problem. To the extent that I used Python, I deeply hated the way I found I had to construct algorithms.

Quote:
pointers, malloc, arrays, compiler settings, and segmentation faults due to stupid memory management mistakes.

That beautiful list of angelic goodness only invokes good memories in my cozy love for working in raw and low level programming environments (despite the typical harsh learning troubles). Maybe I'm weird. :O

_________________
What most people don't understand is what I like to explain as a thing that I understand.


Top
 Profile  
 
PostPosted: Fri Oct 05, 2012 7:01 am 
Novice

Joined: Wed Sep 26, 2012 11:58 am
Posts: 6
I just started too. I started with this tutorial http://www.youtube.com/watch?v=0kpSiitk4eI


Top
 Profile  
 
PostPosted: Fri Oct 12, 2012 3:35 pm 
I thought this was an excellent online "manual" for someone who wants to learn c++.

http://www.cplusplus.com/doc/tutorial/


Top
  
 
PostPosted: Wed Oct 17, 2012 4:09 am 
Lord of Cheesecakes

Joined: Sun Jun 24, 2012 12:49 am
Posts: 342
@Acit

Those are amazing tutorials! Very good find!

_________________
What most people don't understand is what I like to explain as a thing that I understand.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 13 posts ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 1 guest


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group