Go Back   PCMech Forums > Help & Discussion > Web Design / Development

Need Some Help? Type Your Keywords Here:

Reply
 
LinkBack Thread Tools Search this Thread Rate Thread Display Modes
Old 08-08-2005, 09:05 AM   #1
Member (9 bit)
 
Stevevai9's Avatar
 
Join Date: Apr 2005
Location: Virginia Beach, VA
Posts: 259
Programming beginner...

ok so I know this question gets asked alot, but I haven't found too much about what i want to do.

I would like to get going down the path of computer programming, ultimately ending up with game programming and pursuing that as a career. What I want to know is, what are the most used programming languages used in game programming and what I should start out learning first.

Thank you.
Stevevai9 is offline   Reply With Quote
Old 08-08-2005, 09:25 AM   #2
Banned
 
mysterio2099's Avatar
 
Join Date: Aug 2003
Posts: 349
Send a message via AIM to mysterio2099 Send a message via MSN to mysterio2099 Send a message via Yahoo to mysterio2099
I'm not a game programmer, but I believe that start out with C++
mysterio2099 is offline   Reply With Quote
Old 08-08-2005, 09:54 AM   #3
Professional gadfly
 
doctorgonzo's Avatar
 
Join Date: Jan 2002
Location: Minneapolis, MN
Posts: 6,364
Send a message via MSN to doctorgonzo
I would recommend starting out with either Java or C++. Most game programming is done in C++, but Java is a good language to learn the fundamentals of programming. Most of your Java skills will transfer over to C++.

Learning a programming language's syntax is easy. Learning how to program is the tough part.
doctorgonzo is offline   Reply With Quote
Old 08-08-2005, 10:42 AM   #4
Banned
 
neochivers's Avatar
 
Join Date: Mar 2005
Posts: 210
start withe python then go to java then to C then to C++
neochivers is offline   Reply With Quote
Old 08-12-2005, 11:11 AM   #5
Moderator
Staff
Premium Member
 
Join Date: Aug 2003
Location: Richmond, VA
Posts: 7,835
For the uses you specified, you might benefit from looking at C++ first.

kram
__________________
"For today, goodbye. For tomorrow, good luck. And forever, Go Blue!"
University of Michigan President Mary Sue Coleman
kram 2.0 is offline   Reply With Quote
Old 08-12-2005, 09:41 PM   #6
Member (10 bit)
 
Darth Revan's Avatar
 
Join Date: Sep 2004
Location: Knoxville, Tennessee
Posts: 692
Send a message via AIM to Darth Revan
They teach Dev C++ at my high school and I used to go in there during drivers ed and I would pick up stuff just watching. So i'd look at c++.
It's so much fun to make the My World prgm.
__________________
Lanner
ASUS P5B-VM / Conroe E6600 / 2gig Corsair ram / 250gig WD / HX520 psu / EVGA 8800GTS / Lite-On DVD Burner / Thermaltake LANBOX LITE / XP Pro
Darth Revan is offline   Reply With Quote
Old 08-12-2005, 09:53 PM   #7
~ Ryan ~
 
Join Date: Jun 2005
Location: Jackson TN
Posts: 3,516
Send a message via AIM to rspassey Send a message via MSN to rspassey
How long do you actually have to learn programming before you would really have to make a decision that that is the career you want to pursue? Maybe your school, or a local organization gives lessons in C/C++, but there is also JAVA and BASIC, which is a good one to teach your self, I taught myself BASIC and hope to start taking courses in C/C+ this coming year at an institute near me.
rspassey is offline   Reply With Quote
Old 08-12-2005, 10:16 PM   #8
Barefoot on the Moon!
Staff
Premium Member
 
Force Flow's Avatar
 
Join Date: Aug 2002
Location: Northeastern USA
Posts: 13,385
Quote:
Originally Posted by neochivers
start withe python then go to java then to C then to C++
I wouldn't advise that route.

Typically, most people go from C, then move on to java or C++. Java is more like a swiss army knife, while C++ is more of a specialized application language. They are both based on C, however.

If you wish to go into more web-based stuff, take java. If you want to simply code applications and games, go with C++.

As for BASIC and COLBOL, there isn't much call for those these days unless you work in an older banking branch.
__________________
There are two secrets to staying young, being happy, and achieving success. You have to laugh and find humor every day, and you have to have a dream.
Force Flow is offline   Reply With Quote
Old 08-12-2005, 10:28 PM   #9
Member (8 bit)
 
