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

What Programming Language Should I learn?

Options
  • 06-03-2009 10:55pm
    #1
    Registered Users Posts: 465 ✭✭


    I did a H-dip in Software Design in Development in 2000 but have never worked in software design. It was a 1 year course and touched on C & C++ but not a whole lot. Anyways, in light of all the down turn etc, i'm thinking of getting back into the software to give my CV a change of direction.

    So, can anyone advise on what languages i should learn and whats hot and whats not!

    Thanks

    P.


Comments

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


    Well to be a decent programmer, you need to learn about the low level stuff that makes code efficient and what is good/bad practice in relation to performance. C is good for learning this. Then you can move on to object orientated languages and other higher level paradigms.

    C++ supports OOP as well as the low level things that are in C so it is a very good language for both performance and higher level of abstraction stuff. Most games and high performance applications are done in C++.

    Java is also quite good and a lot more forgiving than C++. All memory management is taken care of and its generally easier to get some code going. Its slower than C++ but it is also more portable, any platform that can run a Java Virtual Machine can run your code. Also networking is very easy in Java.

    Theres also the whole web programming side of things. Thats another huge area with many languages and frameworks.


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


    From what I can tell, you'd be at a fairly beginner level?

    You need to decide what sort of programming you'd like to do. In general, there are three areas -

    Low level programming like embedded systems, operating systems, drivers, etc. (C, Objective-C...)
    Application programming like writing things like Microsoft Office, browsers, etc. (C++, C#, Java...)
    Website programming (PHP, ASP...)

    In general, low level programming is the hardest, application programming is in the middle, and website programming is the easist.

    So decide what sort of things you'd like to be developing (i.e. low level or applications or websites) and then decide which language you prefer.

    Personally I would pick C, C# or PHP.


  • Closed Accounts Posts: 194 ✭✭charlesD


    Building on what Anima said, having a solid foundation is very important, which is why C or C++ is such a common starting place.

    Once you understand the fundamentals, they can be applied to other languages and at that point it is kind of like learning Spanish, you know what you want to say already, you just don't know how to say it yet.


  • Registered Users Posts: 3,287 ✭✭✭padraig_f


    I'd go with C#. Sure if you're learning as an undergraduate and you have a couple of years to learn programming, it's better to start with a lower level language like C, but I'm not sure this route would be that practical for someone looking to improve their immediate job prospects.

    If you've done a bit of C/C++, the C# syntax will be familiar. It's also a much nicer OO language than C++ and I think you'd be just causing yourself unnecessary pain learning OOP through C++. I'd download Visual C# Express (good IDE and free), get a copy of Head First C# or something like that and go through it. Also try and write lots of code.


  • Registered Users Posts: 465 ✭✭nulabert


    Thanks lads for the advice,

    Currently i'm working in Civil Eng, but the future isn't there are the mo. I did that 1 year H.Dip in S&D after my civils degree but went straight into civils. Anyways, maybe now is the time to get tuned up on the computers again. I recall doing a fair bit of C programming so i'll start with that. Ya, compared to a 4 year degree, it was probably feck all C programming, but as charles D said, its all about the fundamentals... Thanks AARRRG for the break down on whats what. padraig_f & Anima I'll start back with C and maybe get the C for dummies!

    Thanks again lads.

    P.


  • Advertisement
  • Registered Users Posts: 5,618 ✭✭✭Civilian_Target


    Actually, I don't recommend you start with C. Start with a modern language, that will teach you up-to-date programming paradigms -- things like object orientation and interesting design patterns. Then, when you have a good style, move back to things like C, so that while you're worrying about things like pointers and memory management you're doing it in a clean way instead of hacking it to death.


Advertisement