Experienced programmers: What skills are required to program?
1970-01-01 00:00:00 UTC
Experienced programmers: What skills are required to program?
Six answers:
2016-03-16 10:27:31 UTC
There are so many things wrong with your statement there bub... 1. Nintendo Wii is the least popular 7th gen. system. 2. The Wii has crappy motion sensitivity, that's why they needed to release MotionPlus. 3. That's because you probably suck at the games. (You're essentially saying "Hey, i'm the kind of guy who picks Kilik/Guile/Ryo/Kid Buu, and spams their best attack, but the Wii won't let me do this because if I do, I get carpal tunnel :P lololol") 4. Because you flail the remote like a dumbass, you don't do what you one. 5. The power of your ACTUAL swing does not effect the onscreen swing, it depends on the method in which you swing. 6. Advice? Don't make the Wii you're first system. You may think you're ub3r 1337 lolololololOllOldolas but you would get annhialated by any die-hard Nintendo fans (ie. People who have only played the NES, Super NES, Sega Genesis, Sega Saturn, N64, and Sega Dreamcast)
2008-09-28 21:09:17 UTC
Programming is definitely not for everyone. The only definitive way to know if it's for you is to do it. But if you're almost an adult and you still love Legos, chances are good that you'll like programming.

What does it require? It depends on what you're doing. Trigonometry, statistics, database theory, human computer interaction, and every other field of knowledge can be applied to programming. If you suck at math, you're not going to be making a modern video game engine. More generally, you'll need to be able to solve problems like a computer, something that gets easier with practice.
Ahmed The Ninja
2008-09-28 21:03:26 UTC
Being smart is all you need. However if you want to be a great programmer and work for top companies you will need to be exceptional in math.
2008-09-28 20:54:26 UTC
Free foosball is hardly worth it. If you want to work at Google, you'll have to be obsessed with programming. And it seems to take about 5 years to be any good. There are exceptions. At that point, you won't have time for foosball. It's a catch-22. Fortunately, it's way to early to pick what company to work for.

It's something like learning the violin. If you want to be good at it, you need to practice. Start with something simple, and expand. I'd probably start with Python, and stick with very easy stuff at first. Simple loops, some math and i/o. Then expand.
2008-09-28 20:53:46 UTC
Logic and problem solving skills are the most important part of programming then comes your math skills. Programming is considered (by others) a hobby, so it's suppose to be fun. I believe you can if you're going to dedicate your time to it together with patience and concentration.
Craig R
2008-09-28 21:17:06 UTC
I've been programming for over 30 years. I've been programming in C or C++ for about 24 years.

As others have said, problem solving and logical thinking are really the key skills. If you have the abstract thinking skills for advanced math, you're in good shape. I took a year of Calculus because it was required for the Comp Sci degree, and other than one brief project I've never used it. But I think it was important to take because it was part of mastering math. The concepts come into play in ways you don't expect.

There are ways in which programming is like a geometric proof. It is a logical progression of steps in which what you're doing now depends on everything that has come before and sets up everything you'll do from here on out.

Somewhere around 10 years of programming every day I got to where I felt like I wrote really good, correct code all the time. It got to where if it compiled without error, I could be about 90% sure it would just work.

Programming languages are like spoken languages. With a spoken language you eventually get to where you don't have to think about what you're hearing or saying. It just makes sense. English is my first language. When I speak or write English I'm not thinking of how to spell every word or how to word every sentence or how to put a paragraph together to express a point in my argument. I simply have a concept I want to get across and I use language to do it without thinking about it.

Programming for me is the same way. I'm at the point where when I write code I'm not thinking about programming. I'm thinking about the problem and what I need to do to solve it. I don't have to think about whether my loop terminates on the right conditions, or if that function has any side effects, or whether what I'm doing should be put into a function or should be part of a new class.

I don't have constant headaches, any more than you talking about what you did over the summer gives you a headache. It's not about problems and solutions so much as just doing what needs to be done.

Anyway I don't know if this helps but I wanted to give you some perspective from the distant future. I actually quit a job where I left about a quarter million dollars on the table in stock options so that I could get out of managing programmers and back into being a programmer. I think programming is incredibly rewarding and definitely fun.

Don't get your sights set on one company. It's unlikely Google will be Google by the time you graduate from college. There will be something else. Don't be afraid to take a good job doing something other than your dream job. You need the experience. Then just keep working toward your goals.

Good luck.

This content was originally posted on Y! Answers, a Q&A website that shut down in 2021.