So I'm Going To Learn A Programming Language

XythXyth Avatar Join Date: 2003-11-04 Member: 22312Members
edited December 2003 in Off-Topic
<div class="IPBDescription">Which one would you recommend?</div> I'm finally getting my lazy self up and learning a programming language. Now I've broken it down to 1 of 3
VB
C++
Java
If you know of any others, fell free to mention them, or any tips on one I should try before anything else, etc
Basically I want to be able to write small games(just to test). Other kind of misc. programs, also, which one will I most likely be thankful for knowing later in life? I've heard that Java is being used often, but I want some input.

EDIT: also, a college near me is hosting classes for each of those, but they are kinda costly, so I wanna make it money well spent <!--emo&:D--><img src='http://www.unknownworlds.com/forums/html/emoticons/biggrin.gif' border='0' style='vertical-align:middle' alt='biggrin.gif'><!--endemo-->
«1

Comments

  • Quantum_DuckQuantum_Duck Join Date: 2003-10-21 Member: 21851Members, Constellation
    It depends on a lot of factors. Java is being used a lot by buisnesses, and is also pretty good for small online games. VB is a good language for quickly putting together a GUI, and is good for getting into programming, since it is relatively simple and intuitive. On the other hand, it has some efficiency issues for larger projects unless you really learn how to optimize windows stuff.

    My personal favorite is C++, and if you are serious about game programming, you should know that almost every game company out there uses C++. The problem is that C++ is insanely complicated for a first time programmer, and is very difficult to learn. If you are serious about programming games, I would suggest picking up a book about C and trying to learn that first. If you get a good handle on C without too much difficulty, pick up a C++ book and move up, or take a good class in C++ from a local college. For starting out, using books is fine, but for getting into actually using C++, I would recomend a class unless you are some kind of genious. <!--emo&:)--><img src='http://www.unknownworlds.com/forums/html/emoticons/smile.gif' border='0' style='vertical-align:middle' alt='smile.gif'><!--endemo-->
  • GwahirGwahir Join Date: 2002-04-24 Member: 513Members, Constellation
    C++ never seemed that difficult to me...

    but about VB, stay away from it, period.
    If you have to, use C# instead.
    Which has similarities to Java, an okay language some people like it some don't, I'm leaning towards not liking it personally. But that's just me.
  • zoobyzooby Join Date: 2003-08-26 Member: 20236Members
    You know you wanna learn binary!!!!

    I would go with C++ or Java
  • [WHO]Them[WHO]Them You can call me Dave Join Date: 2002-12-11 Member: 10593Members, Constellation
    A language you'll be thankful to know later on is definetly c++

    I would recommend BASIC until you get the ropes of how programs work in general. Learning about functions and variables and stuff.

    Then when you've got that down, move to c++ .

    The absolute, hands down, best way to learn c++ is to simply make stupid project after stupid project. Just keep pumping out more and more junk that doesn't do much until you get used to it.

    And just slowly build up from there.

    Learning to program is a never ending process (I've been doing it since I was like 9 and I still learn new stuff like every few months). Just get used to that fact and always keep trying new things.
  • DY357LXDY357LX Playing since day 1. Still can&#39;t Comm. England Join Date: 2002-10-27 Member: 1651Members, Constellation
    C++ for the vast amount of resources, tutorials, dedicated sites etc
    that are available for it. It's a bit confusing at first but the more time
    you're willing to put into it the more it will benefit you.

    I've never tried Java or C# so I can't comment on those.
    But I have done a fair bit of Visual Basic 6, its ok for beginners
    but C++ should be a higher priority than VB6.
  • GwahirGwahir Join Date: 2002-04-24 Member: 513Members, Constellation
    true, you should start small. If you choose c++ learn about data structures as well, they're invaluable for just about any decent sized project.
  • uranium_235uranium_235 Join Date: 2002-11-20 Member: 9478Banned
    edited December 2003
    COBOL for lyfe.

    That or assembly. Assembly is fun too.
  • CrystalSnakeCrystalSnake Join Date: 2002-01-27 Member: 110Members
    I read somewhere that it's good to learn Assembler, because it helps you understand how high-level programming languages work. Is this true?
    And if it is, should you learn assembler first and then a high-level language, or the other way around?
  • pardzhpardzh Join Date: 2002-10-25 Member: 1601Members
    I'm learning C++ as my first language and if you're a logical thinker, it's not very hard to pick up the basics.

    In my opinion at least.
  • uranium_235uranium_235 Join Date: 2002-11-20 Member: 9478Banned
    <!--QuoteBegin--CrystalSnake+Dec 10 2003, 03:54 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (CrystalSnake @ Dec 10 2003, 03:54 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> I read somewhere that it's good to learn Assembler, because it helps you understand how high-level programming languages work. Is this true?
    And if it is, should you learn assembler first and then a high-level language, or the other way around? <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    Are you kidding? Assembly is like freaking impossible.
  • [WHO]Them[WHO]Them You can call me Dave Join Date: 2002-12-11 Member: 10593Members, Constellation
    edited December 2003
    <!--QuoteBegin--CrystalSnake+Dec 10 2003, 02:54 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (CrystalSnake @ Dec 10 2003, 02:54 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> I read somewhere that it's good to learn Assembler, because it helps you understand how high-level programming languages work. Is this true?
    And if it is, should you learn assembler first and then a high-level language, or the other way around? <!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    I just started learning assembly in september.

    Yes, it does give you better insight as to how high level languages work, mainly because you know that everything you write in like c++ boils down to this stuff.

    I would definetly NOT start with assembly. And even when learning assembly, don't start with x86 assembly. Start with the motorola 68,000 series. The registers arent as picky about what they do.

    EDIT: I should mention that assembly is mainly only used as a valid language when you have to squeeze every last mother loving clock cycle out of a function. I have only found a single case so far where assembly was useful, and that was in a lighting manager for my team's game this year that figured out which 8 lights would have the most visible effect on an object and was being called like fifty bagillion times per frame.
  • AeaAea Join Date: 2003-10-09 Member: 21552Members
    I personally prefer to using C#, however it makes the switch to C++ if you ever wish to learn it extremely buggy since there are several small stupid differences <!--emo&:p--><img src='http://www.unknownworlds.com/forums/html/emoticons/tounge.gif' border='0' style='vertical-align:middle' alt='tounge.gif'><!--endemo-->
  • OttoDestructOttoDestruct Join Date: 2002-11-08 Member: 7790Members
    My first was BASIC... uhm *cough*... too bad you cant exactly do a whole lot with that though... so unless youre blind and havent seen my threads.. uh yea I'm doing C++ now, planning on teaching myself a bit of C over the summer, and continue with C/C++ since by then I'll be able to choose what language I write in for classes.
  • R_A_CR_A_C Join Date: 2003-05-13 Member: 16273Members
    BASIC for teh TI-83+ calculator will r0x0rz ur b0x0rz <!--emo&::nerdy::--><img src='http://www.unknownworlds.com/forums/html/emoticons/nerd.gif' border='0' style='vertical-align:middle' alt='nerd.gif'><!--endemo--> j/k, I don't know much about programming, but text-based calculator games are easy to learn and program for beginners who aren't too serious about like, a career or something.
  • NiteowlNiteowl Join Date: 2002-09-04 Member: 1274Members, NS1 Playtester, Contributor
    if you wanna do big multinational distributed business apps, Java, and J2EE.

    Games, serious, real, hardcore game programming, C++.

    Quick and quite useful small office applications, VB.

    Wanna be core? and earn the respect of most geeks pretty much anywhere, but not have alot to actually apply it to? Assembly.

    Interested in system level programming, kernal hacking? C, C++.

    Interested in tiny littly web games? Actionscript for Flash, or Java for Applets.

    Wanna do sysadmin type things quickly, with lots of quick hacking and scripting? Bash, Pyhton, Ruby, Perl.


    WebDev? ASP, Java and the J2EE family, VB, Perl, Python.

    hth.
  • XythXyth Avatar Join Date: 2003-11-04 Member: 22312Members
    Well I figure for now, I'll go with C++, I have worked alot with building small programs/scripting, and have a good understanding of how stuff is setup, so I'll give it a try.
  • BigMadSteveBigMadSteve Join Date: 2003-02-12 Member: 13472Members
    <!--QuoteBegin--Niteowl+Dec 11 2003, 12:01 AM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Niteowl @ Dec 11 2003, 12:01 AM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> Wanna be core? and earn the respect of most geeks pretty much anywhere, but not have alot to actually apply it to? Assembly.


    <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    I guess learning assembly code does have it's advantages afterall <!--emo&:D--><img src='http://www.unknownworlds.com/forums/html/emoticons/biggrin.gif' border='0' style='vertical-align:middle' alt='biggrin.gif'><!--endemo--> Gawd I hate it. I've used one assembler and it's a pain. Hold down the backspace for more than a second then <i>bam</i> it deletes the whole screen. Need to save often.
  • DOOManiacDOOManiac Worst. Critic. Ever. Join Date: 2002-04-17 Member: 462Members, NS1 Playtester
    I would never recommend anyone learning C++ as their very first program language. Neither does any college.

    Personally, I'd recommend VB. Yes it sucks, but its easy to pick up, does touch on some core fundamentals of programming (vb.net especially does this better than vb6), and its also when you're just starting its a nice confidence booster to have a working windows app that does something rather than a silly text-only console box. :P

    So I'd recommend you start out with VB, then after working with it for at least 4 or 5 months (and get into some pretty advanced stuff), then you should take a look at C++

    Don't bother learning Java till AFTER you have C++ down. Once you get C++, learning Java, PHP, and literally dozens of other languages will be cake.

    And once you feel you're in for a challenge, learn assembly, and learn it good. After that, no language will ever be a challenge to you again. :)
  • SoulSkorpionSoulSkorpion Join Date: 2002-04-12 Member: 423Members
    What Doomy said. Once you've learned C++, learning other languages is quite easy (especially Java, since Java is little more than idiot-proof C++). The one catch is that C++ is quite a hard langauge to learn.

    The thing is, you aren't picking a language to marry and have kids with and be with for the rest of your life. Most real programmers know more than one language, and often don't have a choice of which one they have to use. So, ultimately, you'll probably learn a variety. The question is which language you should start with. I hate to say it, but VB is probably easiest. Java is doable as a first language; in my CS course they fed us that first, and the nubs seemed to cope with it. Personally, I learned Qbasic first and then C++.
  • LastLast Join Date: 2003-10-06 Member: 21463Members
    VB. It's fun, simple, and you can get started programming some leet things without too much of a learning curve.
  • CreepieCreepie Join Date: 2003-02-19 Member: 13734Members
    C++ is still the way to go. I advise starting with C and getting comfortable with that. C takes the complex ideas C++ out of the equation. Its a good place to start about learning functions and code flow. Then you can start on the advanced ideas of objects, classes, templates etc... of C++.

    I wouldn't recommend anyone learn anything more than the basics of VB and I certainly wouldn't recommend it as a main language for anyone. It allows, nay encourages, sloppy practices and sloppy that could trip you up when you get to the more picky of languages like C++, Java and C#.

    Remember that the .net pulls a lot of development environments together so future projects may be cross language - a bit of Java here for the web interface, a bit of C++ there for the server core, a bit of VB for the interface, some C# and SQL for the database work etc... Knowledge of a number of languages may be advantage.

    Assembler ? Pah - for boys. Postscript is a nice language (its postfix location). Try miranda or lisp. Most languages are procedural. Miranda and lisp are functional and work differently (in lisp, the data and program space are one and the same thing). Or real men use prolog. Now *that's* a language. I wrote a connect 4 program in prolog. Damn near killed me.
  • tankefugltankefugl One Script To Rule Them All... Trondheim, Norway Join Date: 2002-11-14 Member: 8641Members, Retired Developer, NS1 Playtester, Constellation, NS2 Playtester, Squad Five Blue
    Any programming language will do. "If you learn _____, learning _____ will be easier" is true for most of them.

    Pick what is available, then stick to that for a little while. The basic concepts are still the same in most languages.

    But I'd stay away from assembly and functional languages (Lisp, ML, etc.) at the beginning. Not that it isn't fun, but it's usually a bit harder and has a smaller field of usage.
  • BlackMageBlackMage [citation needed] Join Date: 2003-06-18 Member: 17474Members, Constellation
    vBASIC is easy for small programs, nice tidy ... but for 'big' programs you, sir, are screwed

    c++ is somewhat more tricky than vb, it has openGL support, very powerful and expandible.

    java,
    <!--QuoteBegin--jefe+--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (jefe)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->is c's retarded brother<!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
    you can run it al most os's without recompiling, you can make applets from it. but for programs it suns slower than a snail stuck in superglue
  • TheWizardTheWizard Join Date: 2002-12-11 Member: 10553Members, Constellation
    My favorite language to program in is assembly for the Motorola 68hc12.
    But don't try to do it as your first programming language. It is pain.


    Start off in C++ and use that to get a good foundation that lets you branch off easily to other languages.

    As for learning assembler. Unless you want to program microcontrollers it really isn't necessary as compilers have become advanced enought that unless you are an assembler guru, you will not notice any improvements.
  • CreepieCreepie Join Date: 2003-02-19 Member: 13734Members
    One of the few useful courses I did at uni was a compiler course. We actually built a compiler from scratch to compile a high level language. The thing worked ! Even went into optimisations as well. I'm gutted because I threw the notes ages ago.
  • taboofirestaboofires Join Date: 2002-11-24 Member: 9853Members
    If you've never done any programming at all, learn pascal or something first. You're going to have a heck of a time with an OOP language until you get the basics in a more friendly environment.

    Then, learn C++. Here's the catch: it's really easy to go from C++ to Java, but really hard to go the other way around. Java does things a bit different, and protects you from yourself (for better or worse). C++, however, will let you do pretty much anything you want. Also, Java does not prepare you for the pain that is the linker error (ugh).

    If you don't plan on really going anywhere with your programming, and just want to make a few simple apps, Java is a fair bet. Getting into industry, however, and you'll want C++, and then VC++. Don't try to jump straight into VC++ though, it's pretty awful.
  • GwahirGwahir Join Date: 2002-04-24 Member: 513Members, Constellation
    edited December 2003
    Doom, University of Virginia Engineering school teaches every single student C++ in their first year.

    edit: spelling
  • [WHO]Them[WHO]Them You can call me Dave Join Date: 2002-12-11 Member: 10593Members, Constellation
    I definetly do NOT recommend that someone learn plain C before C++ .

    Some people tend to forget that C++ doesn't just add OOP stuff and templates. But also fixes problems that just **** some people off to no end (such as C's inability to declare a variable mid-function, and an endless sea of typedeffed structs).

    But meh, I think I'm gonna pull a switch on an old statement I made about learning BASIC first. I think you should actually just go to a book store and flip through a book on every language they have and just pick the one that you personally feel is the least intimidating. The main killer of people learning this stuff is getting in a rut and thinking they can't do it.
  • MulletMullet Join Date: 2003-04-28 Member: 15910Members, Constellation
    What are some good sites to learn progamming?
  • [WHO]Them[WHO]Them You can call me Dave Join Date: 2002-12-11 Member: 10593Members, Constellation
    <!--QuoteBegin--Mullet+Dec 11 2003, 01:22 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (Mullet @ Dec 11 2003, 01:22 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin--> What are some good sites to learn progamming? <!--QuoteEnd--> </td></tr></table><span class='postcolor'> <!--QuoteEEnd-->
    now that I think about it, I can't think of a *good* site to learn programming. Just a method.


    Find sourcecode for something in your preferred language. Have a general book on the language handy. Anything that the book doesnt answer should just be googled.
Sign In or Register to comment.