Skip to main content
gamedev.net
🔒 Locked

Start off small?

Started by yoshimitsu15 27 replies 750+ views
Original Post
yoshimitsu15
yoshimitsu15
My computer teacher (in high school who teaches Basic in grade 11 and VBasic in grade 12) told me to start off with Basic, then work my way up to C++. Is this a good idea? I know this question is probably a stupid one, but some people said that you can start at whatever language you want. What should I do? I mean, isn''t C++ used in game programming a lot different than C++ used in regular programming? GAH! Help! :S How now brown cow?
How now brown cow?
Ibanez
Ibanez
This question has been rasied before and opinion seems to be divided.

I think learning basic (non-visual variety) is a waste of time, and requires a different mindset from VB/C/C++ which could hinder you a bit. VB and C (non visual C) are easy enough to learn straight off the bat and are actually practical, unlike Qbasic, etc. I would definitly recommend experience in both VB (or Delphi for that matter) and C before tackling VC though, quite a step up.
Kaezin
Kaezin
Start with whatever feels comfortable to you. Personally, I wish I had started with C++ and not Basic... Also a good free compiler and IDE is Dev-C++ in case you need one


Edited by - Kaezin on November 28, 2001 5:36:49 PM
Half the people you know are below average.Trogdor the Burninator
WayfarerX
WayfarerX
I will (as usual) recommend Java, especially if you plan on moving to C/C++. The syntax is very similar (unlike QBasic or VB).

"So crucify the ego, before it''s far too late. To leave behind this place so negative and blind and cynical, and you will come to find that we are all one mind. Capable of all that''s imagined and all conceivable."
- Tool

"There is no reason good should not triumph at least as often as evil. The triumph of anything is a matter of organization. If there are such things as angels, I hope that they're organized along the lines of the mafia." -Kurt Vonnegut
Dustop1
Dustop1
You can really start with whatever you want. The basic understanding of how various algorithms can be applied in a program can come from just about any language. However, I''ve noticed it is often difficult for people who started with languages other than C/C++ to pick it up due to the addition of pointers and references, and there is no drawback to starting with C/C++ then working your way to other languages.

It should really come down to what you have access to and what you can get help with. If you have easy access to a C/C++ compiler and have friends that can help you out go for it. If the same goes for Basic or VB, do that. And of course if you know you are going to need to eventually learn one but not the other then that would be another incentive.

As for C++ being used in games different from other programs, that''s a yes and a no. It''s more like any programming used in games, especially complex games, uses just about every trick known, while regular programming may only use a few simple alogrithms, otherwise it''s all just code.
hotdot
hotdot
here in quebec in college where i did had my degrees we used to start off with delphi 2.0 but it was really a nice programming language to learn the basics. in fact the easiest way to undersand things is to go for a more visual IDE. with events and stuff like that, after you feel enough comfortable with variables and functions and procedures you can easily learn the rest...its plain just syntax.

May the code be with us !
May the code be with us !
mediamaster40
mediamaster40
PLEASE DO NOT START WITH BASIC. I have learned Basic, Pascal, Java, PHP, Fortran, and a little Perl. I know C, C++, VB fluently. I assume you want to program games if your posting on this website, so C is definitely the way to start out.

VB is too slow and best for UI only apps, plus it lacks ease of bit manipulation and speed.

C++ might be good to start with since it will get you thinking from the start with object oriented design, good for readability and code reuse issues.

C has less features than C++, so it is easier to learn.

Starting with BASIC is pointless, you won''t use it for anything. There are millions of C examples and source code littering the web on every topic imaginable, there are far fewer examples in BASIC.
MicahM
MicahM
I never quite understood why people started learning one language first with no intention of actually using it. I would much rather drag myself through learning a harder language than waste my time learning something I will never use. Kinda like learning japanese before chinese so you can be eased into the use of there writing system and get used to writing verticle.

There are similarities between the language and programming in general but why waste time learing all the stuff that is basic only only to forget it and have to start over on C.

Learning C and then moving to C++ is a bit different because C++ is an expansion on C so you won''t be learning anything that you won''t use (some stuff is replaced in ++ but you can still use the old C syntax if you choose).

-Micah
AdmiralBinary
AdmiralBinary
I used QBASIC before I even knew C++ existed. What it DID do was get me familiar with the basic idea of variables and functions. I would say there is no harm in learning basic, but it''s probably best to start with C++.

"That''s what I think anyway" - Mr Bean

---------------

I finally got it all together...
...and then forgot where I put it.
Peon
Peon
Yeah, don''t bother with Basic at all. I started off with GW Basic when I was 11, but as soon as I felt ready (14-15), I moved right into C++. I think that if you''re in highschool, you should have more than enough knowledge to understand the concepts of C.
Peon
AdmiralBinary
AdmiralBinary
I was QBASIC''ing when I was 9...Very good ''cos it''s so easy. I still recommend C/C++ tho.

---------------

I finally got it all together...
...and then forgot where I put it.
Necrosis
Necrosis
I agree with Basic being something to skip entirely. But there shouldn''t be any reason NOT to take VB in HS if it is available.

First off, there are many programming concepts that are difficult to learn for the first time, having an instructor to help you learn is very valuable.

Secondly, you''ll have actual milestones to work to. You need to get through lessons, you need to complere projects, and unless you slack off, you''ll be learning what the course is ment to teach you. Meaning you''ll learn what you need to with A programming language. It can be difficult self teaching C/C++ when there are so many distractions (I got distracted for TWO YEARS with two seperate MMORPG''s for example). Having an actual class can push you to keep working, as well as having devoted time to working on just coding.

