E-Mail:

How to Get Started With Computer Programming

Add to iTunes | Add to YouTube | Add to Google | RSS Feed

Programming is NOT as scary of a task as you might imagine. I know some people who shudder at the thought of learning any programming language. However, take a read through these tips, and find out for yourself how to get started.

  • Save your coding often! Everybody knows the feeling of having worked for several hours on the same thing and you lose it for various reasons (the computer goes down, program crash, power out). I usually save every five minute or every time I have written a line.
  • Backup your code! Kind of for the same reason as tip 1. When working on a mac it is really easy to back up with Time Machine. I do this every night before I go to bed.
  • Write proper comments everywhere. Comments are very important. Even though you might not find it useful at the time you write the code, imagine how it is if you do not look at the code for a year. It will take you up to several hours to figure out how the program runs if you have to read the code instead of the comments. It is also a requirement to use commenting if you are developing code as a team.
  • Keep your code clean. Linebreaks are free. Separate your code in chunks sorted by what it does. Make it easy to overcome. Combined with tip 3 you are good to go. It is also good to separate the code in files. Files for functions, common used files and so on.
  • Test your code often!!!! Whenever you have made a simple part of the code, test it. Writing 400 lines of code before testing is a nightmare. Do it as often as you can. Output your variables to see if they contain what they are supposed to. Also twist your mind to be predict every possability of program crashing and error reporting. E.g. If the end-user is supposed to input a variable. Check if it is a variable, if not, stop and tell the user. Not checking stuff can be fatal and is the main reason websites get hacked.

  • The Fastest Way To Get A Job ... 100% Guaranteed! How To Become A Business Analyst Book - How To Become A Computer Programmer Book - How To Ace Job Interviews Book - How To Learn Programming Fast Book - How To Get A Programming Job Book - How To Prepare Killer Resumes Book Plus Recurring Products.

Want to embed this video on your own site, blog, or forum? Use this code or download the video:

Have you ever heard of Traffic Blazer? Submit your business info to more than 200 search engines and directories and position your Web site for top rankings with Google and other leading search engines - it's available through GoDaddy. Plus, as a listener of The Chris Pirillo Show, enter code CHRIS2 when you check out, and save an additional $5 off any order of $30 or more. Get your piece of the internet at GoDaddy!

41 Comments

I wrote this top5 :)
I only made the list though :)

I believe that an idea that is as important as these five tips is having the correct mindset to start programming. Learning a programming language is… well… like learning a completely different language in real life. There are a lot of parallelisms between programming languages and actual language.

For example, the vocabulary (API) is different and the grammar (syntax) is completely different. The culture is different as well, as much as different programming groups have their own preferred ways of presenting code, using whitespace and documenting code.

Some real life languages have dialects, and programming have their “dialects”, too. The C family of languages, for example, has C#, C++, Turbo C and many more. The BASIC family has, QBASIC, PowerBASIC, GW-BASIC and countless others.

The mindset plays a big role because it determines whether you have the patience and the perseverance to start from scratch and take baby steps. This means that you are willing to go through the frustration of learning something completely different and is entirely outside of your comfort zone. It’s a totally different place.

This is a great list. I agree with all the tips. I wish more programmers would take advantage of comments. A few seconds spent writing comments could save another programmer a few hours. Thanks for the tips!

JavaBeans

I disagree on 1 point(somewhat). First, how you say you save your code every time you write a line, that is going a little over board. I usually save code after I have written a block of code, not just a line. Also would point out that with commenting code, don’t comment too much. this type of commenting is just over and just add time in your code(and i have seen this type of commenting before) NOTE this is php:

//loop throught records
foreach($records as $record)
{
/code…
}

Other than that, those are pretty good tips, I would add this:

Name variables/function/classes clearly. Don’t worry about code size with this(up to a point ofcourse). I had a co workers who named a class EAWR. I asked him what it stood for and even he does not know anymore. This can cause some confusion.

i disagree that you have to love reading to be good at programming! i hate reading yet i love programming

