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

So I'm looking to get into programming

Options
  • 07-12-2010 2:22am
    #1
    Moderators, Home & Garden Moderators, Recreation & Hobbies Moderators Posts: 7,685 Mod ✭✭✭✭


    As the title says, I'm thinking of taking a new direction and heading down the programming route. I'm 32 now and have more or less worked with the one company since leaving school as an IT field engineer working my way up the ranks to middle management. As the industry was quiet niche all training was in house, so industry standards were not important. A few months back the company pulled out of Ireland leaving me redundant and now I'm weighing up my options.

    I had desires to go down the programming route upon leaving school as having a lot of IT knowledge and a good grasp on HL maths I thought it might be a good option, only for a job opportunity to get in the way and the rest is history. I know of a few people in the business, one being entirely self thought, the other having gone to DCU to do actuary and eventually switching over near the end of his time. Both are doing well and figure it might be a good option.

    So, I'm wondering where to start really. Other then doing up a few SQL queries while working on some access databases, I have zero ideas on where to start or what type of language to focus on. I'm not sure weather to go back to full time education, evening courses or even distance learning. In a nutshell i'm a little clueless.

    The way I see it is if I was to go back into the field service end of things, then I'm going to have to put time into getting either Cisco or MS certified, but if I put even more time into the programming route then I could end up with some skills that are more beneficial in the long run.

    All opinions greatly appreciated.


