• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

Programming languages for total newbs.

TridenT

Lifer
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/
 
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.
 
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.
 
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.
 
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.
 
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?
 
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.
 
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?
 
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. 😎
 
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#.
 
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 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++.
 
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.
 
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.
 
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.
 
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. 😛
 
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.
 
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:
 
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 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:
 
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.
 
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.
 
Back
Top