.sparta? LOL, nice chirs, I liked this video for the fact i plan on coding for a career, I would suggest Turring, that is the first programming language i learnt, its very very easy and basic, and it gives you the basic ideas of programming.

Chris PirilloHow to Get Started With Computer ProgrammingProgramming is NOT as scary of a task as you might imagine. I know some people who shudder at the thought of learning any programming language. However, take a read through these tips, and find out for yourself how to get started.

Chris PirilloHow to Get Started With Computer ProgrammingProgramming is NOT as scary of a task as you might imagine. I know some people who shudder at the thought of learning any programming language. However, take a read through these tips, and find out for yourself how to get started.

great list! gave me the urge to go out and learn a programming language now :P

Nice tips. thanks to “Rasmus Abrahamsen” for making the list, and chris for reading it to us. This really got my interest in programming after wathcing this video, as chris said that some kid showed how to make a web browser using basic, i watched a couple of videos on youtube, and im interested :)
I started learning C. THANK YOU>

I need a program for reloading (shooting) software. Can anyone out there help? I don’t know where to turn. Thanks.

This video should be release before i take my C++ program Class…
i fail on the topic function …
at lease i past the class!!!
Thank for the tips!

I could not decipher any of that.

Hey Chris, my first programming experience was on a Vic-20 too! I was working maintenance (a very short stint) at a Montgomery-Ward’s store in 1982. I went to work at 6:00 AM to do maintenance stuff before the store opened. My boss was a jerk. Let’s call him “Tom.” I followed the instructions on the laminated sheet next to a display computer to create a flashing screen that said “Tom sucks! Tom sucks!” They never did figure out who did it!

I spent 23 long years as an electrician before I finally broke into IT in 2000. Now I’m a PHP whiz (and loving it!), but I still have fond memories of my first illicit programming experience.

My wallpaper on one of my machines is a 1982 Vic-20 magazine ad featuring Bill Shatner.

I think Chris should broadcast about programming once in a week. Go for it Chris! 5 star!

People once programmed from straight binary lol. These days it would take for ever though.

is that from Ben Wright from TomsGames/Hardware?

I’ll try BASIC. I’ve got a friend whoes doing a course on computer programing and know he thinks he knows a lot about computers, even though he probably can’t tell the difference between Mhz and Ghz.

Hey, I’m a script kiddie. What is the least requirment in math for c or c++? Could someone send me a personal msg.? Thanks.

Tec, Peace Out.

When I was in highschool I use to write programs for the TI calc to cheat on math tests haha. That’s the only type of “programming” I’ve ever done.

I started on a Commodore VIC-20 myself! At 12 years old. I stuck to it and went nuts learning a bunch of languages.

hi. i know nothing about computer programming. and am looking to learn for one reason! vista! i have two thing that i would like to run on vista but it wont. iv tryed calling the mfg,s, finding updates, and running in compatibility mode. no luck. so im pretty much stuck trying to learn.
what i need to know is how to you get xp software to work on vista by reprogramming or adding??

thanks..

im almost 13 and im starting programming =]

man ive been watching lots of videos on programming lots of discoragment,is this profession worth it?

If you get frustrated easily, dont be a programmer.

lol I started when I was 8 with Visual Basic. :)

BASIC is simple but very limited in what I can do…

A long time ago, People used to use buttons and switches to program witch took forever…

I started programming when i was 16, but that was VB6 lol… i started C++ when i was 17 and for almost a year i thought that was a late starting time for programming, because most of my friends all started when they were like 8 years old, but now i know that i have my whole life ahead of me so i can take programming easy for a while… up until i go university then hardcore programming =]

That end part on the vid, really hurt my ears lol but it was a good video =]

i was 9 when I started using basic on my old win 95 system

I’m probably the only one in my entire school who programs in C# and C++, the rest of the students in my school program either in VB or in PHP.

thanks a ton this is really inspiring! before this i had NO idea where to start!