Comments

  • Registered Users Posts: 171 ✭✭conorcan2


    There are different reasons that people learn to program. I'm guessing that your reasons are mainly career orientated. Some languages are more popular with employers than others, so you should do some research on jobs websites (search for keywords, e.g. Java, C++ and see how many results are returned).

    Languages are quite easy to pick up, in terms of their structure and syntax. What's not so easy to pick up is the effective critical thinking skills and methodologies. Whether you are successful in this field will depend largely on your personality, your coding experience and your education (whether self-taught or college).

    SQL is not really a programming language, but usually in steady demand with employers.

    .NET with C# might be a good line of investigation for you, I think your previous exposure to SQL queries might be of benefit.

    What type of applications do you want to work on? (e.g. desktop, network, internet, mobile).


  • Registered Users Posts: 171 ✭✭conorcan2


    University isn't necessary in many employers eyes. It's kind of like applying for a job as a photographer - the proof is in the pudding, so if you can demonstrate your work then the education becomes of secondary relevance.

    A university education can be used to give you a holistic knowledge of the different disciplines in computer science. If you are self-taught then there is a tendency to just focus on the niche you are interested in - there are advantages and disadvantages to this.

    If you are disciplined and motivated, then you don't need a university education.


  • Registered Users Posts: 4,277 ✭✭✭km991148


    conorcan2 wrote: »
    University isn't necessary in many employers eyes. It's kind of like applying for a job as a photographer - the proof is in the pudding, so if you can demonstrate your work then the education becomes of secondary relevance.

    A university education can be used to give you a holistic knowledge of the different disciplines in computer science. If you are self-taught then there is a tendency to just focus on the niche you are interested in - there are advantages and disadvantages to this.

    If you are disciplined and motivated, then you don't need a university education.

    This is an often debated topic and I dont want to derail the OPs questions, however an IT related degree is recommended as a lot of the time as it is the proof to employers that you are disciplined and motivated. However, coming from industry, this can be shown by career experience if your CV is written well.

    I think you need to start programming and find out. Look into the different roles in the industry. Language wise - .NET is a good library and c#s syntax will do you well for a variety of languages (although not sure about the point below "previous exposure to SQL queries might be of benefit."). Learn topics taught at Uni/College (real Object orientated techniques) and not just how to accomplish simple websites that rely heavily on plugins etc (especially true with Microsoft - they have a habit of providing many technologies that are designed to help and do work well for hobyists, but dont work well in industry). Type of application isnt too relevant initially, get familiar with correct techniques/basics first and then start on something larger (that will hopefully take your interest). If you enjoy it then you can work out how to take it further.

    Good luck!


  • Registered Users Posts: 171 ✭✭conorcan2


    km991148 wrote: »
    This is an often debated topic and I dont want to derail the OPs questions, however an IT related degree is recommended as a lot of the time as it is the proof to employers that you are disciplined and motivated.

    I agree, but I'd qualify it if time is important.

    In the web development area, employers will usually ask to see examples of your code. The quality of your code is, IMHO, the most important factor that will gain you employment as a programmer. Four years in college will also help, but four years...that's a long time that might be better spent!

    Have a look at the syllabus for a computer science course. While they will give you a well-rounded education, it might be extraneous knowledge for your role within a web development company. (I'm not talking about other industries here, just we development)

    Spend 40 euro on a programming book and sit down and DO the examples. Always challenge yourself a little bit harder.


  • Registered Users Posts: 4,277 ✭✭✭km991148


    conorcan2 wrote: »
    I agree, but I'd qualify it if time is important.

    In the web development area, employers will usually ask to see examples of your code. The quality of your code is, IMHO, the most important factor that will gain you employment as a programmer. Four years in college will also help, but four years...that's a long time that might be better spent!

    Have a look at the syllabus for a computer science course. While they will give you a well-rounded education, it might be extraneous knowledge for your role within a web development company. (I'm not talking about other industries here, just we development)

    Spend 40 euro on a programming book and sit down and DO the examples. Always challenge yourself a little bit harder.


    yep - I agree for the practical things, much (in fact most of what I know) has been leaned through decent books post college. However doing a good CS type degree teaches a lot more than how to become a programmer..

    Anyway as far as the OP - try and find out as much as you can about the industry and get some decent textbooks. It will require a good investment in time to find out if you even think you like it, a god bit more time to find out if you are able/any good at it, but do it right and it can be fun and rewarding (but often exasperating!)


  • Advertisement
  • Registered Users Posts: 171 ✭✭conorcan2


    Try and find a good forum for the language you choose and try to SOLVE as many questions as you ask. It's good practice.


  • Moderators, Home & Garden Moderators, Recreation & Hobbies Moderators Posts: 7,685 Mod ✭✭✭✭delly


    Thanks for the advice folks, some very good viewpoints. Having thought about it I'm going to get some books as suggested and look into good old BASIC and try to see if I can make things happen, if I get on well with that then I'll look at options for courses etc. or do some more self learning.

    If it goes well and I can make something of it, then who knows where I could end up, but if I was to set a preference it would be to work in the gaming industry. It might be something to aim for, but its a long way off.


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


    delly wrote: »
    Thanks for the advice folks, some very good viewpoints. Having thought about it I'm going to get some books as suggested and look into good old BASIC and try to see if I can make things happen, if I get on well with that then I'll look at options for courses etc. or do some more self learning.

    If it goes well and I can make something of it, then who knows where I could end up, but if I was to set a preference it would be to work in the gaming industry. It might be something to aim for, but its a long way off.

    If you can muster it(which evidently you should be able to, I code in C alot and did OL maths for the LC) I really, really reckon you should learn C fundamentals(strings arrays, pointers and other nitty gritty details) because even though you might not code in C everyday, most langs(including Java) basically trace roots back to C in terms of syntax. It's not newbie friendly I admit, but debugging things like segmentation violations and simple buffer overflows really makes you appreciate scripting langs like Perl/Ruby. You really need to know it if you want to ever go down the Linux/Unix route. The C book by the authors is great(even has a malloc() implementation, crazy), but it's not the best for starting out. This book should suffice: link

    Games wise, I would not rule yourself out. Moving onto C++(which is the bread and butter of games dev)will be a bit easier if you know C. They are not the same(though C++ is basically just a superset of C for OO). BASIC teaches bad practices imo. GOTO's are not really acceptable anyway, except in a very limited context. SQL is good to know imo, and while strictly not a prog lang in it's own definition, it has a hackish addon lang called PL/SQL for procedural programming stuff.


  • Registered Users Posts: 4,277 ✭✭✭km991148


    I wouldnt necessarily recommend sticking with c or c++, although Naikon makes some very good points and you will learn a lot along the way. I think regardless of language its important to understand whats happening under the hood (something else taught at uni, but can be achieved with good quality books), whither this is a managed/GC language like c#/Java or unmanaged like c etc.

    Either way (and no offense to basic programmers!) I would find it difficult to recommend basic, especially VB6. Even with VB.Net - it is very verbose and (in my opinion!) clumsy. Sticking with a c style language (c/c++/c#/java) I believe will help more (assuming you even want to work with compiled languages - there are also scripting based used a lot in some web circles - python/perl/php etc etc)!


  • Registered Users Posts: 385 ✭✭EoghanConway


    Naikon wrote: »
    If you can muster it(which evidently you should be able to, I code in C alot and did OL maths for the LC) I really, really reckon you should learn C fundamentals(strings arrays, pointers and other nitty gritty details)

    If you want a great job instead of a good job, this is essential. Any java job that requires in-depth knowledge of the language will be predicated on knowing C, same for C# etc.


  • Advertisement
  • Registered Users Posts: 4,277 ✭✭✭km991148


    If you want a great job instead of a good job, this is essential. Any java job that requires in-depth knowledge of the language will be predicated on knowing C, same for C# etc.

    but again its not essential (and maybe not beneficial these days) to learn c before anything else. By properly understanding what happens under the hood in c# involves learning about arrays, pointers etc.

    You can use managed languages to learn fundamentals of programming (including an understanding of memory management). You dont need to use all the higher level features and no decent book would start off that way.

    C# is a good language to get going in, has great tools and supports proper object orientated design - just avoid all the MS crap and get high quality books.


Advertisement