Question Can anyone give me some insight on the industry of programming ?

titanac26

New member
Joined
Feb 20, 2009
Messages
2
Programming Experience
Beginner
I am currently enrolled in college for a BS in game software development and was hoping to get an idea of what industry of programming in general is like. Things like how you spend your time during a work day ,do you have to travel a lot ...idk things like that so I know what im getting myself into. I have always had an interest in programming since I was little playing with some of the first home computers. The first computer I did programming on was called a Sinclair. It had like 8kb of memory haha !! If anyone can tune me in on some details that would be really awesome ! Thanks ! :)
 
I love Sinclairs! Infact I have one right next to me about 3 foot away and that has only 16kb! I am 15 so I'm not living in my past but I love them. And when you listen to the tapes and they beep and everything! Sinclairs own! Bit of topic but oh well :p
 
Yeps Sinclairs ! HAHA

I still even have one of mine too. I had to keep it for collectors item haha wow what a difference from then to now huh ? Thanks for the reply :)
 
Hi Titanic I shall try to give you some advice - I have 21 years experience as a developer so hopefully it will be good advice.;)

1. Practice, practice, practice. What you are learning in Uni is just the start. At college I found myself programming between 2-3 hours every day to become good. Being a talented programmer only gets you so far ...

2. Learn to copy type (30wpm), it will help a lot. I studied and passed RSA and Pitmans level 1 in a 3 month course at night school. Sure programming isn't copy typing, but then there is always the documentation to write too (more on that in a bit).

3. Never let your skills become niche or out of date. Once you start a career in IT you have pretty much committed to a lifetime of continual learning. Always read about the next new thing and try them out in your spare time. Don't rely on your employers training you because they rarely do. If you don't have up to date skills then at some point in your career you may struggle to find work. IT is notoriously bad for job security.

4. Programming for fun or at college is fine. When you are progamming for a living remember that your job is to produce working software as quicky and as efficiently as possible. Fancy designs and endless debates about the best way to do things doesn't get the software written. Avoid "making it configurable" and "future proofing" your code, unless you are really, really sure it is what is required. More often than not it shows that the problem is not fully understood and will make things more complex, more expensive and more unreliable. I can't tell you the amount of times I have maintained code that is riddled with configurable parameters that never ever get changed.

5. Pay attention to your documentation. First, get into the habit of commenting your code as you write it. Trust me, it won't take very long for commenting to become integral to your coding and second nature. When you are inexperienced (anything up to 5 years out of Uni) always take the time to go through your design methodologies throughly. It will help you take on the harder real world problems that are inevitable. Also generating the design and documentation will help you establish what you are supposed to be doing, will help you remember everything and break it down. It will also help you refine your estimating skills (i.e. how long it takes you to produce your software) because that is a VERY important skill. As you grow in confidence and experience you will get a better feeling for what documentation and design tools are best for you and which ones you don't need to use.

6. Test EVERYTHING. And I mean everything. Take nothing for granted. The software you write is your responsbility, even if it goes through a testing regime (e.g. intgration testing, UAT etc). In the end it is in your best interests because faults are only going to come back to you.

7. Be prepared to have to support a lot of code that you didn't write. If you are good, then it usually happens that you wind up having to fix other programmer's messes. Try not to be the programmer that writes the crap code! Always try to think of the poor guy that has to maintain your program after you've left the project/company. Even if your software has been delivered and you don't maintain it any more take an interest in how well it does in the live environment - you'll learn a lot about your development skills and practices from the guys supporting your software! Learn to listen to them and your end users, even if you don't like what they are saying!

8. Programming isn't a 9-5 job. Its a fallacy. Your life will move to the rhythm of the project. There will be times when things are quite slow (enjoy them whilst they last) and times when things get really intense (usually for deadline). There will be times when you have to support out of hours. Its part of the job, so if you don't want that then perhaps you should consider a job in retail :p

9. Don't ever forget that your actions as a programmer can have a critical effect on the business that employs you. When things go wrong, it will be YOUR name in the frame. When things are a success everyone and his uncle will want a bit of it. Just make sure everyone knows that it is your software that is keeping the business going ;)

10. Learn how to debug effectively. Using an interactive debugger is OK, but you can't often do that with a live, running service. Make sure you are familiar will logging and tracing techniques. As a rule of thumb, most of the time you will want to log/trace when a variable is created & initialised, when a variable changes value, when a function/method is entered (logging the parameters given) and when a function/method is exited. Add more log messages as you need them.

11. After a time the majority of code that you write will be mundane and repetitive. I can't tell you how many times I have written a select statement on a table, opened a cursor (iterator) on the select statement, processed rows (whatever operations that may be), and closed the cursor. It may be different for the games industry, but in my databases world, thats just programming and you've gotta love it just to stick at it.

Still with me? Good luck in your career. :D
 
Back
Top