i understand all programming languages and im preety good at programming them 2 and im 12

what programming code is winows

you understand all 11′000 programming languages?

I thought python was the most basic language guess ill try out visual basic

…you say HTML is not a coding language?
I think you missed the boat here…the fact of the matter is every programming language uses an Assembler…what’s that you ask…LOL figures?!
You can take any script from any language and put it in Text Form and it does nothing, you MUST run it in an Assembler, the application that understands the cmds for that system.
HTML’s Assembler happens to be the Shell we call Explorer for MS anyhoo…too much to explain but I don’t think I like this show?!

no
of course not i ment a few ok soz

nope HTML is not a programming language… Html is used only for the web… its like extensions for browsers Java, C++, PHP can be considered as programming languages

These tips are all good, but they’re kind of assuming that you’re programming without any dev environment. They’re also steps that ignore the fact that at the beginning, you’re going to be writing hello world, string concatonation and other ugly concepts until you learn better methods.

My suggestion for people learning to write code would be:

1) Learn a language, not a technology.

Pick up language specific book on C++, C#, Java, what have you, but learn the *language*. Once you understand how programming languages work, you’ll be able to learn any other programming language with ease.

2) Start small, but practice what you learn

Think of an application to write, a small one, and preferably, something practical to you. Use this application to learn as you go, and refactor it as you learn more and better ways. This will reinforce the concepts you’ve learned through your reading.

3) Learn a higher level language

In my opinion, while C++ and C are a good place to start if you’re getting a degree in CS, but you get lost in the mechanics and syntax of languages like that.

Visual Basic, Java, C#, all of these languages are very close to english, and if you tackle them, you are far more likely to quickly understand how and why languages do what they do.

4) Hit the books

Buy the books, they’re big, but if you get the ones from apress, you’ll do just fine.

My primer list for aspiring programmers is as follows (in this order):

C.O.D.E by Charles Petzold
Pro C# 2008 and the .Net 3.5 Platform
(I like this one because language is irrelevant when you’re going to learn programming concepts)
Database Design for Mere Mortals
Fast Track UML 2.0

Additional Reading Can also include:

Design Patterns: Elements of Reusable Object-Oriented Software
Code Complete, 2nd Edition
A Pattern Language: Towns, Buildings, Construction
Notes on the Synthesis of Form

5) Don’t take candy from strangers

You should always ask for help if you aren’t sure, but ask for help from other programmers. There are plenty of people out there who will lead you to ruin with their biases and assumed knowledge, who have never seen code, much less written any.

***a final note

Please please PLEASE learn a modern language for starters. There are a lot of people out there with the completely baffling idea that someone writing an application in assembly is inherently better than any other language, and that cobol and turbopascal are the realm of the ‘31337′. Start at the top and work down, if you don’t, you’ll never be a useful coder, and if you do, you’ll be another 5 years behind where you should be. Pick an object oriented language, and preferably a managed one, that way you won’t get bogged down in memory management before you actually make any progress.

Remember that these technologies are not easy ways around problems, they are the results of 30+ years of code evolution, and as such, are every bit as (if not more) viable than lower level languages, and they’re a good starting point from which you can tackle lower level programming from in the future should you choose to do so, and come with the added benefit of learning procedural and object oriented programming (as well as the strengths and weaknesses of both constructs) at the same time.

Kingsley Tagbo

June 4th, 2009
at 11:11am

I agree with Kitty who says that the more modern, object oriented rpogramming languages are as a result of 30+ years of code evolution.

They are actually a better starting point for starters, because they focus you on solving business problems and help you not get lost in the syntax.

IT Managers and the Business World is more concerned with the amount of business problems you can solve with you code (your productivity) than in comparing the elegance of a programming language’s syntax to another.

Now, if you are not interested in programming for the business world and you want to work in a niche for exxample, writing system level fuctions, assemblers, compilers, graphics or data mining programs that require precise algorithms and computations, you may consider languages like C/C++

What Do You Think?

 
Blog Widget by LinkWithin