Download the Tom's Hardware App from the App Store
The reference for current tech news
Yes No
Ads
Tom's Hardware > Forum > Applications > Programming > First programming language?

First programming language?

Forum Applications : Programming First programming language?

Word :    Username :           
 

I have zero experience in programming. Absolutely zero.

So what programs would I need to download and exactly which programming language should I learn?

I've heard its best to start from the most basic like BASIC or C but I dunno :\

Thanks guys!

Reply to razercultmember1
Register or log in to remove.

I think C or C++ is a good place to start, personally. A good chunk of the popular languages are based off C, so it makes it quite easy to learn more from there.

 

It kind of depends on what you would like to be doing though. Unfortunately you can't exactly say "Language A is best for Application X". Let us know some of the things you'd like to be programming, and we can give you further suggestions.

 

Some popular languages are C/C++/C# and Java. I'm quite fond of Python. If you want to do web development, HTML/CSS/JavaScript are all very important. Server Side Scripting, PHP/SQL are good, and Python, Ruby and Perl are useful as well.


Message edited by Pyroflea on 10-25-2010 at 02:14:53 AM
Reply to Pyroflea

I first learned with c, then move to c++ and c#, so I would recommend starting with c

------------------------------ http://valid.canardpc.com/cache/banner/1285715.png
Reply to jefe323

I will still advocate java or C# as a first programming language, as it abstracts a bunch of the complications of lower level languages (C, C++) and lets you focus on learning design principles.

That said, C and C++ are still great languages, and if you are willing to put it a bit more work from the get go it can be very handy for understanding what these higher level languages are actually doing and thus learning new languages in the future.


Message edited by kyeana on 10-25-2010 at 05:03:44 PM
Reply to kyeana

are there certain programs to download? i'm using a macbook pro but i have windows 7 on it too

and ya i think ill go with C first

Reply to razercultmember1

I think C is a good choice :)

You'll just need an IDE, which will include everything you need (compiler, debugger, etc.).

There's a ton out there, and really it's down to preference. I like Code::Blocks personally :)

http://www.codeblocks.org/

Reply to Pyroflea

try an express version of visual studio (really good ide for windows)

http://www.microsoft.com/express/Downloads/

(use the c++ one)

------------------------------ http://valid.canardpc.com/cache/banner/1285715.png
Reply to jefe323

jefe323 wrote :

try an express version of visual studio (really good ide for windows)

http://www.microsoft.com/express/Downloads/

(use the c++ one)



That's also fantastic. Code::Blocks is cross-platform, which is why I generally recommend it :)

Reply to Pyroflea

When I first started programming I used Java, but once I got in college it was all C++ from there. It's very straightforward, is easy to learn on your own and the concepts of C++ are very good for beginners of any programming.

The downside to C++ is that while you're learning a lot of the programs you might write will never be used again or are just for practice. Whereas, with other languages (such as css, html, php) you can begin at one point and grow off that initial beginning. Ex: making a web page, then an entire site, then enhancing features, etc. Basically, you get to see results to your hard work sooner.

In the end though, C++ is probably the best place to start. The things you'll need to program are a compiler (where you write your code and execute your program; I recommend visual studio if you can get it for free) and a book (I find its easier to learn from a book than if you download a PDF/web tutorials). For the book, I recommend the 4th edition of Programming and Problem Solving with C++ by Dale & Weems.

Programming requires a lot of understanding, patience, problem solving, organization and patience. It's definitely a good skill to pick up and allows you to better understand how a computer works too.

If you end up learning C++ and ever need help feel free to shoot me a msg.

Good luck with choosing.


Message edited by calmstateofmind on 10-28-2010 at 10:13:32 AM
------------------------------ "Technology is destructive only in the hands of people who do not realize that they are one and the same process as the universe. "
Reply to calmstateofmind

I programmed using many languages, C, C++, Java, Perl, PL/SQL, T-SQL, JavaScript and to me none is necessarily better than the other, it all depends what you want to do. Like many people here I started with C/C++, but I realize now that it is mostly suited for people who understand or want to understand what is going on in a computer. If you just want to start testing stuff an don't want to spend to much time learning the basic "how to do X", then I would suggest Java as you just need the freely available JDK and there are many good IDE to help you program; I would suggest Eclipse.

Reply to Zenthar

