login about faq

Due to the large amount of spam accounts, we temporarily disabled new user sign ups. To override this, email newuser.lgqa@gmail.com and an admin will determine if you are permitted to join


This will be my first time programming. I know nothing about it, and I don't have skills in any other computer related skill. I want to eventually maybe make games. I know that is VARY big step and way up there and I can't just start making the next big retail games right away (also not by myself.) I've been told to start with Python, C, Java, etc. but am not sure which one I should start with. I don't have a Mac so I can't learn AppleScript, if that was going to be your suggestion. Any advice is appreciated. Thanks.

asked Jul 12 '10 at 20:06

Luke%20oX's gravatar image

Luke oX
1.8k139150172

edited Jul 12 '10 at 20:06

Learn C to start out with. Every other language is based off of C, when you learn C, it's easier to pickup on other languages. I started out with Objective-C, because there were good videos, and the books I tried for C, were junk. Trust me, it's a lot harder to know the other languages if you start out with something other than C.

(Jul 12 '10 at 20:10) AppleHack23 AppleHack23's gravatar image

That's not true, and in my opinion it's bad advice. Anyone who actually knows C would not make such a recommendation without warning the student-to-be of the dangers.

Anyone can publish a youtube video, but it takes time, effort, understanding, lots of money and even more time and understanding (due to editing) to release a book. If the books you read were garbage, then ask around and see what others think. I won't deny, anything written by Herbert Schildt isn't going to teach you C properly... so not all books are good. If you really wanted to learn the language, however, you'd ask before buying anything.

Not every language is based off of C. Take for example assembly languages. Sure, they're being influenced by C these days (with the segmented memory and so forth), but they generally look almost nothing like C. Haskell and SQL look nothing like C. Javascript only superficially looks like C, in that you should (but don't always have to) use a semicolon at the end of an expression. Practically everything else is different. It's a bad idea to learn another language by relating it to C. int x = 0 //* foo */ 1; <--- this works in C, but in C++ it'll generate a compiler error.

(Jul 14 '10 at 14:57) Seb Seb's gravatar image

I don't know why that code will not work in C++, it's a comment block that's supposed to be disregarded by the compiler. Thus, it's most likely your compiler.

(Oct 28 '10 at 21:15) HHBones HHBones's gravatar image

In fact, the code doesn't work in either language. The compiler reads any two forward slashes together as a comment to the end of the line. So to get it to compile (IN EITHER LANGUAGE), I had to add a space between the slashes. Otherwise, it worked fine.

(Oct 28 '10 at 21:23) HHBones HHBones's gravatar image

I would start with both PHP and Python. They are both very easy to use, then I would go to Java.

answered Jul 12 '10 at 21:24

Liam%20Quade's gravatar image

Liam Quade
7.4k92121197

Python is preferable, as the syntax is very easy and you can branch off to others when you get the idea. Also, Python is a popular language to develop in, as it is easier to script in Python than it is in Java or C. However, Python is an interpreted language, meaning that it is changed into binary as it is read by the computer, making it slower than other languages (on the other hand, developer time is more expensive than user time, and if your program is unbearably slow, you can write extensions of it in C to speed it up, or even replace most of the program with C with extensions written in Python).

answered Aug 30 '10 at 10:48

HHBones's gravatar image

HHBones
4.1k6182118

Java is considered one of the simplest languages to start with. I am just learning to program too and along with trying to learn java I have been trying to learn Objective C and I have to say that Objective C is way harder than Java. For example in java you don't have to allocate and release memory.

answered Jul 12 '10 at 21:20

FilipinoPower's gravatar image

FilipinoPower
13.0k135219313

Make your own choice. Of course, I don't recommend C, C++ or Objective-C due to the undefined behaviours. You may believe you've done something right (without reading the manual) because it works on your system. That doesn't mean it'll work on every system, in C, C++ and Objective-C.

In highschool I was developing a web server when I came across a nifty trick they use in game programming. As opposed to copying a string byte-by-byte (as the standard mandates), I decided to follow the advice and cast it to a pointer to integer and copy the string int-by-int (which was, on my machine apparently 4 times faster). When I submitted my work for assessment I was mortified to find that despite compiling, my daemon crashed with a "bus error" segfault on the PPC they used to compile and run it. Learn from my mistakes, and read up and understand what is well defined and what is undefined so you don't end up with unportable code if you're going to be programming in any of those languages.

As for a list of references, I've posted some links up on this question for a number of different programming languages. If you're still around, check it out and have a taste. Borrow any books that you'd like to check out before you buy them, and see if the language/book is for you. Only you can make this decision. We can't make it for you!

answered Jul 14 '10 at 15:13

Seb's gravatar image

Seb
(suspended)

Visual Basic is a great language to start out with because it teaches you the fundamentals and feel of programming without being to hard. I taught myself it and now I'm doing Java and C# without a problem. There are also plenty of tutorials on YouTube for Visual Basic if you need some help.

answered Oct 28 '10 at 21:41

fruitpunch36's gravatar image

fruitpunch36
406182028

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or __italic__
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported


Join Us in the Chat Room

Tags:

×2,368
×516
×223
×91
×87
×42
×22

Asked: Jul 12 '10 at 20:06

Seen: 1,340 times

Last updated: Oct 28 '10 at 21:41