1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

How Can I Become A Computer Programmer?

Discussion in 'Scripting & Programming' started by Joe1979, Nov 21, 2009.

  1. Joe1979

    Joe1979 New Member

    6
    0
    1
    Hi,


    I want to change careers and go into the computer industry. I want to be a computer programmer but there seems to be loads of computer courses around and i'm really confused because I don't know which courses I should take.

    Please could someone tell me all the computer courses I need to take to become a programming professional?

    I know that for a network engineer the typical path is: A+, N+, CCNA and CCNP, but what would the path be for a computer programmer?

    Please please help me someone! I'm so confused.

    Thank you for your time.

    Joe
     
  2. dmarsh

    dmarsh Terabyte Poster

    3,782
    302
    184
    There is no 'standard route' to becomming a computer programmer, some people programmed for fun since the age of ten, other people might have taken maths, physics or engineering degrees and moved into programming.

    If there is a standard route its probably taking a Computer Science degree, if you are keen to get into industry and are a mature student a foundation degree might be more suitable as it will allow you to enter industry a year earlier.

    A career as a computer programmer is not generally an easy one, it generally means a commitment to lifelong learning.

    Best of luck ! :D
     
    Last edited: Nov 21, 2009
    Certifications: CITP, BSc, HND, SCJP, SCJD, SCWCD, SCBCD, SCEA, N+, Sec+, Proj+, Server+, Linux+, MCTS, MCPD, MCSA, MCITP, CCDH
  3. LukeP

    LukeP Gigabyte Poster

    1,194
    41
    90
    You could also pick up a beginner's level book, download free trial of Visual Studio and see if it's something you want to commit to. There's really a lot of good books for starters out there.
     
    Last edited: Nov 21, 2009
    WIP: Uhmm... not sure
  4. cisco lab rat

    cisco lab rat Megabyte Poster

    660
    62
    116
    That's something that I have always wanted to be able to do.

    I must have a pile of manuals from teach yourself PHP to C, went quite far but I lacked one vital important element, I did not have a clue what I was going to "program" with the knowledge I had gained, so I let it slip.

    My advice is if you want to learn to program have a goal in mind as to want it is you want to achieve

    Nice

    Joe
     
    Certifications: Yes I pretty much am!!
    WIP: Fizzicks Degree
  5. dmarsh

    dmarsh Terabyte Poster

    3,782
    302
    184
    I'd say you must have a very strong motivation to want to program, having an idea of a specific program you want to write may or may not help.

    Generally you will spend a lot of time learning programming fundamentals before you are effective. You have to learn to walk before you can run, so setting a short term goal to write a FPS blockbuster single handed may be counter productive.

    Instead practice, write anything you can think of, buy books with coding puzzles / exercises, visit websites with coding challenges, code data-structures, code UI's, create a database of your record collection, write a calculator, write a program that draws the mandlebrot set, code a sudoku solver, create a basic paint package, create a platform game, whatever you can manage and keep learning.

    Find out how other programs or even things work, how does your DVD player work, your engine management system, Googles indexer, etc ? What design decisions were made and why ? How do other programmers do things and why ?

    Its like learning a musical instrument or a natural language, rome wasn't built in a day.
     
    Last edited: Nov 22, 2009
    Certifications: CITP, BSc, HND, SCJP, SCJD, SCWCD, SCBCD, SCEA, N+, Sec+, Proj+, Server+, Linux+, MCTS, MCPD, MCSA, MCITP, CCDH
  6. cisco lab rat

    cisco lab rat Megabyte Poster

    660
    62
    116
    Sound advice, live it, eat it, breath it.

    Rep given
     
    Last edited: Nov 22, 2009
    Certifications: Yes I pretty much am!!
    WIP: Fizzicks Degree
  7. Mathematix

    Mathematix Megabyte Poster

    969
    35
    74
    Hi all

    There is always a critical path to learning to code that everyone always omits: The ability to solve problems!

    Yes, learn your programming language and be careful to choose one that you are most comfortable with, rather than what is the 'industry standard, since if you are learning, you are actually no where near getting into the industry anyway.

    When learning to code, if you can't think of any problems to solve then look at Project Euler Problems. A lot of these problems are extremely easy whilst others are more challenging. If you approach these without hesitation you could well be a programmer.

    Good luck! :biggrin
     
    Last edited: Nov 22, 2009
    Certifications: BSc(Hons) Comp Sci, BCS Award of Merit
    WIP: Not doing certs. Computer geek.
  8. jk2447

    jk2447 Petabyte Poster Moderator

    5,482
    352
    249
    I thought what DMarsh said was spot on. I did some programming for my degree, mainly smalltalk and java but as soon as I finished, because I didn't carry on, I quickly forgot the skills.

    I think programming is something that you have to do at least 5 days a week until you are very good at it before you can begin to stop learning and even then as said there's always more to learn.

    I take my hat off to any good developers and programmers because in my eyes, thats where the real genius of computing lies, not in support like my role. We just fix things someone smarter has created IMHO.
     
    Last edited: Nov 22, 2009
    Certifications: BSc (Hons), HND IT, HND Computing, ITIL-F, MBCS CITP, MCP (270,290,291,293,294,298,299,410,411,412) MCTS (401,620,624,652) MCSA:Security, MCSE: Security, Security+, CPTS, VCP4, CCA (XenApp6.5), MCSA 2012, VCP5, VCP6-NV
  9. JonnyMX

    JonnyMX Petabyte Poster

    5,239
    211
    236
    Programming is pretty tough and isn't for everyone.

    Although there are some certs relating to programming/development, achievement of these isn't really your priority when starting out. As we've said before, a cert shows what you can do - it doesn't show you how to do it.

    You need to decide what kind of programming you want to do and in what sort of industry.
    Then you need to look into what sort of skills or languages are in demand in that sector.

    It's a subject that I'd really recommend some sort of structured course to get you started - college or the OU etc. It's more than just learning a language, there are all kinds of other things you need to think about.

    With network admin there are right and wrong ways of doing things and best practices that can be learned. You're also helped by UIs in many cases that give you some idea of what's expected. With programming you're often faced by a blank canvas and told 'go on then'.

    Not for the faint hearted. :eek:
     
    Certifications: MCT, MCTS, i-Net+, CIW CI, Prince2, MSP, MCSD
  10. Modey

    Modey Terabyte Poster

    2,397
    99
    154
    I wouldn't go that far Jk, after all if they were that smart the programs wouldn't go wrong in the first place. :)

    To the OP: I think you should ask yourself why you want to be a programmer? Is it because you think it might be a cool job / career? I don't think personally it's the kind of thing you can suddenly decide, hey maybe I should be a programmer! If you really wanted to be one, you already would have been playing around with code and your own little projects for a while. On the other hand, it could be that when you do try your hand at it, you really love it and do well.

    Don't just do it though because you think it might be cool etc... do it because you really like doing it, then if you get a job doing it even better, they will pay you as well! :)
     
    Certifications: A+, N+, MCP, MCDST, MCSA 2K3, MCTS, MOS, MTA, MCT, MCITP:EDST7, MCSA W7, Citrix CCA, ITIL Foundation
    WIP: Nada
  11. dmarsh

    dmarsh Terabyte Poster

    3,782
    302
    184
    True there are some incredibly dumb programmers, but if thats your aim in life again I'd say don't become a programmer !

    Also there are many constraints on the development of any system, often programmers just aren't allowed the time to complete things to the quality they would like.

    This does not just happen in software though, systemic failures exist in all sorts of systems.

    The grade of rivets on the Titanic, the O-Rings on the space shuttle, there are numerous examples of failures of systems involving all types of faults of components and processes involving individuals in different roles from engineers, managers, technicians, etc.

    Also its far harder to create truely original work, its far easier to just plug things together or criticise others. Thats why PhD's get respect, the best programmers, like the best scientists, artists, etc, create original work.

    As for fixing, well a true fix normally will require a debugger and the source code, support people normally create workarounds.
     
    Last edited: Nov 23, 2009
    Certifications: CITP, BSc, HND, SCJP, SCJD, SCWCD, SCBCD, SCEA, N+, Sec+, Proj+, Server+, Linux+, MCTS, MCPD, MCSA, MCITP, CCDH
  12. JonnyMX

    JonnyMX Petabyte Poster

    5,239
    211
    236
    Fair point.
    When I was doing development I came across many youngsters (insert Gary Glitter joke here) who wanted to be programmers, and what it all boiled down to was that they wanted to make computer/console games or be testers for games, design Lara Croft's next cleavage or just generally dick around.
    None of them really fancied spending all night debugging an app that worked out your tax return.

    As Modey said, programming seems to be like a bug (programmer's pun) that you've either got or you haven't. I started out on the ZX Spectrum, although I don't mention that on my CV and don't really think it helped my career that much... :oops:
     
    Certifications: MCT, MCTS, i-Net+, CIW CI, Prince2, MSP, MCSD
  13. jk2447

    jk2447 Petabyte Poster Moderator

    5,482
    352
    249
    Yeah I take that back, perhaps a bit of a silly generalisation I made there. What I meant to say is that some of the Programmers I've met have been ridiculously intelligent. I just about passed the culture fair and these fellas would make me feel dense, so since then I've always held good developers in really high regard. But yeah I agree Modey, thats not to say anyone is smarter than anyone else and generalising as I did isn't a good idea :lol:
     
    Last edited: Nov 22, 2009
    Certifications: BSc (Hons), HND IT, HND Computing, ITIL-F, MBCS CITP, MCP (270,290,291,293,294,298,299,410,411,412) MCTS (401,620,624,652) MCSA:Security, MCSE: Security, Security+, CPTS, VCP4, CCA (XenApp6.5), MCSA 2012, VCP5, VCP6-NV
  14. Joe1979

    Joe1979 New Member

    6
    0
    1
    It's very interesting you mention the academic pathway to becoming a professional programmer. I already have a non-related degree from university and it doesn't make sense for me to do another one.

    What about professional computer programming qualifications, such as those offered by microsoft? Do you know all the professional (non-academic) courses I would need to do to become a fully qualified programmer?

    Surely having professional computer programming qualifications, such as those offered by microsoft is better than having a degree in computer science because the professional qualifications are specific to programming?
     
  15. LukeP

    LukeP Gigabyte Poster

    1,194
    41
    90
    Yes but someone who just wants to start is not on a level of those certifications. You need to get your head around the basics first.
    Certifications are to validate your proven experience in the field. Microsoft suggests that a candidate has 1+ years experience in programming before taking the exam.

    So to answer your question. If you had previous experience in programming, be it at home as a hobby or commercial one, certifications would be better. To be honest with no previous experience in programming I doubt you would be able to pass any of MS cert exams any time soon.
    There's no shortcuts, hence why a degree in programming would be better, providing you with the basics and theory about software engineering.
     
    WIP: Uhmm... not sure
  16. dmarsh

    dmarsh Terabyte Poster

    3,782
    302
    184
    I also totally agree that collecting numerous degrees at great expense is not always a good idea.

    I agree with LukeP however, there is a significant amount of material you need to cover to become a good computer programmer, a foundation degree is probably the best way for most people to do this.

    People who are self taught programmers from an early age may not need this, but if you are a true beginner self study from scratch could take many many years before you can get a job or certification.

    There are different programming jobs out there, some are fairly straight forward and are like a technician role where you just plug things together, others are like engineer roles where deep technical understanding is required.

    Regardless of this there are so many qualified graduates and people with experience around today that you will need to shine in some respect, having no qualifications and experience means you will probably not get invited to any interviews.

    Most certifications are designed for people with experience in order to bolster their experience with a paper based qualification, also programming certifications generally do not carry much weight with employers.

    The MCPD certification, probably the most well know certification is not designed for inexperienced programmers, the first exam covers the entire .NET framework, generally it will take a programmer several years of fulltime programming to get enough exposure to understand the whole framework. Also the same programmer would have to spend at least a year learning a CLR language before the framework.

    The SCJP certification is much closer to a traditional computer science curriculum, as such it could be started by a novice. However again it does not cover everything a programmer needs to know, so you would still have to study a lot of other topics.

    Other certifications also exist from Microsoft, Sun, IBM, Oracle, Zend, CIW, LearningTree, EC-Council, MySQL, Sybase.

    There are hundreds of different programming languages, frameworks, libraries and tools, certification simply does not exist for 99% of them and is not considered important.

    What is your definition of a fully qualifed programmer ? Mine is probably different to yours and would include a Computer Science degree and six years plus experience. In my experience most employers will prefer a good computer science degree to certifications. A true computer science degree would have significant theory and practice of designing/building computer systems, including OS design, compiler design, assembler, systems programming, object orientated programming, concurrent/realtime, algorithms and datastructures, math, databases, web technologies, etc. You can also tailor most computing degrees chosing predominantly programming options.

    As I mentioned before there is no standard route, some people just program a LOT in their spare time for years and manage to land a junior programmer role.

    As you can imagine there is no shortage of articles on computer science on the internet :-

    http://www.onlinecourses.org/2009/10/28/100-incredible-open-courses-for-the-ultimate-tech-geek/
    http://ocw.mit.edu/OcwWeb/web/home/home/index.htm
    http://www.apple.com/education/mobile-learning/
    http://code.google.com/edu/
    http://video.google.com/videosearch...re+genre:educational&vid=-8201478015841155798
    http://www.microsoft.com/education/highered/faculty/Curriculum/CSITCurriculum.aspx
    http://channel9.msdn.com/

    There are also many famous blogs, Joel Spolsky, Scott Hanselman, Mark Russinovich, Matt Raible, etc.

    There are many programming specific forums or portals.

    There are free ebooks :- http://www.e-booksdirectory.com/programming.php

    What is your degree ? What is your current level of programming ability ? Why do you want to be a programmer ? What type of programmer do you want to be ?
     
    Last edited: Nov 23, 2009
    Certifications: CITP, BSc, HND, SCJP, SCJD, SCWCD, SCBCD, SCEA, N+, Sec+, Proj+, Server+, Linux+, MCTS, MCPD, MCSA, MCITP, CCDH
  17. LukeP

    LukeP Gigabyte Poster

    1,194
    41
    90
    I totally agree to what dmarsh said.

    I am living example of what's being said in this thread Joe. It's not that we don't want you to become a programmer.
    I've been programming since I was 12. I've used many different languages during that time: assembler, c, c++, turbo pascal, delphi, C#, PHP to name a few. I have never managed to get a job as a programmer as I am lacking a degree in programming and I was always told that a candidate with a degree got a position. I have to say though, I've never really tried that much, neither do I showed any of my work to employers.

    So in shorter way:
    If you want to learn programming and see if it's for you and so on than great. There's plenty of resources online (dmarsh pointed a few) and there are some great books to read.
    If you want to learn programming to get a job as a programmer quickly, unfortunately, I have to say it ain't going to happen.
     
    Last edited: Nov 23, 2009
    WIP: Uhmm... not sure
  18. Modey

    Modey Terabyte Poster

    2,397
    99
    154
    Ahh Turbo Pascal. I absolutely loved that language. I wrote a couple of big projects using it, a full database for C&G qualification, and a conversiion of a board game for my HND.

    Do you remember an library called Technojocks toolikt? That was a great add on to TP. :)
     
    Certifications: A+, N+, MCP, MCDST, MCSA 2K3, MCTS, MOS, MTA, MCT, MCITP:EDST7, MCSA W7, Citrix CCA, ITIL Foundation
    WIP: Nada
  19. Mathematix

    Mathematix Megabyte Poster

    969
    35
    74
    Not disputing what has been said before, I have come across excellent programmers who do not have degrees and ones that are hopeless who do have degrees.

    To be a good programmer you need to be an excellent problem solver. But I guess you will still believe a degree will guarantee you a programming job. :rolleyes:
     
    Certifications: BSc(Hons) Comp Sci, BCS Award of Merit
    WIP: Not doing certs. Computer geek.
  20. Fergal1982

    Fergal1982 Petabyte Poster

    4,196
    171
    211
    Hear Hear! I'm a programmer. I have no degree, no programming qualifications (although that might change in the future). I consider myself to be at least competent as a developer (I'm quick to pick things up which helps). I've been told im pretty good, but to be honest I try to pay no attention to that. Dont want a big head - this early in my career thats a sure fire way to become arrogant and sloppy. Let others judge my worth, I just do what I do.
     
    Certifications: ITIL Foundation; MCTS: Visual Studio Team Foundation Server 2010, Administration
    WIP: None at present

Share This Page

Loading...