Advertisement
If you have a new account but are having problems posting or verifying your account, please email us on hello@boards.ie for help. Thanks :)
Hello all! Please ensure that you are posting a new thread or question in the appropriate forum. The Feedback forum is overwhelmed with questions that are having to be moved elsewhere. If you need help to verify your account contact hello@boards.ie
Hi there,
There is an issue with role permissions that is being worked on at the moment.
If you are having trouble with access or permissions on regional forums please post here to get access: https://www.boards.ie/discussion/2058365403/you-do-not-have-permission-for-that#latest

Beginning programming - Hopefully!

  • 30-07-2009 12:48pm
    #1
    Registered Users, Registered Users 2 Posts: 4,944 ✭✭✭


    So yeah, as the title suggests, I'd like to get into programming, though I'm an absolute beginner and have no knowlege of the methods or anything like that. Also I don't kow the differences between the different languages, such as C, C++ or Java or anything like that. I've googled tutorials already, but there's loads, too many just to pick one, and I was hoping somebody could point me in the right direction.

    So, if somebody could tell me where to start it'd be brilliant. Any websites, books or anything would be brilliant, also any hints and tips. Thanks :)


Comments

  • Registered Users, Registered Users 2 Posts: 981 ✭✭✭fasty


    What do you want to program? Stuff for the web? Windows? Games?


  • Registered Users, Registered Users 2 Posts: 4,944 ✭✭✭Jay P


    A bit of everything, maybe? Presumebly I should know what I want to do? I suppose websites, and also programs for Windows. Mostly the programs I guess.


  • Registered Users, Registered Users 2 Posts: 2,494 ✭✭✭kayos


    Java or C# would be options for web and desktop stuff. Each has their good points and you can pick one up if you know the other pretty quickly. But I think what language you use is second to actually learning how to program. The language is only a syntax you use to program.


  • Registered Users, Registered Users 2 Posts: 4,944 ✭✭✭Jay P


    I don't really understand what you mean...


  • Closed Accounts Posts: 72 ✭✭PearlDrummer


    What I think kayos is saying, is that the method of programming remains the same, even if the language is different.

    For instance, if you learn C++, many of the methods and functions are the same as Java. True, they are different languages, but they share many of the same characteristics. This rule applies across the board really.

    An easy language (in my opinion) is PHP, which is used for coding functionality into web pages. There are great resources online with tutorials and guides on how to go about coding. and some of the beginner stuff is very easy to code and it will get you into the rhtyhm of using code-structures.

    The best thing about PHP is that it requires very little set up, and everything you required to develop is free. Most "PHP for Beginners" books will explain how to set everything up on your system before, you start, and will guide you gently into the world of programming.

    Once you get the jist of one language, it really is just a matter of applying your problem-solving skills to different languages.

    I hope that made sense / helps :) !!


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 2,494 ✭✭✭kayos


    Ok example in programming there are certain things you do. Let take an easy example of you needing to check a value entered into a form and if its a certain value (lets say 0) you need to do something special, all other values do something else.

    In Visual Basic 6 the code would look some like this
    If enteredValue = 0 then
     <code for handling a value of zero goes here>
    else
     <code for handling all other values goes here>
    end if
    

    In C# the code would look like this
    if (enteredValue == 0)
    {
     <code for handling a value of zero goes here>;
    }
    else
    {
     <code for handling all other values goes here>;
    }
    

    Now both exmaples are there to do the same thing. But they are written in different languages so there is slight differences in them.

    But what I mean is when coming up with the code in your head you know you need an if statement. Now if your writing in C#, Java, VB6, C++ you still need that if statement. Only difference is the syntax used to write it based on the language you are using.

    So to put it another way I would consdier being able to solve a problem and writing it out in Pseudo code counts as learning to program. Then changing that into something that will work on a computer means I translate the Pseudo code into the language being used (which is coding).

    I think this is not explaining it exactly how I want to but I'm tired and need more coffee...


  • Registered Users, Registered Users 2 Posts: 721 ✭✭✭TheTubes


    You could start with small basic

    its very simple, would be fine to get a grasp of some of the basic concepts like branching, loops, etc. but not much more than that.

    maybe woth just a couple of days at it before moving on.


  • Registered Users, Registered Users 2 Posts: 1,306 ✭✭✭carveone


    I think the thing about beginning programming is that budding developers want feedback pretty quickly. They don't want to write code for a week before their first compile!

    Taking a look at the Visual Express editions (www.microsoft.com/express) should give you a start and they're free downloads (albeit bloody enormous). I'd probably go with Visual Basic and then to C#. They have some decent beginner links like the Beginner Developer Learning Center which should get you started.

    Not to be Windows-centric, Linux installs normally come with C compilers already installed as long as you like C. Should make for a quick start but moving from command line programs to GUI apps becomes quite difficult quite quickly.

    Now I'm a stubborn old programmer who refuses to use anything above C and Win32 (C++? Blah...) so maybe I'm the wrong person to give advice :) But I do remember using Visual Test (Very Visual Basic like, used for app testing) and got little programs up and running really fast. So I'd like VB would be a great intro.


  • Registered Users, Registered Users 2 Posts: 4,944 ✭✭✭Jay P


    What I think kayos is saying, is that the method of programming remains the same, even if the language is different.

    For instance, if you learn C++, many of the methods and functions are the same as Java. True, they are different languages, but they share many of the same characteristics. This rule applies across the board really.

    An easy language (in my opinion) is PHP, which is used for coding functionality into web pages. There are great resources online with tutorials and guides on how to go about coding. and some of the beginner stuff is very easy to code and it will get you into the rhtyhm of using code-structures.

    The best thing about PHP is that it requires very little set up, and everything you required to develop is free. Most "PHP for Beginners" books will explain how to set everything up on your system before, you start, and will guide you gently into the world of programming.

    Once you get the jist of one language, it really is just a matter of applying your problem-solving skills to different languages.

    I hope that made sense / helps :) !!

    Yeah, that makes sense. Presumably, I'd start with something basic before moving on.
    TheTubes wrote: »
    You could start with small basic

    its very simple, would be fine to get a grasp of some of the basic concepts like branching, loops, etc. but not much more than that.

    maybe woth just a couple of days at it before moving on.

    I'm going to start with this, it looks like just what I want! Thanks

    carveone wrote: »
    I think the thing about beginning programming is that budding developers want feedback pretty quickly. They don't want to write code for a week before their first compile!

    Taking a look at the Visual Express editions (www.microsoft.com/express) should give you a start and they're free downloads (albeit bloody enormous). I'd probably go with Visual Basic and then to C#. They have some decent beginner links like the Beginner Developer Learning Center which should get you started.

    Not to be Windows-centric, Linux installs normally come with C compilers already installed as long as you like C. Should make for a quick start but moving from command line programs to GUI apps becomes quite difficult quite quickly.

    Now I'm a stubborn old programmer who refuses to use anything above C and Win32 (C++? Blah...) so maybe I'm the wrong person to give advice :) But I do remember using Visual Test (Very Visual Basic like, used for app testing) and got little programs up and running really fast. So I'd like VB would be a great intro.

    Those two sites look very good. I cant wait to get into Visual Express! I'll take your advice though and use Visual Basic after I use Small Basic for a while. After that, I'll se how I'm going. :)


    Thanks for all the replies, I can't wait to get into all this, I'm really exited now! :pac:

    Also, any more opinions will be greatly appreciated.


  • Registered Users, Registered Users 2 Posts: 2,494 ✭✭✭kayos


    Please dont go the VB.NET route, please! Sorry thats coming from years of doing VB6 *shudder*.

    There is a good reason to why a lot of companies when upgrading from VB6 to a .NET platform went the C# route. And for someone starting out personnaly I think C# would be the best option in terms of being able to swap to say Java.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 515 ✭✭✭NeverSayDie


    kayos wrote: »
    Please dont go the VB.NET route, please! Sorry thats coming from years of doing VB6 *shudder*.

    There is a good reason to why a lot of companies when upgrading from VB6 to a .NET platform went the C# route. And for someone starting out personnaly I think C# would be the best option in terms of being able to swap to say Java.

    VB.NET isn't to my taste either, but to be fair, it doesn't have much at all to do with VB6, beyond importing some of its wonky syntax. Otherwise, it's more or less on a par with C# in terms of what you can do with it and how it gets done.

    That said, I'd recommend C# too - as kayos points out, its closeness to Java and C++ in terms of syntax is no harm from a future learning point of view. It also gets used more in industry (from what I've seen), and as the reactions from kayos and myself would suggest, tends to be taken a bit more seriously (justified or otherwise). Also, if you happen to have an interest in games development, C# with the XNA platform would be an excellent way to get into that, assuming you want to build games for Windows and/or XBox.

    Visual C# Express is probably as good a place to start as any, and MS and other folks have lots of tutorials available to get you going. Getting beginners/students into this racket is one of the main reasons they launched the Express products, so there's plenty of material aimed that way.


  • Closed Accounts Posts: 12,382 ✭✭✭✭AARRRGH


    I also recommend you don't go via VB.NET. Too much of the code is hidden from you, so you won't get a good grip on what's really happening.

    I recommend you start with C. It's a no-bull****, simple, straight forward language.

    It's also not an "object oriented" language, so you'll have a simplier learning curve.


  • Registered Users, Registered Users 2 Posts: 4,944 ✭✭✭Jay P


    I've started with Small Basic, have I made a bad move with this? I figured it would be a good idea to start with something which is, as the name suggests, basic.

    I'll play around some more with it today, and I'll move onto Visual C# Express hopefully later. So would this be an ok move to make?


  • Closed Accounts Posts: 12,382 ✭✭✭✭AARRRGH


    I really think you're making a mistake with the "Visual" languages. As I stated before, you don't get to see a lot of what's going on in the background, i.e. most of the programming is not done by you.

    You need to learn how to program first. Start with C or Pascal.


  • Registered Users, Registered Users 2 Posts: 4,944 ✭✭✭Jay P


    So could you give me a good place to start? As in a website or a program or something? I'm nearly finished downloading Visual C# Express. Should I ditch this for the moment and move onto something else?


  • Registered Users, Registered Users 2 Posts: 515 ✭✭✭NeverSayDie


    As long as you start with console apps, as you would in other languages, it won't make too much difference - there's no extra code to speak of there. The IDE saves you running the compiler by hand (though you can if you want to), other than that, no different to "Hello World" in C++ on the command line really.


  • Closed Accounts Posts: 7,794 ✭✭✭JC 2K3


    AARRRGH wrote: »
    I really think you're making a mistake with the "Visual" languages. As I stated before, you don't get to see a lot of what's going on in the background, i.e. most of the programming is not done by you.

    You need to learn how to program first. Start with C or Pascal.
    I dunno, I think it's better to start with the "safety net" of something like Java or C#.

    If he starts with C, he's likely to pick up the basics all right, then try some more complex things, see "Segmentation Fault" and spend hours not knowing what the hell he's done wrong, whereas with a more high level language, he'll get informative error messages and learn without those wasted hours.


  • Registered Users, Registered Users 2 Posts: 515 ✭✭✭NeverSayDie


    Specifically, this should get you started;
    http://msdn.microsoft.com/en-us/library/k1sx6ed2.aspx

    ("Hello World" is a traditional thing for beginners/folks new to a particular platform, where you write a very simple app that prints out "Hello World").


  • Registered Users, Registered Users 2 Posts: 981 ✭✭✭fasty


    AARRRGH wrote: »
    I really think you're making a mistake with the "Visual" languages. As I stated before, you don't get to see a lot of what's going on in the background, i.e. most of the programming is not done by you.

    You need to learn how to program first. Start with C or Pascal.

    I disagree. Neither teach you anything about modern object oriented programming and C in particular has a massive learning curve compared to C# or Java when you go beyond simple text based interfaces.

    It's perfectly reasonable to learn C# or the like first and come back to C later on if needs must.


  • Registered Users, Registered Users 2 Posts: 4,944 ✭✭✭Jay P


    I'm so confused.... I don't know whether I should go for C or C#. I think I'm just going to go with C# and see how it pans out.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 721 ✭✭✭TheTubes


    Jay P wrote: »
    I'm so confused.... I don't know whether I should go for C or C#. I think I'm just going to go with C# and see how it pans out.
    I think C# is a good idea, go for it.


  • Registered Users, Registered Users 2 Posts: 981 ✭✭✭fasty


    Don't worry about being confused, it's a pretty huge field and everyone has their own opinion on what is "best".

    That's why I asked what you wanted to code? It makes the choice of language much easier.

    I think the two best options for someone who wants to make Windows programs are:

    C# and .Net 3.5 -> Free tools from MS, lots of tuts and docs online, some great books too

    Python and pyGTK -> Python is a great one to learn on. pyGTK is a toolkit for making user interfaces using Python.

    Making Windows programs in C is quite difficult. MS provide an application programmer interface called Win32 for it and it's not very intuitive.


  • Registered Users, Registered Users 2 Posts: 84 ✭✭knoxor


    You have to ask yourself what do you want to program for?

    Is it for fun or is it to get a job?

    If its for fun then go ahead and pick any of the mentioned languages. If its for work, I'd recommend searching roundn the various recruitment websites and see which is the most popular language, what one has the most jobs ?

    If its for starting your own business doing websites, then probably php would be a good bet, or you could also look at Ruby on Rails.

    Usually programmers start with the HelloWorld application no matter what language. Its basically the simplest program that you can have in the chosen language. Do a search on that and try it.

    There are so many resources on the web these days, there are also certification courses you can do in the various languages.

    Sometimes the best way is to just get stuck in and try it. Its a good buzz when you get things working for the first time. I can still remember the buzz you get from typing in a few commands and making the computer do the things you told it to do.

    good luck !!


  • Registered Users, Registered Users 2 Posts: 721 ✭✭✭TheTubes


    tbh, you would probably have learned 2 languages by the time you reach a consensus here,
    the whole "which language is best/easiest to learn" always turns into a bit of a religious debate! :)

    whether its for fun or work I still recommend you go with either Java or c#,
    I think most people would agree that these are the two most popular languages posted on recruitment sites.
    Plus they both give you the option of doing command line or desktop GUI or web based development.
    Im a big fan of php/ruby/python etc. and Java is my favourite but I'd still recommend you start with c#,
    i think that with visual studio its fairly easy to get started, where as with the others it can be a bit of a pain sometimes getting an IDE and a runtime and a server setup.

    Even if you don't go with c#, I'd suggest you just pick one and start as there havnt been any bad suggestions on the thread so far (except c, in my opinion I wouldnt start with c, thats just my opinion! no flames please :) )

    ymmv


  • Registered Users, Registered Users 2 Posts: 901 ✭✭✭EL_Loco


    It's always tough asking people what language to start with as most people will have a favourite.

    point being, which has been mentioned already, there are common elements to all programming languages.

    datatypes
    variable declarations
    conditional statements
    loops
    procedures/functions/methods
    (to name but a few)

    The most important part initially is to learn what these are and what they do. It doesn't REALLY matter what language you learn them in, because as soon as you want to change languages you look up how that language performs the things listed above.

    So keep on trucking with whatever you've started with. The concepts are more important when starting than how you're expressing them.


  • Closed Accounts Posts: 12,382 ✭✭✭✭AARRRGH


    fasty wrote: »
    I disagree. Neither teach you anything about modern object oriented programming and C in particular has a massive learning curve compared to C# or Java when you go beyond simple text based interfaces.

    It's perfectly reasonable to learn C# or the like first and come back to C later on if needs must.

    Most people find object oriented programming vastly more complicated than procedural programming. This is the reason most computing courses don't jump into object oriented programming as the first language they teach.

    To become a good programmer, you need to understand what you're doing. C forces you to think.


  • Registered Users, Registered Users 2 Posts: 981 ✭✭✭fasty


    Well, what parts of C do you need to understand before you become a good programmer? Variables, loops, conditionals, data types? Any language will teach those before getting into OO.

    Or are you talking about what's actually happening behind the code when it's compiled?

    Most computing courses these days jump right into Java/C#/VB by the way! Even back as far as 99 that was the case. The year before us did Pascal, we did Java, then C++.

    Funnily enough, I write a lot of C as well as C++ these days and I don't think I was hampered in any way by going OO first. Once you know how to program, you know how to program.


  • Moderators, Technology & Internet Moderators Posts: 1,336 Mod ✭✭✭✭croo


    There is no real answer to "what language?" question as it is typically dependent on the "what task?" question! :) - the right tool for the right job and all that.

    If however the OP is interested in programming in general, as opposed to programming in Java or C or whatever... then UC Berkeley has some great lectures available on youtube... search for ucberkely & CS 61A & CS 61B. There might be more but these are two courses I happened upon and thought were excellent. These do a great job of teaching the basic theories of programming. Of course you don't get the homework, labwork or to ask questions from those but while most books on a programming language will teach you the syntax of the language, these videos will help you come to grips with what it is you want & need to do. Highly recommended. Start with CS 61A; if you were at berkeley CS 61A would be a prerequisite of CS 61B (which is mostly data structures and the examples are in java).

    enjoy!


  • Closed Accounts Posts: 12,382 ✭✭✭✭AARRRGH


    fasty wrote: »
    Well, what parts of C do you need to understand before you become a good programmer? Variables, loops, conditionals, data types? Any language will teach those before getting into OO.

    Actually, you're right, it is possible to use Java (which I like btw) and ignore the OO bits while you write simple code in main().

    I just think a lot of people can get overwhelmed by the syntax and end up getting frustrated and confused. Certainly most the computer science 4th years (yep, final year computer science students) I met last year seemed to be totally bogged down on OO syntax and as a result couldn't really program at all. That's one of the reasons I like Pascal - it was created to teach programming concepts.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 981 ✭✭✭fasty


    AARRRGH wrote: »
    Certainly most the computer science 4th years (yep, final year computer science students) I met last year seemed to be totally bogged down on OO syntax and as a result couldn't really program at all.

    :/ Really? That's shocking! CompSci students should take responsibility for learning this stuff outside of lecturers and/or courses should be updated to teach the (not that hard) OO way of doing things properly!


  • Closed Accounts Posts: 1,697 ✭✭✭MaceFace


    Op - as you can see, there are a tonne of different languages you can choose and then there is a tonne of things you want to achieve by programming.
    You are best to set yourself a goal for what you want to do. Do you want to design websites (maybe rewrite twitter)? Want to go into IT as a career? Want to just mess around and see what all the fuss is about? Want to make money out of it or just do something?
    How technical are you? What OS do you use and why (the answer should give everyone an idea of your capabilities?

    I have general recommedations and like everyone else it is based on my experiences. That doesn't mean it is right.
    Whatever way you look at it though, your not going to get away from Java. You may start somewhere else (Basic, C, Pascal, Fortran) and end up somewhere else (C++, Erlang, ASP), and then what about things like the scripting languages (Perl, Python, Ruby).

    How many times have we all thought we could learn something and then once we start give up as it was too hard and we didn't have a proper goal.


  • Closed Accounts Posts: 12,382 ✭✭✭✭AARRRGH


    A nice, flexible language for instant results is PHP. It's probably my favorite languge... after C, of course! :)


  • Closed Accounts Posts: 1,697 ✭✭✭MaceFace


    01101110 01100101 01110010 01100100
    or
    6E 65 72 64

    LOL!


  • Registered Users, Registered Users 2 Posts: 4,944 ✭✭✭Jay P


    MaceFace wrote: »
    Op - as you can see, there are a tonne of different languages you can choose and then there is a tonne of things you want to achieve by programming.
    You are best to set yourself a goal for what you want to do. Do you want to design websites (maybe rewrite twitter)? Want to go into IT as a career? Want to just mess around and see what all the fuss is about? Want to make money out of it or just do something?
    How technical are you? What OS do you use and why (the answer should give everyone an idea of your capabilities?


    I have no real goals yet, because I don't really know what to expect from this. It's mainly just to mess around with it. I'm only 18 so I'm not looking at a career just yet! I've had a vague interest in this for a while, and since I've loads of time on my hands, I thought it'd be something cool and interesting to try. What do you mean by technical? I'm able to use a computer and stuff like that, obviously enough. I'm not sure what you mean exactly by that, it's quite a broad quesstion. And I use either XP or Vista, depending on what compputer I'm on. It's usually Vista though. The reason is that's what we have. Macs are kinda dear, though I'd love to have one.
    How many times have we all thought we could learn something and then once we start give up as it was too hard and we didn't have a proper goal.

    This is true...though as I said, I don't have goals because I don't know what to expect from this yet, and I don't know what I'd like.... I do like the idea of creating programs for Windows maybe or something along those lines.


    knoxor wrote: »
    You have to ask yourself what do you want to program for?

    Is it for fun or is it to get a job?

    If its for fun then go ahead and pick any of the mentioned languages. If its for work, I'd recommend searching roundn the various recruitment websites and see which is the most popular language, what one has the most jobs ?

    If its for starting your own business doing websites, then probably php would be a good bet, or you could also look at Ruby on Rails.

    Usually programmers start with the HelloWorld application no matter what language. Its basically the simplest program that you can have in the chosen language. Do a search on that and try it.

    There are so many resources on the web these days, there are also certification courses you can do in the various languages.

    Sometimes the best way is to just get stuck in and try it. Its a good buzz when you get things working for the first time. I can still remember the buzz you get from typing in a few commands and making the computer do the things you told it to do.

    good luck !!

    Like I said, this is only for fun for the moment. I'm only just finished the Leving so I'm not looking for a job out of anything just yet.
    croo wrote: »
    There is no real answer to "what language?" question as it is typically dependent on the "what task?" question! :) - the right tool for the right job and all that.

    If however the OP is interested in programming in general, as opposed to programming in Java or C or whatever... then UC Berkeley has some great lectures available on youtube... search for ucberkely & CS 61A & CS 61B. There might be more but these are two courses I happened upon and thought were excellent. These do a great job of teaching the basic theories of programming. Of course you don't get the homework, labwork or to ask questions from those but while most books on a programming language will teach you the syntax of the language, these videos will help you come to grips with what it is you want & need to do. Highly recommended. Start with CS 61A; if you were at berkeley CS 61A would be a prerequisite of CS 61B (which is mostly data structures and the examples are in java).

    enjoy!

    That sounds great, thanks a million for that :)


    I remember ages ago I read that all you need for programming is Notepad, but I've downloaded programs for both Small Basic and C#. Is there any reason for this? Do you generally use programs for programming?


  • Closed Accounts Posts: 12,382 ✭✭✭✭AARRRGH


    You have to use a compiler or interpreter to convert your program into something a computer will understand.

    For example, you can write a C program in notepad, but then you have to use a seperate program to compile it.

    Software like Visual Studio are just a fancy version of notepad with a fancy compiler built in.


  • Advertisement
  • Registered Users, Registered Users 2 Posts: 3,945 ✭✭✭Anima


    If I were you Jay, I'd start learning Java. Just download Netbeans (or Eclipse, Netbeans is easier to use though) and start looking at tutorials.

    The Java site itself has lots of tutorials and articles about everything really. http://java.sun.com/docs/books/tutorial/java/nutsandbolts/index.html

    You could set yourself the goal of making a small 2D game. That way you'll learn the basics (variables, operators, conditions and loops), about classes and inheritance etc and some GUI stuff using Swing.


  • Registered Users, Registered Users 2 Posts: 497 ✭✭the-island-man


    I personally would advise you to learn C programming first, it is one of the most widely used language so there is an enormous amount of documentation and tutorials on the web for it and any library you go to are more lightly to have a lot more books on C programming rather than any other languages.
    Another advantage in my opinion is it allows you to learn the basics needed for programming without allowing you to get bogged down in understanding the concept of object oriented programming like you would have in languages such as C++, Java and Python.
    Objected orientated is an important concept in programming and one which you will have to learn but in my opinion you have to crawl before you walk!


  • Closed Accounts Posts: 7,794 ✭✭✭JC 2K3


    You don't need to know OO to learn Java though, you just don't create any classes....

    And NullPointerException, ArrayIndexOutOfBoundsException etc. are much easier to deal with than "Segmentation Fault".


  • Closed Accounts Posts: 4,564 ✭✭✭Naikon


    Personally, I would learn the very basics of Algorithmic procedures before any
    real programming. A programming language is just a tool to solve a problem.

    By starting off with something like C, you don't get bogged down with fancy
    features and terminology used in the fancy web based/OO languages.

    You can 'shoot yourself in the foot' with C so to speak, because the language
    is fairly spartan. Most features depend on external libraries, even for simple
    stuff like string manipulation. A string is a variable that stores text.

    I would stay the hell away from anything related to GUI programming for
    quite some time. The Windows world tends to have a nasty habit of mixing
    core functionality of a program with the gui elements.

    This is why you should stay away from anything .NET related, and focus
    on simple, clean languages.

    The best thing to do, is to separate core code from user interface
    stuff, because you can always slap on a fancy gui at a later date.

    C is hard to learn at first, no doubt. But it will serve you well, because the
    syntax of most other languages are at least vaguely similar to C on the
    procedural level.

    Pointer reference is hidden in most langauges now, but understanding
    for example that: while ( *a++ = *b++); copies a text string is useful at times.
    Don't use pointers all the time though. C is a good start to intermediate stuff.

    Also, you can develop fairly decent console gui apps using ncurses.
    ncurses is a good start before any serious gui work.

    Check out: http://www.cprogramming.com/
    Good luck on your quest OP :)


Advertisement