Programming languages for total newbs.

TridenT

Lifer
Sep 4, 2006
16,800
45
91
What's a good programming language to learn on your own? Any good resources? I've learned HTML already... (But I don't ever use it, lol) So, what's a good basic programming language to learn ON YOUR OWN? That's the important part. I won't be getting any help, and I need a good resource for learning the language. Did I mention I am mentally handicapped when it comes to learning? Yeah, so it needs to be relatively easy or there needs to be a god-send of a tutorial on the thing. A great website for learning HTML to me was http://www.yourhtmlsource.com/
 

Red Squirrel

No Lifer
May 24, 2003
68,456
12,610
126
www.anyf.ca
C++ is a good start. It's rather universal, and lot of other languages are based on it as far as syntax goes.

If you want something easy to find resources for, php is another option as the php.net site makes it very easy to find function information and stuff. C++ is much harder to find resources and you have to hunt more. php and c++ cna't really be compared though. C++ is an application language, while php is a web based language. They CAN be interchanged to some extent, but for most part they aren't.
 

Ken g6

Programming Moderator, Elite Member
Moderator
Dec 11, 1999
16,360
4,066
75
You need a really good tutorial, huh? How about learning Java? Java is similar to C++, but easier IMHO, and there's a good deal of documentation and support for it.

Here's another site you might find helpful in learning Java.
 

esun

Platinum Member
Nov 12, 2001
2,214
0
0
Whoa whoa, C++? Really, a good learning language? I don't know about that.

First of all, I'd pick a scripting language (i.e., a non-compiled language). Python is the best choice IMO. You can try things out with the interpreter and see immediate results. The syntax is simple and the tutorial is quite good.
 

JasonCoder

Golden Member
Feb 23, 2005
1,893
1
81
Another vote for Python. C++ ... wow I don't know about that one. I think it's important if you want to pursue professional software development but not to start out.
 

tatteredpotato

Diamond Member
Jul 23, 2006
3,934
0
76
Java or Python IMO.... Java if you're serious if you want to pursue programming more in depth, and Python if it's just more of a hobby interest.

What do u want to do with programming also?
 
Oct 27, 2007
17,009
1
0
I wouldn't advise C++ to a beginner. It's too easy to get bogged down in syntax oddities and language foibles when you should really be learning about programming in a more abstract sense. Python, C# and Java are great for beginners in my opinion because you can learn principles of OO and algorithms without running into puzzling language quirks at every turn.

If you're just interested in learning programming as a hobby and not professionally then maybe you should look at F#, Microsoft's new functional/OO hybrid language. The things you learn will often not be directly translatable to other languages (which is why I wouldn't advise it for someone wanting to build a professional skillset) but it's fun as heck to use.
 

WildW

Senior member
Oct 3, 2008
984
20
81
evilpicard.com
When I was young (a mere 5 years old so my parents tell me) and started learning to program it was in some archaic language called BASIC. You turned on your computer, zero boot-up time, and BASIC was right there ready to go. The computer came with a big book of example programs that I typed in and gradually figured out what they were doing.

You could do pretty colours, drawing, sounds, and there were no header files or compile buttons, just line numbers and typing RUN made it go. I have no idea how anyone learns to program these days if they were going to start with C or Java or some such nightmare. Is there anything out there as readily accessible to the layman as the BASIC that came built into 8-bit micros?
 

Kirby

Lifer
Apr 10, 2006
12,028
2
0
C/C++ or ASM. Don't be a pussy.

I think going from a lower level language to a higher level would be, "Oh sweet, cool new features!", instead of "Aaarrrgggh!!! Where the fuck is the so-in-so library?!!"

I like my memory where I can see it.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
14
81
www.markbetz.net
C++ is no place for a beginner to start these days . A beginner with a lot of fortitude and some innate talent... maybe. Most people will explode spontaneously before they get their first program running. I would go with a managed language like Java or C#.
 

Kirby

Lifer
Apr 10, 2006
12,028
2
0
So much hate for C++.

Yeah, pointers and memory management can be a bitch to begin with, but I think that it's an important skill that you need to master. And do you guys really think that the syntax is that hard? :\
 

pdusen

Member
May 8, 2008
39
0
0
I agree that you should start with C++. It is a bit challenging, but programming is _supposed_ to be challenging.

In my experience, people who start off with more abstracted languages (BASIC, Java, etc...) tend to have a hard time understanding what is going on under the hood down the road. This really starts to matter once you're programming professionally, regardless of what language you use.

I wouldn't start with assembly, because that's just _too_ under the hood. Even experience programmers can get totally lost in it.

Another good choice would be C, but unlike C++ there is no real new work being done in C, so your professional prospects would be better with C++.
 

WildW

Senior member
Oct 3, 2008
984
20
81
evilpicard.com
So much hate for C++.

Yeah, pointers and memory management can be a bitch to begin with, but I think that it's an important skill that you need to master. And do you guys really think that the syntax is that hard? :\

I think the important point in all this is that its for an absolute beginner. There is so much we take for granted that someone new to programming will not - for instance the concept of a FOR or WHILE loop, and the difference between them, what an array is. . .

Somebody starting out without these universal ideas does not need to be struggling with pointers, instances of classes, and so on. Yes you do need to eventually learn these, but not all on day one.

The trouble with C/C++ is that the syntax is rather cryptic, and the error messages can be equally so. If you miss out a semicolon somewhere important the error messages can all point you to a different source file altogether. It's a potential minefield for somebody learning without any in-person help.
 

pdusen

Member
May 8, 2008
39
0
0
I think the important point in all this is that its for an absolute beginner. There is so much we take for granted that someone new to programming will not - for instance the concept of a FOR or WHILE loop, and the difference between them, what an array is. . .

Somebody starting out without these universal ideas does not need to be struggling with pointers, instances of classes, and so on. Yes you do need to eventually learn these, but not all on day one.

The trouble with C/C++ is that the syntax is rather cryptic, and the error messages can be equally so. If you miss out a semicolon somewhere important the error messages can all point you to a different source file altogether. It's a potential minefield for somebody learning without any in-person help.

If he's a beginner programmer, he should be writing beginner programmer programs (Hello World, Counting Change, etc...), none of which requires pointers or classes.

As for your claim about error messages: Yes, C/C++ error messages aren't the greatest, but there's nothing terrible at the beginner level. All he should be dealing with are small functions and normal variables, in a single source file.
 

Red Squirrel

No Lifer
May 24, 2003
68,456
12,610
126
www.anyf.ca
So much hate for C++.

Yeah, pointers and memory management can be a bitch to begin with, but I think that it's an important skill that you need to master. And do you guys really think that the syntax is that hard? :\

I actually started off with C++ as my first language without counting html. ASM is actually a good start if you feel brave. Great way to gain a better understanding of what goes on behind the scenes.
 

Red Squirrel

No Lifer
May 24, 2003
68,456
12,610
126
www.anyf.ca
If he's a beginner programmer, he should be writing beginner programmer programs (Hello World, Counting Change, etc...), none of which requires pointers or classes.

As for your claim about error messages: Yes, C/C++ error messages aren't the greatest, but there's nothing terrible at the beginner level. All he should be dealing with are small functions and normal variables, in a single source file.

Yeah some C++ errors really make no sense but often you can google it and find decent info on what caused it.

I was trying to figure out why I was getting a "this class has already been declared" error so I googled it and it turned out it was a missing semi colon somewhere. Try to explain that one.
 

Ancalagon44

Diamond Member
Feb 17, 2010
3,274
202
106
I vote for Java, C#, or a scripting language like Python or Ruby.

Newer languages have features that make working with arrays, strings and other objects so much easier. array.length instead of diving the size of the array by the size of each element, for instance. Easy string concatenation operators instead of string substitution.
 

Kirby

Lifer
Apr 10, 2006
12,028
2
0
I think the important point in all this is that its for an absolute beginner. There is so much we take for granted that someone new to programming will not - for instance the concept of a FOR or WHILE loop, and the difference between them, what an array is. . .

Somebody starting out without these universal ideas does not need to be struggling with pointers, instances of classes, and so on. Yes you do need to eventually learn these, but not all on day one.

The trouble with C/C++ is that the syntax is rather cryptic, and the error messages can be equally so. If you miss out a semicolon somewhere important the error messages can all point you to a different source file altogether. It's a potential minefield for somebody learning without any in-person help.

The thing about C/C++ is that it doesn't lock you into OOP. You can get down the basics such as conditional statements, control flow statements, and input/output. You can learn the difference between var++ and ++var and still have it in one main. When I was in high school, our math teacher taught 5-10 students a year C++. None of us had any programming experience, but I can't think of anyone that failed. The first year, we did basic stuff, and the second year, OOP. Warranted, we did have someone physically there to assist us, and they may be something to take into consideration.

I just personally feel that the extra effort beforehand will pay off more in the end. You don't have a billion .NET libraries as a crutch. I just think there's value in being able to use pthreads and write your own data structures.

But regardless, in the end, any programming is better than none. :thumbsup:
 

Crusty

Lifer
Sep 30, 2001
12,684
2
81
I don't think you guys really read the OP. C++ is NOT a language for someone to pick up and learn by themselves with NO experience in programming.

Maybe in a stricter classroom type setting for an intro class, but certainly not for a self starter.
 

Kirby

Lifer
Apr 10, 2006
12,028
2
0
I don't think you guys really read the OP. C++ is NOT a language for someone to pick up and learn by themselves with NO experience in programming.

Maybe in a stricter classroom type setting for an intro class, but certainly not for a self starter.

He's in college, right? :hmm:
 

presidentender

Golden Member
Jan 23, 2008
1,166
0
76
I'm amazed at the number of replies saying that C++ is a good idea. He might be able to get C++ up and running, and he might be able to learn a thing or two, but I disagree that you can make a strong argument that C++ is the best place to start. I started with it, and even Java was a breath of fresh air.

Seriously, though, Java, C, C#, and C++ are all pretty bad first languages. With Java and C#, you have a ton of mandatory OOP overhead for no reason, meaning that "Hello World!" is much longer than it needs to be. With C and C++, you don't get enough features to do much of anything right out the gate, and there's a longer step between writing your program and seeing the output.

Python and Pascal are good. Python is very readable, it provides immediate, clear feedback when the programmer does something wrong, and the build process for simple tasks is just clicking 'run' in the IDE. Pascal was designed for teaching, so the language enforces good practices, although it's probably hard to find info on it at this point.

Edit: PHP is my primary language for work. Do not start with PHP. It lets you do things the wrong way far too easily.
 

pdusen

Member
May 8, 2008
39
0
0
I don't think you guys really read the OP. C++ is NOT a language for someone to pick up and learn by themselves with NO experience in programming.

Maybe in a stricter classroom type setting for an intro class, but certainly not for a self starter.

I assure you, I read the OP. The fact that you have a different opinion means nothing.
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |