Sign in with
Sign up | Sign in
Your question

Where To Start? (Programming)

Last response: in Work & Education
January 3, 2011 8:19:29 PM

Hello, I am currently in my final year of middle school and I will be entering high school next year either public or private. Afr that I am of to college, where I would get more experience with game design. I would like to be a programmer when I graduate but, to get there I need to learn and I would like to start learning now, I have some experience with C++ but not much. I make small basic games in Unity3D, I build PCs, and I make animations in AAE (After Effects). This is fun and such but I would like to start learning C++ and I would love if I could get some advice from some more professional programmers. Please share some knowledge of any good online courses or anything you have to share.

More about : start programming

January 16, 2011 9:37:34 PM

First learn a basic code html.

I know it is for the Internet, but it is basic. Then try to learn some C# then learn the rest of C++. That should take you about 8 years, 4 through HS, the rest through college.
January 17, 2011 4:17:25 AM

I'm going to stay to start with HTML and Visual Basic (VB). I looked up unity and while it seems great, I think its doing most of the work so your not learning coding. I doubt Unity3D is helping you learn code form, parameter passing, object making, etc. I'm not even a coder but I took classes in VB and Java (and SQL, but thats for databases not game programing.) in college as part of my business degree. I'm sure this is the start for many, so I'd start learning it as early as you can.
Related resources
January 17, 2011 3:04:01 PM

No, don't start with HTML. Bad! Starting with VB also teaches some bad habits.

The best thing to do is to get a beginner programming book that focuses on Java, C/C++, or some structured programing language. Once you learn basic programming logic and get into the habit of commenting your code then you can get into some more advanced Object Oriented Programming. QBasic is a pretty easy language to learn (Every command with an example is found in the Help Menu), but if you don't use a book that shows you good programming habits you will pick up some bad ones that are hard to break, trust me. The good thing about QBasic is that it forces you to conserve memory and forces you to be creative to do some things.

HTML alone isn't really programming, but using it with something like PHP, ASP, or AJAX is. I doesn't sound like you want to be a web developer though. Visual Basic is good to learn after you understand some basic programming. VB is good to make office applications or tools quickly, but if you want to make a game or something you'll hate how slow it is. A good site to visit to learn more about coding is

Once you understand some basic programing you may want to contribute to an open source project over at

If you're just doing game programming though you should consider contributing to game mods. Source, Quake, and Unreal engine mods are the most popular.
January 17, 2011 4:45:25 PM

Why is HTML bad. It is a necessity for programming. Learning HTML is a basic programming language anyone should now. It is not C programming at all, but it helps one understand the premises of programming.
January 18, 2011 12:48:12 AM

I started with VB because my college made me, so I'm not convinced it's a bad first language. You definitely should have a book/website you are learning from so you know how to code. As mega pointed out (and I failed to) you don't want to learn how to code badly/poorly. That said, I still believe VB is a good place to start. It's one of the easier OOP languages out there.
January 18, 2011 4:33:28 AM well a Hyper-twxt Markup Language. Short simple and too the point. </end>
January 18, 2011 2:05:14 PM

dogman_1234 said:
Why is HTML bad. It is a necessity for programming. Learning HTML is a basic programming language anyone should now. It is not C programming at all, but it helps one understand the premises of programming.

HTML is not a programming language. It is display markup, used for positioning elements on a screen. Please explain how you do a loop or an if statement in html.

Focus on a OO language.
January 18, 2011 2:15:09 PM

1. structural programing - C (good basic platform for all other programing languages)
2. object-oriented programing - C++ (great platform for most programing languages)

