Personal Development for Smart People Forums

Personal Development for Smart PeopleTM Forums

 

Go Back   Personal Development for Smart People Forums > Personal Development > Technology & Technical Skills

Notices

Technology & Technical Skills Computer skills, hardware, software, internet topics, gadgets, programming

Reply
 
Thread Tools Display Modes
Old 09-22-2009, 11:21 PM   #1 (permalink)
Senior Member
 
Join Date: Apr 2008
Posts: 653
Lupe is on a distinguished road
Default I'm interested in learning programming

What is the most efficient way to learn programming?
I'm thinking of Python and C (just because they seem to be most useful) I don't know much about programming.

Which programming forum(s) do you recommend?
Lupe is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-23-2009, 12:44 AM   #2 (permalink)
Senior Member
 
Join Date: Jun 2009
Posts: 128
Lawliet will become famous soon enough
Default

Get a good (as in well-written) tutorial, read it and experiment with the code examples. Once you've read the basics, think of something simple to make like a text-based RPG and then get to work on it. Anything you don't know how to do, refer back to the tutorial or Google.

This "think of something to make, try to make it, research what you don't know" approach will work well. It did for me, at least.

As for forums... I don't know of any, but just be careful you don't go believing everything people tell you if they're giving their "facts" (opinions) on certain subjects. There's a lot of misinformation out there.
Lawliet is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-23-2009, 02:23 AM   #3 (permalink)
Family Member
 
Join Date: Nov 2006
Location: Somewhere in time...
Posts: 2,213
Lil Chris is a splendid one to beholdLil Chris is a splendid one to beholdLil Chris is a splendid one to beholdLil Chris is a splendid one to beholdLil Chris is a splendid one to beholdLil Chris is a splendid one to beholdLil Chris is a splendid one to beholdLil Chris is a splendid one to behold
Default

Lawliet's advice is good to follow (it's what I do, learn what you need when you need it. Just learn the basics first)
First I would determine what you want to program for web development, Game Creation, Program Creation etc... (assuming you haven't already).
Lil Chris is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-23-2009, 01:13 PM   #4 (permalink)
Senior Member
 
Join Date: Sep 2007
Posts: 962
Trezker is on a distinguished road
Default

Python and C are certainly good languages to know.

If you want to be a versatile programmer, I suggest learning many different languages. There's functional programming, which is quite different from procedural and object oriented programming. Also it is good to know assembler, not because you'll actualy use it, but because it changes the way you think. Some languages requires you to keep track of the memory you use while others do that for you but instead introduces other problems. Web development is also a rather different type of programming.

It's hard to say where you should start without knowing what you want to achieve.
Trezker is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-23-2009, 01:33 PM   #5 (permalink)
Red
Junior Member
 
Join Date: Sep 2009
Location: England
Posts: 9
Red is on a distinguished road
Default

For the last few years I'd always thought it would be interesting to learn programming, but I never really acted on it, partly because I had absolutely no idea where to start.Recently though, I decided to stop procrastinating and finally give it a go, and I picked up 'Beginning Programming for Dummies' by Wallace Wang (which covers BASIC, C++ and Revolution). I'm working my way through it at the moment and finding it really helpful, although a bit slow. I'd definitely recommend it, although as you can probably guess from the title it's aimed at the absolute beginner (like me) so it might not be right for you depending on where your skill level is at the moment.
Red is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-23-2009, 05:53 PM   #6 (permalink)
Senior Member
 
Join Date: Jun 2009
Posts: 128
Lawliet will become famous soon enough
Default

I agree with learning ASM at some time in your life. I use it a lot, but even if you don't, it's good to know what's going on under the hood.
Lawliet is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-23-2009, 07:00 PM   #7 (permalink)
Senior Member
 
Join Date: Nov 2006
Location: Reno/Tahoe, NV, USA
Posts: 375
elainevdw is on a distinguished road
Default

For me, the quickest way to get started is to take a class. Even a two-week class would be fine. It's a fast way to learn the basics about the language, standard programming procedures for that language, and the most effective way to program in that language. If you don't have much programming experience, it also kind of teaches you how to learn how to program, and how to troubleshoot your scripts. After that, internet research and a lot of hands-on experimenting (especially for real-world projects) is incredibly valuable.

If you can't afford a class, then I would suggest trying to find a walkthrough of some sort, either online or using a book that comes with a CD of demo files. The kind where you build a whole project from scratch, step-by-step. I don't know Python and C, but back in the day I learned CSS via an online hands-on tutorial, and more recently I learned PHP via a seminar my job paid for. Then I got better by learning how to troubleshoot, doing a lot of research and asking more experienced programming friends to help.

I know that's not terribly impressive, with PHP being the red-headed stepchild of the programming world and all... but it's been incredibly useful.

I've been trying to unofficially learn ActionScript and have been struggling with it. I just don't think I "get" the basics as well from playing around with it as I would if I had a structured learning approach.
elainevdw is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-27-2009, 12:21 PM   #8 (permalink)
Senior Member
 
Join Date: Aug 2007
Posts: 298
hawkal is on a distinguished road
Default

I would find a good tutorial or book. Then learn the language basics like conditional statements, loops, operators, etc . Make some small programs of your own just to help you grasp the basics.

Then think of something you would really like to make. It has to be a big and challenging project that would require research like looking at the languages function reference. This is what I did when I learned php. I had learned parts of the language and it came in very useful when I owned my own websites.

It was not until I decided to take on a big project for my skill level that my php skills increased 10 fold. I written my own arcade script. I learned a lot doing it too. It look me a long time to make but it was well worth it. Not only did my php, html , css, web design skills get better but at every improvement to the script I felt proud of what I had accomplished. Yes you will come accross problems that you can't seem to figure out but it's like big stone. If you keep hitting it with your pickaxe eventually you'll break it.

I can still remember the time I changed the place holder template for the finish template and it looked like a finish product on the front end. It felt pretty cool.

When I had finished the script I put it on my arcade site (sold now). As far as I am aware they are the only arcades that use a html cache serverly cutting down on mysql queries and site loading times. When I sold the sites a long with the script the buyer praised me for my scripts and commented that it was better written than a lot of the arcade scripts on the market .

Last edited by hawkal; 09-27-2009 at 12:24 PM.
hawkal is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-27-2009, 11:59 PM   #9 (permalink)
Member
 
Join Date: Aug 2008
Posts: 50
pokilty is on a distinguished road
Default

There's lots of good programmer experiences here (because programmers love to share their experiences!). I've found that the main reason beginner programmers die out is because they're not doing something that feels relevant to them. C and ASM might be great languages to know someday but they're not immediately applicable to most problems you need to solve or might enjoy solving.

My advice is that it's not very important which language you learn. Every language does different things, but they all share a large pool of similar concepts that won't change any time soon. In then end, only your continued interest will make you a great programmer, so none of this will be useful to you if programming becomes a boring and tedious experience.

For example -- why not start with a game that lets you make games? Or start work on that web page you really wanted to show a friend.

Last edited by pokilty; 09-28-2009 at 12:04 AM.
pokilty is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-28-2009, 11:10 AM   #10 (permalink)
Junior Member
 
Join Date: Nov 2008
Posts: 16
NuclearGorilla is on a distinguished road
Default

If you're interested in learning C, then I have to recommend the classic book The C Programming Language by Kernighan and Ritchie, often referred to as K&R. It has a number of exercises and covers some basic (useful) algorithms, which would be helpful to someone starting out (although I already had a background in programming so I can't comment entirely as to its utility in this regard). Just make sure it's the second edition, otherwise you'll be learning antiquated syntax.

