Some food for thought..

wyrd

Senior Contributor
Joined
Aug 23, 2002
Messages
1,405
Location
California
"If you work for 10 years, do you get 10 years of experience or do you get 1 year of experience 10 times?"

Steve McConnell - Code Complete: A Practical Handbook of Software Construction, page 768.

I've been thinking about this quote ever since I first read it. Ultimately I came to the conclusion that I'm one of those who has been programming for several years (3 or 4) and have gained 1 year of experience over and over again. I've been through PHP, ASP, Perl, CGI, VB6, Java, C/C++, C#.NET, VB.NET, ASP.NET, and yet the only programming language I am remotely competent in programming in at the moment is C#.NET. This is because over my relearning experiences I have forgetting the languages in which I once knew. Not good.

I think, finally, that I've realized programming is not just learning trivial syntax of various languages (C, Java, C#, VB, etc.), which has helped me move a forward a bit. I'm finally starting to learn about design patterns and design issues in general.

However, I have a problem.

"Man is an emotional animal." - John Dewey.

Whenever I discover a programming area of excitement, I tend to over do it. Just recently I realized there was more to Transact SQL then simple little SELECT statements, Transact SQL is a full blown language. I almost over did it and bought tons of books to learn a ton of Transact SQL syntax so I could pretend to be some uber Transact SQL guru (obviously being far from it). I had delusions of working for the government and controlling "information" (you may laugh). Obviously buying books on trivial Transact SQL would of thrown me back, yet again, to ground zero. By the time I would of been done reading those books I would of forgotten 90% of what I currently know.

Now that my Transact SQL phase is over with (thankfully I didn't indulge and instead got books to further my general programming skills), I'm starting on yet another emotional trip. Game programming. Is anyone here a game fanatic as I am? I'm 22 and still play games. There is no greater high then losing yourself in a fantasy world which allows you to forget, if even for one moment, that the real world exists. When I eventually go for a job I honestly think I'd like programming games far more then programming software, unfortunately I know about programming software and don't have an ounce of know how in game programming. DirectX is foreign to me. Win32 API is foreign to me. These are gaps which must be filled, and I'm sure they will if I transfer to DigiPen. The problem is that I'm afraid I may not be able to hold out on my emotions in learning these areas. I may find myself indulging into the Win32 API and trying to learn everything about it, forgetting what I now know. I'm also afraid that going to DigiPen will result in going back to ground zero, yet again.

I need a way to apply the skills I have now to future languages and techniques in which I may learn. If I transfer to DigiPen I'll be programming strictly in C++, within months I will have forgotten everything that I've learned about Transact SQL and .NET. Unless I use good design techniques (including design patterns) in my school projects (which are rarely, if ever, needed) I will eventually forget everything about that as well. If I choose not to go to DigiPen and try to learn Win32 API or DirectX on my own, the same fate may eventually arrive. I'll indulge into these aspects of programming and slowly start forgetting what I currently know.

I need help. I'm open to just about anything. Also feel free to write up your own experiences based on the quotes above, it'll make for an interesting topic if anyone else is in the same boat as I am. Plus it'll make me feel a lot less stupid. :)

At the very least, thanks for reading. :-\
 
First off; If you haven't developed any games how do you know
that you'll love it. I understand you are passionate about playing.
I'm a passionate car driver, I love being a wild one on the road
but I have zero interest in building or repairing a car let alone
changing my own oil. (Which I don't even know how to do :( ).

Give the game dev thing a try and see how much you truly enjoy
it, you'll be the best judge of that. In the mean time, go with the
technology or skill that you have the most interest in.
 
I live in a multidimensional world.

I have gone back to zero many times - on the language / syntax / class model axis.

I have gone back to almost zero once - on the design patterns / modeling axis (when I had my first OO-project).

I have been moving ever forward on the algorithms axis.

I have been moving ever forward on the troubleshooting axis.

I have been moving ever forward on the project management axis.
 
I may be a liltle late but I must say that I too have been in the same bind. I like programming, and I have been programming in vb for about 4 years.

I can remember the first time I wanted to program a program. I just got AOL and I was in a chatroom and people were using a program to "Scroll" ascii images into the chatroom. So I downloaded this program and wanted to create one myself, and that is how it started. I still create aol addons to help with my email(the tools aol provide suck).

I then found myself wanting to learn the c++ programming language. For a moment I felt the power of being able to do pretty much anything I wanted to do with windows, then I felt the pain of trying to get it to do it. So I gave up and went back to my VB.Net. :D

After all, I myselft do love cars and I was born a mechanic and will die a mechanic. Vb is just a hobby to me. I cant imagine myself in a office trying to type as fast as I can to meet a deadline on a program that I dont even want to create.
 
Many good points. Wyrd, for me langauges are just a means to an end. I use an object oriented approach to whatever task I am performing. Every task has certain characteristics and language is just one of those characteristics.

If I create a tool that I like in one language, I try to improve it in another. If I develop a game, I see what I can steal for other assignments. Games are very similar to simulators. My job requires that I develop traffic simulators and other fun things. I work out most of the problems for work by developing games or personal projects on the side.

And I agree with Heiko, there is more to programming than writing code. There is gathering the business rules, design, qa, program management, etc...SDLC

Good Luck
 
10 months ago i got my Cisco Certification (CCNA), after 6 months working with VB I couldnt remember anything about routers :o. I guess thats normal. But if one day I need to use some networking skills, Ill have a background and will learn things faster.
Now i'm not a network specialist anymore, but Im aware of what goes on there and some day it might be useful.
 
Cassio said:
Now i'm not a network specialist anymore

Thank god you got out of that buisness. I was also taking the CCNA class the get certified, but I couldnt stay awake reading about cat5 cables(I forgot its name) and routers. right after I dropped the class Cisco fired 40.000 people. Lucky Me.
 
Back
Top