what does a computer programmer do on a day to day basis?
Programmers spend most of their time at their computers writing software. They will also spend some time writing diagrams and thinking about the general structure of the problem. Like any work, there's also occasional meetings with bosses, clients, etc. In the best companies, you'll have long periods of deep, uninterrupted work where you get to solve very interesting problems.
Unlike most other careers, you have the opportunity to learn a lot by yourself before you commit to making a career in programming. Take that opportunity! There's a lot of ressources available to learn to program.
I learnt to program at 14 years old with Lego Mindstorms, which I recommend strongly. Check it out: http://mindstorms.lego.com/ . If your parents can afford it, it's definitely worth it. You also should take a loot at CodeAcademy and start doing the exercises: http://www.codecademy.com/.
As a software developer, I find my job incredibly gratifying. I get to create stuff out of thin air. Stuff that has the potential to have a real impact on the world and touch millions of people. If you're anything like me, you really enjoy a challenge. You don't need extraordinary skills in math, but you definitely need a logical mind.
You'll also find that all the good programmers are very passionate. It's fascinating to work with people who care so deeply about what they do. Salaries are very high in programming, but don't base your decision on that: you'll never become any good if you do.
All in all, it's definitely something I recommend to you.</body></html>
Above is a great answer.
Another great resource is topcoder.com . They run competitions called SRMs, look under algorithms, that test skills that you will use through your career as a software developer. Algorithms are the most fun of all the tasks you'll get to perform. If you look at Google's page on careers and hiring (http://www.google.com/jobs/joininggoogle/interview/index.html), they reference topcoder as a great place to practice and show off your skills. Not only that, but sometimes Google recruits directly from top members.
projecteuler.com is another place to test your number theory/algorithmic skills.
However, for a day in the life, in my experience, 60-70 percent of your time is spent quietly at your desk coding, designing, thinking about the problem. Coding is most often typing commands to get a specified task completed, looking at data, analyzing outputs, etc. 20 % of time is usually spent collaborating with others, meetings for requirements, client meetings, status reports, presentations.
As a "product manager" which is a similar position, and what some coders move towards, you will spend most of your time defining requirements, deciding what the UX (user experience) will look like, etc.</body></html>
Both of the above answers are great. For more resources, check out:
If you ever have any questions like "This doesn't work and I don't know why", check out stackoverflow, a programming-focused Q&A site.</body></html>
TLDR: In a nutshell, we write programs for computers to interpret and execute. The types of programs can vary between mobile applications, web applications, embedded software or desktop applications. Software is pretty much EVERYWHERE now. Just find an industry that interests you (ie. fashion, finance, teaching) and you can usually find an application that you can build for that industry.