I don't have anything to offer with regards to Python. You may prefer to start with this, since you can probably get more done sooner. But I'm a big fan of C and I think that it's a must know language for anyone who wants to do a lot of programming. But it really depends what you want to do as to which language is best.

Don't worry about other languages yet. Just get a good grounding in one language first; as has been said, these languages have common structures and if you know one, you'll have a base to compare against.

(I don't know why, but whenever I've seen people ask this question in other forums, someone always brings up assembly language, even though it's really not something a beginner needs to concern himself with at all.)
NuclearGorilla is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-28-2009, 12:36 PM   #11 (permalink)
Senior Member
 
Join Date: Jun 2009
Posts: 128
Lawliet will become famous soon enough
Default

Because assembly language always seems to get pushed under the carpet or shrugged off as "not worth knowing anymore" so some of us have to fight to keep its name alive. :P I don't recall anyone suggesting he learn it now; just to consider it for the future.
Lawliet is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Old 09-29-2009, 11:15 PM   #12 (permalink)
Family Member
 
Join Date: Aug 2008
Posts: 2,756
ar81 will become famous soon enough
Default

Quote:
Originally Posted by Lupe View Post
What is the most efficient way to learn programming?
I'm thinking of Python and C (just because they seem to be most useful) I don't know much about programming.

Which programming forum(s) do you recommend?
Try Orbiter - A free space flight simulator
It is a realistic space flight simulator that allows users to make addons.
Vessels need to be coded using C++ and there is plenty of material there so you may go ahead with coding.
The good side of things is that you may see the code working ni the sim.
Just try not to talk to them about the matters that are discussed in the World section of forums here and you will be fine.

Last edited by ar81; 09-29-2009 at 11:17 PM.
ar81 is offline  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Who here is interested in learning to manage their own VPS(Virtual Private Server) Niki Technology & Technical Skills 10 09-13-2009 12:11 AM
Effective Language Learning + Learning multiple languages at once superseiyan Personal Effectiveness 2 12-25-2008 07:52 AM
Computer Programming? CroMagna Personal Effectiveness 13 10-17-2008 08:12 PM
A Month Of Programming dinc Technology & Technical Skills 34 06-02-2008 09:09 PM
Learning Programming 30 Day Challenge dinc Personal Effectiveness 2 03-31-2008 06:41 AM


All times are GMT. The time now is 08:44 AM.


Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.1.0
Copyright © 2010 by Pavlina LLC