Join Date: Jul 2005
Posts: 177
Quote:
start withe python then go to java then to C then to C++
I'm not an accomplished programmer, but have been playing with Python for a little while and it definitely is an easy language to use learn fundamentals. I've done some research into this as I'd like to learn to program and my only course of action is to teach myself. I've read some advice from some very accomplished programmers--guys who have been instrumental in the development of Linux--who highly recommend Python as a beginning language because of its simplicity and being easy to learn.

From the time I've spent with it I definitely would say it is much easier to learn than some other languages I've played with such as C++ and even VB. As someone else said here syntax is easy, learning to contruct logic and program flow is the hard part. So, learn a language that is easy to learn and flexible first. Python fits the bill on both issues. Once you've learned how to program then move on to the more complex languages. You'll be able to transfer the how of programming into the more complex languages fairly easily.

Here is a link to an online book called "How to Think like a Computer Scientist" that is based on Python. It's the best book for total rookies that I've run across so far because it delves into the beginnings of how to construct programs and logic along with Python's syntax. This is something very few beginner programming books do. They normally spend almost all their time on syntax.

As a programming noob I highly recommend it for it has taught me things none of the other programming books I've started on have taught me. I'll finish this one because it doesn't leave me in the dark about the most difficult part of programming. I've already learned more about how to to construct logic from this book than I did from a college level javascript course.
ffreeloader is offline   Reply With Quote
Old 08-12-2005, 11:57 PM   #10
Dark
 
Dark Nova's Avatar
 
Join Date: May 2004
Posts: 1,128
Send a message via MSN to Dark Nova
i would recommend an easy language for beginners with visualized objects such as VB or Delphie. than go to something a little bit harder like C++ or java (there almost the same thing) than on to something harder such as pascal. But since you want to be a game programer i recommend stoping at C. But start with visual objects thats the easy'st one.
Dark Nova is offline   Reply With Quote
Old 08-13-2005, 12:06 AM   #11
Dark
 
Dark Nova's Avatar
 
Join Date: May 2004
Posts: 1,128
Send a message via MSN to Dark Nova
FOR EXAMPLE THIS IS AN EASY JAVA PROGRAM I MADE IN "Ready to program". THE USED KEYS ARE IN FRENCH BUT THE BASIC KEYS ARE THERE. BTW IN VB THIS WOULD BE LIKE 4-5 LINES INSTEAD OF 40 like this one

PHP Code:
import java.applet.*;
import java.awt.*;