ones u master these nicely, u will have no trouble quickly learning the rest of programing languages (c#, HTML, php, .net, java, etc). the reserved commands are different between languages, but the logical thinking is basicly the same, and that's what matters. if u want to learn java, I advise u to specialize on it as it takes more time to master it, cause it pulls on other material with it, such as html, java applets, etc.
May 12, 2011 9:37:36 PM

Since you have some experience with C++ i would stick with that. C and C++ are both very good and mainstream languages that will teach you the basics of programming so you can quickly adapt to whatever later on.

Not to put you down or anything but MOST of the programming type jobs out there are not dealing with games as many people think. If you wish to eventually become a computer programmer then you should probably enjoy the coding part (aka the journey) and not just the finished product. If not you will probably not like your job.

And btw, HTML is useful to know but it is not a programming language. It's not even turing complete due to lack of conditional statements, loops, etc.
May 13, 2011 12:45:10 PM

My first language was VB. I spent a few days on it and I hated it. Stopped programming for a while after that. Eventually picked up Pascal, which was "ok", but only helped me play with branching and flow.

C++ was my first language that I actually used for more than 1 week. I loved it.

If you're not learning pointers, you're not learning to program. People who don't understand pointers typically don't make scalable programs.

I currently program in C#, but I use a lot of my understanding of C to speed things up. Like using Char arrays to do string manipulation when speed counts or using an Array of Structs, instead of classes, to allow linear memory access.
a b L Programming
May 13, 2011 2:21:44 PM

I'm a professional Software Developer and I'd echo the majority of posts here by starting on an Object Oriented language.

I'd say start with Java so you don't even have to contemplate "lower level" programming and can just focus on what you are trying to code. Then when you get a feel for OO programming check out C++ / C#.
May 17, 2011 1:02:08 AM

Pick up a simple microprocessor (a PIC18 or an old motorolla)and a dev board. Learn to code in ASM, before you move on to C. Understanding how compiled code works will help you to write fast code. Starting in a high level language mean a lot of guessing on the performance on what you are doing.
May 18, 2011 11:35:29 AM

Hi, If you are going to learn programming then you should start from the whole basic concepts of c and c++ languages because these are the base of programming. All syntax and functions are used further in other framework and programming languages. All the best!
learning program
July 20, 2011 3:00:02 AM

dogman_1234 said:
Why is HTML bad. It is a necessity for programming. Learning HTML is a basic programming language anyone should now. It is not C programming at all, but it helps one understand the premises of programming.

HTML itself isn't a programming language, it's a way to transfer structured data that has a set standard on how it's suppose to be displayed.

While dabbling in HTML/Javascript is a great way to get your feet wet with programming by seeing if you enjoy it and implementing basic logic, you don't want to seriously practice with it.

Once you get past the "I enjoy this and I can make a while loop" phase, you're going to want to get into Java/.Net/C++. I myself prefer C#, but Java is cross-platform and is just as good.

I've only been professionally programming for 3 years now, but I've been cleaning up code from senior programmers because they didn't know the difference between a list and a dictionary(hashtable), or how to design applications to have fewer memory reads, difference between objects and structs in .Net or data locality on how memory is allocated. I've re-written programs that went from O(N^2) to O(N), with the average case being about 1000 times faster. It's always fun to profile an app and see 1500MB/sec of memory being allocated and deallocated, then you re-write it and your new way only uses a static 40MB during the entire run.

Working code != Good code

Starting with a simple programming language is a good idea because many people need to learn how to break logic into steps, as that's the core of programming. To be good, you need to know how the computer works in the background, and for managed languages, also how the Garbage Collector/Objects/Memory works together. This part you won't need to worry about for a year or two, but don't forget about it.

I'm not trying to scare anyone as these are things to learn in the big picture over time, but they are important not to forget. I find programming very fun, especially when I get to see my creations actually help someone with their job.

Find out if you really like programming or you will burn out.
July 20, 2011 3:40:16 AM

Kewlx25 said:
HTML itself isn't a programming language, it's a way to transfer structured data that has a set standard on how it's suppose to be displayed.

HTML is Hyper Text Markup Language. You are possibly thinking of Hyper Text-Transfer Protocol or HTTP.
July 20, 2011 11:38:52 AM

If programming is difficult now, it isn't likely to get better later. Learning the languages is the easy part. I'm not sure you can "learn to program" however. It's either something you can do, or not.