Third, you''ll be using a period a day for something fun (unless you dont find programming fun), why not make the day more enjoyable?

You can still obtain a C++ compiler and attempt to learn C/C++ at home while your learning VB in school, and learning basic programming concepts will help you understand sooner.

I went to a Technology Campus for a year for CS in C++ course, a classmate was learning Java on his own at the same time and now he''s doing great. Now he''s only using Java, and not touching C++ at all, but having an instructor and other classmates to actually help him learn C++ helped him to self teach Java. Course, C++ may be closer to Java then VB is to C/C++....

Ask yourself this: What do you have to loose?

All your base are belong to us
Arild Fines
Arild Fines
quote:
Edsger W. Dijkstra in "Selected Writings on Computing: A Personal Perspective":
It is practically impossible to teach good programming style to students that have had prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration




Psalm 137:9: "Happy shall he be, that taketh and dasheth thy little ones against the stones."
--AnkhSVN - A Visual Studio .NET Addin for the Subversion version control system.[Project site] [IRC channel] [Blog]
burp
burp
I started with GWBASIC at 12 and then ASM at 13, these days I know more languages then I need.

It's not the language that's important, it's the skill of problem solving, languages are just the tools programmers use.

Case in point:

Last year I did some contract work in Delphi, what's the problem, I didn't know any Delphi. It took me about 3 three days to get a handle on it and I ended up finishing the contract ahead of time, and got a bonus too. It wasn't my skill with asm, c, c++, c#, vb, java, fortran, cobol, java-script, vbscript, html, asp, and I don't know how many api's. It was my problem solving skills.

New programmers, make mistakes, mistakes in c and c++ can cause your computer to crash. The only way out is to reboot. Imagine crashing your computer 100 times in one day. That can't happen in qbasic or visual basic or java, well its still possible, but not as likely.

I found visual basic very easy to learn, I wish I had a program like that when I was a kid. However I may get flamed for this, but visual basic is a nice toy. If you want to do business programming (yuk) learn vb. If you want to be a game programmer, all you have to do is throw away the next 10 years of our life sitting in front of a computer screen, hacking away until, your head explodes.

All humor aside, start as soon as you can, with whatever tools are available to you. The choice is yours, start using those problem solving skills, and decide on a language.

btw: The ability to think for yourself is another skill a programmer should have.




Edited by - burp on November 29, 2001 5:39:00 AM
rk
rk
I started with QBasic as I had no knowledge of better... Poor me. When I finally found out that C++ isn't a black art of people with IQ's over 180 after all, I got myself a compiler and started learning. Because of the oversimplicity I was used to with QBasic, I was devastated by the fact that drawing circles, lines and boxes required more than one line of code!

Anyhow, for a long time my thinking (and coding) was limited by the ugly ways I had learned in my QBasic times, and it took a long time to learn how to program without 'goto'.

So if only you have access to a C++ compiler, I challenge you to learn C++ instead of going the seemingly easier way.


rk

Edited by - rk on November 29, 2001 8:38:48 AM
Machaira
Machaira
If you want to do game programming just learn C++ and the API of your choice (DirectX preferably). If you want to do business programming learn Visual Basic first, then C++. If you want to do web stuff learn Java and maybe VB or one of the scripting languages (perl, etc).

Anything else is wasting valuable time.

Breakaway Games
Former Microsoft XNA and Xbox MVP | Check out my blog for random ramblings on game development
KalvinB
KalvinB
I''ve programmed in QuickBASIC since I was 8 or 9. I still use it when I want to demo a concept without going through the hassle of DirectX to get the graphics going. I figured out 2D and 3D using it and made my first side scrolling game, Cradle Quest, using it which used file access, smooth scrolling, sprite animation, functions, ect ect. Even an ending sequence.

QuickBASIC will suffice to get a working knowledge of programming going. I learned other languages including C++ by porting QB projects. That cut the learning time down to a month or two intead of years.

You could just as well start with C++ though.

Ben

Mayrel
Mayrel
I''d recommend starting with Java. It has the advantages of BASIC in that you don''t need to worry about the low-level stuff of C/C++ (memory management, pointers), but doesn''t have the disadvantage of being almost completely unlike C/C++.

Myself, I started with BASIC on a Dragon 32. I can safely say that it was a bad idea: it took me almost a year to grok pointers, and you can''t do anything useful in C/C++ until you grok pointers.

I wouldn''t use VB for game development. I''d use it for its intended purpose, RAD GUI developement. At worse, you could make an engine in C/C++/Java and make a GUI around it with VB. However, making a nice game GUI in VB is really difficult: VB is designed to make it easy to make programs that look like normal Windows programs, not games.

You can start on BASIC if that''s what you really want. Just don''t start on COBOL.

Just Plain Wrong
yoshimitsu15
yoshimitsu15
Thanks for the advice guys!
I think I know what I have to do now!
Thanks! :D

How now brown cow?
How now brown cow?
W_T
W_T
In my opinion, your objective shouldn''t be "learning a specific language" but to learn the concepts behind a specific paradigm (object-oriented, procedural, etc...). Once you''re familiar with these concepts you can apply them to any language and it would just be a matter of referencing syntax and function calls. The coding part itself is relatively trivial compared to the design and conceptualization of your applications.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.