Zenthar wrote :

I programmed using many languages, C, C++, Java, Perl, PL/SQL, T-SQL, JavaScript and to me none is necessarily better than the other, it all depends what you want to do. Like many people here I started with C/C++, but I realize now that it is mostly suited for people who understand or want to understand what is going on in a computer. If you just want to start testing stuff an don't want to spend to much time learning the basic "how to do X", then I would suggest Java as you just need the freely available JDK and there are many good IDE to help you program; I would suggest Eclipse.



C# is an excellent alternative as well, however not quite as open as Java is. I'd say either is worth checking out.

Reply to Pyroflea

Pyroflea wrote :

C# is an excellent alternative as well, however not quite as open as Java is.


Oracle are doing their very best to correct that situation.

Reply to Ijack

If only it still made sense I'd have said start with Pascal. It forced you to do things right. C is an amazing language but depends on you having the sense not to blow your own foot off, Pascal just plain would not allow that sort of silliness.

I'm surprised people have not made more of an issue of the procedural / object / event driven models the languages use. It makes quite an influence on how easy it is for a beginner to switch to another language.

Reply to audiovoodoo

I was going to suggest Pascal and then thought people would just laugh. Many of us cut our teeth on the original Turbo Pascal; it was rigorous enough to be a good foundation in programming, particularly when compared with the BASICs of the time, but simple enough not to be confusing. The original Mac OS was designed around Pascal, as were the Windows APIs.

Pascal reached it's Zenith with Delphi, which I guess still exists but is not exactly widespread nowadays. And if you want to try your hand at writing a compiler, Pascal is a good target language to start with.

Now, as a complete aside, let me suggest a language that no-one has mentioned - Smalltalk.

Reply to Ijack

Oh man! I'm getting flashbacks to the early 90's... (perhaps telling of what the other areas of study were in my Uni days ;) )

I went to uni on a joint science scheme, looking at doing Environmental Technology. Pascal was my first real foray into computing and was the biggest driver in me ending up in IT.

I still remember using 10 disks and pkzip with the span option to 'acquire' a copy to work on at home for the late night assignment specials. I still support a Delphi app today, powered by an Interbase back end. It gets the job done and with far less trouble than the more modern products we have. People forget just how much of a hold Borland used to have on the market and how much infrastructure still depends on it. Pascal, Turbo Pascal, Object Pascal then Delphi, that language just grew and grew.

For instant gratification I have to say that VB is hard to better. I compare the basic sorts and other functions I used to write in Pascal to the access db driven diary application I wrote in my two day VB 3 (yes I really am that old!) class at work.

I guess it's a question of what do you want to learn, how to program or how to use an API to get stuff done. Both approaches have their merits.

Reply to audiovoodoo

That must have been a posh TP. The first one I used (the first Turbo Pascal) comfortably fitted on a 360K 5 1/4" floppy disk, with room for a program or two.

I'd still rate Pascal as a better first language than any other. With a good foundation in Pascal the other Algol descendents (C, Java, C#, etc.) are far easier to get to grips with. Delphi, in particular, would be a great introduction to Windows programming and OO concepts.

Reply to Ijack

I still remember programming with turbo pascal, turbo c - as introduction and building up skills visual basic or delphi will do.

Reply to dEAne

If you want to be a web developer you can study PHP.

Reply to James_Geek

James_Geek wrote :

If you want to be a web developer you can study PHP.



PHP is server side scripting, not really web development technically (although it is REALLY useful). Imo, the arsenal every web developer should have is HTML, CSS, and PHP. Pretty much anything can be achieved from here. It's definitely beneficial to know more on top of this however.

Reply to Pyroflea
Register or log in to remove.
Tom's Hardware > Forum > Applications > Programming > First programming language?
Go to:

There are 1893 identified and unidentified users. To see the list of identified users, Click here.

Please mind

You are about to answer a thread that has been inactive for more than 6 months.
If you still wish to proceed, please ensure that your posting is original and does not duplicate or overlap any prior responses to this thread.

Add a reply Cancel
  • Ask the community now
  • Publish
Ad
Ads
Latest best answer
Blu-Ray playback software recommendations?
By Rusting In Peace, 1 day ago:

My advice to you would to be avoid getting blu ray on PC it's totally annoying because of...

Best offers
They won a badge
Join us in greeting them