Jump to content

Wants a head start on Programming


moo_moo45

Recommended Posts

In my next semester of school I will be starting my new program of "computer programming"

 

I was wondering if anyone can recommend where should I start off to get a general idea of programming. What is a language for a beginner to start off with?

 

Also, If anyone knows any good websites or books on languages such as HTML, Java or C++ ( these are a few of the many languages I will be learning in the program), I would gladly appreciate it.

 

I forgot to mention, if this is not the right place for this topic, feel free to move it.

 

Thanks.

Edited by moo_moo45
Link to comment

It's a perfect place for it moo and I'm happy to see the topic you made here. :agreed:

 

I've been tinkering with programming for the past 3 or 4 years now. Mostly only what is required knowledge to maintain the sites but I'd like to dig a little deeper into programming. So I'm right there with you. I think we have a few people around here that dabble in programming a fair bit. If we're lucky we'll get a few pointers from them. From my own experience I've come across loads of different resources. It's hard to offer the best ones but here's 2 that I've used most.

 

W3schools.com - What I love most about this site is that it's articles are somehow both thorough and concise at the same time. The lessons it sets out to teach on every page I've read have done so with minimal text. Makes for quick learning. Oh and many of the articles have "Try it Yourself" links that allow you to alter code and apply them to a test section of html.

The site covers lessons about HTML CSS XML JAVASCRIPT ASP PHP SQL and a whole bunch of other languages.

 

Practical PHP Programming - Excellently written online book/guide on PHP. I've been reading it for a few weeks now and find that the writing is great. It doesn't read like a boring text book at all. The writer manages to put a bit of his own personality into the book which provides moments of entertaining reading. I'm not speeding through the book at all. Every morning I read maybe 10 pages while I have my first coffee and that seems to be plenty enough. I like that I'm learning what different symbols and wrods mean in PHP and I think that's where the real value in this book is. That it explains symbols and words in PHP and provides simple examples of how they're used.

 

Cheers moo moo! :(

 

 

P.s.

If you have some class project I'd be very curious to read about it. Please post it/them if you do!

Link to comment

Hi Moo

 

Ok, let's talk about prgramming. Here are some pointers.

 

Language generation : the higher the generation, the easiest, but not really the more insteresting.

 

Among the common languages, I would order them this way from low-level programming to high level programming. The lower the level, the closer to the machine you are, but the more complex it becomes to code... memory management, more risks of bugs, memory overflow and so on.

 

Assembly (back to dinosaurs)

C/C++ (low level enough to manage threads, mostly employed for game programming (diablo2 for instance) as it allows a lot of memory management)

PHP (web oriented, many wrappers (plug ins) to get access to easy functions such as MySQL database and so on)

VB (gui oriented language, with a gui builder embedded, easier than c/c++ but microsoft oriented also....)

Java (web/desktop programming, close to C++, object oriented programmation language, powerful)

Python (interpreted language yesterday reserved to scripting but a real powerful language and really easy to learn with a lot of wrappers toward Databases, gui, game programming, image manipulation)

 

I actually use Python with GTK for the gui (the gui libraries used by Gimp and most of Linux Gnome applications)

Professionaly speaking I use windev, a all in one french language database oriented.

 

Now it depends on what you want to learn :

Easy way to get fast results --> Python --> you'll learn basics and get quick results, lacking some more inner fundamentals, but anyway, as python is based on C++, you'll get a really nice overview of programming fundamentals

Hard way but the language every programmers must use at least once in his life --> C/C++ --> hard learning curve but you'll know the machine as well as the language when you start to master it.

 

I'd like to say this is your choice, but if you need some help, you can rely on me. If going Python, download the lastest 2.5 version, not 2.6 or 3.0 as the wrappers are compatible with 2.5 mainly, and you won't miss many things with this version comparing to newest ones. If you need ressources in python or code samples, I can send you a lot :agreed:

 

Hope it helps

 

MAJOR EDIT : just forgot to say that to become a real programmer you need :

Patience

Taste for challenge

A computer running

A language

A dozen of pencils and a big (should I say enormous) rubber

A lot of paper

 

The first two and the last two are the most important !!

 

You won't get far if you start coding from scratch ! Always write down what you :

Want to achieve

The way you think you"ll take to get there (this will change during the programming session)

This will lead you to write down what you need !

Once you know what you need to get what you want, you can start coding !

One last note : No code on paper first, only words expressed in your language.

 

Example :

My program must copy a file to a chosen directory
do I need a graphical user interface or is the command line enough ?
are the destination directory and the source file written in stone or must I offer the possibility to input the data ?
No input needed, always the same file which always go to the same dest. folder.
so, no gui needed.
so I need a file management library or a language that embed this support (in case you haven't choosed your language yet)... 
details
the program will :
test if the file exist
1 - the file exists : it must check if the dest. folder exists
         1 - a : the dest folder exists : copy the file
         1 - b : the dest folder doesn't exist : create it and go back to step 1
2 - the file doesn't exist : alert the user and exit the program

 

And besides of books, tutorials, your best weapons are : testing and discussing

 

Just think of a programming language as a foreign language, as you would learn french, german or any other language. The computer is the person you want to get info from, you must discuss with it in a language it understands. it understands bits (0 and 1). You can't speak binary, but you got a nice translator from "chosen language" to binary. You just have to learn this chosen language. A computer is Stupid. Its raw calculating power based on 2 fundamentals (1 and 0). Its intelligence depends on 2 things. The way it has been programmed and the way you speak with it ! You are the superior being ! It doesn't understand poetry, just commands translated into functions in the programming language. No way to ask it

"on the screen my eyes stare at, the words I choosed would you display at"

.

Print "the words I choosed" 

is much more efficient !

 

Edited by Nihilith
Link to comment

Thanks for all the info guys!

 

I got a lot of reading on my hands.

 

@Schot: The program only starts in the next Autumn semester, so that leaves me with 6 months to learn some programming on my own. I apologize for not explaining myself in my first post. But for the January semester coming up, I will be trying to get in a Java Beginner or HTML Beginner class. So if I get in to one of those classes, I will post my projects.

 

 

@Nihilith: I think I will be starting off with Python. If you dont mind, can you lead me in the right direction on how to get started? I noticed I have python 2.2, is there a way to update to get to 2.5?

Link to comment
Thanks for all the info guys!

 

 

@Nihilith: I think I will be starting off with Python. If you dont mind, can you lead me in the right direction on how to get started? I noticed I have python 2.2, is there a way to update to get to 2.5?

 

Ok.

Upgrade is not possible, you must download the version on this page. Once installed, go to your start menu and launch "idle". This is the python interpreter and it's also a code editor with syntax highlighting. You could go for version 2.6, but f you want to go for GTK Gui, you'll encounter problems. Start off with python right out of the box and if you go around a project, expose it here so we can discuss the way to code it efficiently. What's really nice about python is that you can test functions right into the python interpreter, without having to make a python program and run it. here is the official tutorial from python site : here. This is for v2.6, but still good for 2.5. Others tutorial I didn't use but you could have a look :

- Here

- Here also

 

I also have some pdf about python, I you want them, just ask by personnal message with your mail adress and I will send them, or put them on a server to download.

 

Do you know how to make coffee ? Then you know how to code with python :)

 

Have a nice trip :lol:

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...
Please Sign In or Sign Up