• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

where to start...

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

nealric

Member
Joined
Sep 9, 2002
Location
under the floorboards
Ive been into computers for a while now, and Im still a software side ignoramus. I need to learn how to code!

Anyways, I already know HTML (but I dont think that even counts as a programming languge).

Im looking for a good first language. It needs to be fairly powerful, but easy for a n00b.

Ones ive looked at...
VB- Looks easy, but lame
Java- good for web stuff, but what else?
Perl- Downloaded it, got confused
C++ - Seems kinda hard for a beginner
visual C++ - is it any easier?
Python- A lot of folks seem to advocate it for some reason
Or...
Should I first check out some of the dynamic web stuff like
DHTML, XML, etc...

I dont have a particular application I need it for... Mostly I just want to purge my ignorance- I hear once you know a few the others just "make sense"
 
I would suggest starting with Python, and the moving onto C/C++ or Java. I like python for several reasons:

- its syntax is relatively simple. I find Python code looks a lot like English, so it's easier (especially for beginners) to look at code and figure out what it does. Python also does _not_ disregard whitespace, which forces you to learn how to properly indent your code. This will be valuable latter, as C/C++ are much much less picky (in fact, they don't care at all how you manage your whitespace).

- there is a good amount of documentation available. If you look at python.org, you'll notice an assortment of tutorials and such, many geared to someone who's never programmed before.

- its object oriented. This probably won't be important when you first start out, but I suggest getting to know OOP early in your programming adventure. These concepts are important, as if you ever move onto Java (or C++, to a lesser extent), you'll probably write some awlful code if you don't understand OOP and attempt any of considerable size. I once attempted to write a project in Java, before I really knew what OOP was and how it worked, and ended up rewriting it a few weeks later. OOP is your friend :)

- it's a capable language. python.org will probably tell you more about this sort of thing, but Python isn't a language just for newbs. Gentoo Linux's Portage package management system, for example, is programmed in Python. I believe its also used in web scripting, among other things.

One of the languages I don't suggest you try learning first is VB. IMO, it doesn't teach you very many skills that will be useful later on in your programming career. Also, unlike Python, it's not a very portable langauge.
 
I recommend Perl. It's insanely easy to learn for a beginner and insanely powerful for an advanced user. If you're willing to spend a few bucks, get a copy of Learning Perl (the llama book). An hour or two with that book and you'll be able to write useful programs. After a serious week with it and you can create quite a few intermediate level programs and various forms of CGI scripts.
 
Perl seemed cool... but I had issues.

I installed perl...
But there was nothing to run

I was assuming I could write programs in notepad and compile them into exe files- but I couldnt figure out how.

I tried downloading active perl and that was even more confusing.

All the beginner tutorials with the hello world programs and such seemed to omit that very basic instruction.
 
There is certainly a "Wait... what?" factor to Perl in that regard.

Perl is more or less and interpretive language and it is dynamically compiled (which is actually one of the fun aspects of Perl). A Perl script isn't compiled and linked to an exe, it is compiled at runtime (don't worry, it only takes a fraction of a second).

So to run a Perl script with ActivePerl, you would type:

perl myperl.pl

In you're running Win2k/XP Perl integrates itself into the shell, so you might be able to run:

script.pl

You can also do perl one-liners from the command prompt. For example:

perl -ne "/the/i && print;" a_file.txt

Finds all case-insensitive occurrences of the word "the" in file a_file.txt (a la unix's grep).
 
I started with C++ and didnt have (too) much trouble... If you decide to go with C++ I would reccomend Dev-C++ as a compiler, which can be downloaded free here. A great book to start with is Beginning C++:The Complete Language by Ivor Horton. There is also Beginning Visual C++ 6.0 which you can get with VC++ 6.0 intro version for fairly cheap. The First half of Beginning VC++ teaches C++ and the second half teaches MS stuff, so unless you really want to get into Windows programming I would reccomend the Complete Language one :). The other bad thing about Beginning VC++ 6.0 is that .Net is the newest MS C++ Compiler and 6.0 is "old". Another great forum/resource for C++ is www.cprogramming.com Good Luck!:)
 
Last edited:
Although I've been doing Perl/C for nearly 7 years now, I would highly recommend giving Ruby a look. It's an interpreted language with many of the same capabilities as Perl and Python, including web programming if you want. Also, it has an awesome economy of syntax, is purely object-oriented which will give you a headstart if and when you transition to C++/Java, and has an extremely helpful community. This is language I wish I would have had the chance to start with. :)

Once you learn a language well, yes, others will be easier. They won't just "make sense" though. Don't be fooled, learning a language well takes consistent use and patience.
 
Back