What I should know / learn to pursue a career in Programming?

Started by
13 comments, last by GKANG 11 years, 11 months ago
I'm 21 years old and live in England, and up until a year or so ago everything I did in school / college was about Music. Music theory, technology, production, live sound, industry etc. Little did I know back then that this was utterly pointless, even with a love for music, since these qualifications get you pretty much nowhere. Same goes for Art students a lot of the time, great subject, not so great for jobs.

Now today I love programming, and you can actually get in the area professionally. However, I've been looking at some of the listings and they seem to have super HIGH END requirements which look nearly impossible to accomplish.

So what do I need to do in order to reach a goal like that? Getting to the stage where I can be comfortable enough to apply for a Software Development job without feeling like you won't have a clue what you're doing? I know I could have started way younger, but I'm not old yet. I'm pretty sure that I should be going back to school, which I'm totally okay with. What I'm not sure about is what sort of subjects I'm going to need to take so that I have the well rounded knowledge programmers need.

As for now, I know this much:
- I need to program a huge amount on my own, in my own time.
- I need to have a logical brain, knowledge alone isn't enough.
- I preferably need to learn multiple languages to a standard where I can use them on a somewhat competent basis.
- I should learn Advanced Math and perhaps Physics (?).
- I may need to learn more about how languages work technically?

As you can probably guess, I'll be heading to University after college, so the subjects I take in college are basically going to be for support. I'd love for you guys to help me out, I'm totally ready to dedicate to this.

Thanks in advance.
Advertisement
Depending on what you want to do as a programmer, you don't actually need Advanced Maths nor Physics, although it could be usefull some times...
Knowing a language (or more) is great, learning the concepts like Object Orientation, SOLID, Test Driven Development, etc and learn them really well is much more usefull. When you know those concepts (which you have to learn using a language of course) you can learn any language within months.
The problem is that thos concepts are not tought very much in Universities (at least not in the Netherlands), so you have to do some self teaching or find someone who is willing to mentor you.

About learning how the languages work, that would be usefull sometimes, especially when you are using higher level languages like C# or Java. Those languages can do a lot for you without you knowing exactly what happens. When there goes something wrong, you really need to know what happens inside the language.
Are you saying then that I shouldn't even go back to school?

Right now, I've been learning C++ from books, videos and forums. I've pretty much got the hang of it all the way up to starting to create templates. What I'm lacking in is knowledge of how to use it. I plan on reading through some of Lazy Foo's articles (state machines etc.) since that looks like it could help a whole bunch.

I'm trying to start with SFML for my first venture outside of the console. The problem I seem to be having again is how to use SFML once I've learnt all (or at least most of) the classes and stuff. It seems pretty difficult to find out whether you're coding in some completely obscure, inefficient way without someone or something to guide you.

Then there's knowing what else to learn. I hadn't even heard of SOLID or Test Driven Development until you just mentioned them, and am not really sure about whether I should be playing around with pre-built stuff (like engines and so on). I'm also not sure how much OUTSIDE of programming I need to know - things like 3D Modelling, animation, 2D/3D art. I'm sure I can get so far with programmer graphics and so on, but since I haven't studied these topics before, I'm assuming I'd be much better off learning about those before I get into bad habits too.

So yeah, I'm kind of looking for some guidance. As I said, a lot of it is learning how to actually use the language in ways I couldn't know without experience. I don't want to become a sloppy programmer with bad habits from the get-go. I'm totally fine with going back into education, I'm good for money to buy learning material, yeah.

Thanks for your reply man (:
Relevant.

Wielder of the Sacred Wands
[Work - ArenaNet] [Epoch Language] [Scribblings]

GKANG you mention you are interested in programming. Forgive me if I missed it, but I don't notice you mention game development so I am assuming that at the very least you're considering regular non-game programming.

Have you thought of taking advantage of your music background with regard to game development? I say this because you obviously have at least had a passion for that in the past and you may not have to throw it all away.

You don't have to combine this with programming either, although if you do a very technical musician who can also program is nowadays a much rarer find in game audio departments and one quite a lot of people would value.

Just a thought.

GKANG you mention you are interested in programming. Forgive me if I missed it, but I don't notice you mention game development so I am assuming that at the very least you're considering regular non-game programming.

Have you thought of taking advantage of your music background with regard to game development? I say this because you obviously have at least had a passion for that in the past and you may not have to throw it all away.

You don't have to combine this with programming either, although if you do a very technical musician who can also program is nowadays a much rarer find in game audio departments and one quite a lot of people would value.

Just a thought.


Oh yeah man, I purposely missed the "game" part out. True enough, game programming is what I want to do, but I'm totally fine with having a programming job in some other area.

In fact a few days ago, I found out about an opening at a small company nearby to be a PHP programmer for their website. I hadn't learnt PHP, but since then I've been learning it and it's pretty much the same as C++. I learnt HTML years ago too, so brushing up on that is helping a lot. I have an interview on Tuesday and they said they're very interested in me, so that's great.

Also, I totally don't plan on scrapping my musical background. I'm definitely aiming to be a game programmer/musician guy when I end up joining some company, not just a programmer. It's one advantage I have from learning that stuff in school.


P.S. I already read your article Apoch, great job. I was going to reply to it, but I coudn't figure out how to put what I thought into words. Maybe I'll try that again sometime soon.
I hadn't learnt PHP, but since then I've been learning it and it's pretty much the same as C++.[/quote]

If I had to choose two things which are nothing like each other, PHP and C++ would be it.

I hadn't learnt PHP, but since then I've been learning it and it's pretty much the same as C++.


If I had to choose two things which are nothing like each other, PHP and C++ would be it.
[/quote]

LOL. Funny laugh.png

Are you saying then that I shouldn't even go back to school?

I didn't say that, but in my experience school isn't always the best place, sometimes it is better to find an in depth course for a programming language and find out all the ins and outs of it. And most of the times these courses you can't find in schools.

If I had to choose two things which are nothing like each other, PHP and C++ would be it.


As far as language similarities, they're almost identical. The key difference is how loosely typed PHP is, but other than that, it's like I already know everything I'm seeing. Sure they may be used differently, but that's not what I was saying.

This topic is closed to new replies.

Advertisement