WELCOME TO SKY IT NEWS, BOOKMARK NOW & STAY CONNECTED WITH INFORMATION TECHNOLOGY.
coolmaruf103

Thursday, August 2, 2012

Good Advice For Computer Science Students

More Challenges: Writing 100,000 lines of code by your 4th year of college is an impressive feat by any standards. Even if all that code is spread across a number of different languages during your college career. However, you’re not going to hit that level just doing your homework in the CS department. You need to code on projects or just for fun outside of school, and you need to find the time to do it.
There’s more to just reaching 100,000 lines, though. It’s about discipline. It’s about learning fundamentals. It’s about finding the very difficult scenarios, and how to solve them. Ultimately, writing 100,000 lines of code before you even graduate, is about experience. You will be properly molded as a programmer and developer.
The #1 challenge that students face, however, is finding what to code. How do you just sit down at your computer, and start coding? You need a project, or a problem to solve. You need something that will keep you motivated to write the problem. www.pythonchallenge.com is a perfect fit. Each page on the site presents you with a problem. You code the challenge in the Python programming language and modify the URL with the answer, moving on to the next challenge. Although it’s a far cry from writing 100,000 lines of code, it’s a good challenge that will stretch your mind, and get you coding. There are many other examples and challenges online to get you coding.
Don’t forget about mathematics: Coming from a Mathematics major, I can back this point up until the cows come home. Programming and software development require a great deal of logically thinking through problems. Just the other day, a friend of mine and I were discussing technical questions that are asked in software development interviews. Usually, they are fairly nasty, going back to the fundamentals that you learned while in college, or studying. However, most of the problems presented, if they’re a good interviewer, are logic-based, and this is where your skill as a mathematician will shine.
For example, one question in just such an interview could be “Here is an array of randomly placed integers. Write a program that sorts the array.” While your skill as a programmer will shine, your skill as a mathematician will shine brighter. Even if the syntax is bad, and would not compile, the logical thought process behind the algorithm is what the interviewer will be looking for.
I’ve heard complaints from students year-round that what they are learning in math class, they will never use in their career, or in real life. My rebuttal has always been that they are further from the truth than they realize. By learning the math skills that they are, even if it is differential equations or triple integrals, they are honing their skill in logic. Being able to sit down, and workout even the most insane and unrealistic math problems means that you are able to think through a problem, and come up with a solution, going from one step to the other. If you can do this without a well-formulated equation sitting in front of you in black and white on textbook paper, then you are skilled indeed. Learn math.
Finally, work strategically: When looking for a computer programming or software development job, as the tip suggests, look for a job that encourages growth and an employer that is willing to train your, increasing your skill and potential. There are good programming jobs and there are bad ones. The bad jobs will put you in tasks that are mundane, and don’t stretch your imagination. The same thing over and over. Initially, there may be a learning curve when hired learning the task, but after several repetitions, day after day, the learning curve levels and the job becomes boring and mundane.
So, you want to pick a job that takes you from the mundane to the exciting. The only jobs that encourage this culture are jobs that encourage growth and learning. For example, at my current job at introPLAY, I recognize, as well as my boss, that my Python skills are very new and unexperienced. While I was hired for my frontend skills in HTML, CSS and JavaScript, the company I work for fosters the training and learning that is necessary for me to learn Python and help progress the speed of development for the company. Even more so, as is with most web development positions, new problems present itself daily, and I am constantly battling how to tackle the problem at hand. This mental stretching and learning is a great work environment.
So there you have it. Some great advice for CS students looking to get into the field. To be honest, I wish I would’ve known some of these tips when I was attending school. In fact, I wish some of the faculty would’ve taken the time to go over these as well. These tips are pearls of great worth, and if taken seriously, will propel your development career far and fast.

No comments: