Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Newbie: Programming Direction and Trends?

Status
Not open for further replies.

mcztektips

Technical User
Jun 4, 2007
1
US
I have some basic experience in the tech field and recently landed my first full time position (5 months ago). I do enjoy my work greatly now, but I am covering a broad range of issues daily. Because of this I find it hard to improve or focus in one area.

I have some interest in programming but its such a large field I was hoping to get some general advice here. My questions may be too generalized, but this might be a place to get a starting direction and I appreciate any input.

Are there certain aspects of the IT industry that are immune to or will not be greatly effected by the shipping of jobs to India? Is programming at a greater risk?

Could it be good at an archaic or seldom used language and maybe have more job security? On the flipside are there languages to stay away from because the job market is flooded with talent?

Is there an age limit to get started in programming or an age bias when it comes time to find a job?

Are there certain languages that lend themselves to more enjoyable days or ones that are a real pain? Is there a language thats the future and one thats over and done?

Is it best to go back to school and take some non brand specific programming classes?

Learn online?

Learn with books and videos at home?
 
Firstly we have all been there (well at least I have.) I started out by doing every section of IT in my first job but started to play around at home with .net (started with VB.net). The reason I did this was firstly I was able to gain a little commercial experience through it and also a lot of jobs were asking for .net. I then moved on to a job as a lead developer using C#. Previously I had not used C# ever (could read it but had never programmed in it). I thought that this was going to be a big barrier but it turned out that it was the programming concept and the way of thinking that was more important than knowing the language inside out. I may be generalising in .net here. Programming does have the danger of being outsourced but an outsourced product still needs to be managed well and IMHO outsourcing has slowed down.

Just remember that programming languages are constantly being altered. .net is now in 3.0 form (in beta version) but it is advisable to look into these new technologies. Keep learning is the key thing.

Also I would suggest that you add database development to your skills. A programmer is good. A developer is IMHO better as they can develop the front and back ends of an app.

I find the best way to learn is start creating a sample project. Also useful if you need to show employers an example of your work.
 
I've been involved in IT since Compaq's Commodore. Way, way back then, you had to be a jack-of-all-trades. Over time, there was a division between hardware and software. At that time, I started focusing on the software side. Later, software began branching into desktop and web-based. I stuck with desktop. Desktop software splintered into what I call "silo" or "enterprise" applications. I consider silo-apps as those kinds of small group/department things that may have started out as a single spreadsheet, grew into one or more workbooks, and may have migrated to Access. Enterprise apps were those kinds of larger programs, sometimes migrated from mainframe that used SQL Server or Oracle as a back end, and a development language like FoxPro, VB, or C++ for the "really" important ones. And then I started seeing crossovers: VB front-ends with Access back-ends; Access front-ends with SQL Server back-ends. And then came .NET. Then .NET 1.1. Then .NET 2.0....

I say all this to point out that the only constant in this business is change, and that with each successive iteration, there is yet another layer of complexity. The days of being a one-person operation are pretty much over.

So, which direction to take for a career in IT? Here are some things I wish someone had told me way back when.

Study statistical/mathematical methods. No matter what industry, the answer to any business question is going to involve statistical analysis.

Pick an industry that you may enjoy which is NOT in IT and learn all you can about it. While every industry shares a certain degree of commonality, it is their uniqueness that creates the biggest problems and, therefore, challenges. And it's rare that you find 100% IT companies; more likely, you'll find companies which have IT departments. Being involved in a company who's core business interests you will go a long way toward making the days and your work more fun.

Learn how to ask the right questions and how to ask questions right. I would strongly suggest knowing Use Case Modeling inside-out.

Master organizational skills. Trust me on this one.

Understand relational database design and normalization. Your organizational skills will come in handy here.

Learn Structured Query Language. There are several different versions (Microsoft and Oracle being the big two), but they are pretty much the same (give or take 10%).

Adopt coding/development/documentation standards/templates and stick to them.