public class 
BalleBlocCouleur extends Applet
{
    
// Place instance variables here
    
private Button boutonBalleboutonBloc;
    private 
Checkbox boutonRadioRougeboutonRadioVertboutonRadioBleu;
    private 
Color clr Color.red;
    
boolean balle,bloc;
    
  public 
boolean action(Event eObject o)
     {
        if (
e.target instanceof Button)
        {
            if (
e.target == boutonBalle)
            {
                
balle true;
                
bloc false;
            }
            else
            {
            
balle false;
            
bloc true;
            }
            
repaint();
         }
       if (
e.target instanceof Checkbox)
       {
            if(
boutonRadioBleu.getState() ==true)
            
clr Color.blue;
            else if(
boutonRadioRouge.getState() ==true)
            
clr Color.red;
            else
            
clr Color.green;
        }
        return 
true;
      }
        
    
    public 
void init ()
    {
        
Panel panneauBoutonspanneauBoutonsRadio;
        
CheckboxGroup style;
        
boutonBalle = new Button("Balle");
        
boutonBloc = new Button("Bloc");
        
style = new CheckboxGroup();
        
boutonRadioBleu = new Checkbox("Bleu",style,true);
        
boutonRadioRouge = new Checkbox("Rouge",style,true);
        
boutonRadioVert = new Checkbox("Vert",style,true);
        
panneauBoutons = new Panel();
        
panneauBoutons.add(boutonBalle);
        
panneauBoutons.add(boutonBloc);
        
panneauBoutonsRadio = new Panel();
        
panneauBoutonsRadio.add(boutonRadioBleu);
        
panneauBoutonsRadio.add(boutonRadioRouge);
        
panneauBoutonsRadio.add(boutonRadioVert);
        
add(panneauBoutons);
        
add (panneauBoutonsRadio);
    } 
// init method
    
    
    
public void paint (Graphics g)
    {
       
int largeurApplet getSize().width;
       
int hauteurApplet getSize().height;
       
int xc largeurApplet/2;
       
int yc hauteurApplet/2;
       if (
balle)
       {
            
dessineBalle(g,xc,yc+20,Math.min(xc,yc-30),clr);
       }
       if (
bloc)
       {
            
g.setColor(clr);
            
g.fillRect(20,40,largeurApplet-40,hauteurApplet-60);
       }
        
// Place the body of the drawing method here
    
// paint method
    
   
public void dessineBalle(Graphics gint xint yint rayonColor clr)
   {
        
g.setColor(clr);
        
g.fillOval(x-rayony-rayon2*rayon2*rayon);
   }  


Last edited by Force Flow; 08-13-2005 at 04:49 PM. Reason: inserted java code into a code box.
Dark Nova is offline   Reply With Quote
Old 08-13-2005, 04:45 PM   #12
Barefoot on the Moon!
Staff
Premium Member
 
Force Flow's Avatar
 
Join Date: Aug 2002
Location: Northeastern USA
Posts: 13,385
Python is more of a web programming language than a application design language.

As for Visual Basic, it teaches you bad coding habits.

[edit]: here's some information on game programming: http://www.gpwiki.org/

Last edited by Force Flow; 08-13-2005 at 04:52 PM.
Force Flow is offline   Reply With Quote
Old 08-14-2005, 08:58 AM   #13
Member (8 bit)
 
Join Date: Jul 2005
Posts: 177
Quote:
Python is more of a web programming language than a application design language.
And your point is?

Doesn't application design use object-oriented languages with which you can create modules and call them at will to create logic and program flow? Aren't application design languages used to create gui's? Don't application languages interface well with other languages such as Java and C? Can application design language code easily be translated into other compiled languages? All this is routinely done with Python.

From the "Python Advocacy HOWTO:
Quote:
Who uses Python for serious work?

Lots of people; one interesting thing about Python is the surprising diversity of applications that it's been used for. People are using Python to:

* Run Web sites
* Write GUI interfaces
* Control number-crunching code on supercomputers
* Make a commercial application scriptable by embedding the Python interpreter inside it
* Process large XML data sets
* Build test suites for C or Java code

Whatever your application domain is, there's probably someone who's used Python for something similar. Yet, despite being useable for such high-end applications, Python's still simple enough to use for little jobs.
This sounds like a lot more than just "more of a web programming language" to me, but then I'm just a progamming newbie and don't know a whole lot about it.
ffreeloader is offline   Reply With Quote
Old 08-14-2005, 09:45 AM   #14
Barefoot on the Moon!
Staff
Premium Member
 
Force Flow's Avatar
 
Join Date: Aug 2002
Location: Northeastern USA
Posts: 13,385
I simply don't suggest it in this case for this main reason: it is not a common language for use in game programming. It has its obscure uses, but one of those uses does not normally lay within game programming.

Python is occasionaly bound to C++ in game programming for various specific tasks, albeit rarely.
Force Flow is offline   Reply With Quote
Old 08-14-2005, 10:42 AM   #15
Member (8 bit)
 
Join Date: Jul 2005
Posts: 177
Quote:
Python is occasionaly bound to C++ in game programming for various specific tasks, albeit rarely.
I guess my question is then, isn't it better to start with a simple language to develop programming skills, than to start with a language as complex as C++? As I understand things it's pretty easy to generalize between languages, and I've seen very few people say that C++ is a beginners language, so isn't a simple, object-oriented language like Python a good place to start, even if it isn't directly related to game progarmming? Once some level of competency in programming is reached then can't C++ be tackled with much greater ease?

I actually tried starting with C++ in an attempt to teach myself to program and it was very, very difficult. Unless you're some kind of natural genius at programming it can get pretty discouraging starting at such a high level. Python is much easier to understand and work with. Sure it doesn't do as many things as well as C++ and isn't nearly as fast in larger projects, but for a rookie, does that really matter? It seems to me that learning the fundamentals of program construction is much easier inside a simpler language because the language itself is easier to learn and that should count for a lot in the choice of language used to learn the basics. But, like I said, I'm a rookie at this so there are probably a lot of things I haven't taken into account.
ffreeloader is offline   Reply With Quote
Old 08-14-2005, 08:51 PM   #16
Barefoot on the Moon!
Staff
Premium Member
 
Force Flow's Avatar
 
Join Date: Aug 2002
Location: Northeastern USA
Posts: 13,385
Python is add-ons depend on the C++ components.

Unless you have a really strong desire to force Python to work, you'll be wasting time learning a language that you really won't use.

You don't *have* to start working on complicated projects with C++ or java. Everybody starts out with a simple "hello world" and builds up from there.
Force Flow is offline   Reply With Quote
Old 08-14-2005, 10:37 PM   #17
~ Ryan ~
 
Join Date: Jun 2005
Location: Jackson TN
Posts: 3,516
Send a message via AIM to rspassey Send a message via MSN to rspassey
This is the code I wrote a few days ago in LIBERTY BASIC for a hangman game, its a little complicated and around 1350 lines, but you might get the idea. I taught myself BASIC and i like its simplicity even tho i want to move on to C and c++ I'm glad i stared out with BASIC.
Attached Files
File Type: txt HANGMAN.txt (38.7 KB, 74 views)
rspassey is offline   Reply With Quote
Old 08-15-2005, 01:36 AM   #18
Dark
 
Dark Nova's Avatar
 
Join Date: May 2004
Posts: 1,128
Send a message via MSN to Dark Nova
WOW, that was alot of copy and paste. But Visual Basic is even easyer
Dark Nova is offline   Reply With Quote
Old 08-15-2005, 09:26 AM   #19
Barefoot on the Moon!
Staff
Premium Member
 
Force Flow's Avatar
 
Join Date: Aug 2002
Location: Northeastern USA
Posts: 13,385
Like I said, BASIC isn't used much any more. As you can see, it's quite ineffecient for a project even that small. Plus, it's not even object oriented, which would make no sense for what Stevevai9 wants to learn about.

I think we are forgetting about his origional question here.
Quote:
I would like to get going down the path of computer programming, ultimately ending up with game programming and pursuing that as a career. What I want to know is, what are the most used programming languages used in game programming and what I should start out learning first.
Force Flow is offline   Reply With Quote
Old 08-15-2005, 12:36 PM   #20
~ Ryan ~
 
Join Date: Jun 2005
Location: Jackson TN
Posts: 3,516
Send a message via AIM to rspassey Send a message via MSN to rspassey
The thing with VB is that you dont really get to see how the programs functions work in accordance with one another, you just click on the button and write the code for it, but you dont see the code that was created when you drew on the button, for the non object oriented languages and softwares you write out where you want the button, make a jump from it to its functions, and so on, as opposed to drawing it out. We use VB at school and I only took the course for the credit, but I taught myself on Liberty and personally I like Liberty better, I understand it better. Logic is one of the main requirments in writing programs, and good mathematical skills are also good, for instance if you wanted to make a slot machine you have to make it with a proper mathematical funtion so that the chances of getting a jackpot are difficult.
rspassey is offline   Reply With Quote
Old 08-15-2005, 01:33 PM   #21
Dark
 
Dark Nova's Avatar
 
Join Date: May 2004
Posts: 1,128
Send a message via MSN to Dark Nova
I started with pascal, and to tell you something,i did'nt understand anything. so then i decided to go with Oriented objects (delphie) and understood much better, because it was easyer. when i started java much later, the only thing i had to add was the lines for the buttons and ect... But the logic stayed the same.

But to return to topic, it depends on the game you want to make, I did MineSweeper in Delphi, and Utopia (http://games.swirve.com/utopia/) in java.

Everything depends on the game you want to do, because some games are easyer to do with other programes
Dark Nova is offline   Reply With Quote
Old 08-15-2005, 11:47 PM   #22
Member (8 bit)
 
Join Date: Jul 2005
Posts: 177
Quote:
You don't *have* to start working on complicated projects with C++ or java. Everybody starts out with a simple "hello world" and builds up from there.
I understand that. That's what I did. But, it seems you missed my point. A language that is simpler to use and easier to learn lets a person concentrate much more on program flow and logic when beginning. Since program flow and logic are the most important parts of programming, and the hardest to learn, it seems to me that anything that makes it easier to learn those aspects of programming makes it easier for the beginner. Once a person learns how to construct a program it seems to me that then learning a second language becomes a whole lot easier. To me that's the time to graduate to the more difficult langauge. Then a person could jump to the more difficult projects, such as a game, too because the fundamentals would already be learned.
ffreeloader is offline   Reply With Quote
Old 08-16-2005, 12:52 AM   #23
Dark
 
Dark Nova's Avatar
 
Join Date: May 2004
Posts: 1,128
Send a message via MSN to Dark Nova
^ totaly agree.
Dark Nova is offline   Reply With Quote
Old 08-16-2005, 10:01 AM   #24
Barefoot on the Moon!
Staff
Premium Member
 
Force Flow's Avatar
 
Join Date: Aug 2002
Location: Northeastern USA
Posts: 13,385
Personally, I think it's a waste of time to learn a programming language that you will never actually use.

Just because C++ or Java can be used for complicated and invloved projects doesn't mean the logic is hard. The logic is only as hard as the project at hand.

Quote:
Originally Posted by ffreeloader
I actually tried starting with C++ in an attempt to teach myself to program and it was very, very difficult.
C++ is not all that different from any other object oriented language. Some of the syntax is a bit different, but basically, the logic is the same. This is why you don't need to start on another language that you know you will not have a use for later on.

If you need to find a way to perform an action in sequential order, logically, you would always go "A", "B", then "C". This sequential order would be the same with Java, C++, .NET, VB6, etc. If you need practice with logic, that's where psudocode and examples comes in.

Take the act of changing a tire. What are the logical steps for changing a tire? Do you try to unscrew the nuts while the car is on the ground, or do you raise it up? Which way do you turn the nuts?

You start getting into the habit of thinking logically soon enough. It just takes some practice. All you need to know is what you have to start with, where you need to go, and the tools you have to do it. Then you can do just about anything.
Force Flow is offline   Reply With Quote
Old 08-16-2005, 12:21 PM   #25
Dark
 
Dark Nova's Avatar
 
Join Date: May 2004
Posts: 1,128
Send a message via MSN to Dark Nova
yes, but when you start with oriented objects, you dont need to write the objects codes, just the solution. thats why you take it easy than go harder. Its like a game. usualy when you play a game you start off at an easy dificulty going down to hard
Dark Nova is offline   Reply With Quote
Old 08-16-2005, 10:18 PM   #26
Barefoot on the Moon!
Staff
Premium Member
 
Force Flow's Avatar
 
Join Date: Aug 2002
Location: Northeastern USA
Posts: 13,385
Quote:
when you start with oriented objects, you dont need to write the objects codes, just the solution
Come again?
Force Flow is offline   Reply With Quote
Old 08-16-2005, 10:32 PM   #27
Member (10 bit)
 
kosova's Avatar
 
Join Date: May 2005
Location: Republic of Kosova
Posts: 581
this year we learned C+ then we switched to Python...well i guess the whole point of the class was to teach us to think in programming mode, not how to program, to learn the concepts...if u wanna become a programmer dont start with java..thats a really hard language to learn...the best way to start i guess is start with borland which is based on C++ and is a powerful weapon...if you wanna become a game programmer..well im not really sure but w/e you do stay away from Python..when we switched it felt like we started all over again...b/c we did!!
kosova is offline   Reply With Quote
Old 08-16-2005, 11:27 PM   #28
Dark
 
Dark Nova's Avatar
 
Join Date: May 2004
Posts: 1,128
Send a message via MSN to Dark Nova
Dude C++ is alomst the same as java. when i learned to use java i knew how to use c++.

"when you start with oriented objects, you dont need to write the objects codes, just the solution" i meant than instead of writting the code for the button, like java, you just click add button and write the solution in the button
Dark Nova is offline   Reply With Quote
Old 08-17-2005, 09:15 AM   #29
Barefoot on the Moon!
Staff
Premium Member
 
Force Flow's Avatar
 
Join Date: Aug 2002
Location: Northeastern USA
Posts: 13,385
Not solution...a function. You need to write what you want the button to do when you click on it. All languages with a GUI component have this ability.
Force Flow is offline   Reply With Quote
Reply

Bookmarks

Still Need Help? Type Your Keywords Here:


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is On
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT -5. The time now is 04:55 AM.
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
SEO by vBSEO 3.6.0 PL2