And, on the subject of documentation, do it. Just do it. Learn to write clearly and concisely. There is no such thing as "over-documented."

This, I believe, will put you on a firm foundation.

Personally, I’ve given up user interface programming and have fallen back to this position. I like it here because, quite frankly, I got tired of trying to keep up the latest and greatest “hot” programming language of the week. And it has been very, very good to me.

Best wishes.

< M!ke >
"Believe, but verify.
 
The most important part of learning to program is the ability to understand logic flow. If you know how a chunk of code is to be written by understanding what type of statement goes where, that's the hard part.

The easy part (easier IMO) is getting the correct syntax for the specific language you are using. This is made even easier by use of the web, since you have an endless amount of information at your fingertips.

I have learned tons by looking online.

In terms of programming, as long as you have the language installed on your computer, you can go to many online sites that teach you how to code and test yourself.

After you get the basics down, you can do something like go on Tek-Tips and answer questions to yourself to improve your skills. After a while, start answering questions.



[monkey][snake] <.
 
To figure out what languages to learn, study the want ads in your geographical area. Different areas have differnt languages that are hot.

All jobs may be subject to being outsourced in some way shape or form. It's just part of the industry. I worked in one place when the network people worked for a differnt company in a different physical location. Some companies that outsourced are bring it back in house becasue they found it is harder to get a project done when the people with the need and the people withe the programming skills aren't in physical proximity to each other or at least in close time zones.

Is there age discrimination - you bet. But mostly it is for people over 40. But that is true across all industries, sad to say. This is because companies seem to think that the higher salaries of experienced people aren't worth the extra cost. Companies which believe this are bad places to work, avoid them. Age discrimnation weeds them out nicely.

Many companies prefer to hire programmers with a college or technical school degree. You can still get hired some places without, but it is harder and you will likely get paid less until you have lots of experience. If you don't go the formal schooling route, small companies are more likely to consider you or sometimes you can slowly work your way into programming at your existing company by taking on small programming chores.


Questions about posting. See faq183-874
 
Different areas have differnt languages that are hot.

For us in the United States, Spanish is the hottest thing going right now.


[monkey][snake] <.
 
¡Sí! ¿Usted desea papases fritas con eso?

< M!ke >
Acupuncture Development: a jab well done.
 
monksnake,

Latino heat, est muy caliente, and stop making me laugh.

Jim C.
 
Ever wonder why so many posts like this one that start out seriously end up disintegrating into the ridiculous?

Me either.

< M!ke >
Acupuncture Development: a jab well done.
 
Are there certain aspects of the IT industry that are immune to or will not be greatly effected by the shipping of jobs to India? Is programming at a greater risk?
The jobs that need to be performed desk side (ie deskside support and training) are least likely to be offshored. This is simply because on site training or desk side support has to be performed by a person.
You can have as many remote control packages as you like, but if a PC won't boot up and connect to the network, no remote control package is going to work, regardless of the software.

Much as it makes sense to have easy access to the client and user base, software development/programming/testing and tech documentation work do not require immediate access to the user base, so are more likely to be outsourced than support posts.

A good option may be to get a job in an internal IT group, when you're doing a mix of support work, dealing with users and systems, and writing, debugging and testing applications for use internally.

John
 
mcztektips

I do believe that at some point in the not to distant future you will see the bomerang effect, and see programming jobs start to come back to the US. It will be for a number of reasons when it happens. But you do need to plan for the here and now. Decide what you want most money or an enjoyable career. In this business it is difficult to find both. As our colleagues have mentioned there are ways to research the $$'s and IT needs at present, but since only 20% of IT grads stay in the business for any duration, you have to make your decision based on what's best for you.

When your young you don't realize that you will have what I call "econcomic reincarnations", where you change your career & income in spurts, seems the same for a while then something happens and your in a whole different place. Can happen multiple times. To the good or bad, but generally moving forward. So what you look at today may not be what your looking at tomorrow.

Good luck,

Jim C.


Jim C.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top