ID:181207
 
Alright, so I know how to program in DM a fair amount. My question is though, what is the best approach in taking the next step in learning languages like objective C, C++, ect.. There has to be a better way than reading a huge textbook. Thanks in advance for the input.
Read a huge textbook, and write at the same time. Then have a project, and write that, reading from the textbook when needed. Rinse and repeat a lot, then you know a language. I'm sure someone will come and state it's not that simple, but for a lot of people the general pattern seems to be displayed above.
In response to Stephen001
Stephen speaks truth. The languages I can actually program in have universally been picked up by writing code in the language with a textbook (or similar documentation) at hand after doing sufficient reading/study that I understood the basics.

The exception are languages I've used as once-offs for uni projects or the like and have never really used properly - Scheme, Python, Promela, Spark Ada, Matlab. I was still in the voodooish stage for those and never read a textbook while writing code, and as a result I can't really program in them, I can just maybe produce some code that sort of works and is kind of ugly if I try.
In response to Stephen001
Thanks, any recommendations on a good book to pick up for any language? Maybe something in objective C if you know any.
You say you know "how to program in DM a fair amount", well how did you get to this level of understanding in DM? Whatever you did to learn to program DM, I would assume the same methods can be applied to any other programming language, be it through trial and error, reading a textbook, etc.
In response to Gunbuddy13
To be honest, it was from starting off in 2005 ripping off dragonball z games. After a while of continuously looking at coding and messing around with it, I just learned. Then to fully understand I actually sat down and read the DM guide. The thing is, I cant really think of a way to do that first part for other languages.
In response to Stephen001
Stephen001 wrote:
Read a huge textbook, and write at the same time. Then have a project, and write that, reading from the textbook when needed. Rinse and repeat a lot, then you know a language. I'm sure someone will come and state it's not that simple

No, no...it really is that simple. This is the method I recommend. Save those "tutorials" for after you know the language, and you want to learn how to create a specific program mechanic.
In response to Knifo
If you want to learn a C based language, learn how to program in C first and then learn C++, Objective C or what ever you want to do.

I recomend getting the Absolute Beginner's Guide to C by Greg Perry. You should be able to get it cheap on Amazon http://www.amazon.co.uk/Absolute-Beginners-Guide-Other-Sams/ dp/0672305100/
In response to Cbgames
I actually would argue you learn the language you want to learn first. My eyes have bled rivers because of people who learned C, then applied C language tricks to C++ where C++ had a feature to handle it much more gracefully.
In response to Gunbuddy13
Gunbuddy13 wrote:
You say you know "how to program in DM a fair amount", well how did you get to this level of understanding in DM? Whatever you did to learn to program DM, I would assume the same methods can be applied to any other programming language, be it through trial and error, reading a textbook, etc.

I would disagree with this. The majority of the BYOND community, myself included, did not learn this language properly. While I have learned a significant amount more and would acknowledge I'm a decent enough programmer, I wouldn't say it's really fair to state that the methods I used here to learn DM would be proper to exercise in Java or C++, for example.

Personally, I do a mixture of tutorials and books. If I have the time to learn the language, I do only books, but if I need to "learn" the language in a timely fashion, then I tend to mix tutorials and books at the same time. It's quicker, and then when I have time I go back and use the book.

In example, when pressed for a time crunch, I wanted to learn how to use buttons in a manipulative effort on the Android OS, so I searched for Tic Tac Toe tutorials, because I assumed those would have such tricks, and they did. I learned what I needed to learn, but only for the specific project. Currently, I'm going by the provided steps via Google and other resources to actually learn the language however.
In response to Knifo
Knifo wrote:
To be honest, it was from starting off in 2005 ripping off dragonball z games. After a while of continuously looking at coding and messing around with it, I just learned. Then to fully understand I actually sat down and read the DM guide.

That's exactly what I did. My next step to learning other languages was to head off to school, where I am now learning C#. However, the teacher is kind of blegh, so I'm probably going to just drop it and learn on my own time.
In response to Cbgames
Another good book for learning C that's not a huge text book is C Programming in Easy Steps.

But if you want an in depth book then I'd recommend the Kochan book.

However as Stephen said you might be better off learning the language you want straight of the bat rather than C first as it doesn't support Object Oriented Programming as well as Objective C and C++ which you will likely be used to using because of DM.
In response to Lyndonarmitage1
Plus C is a poopy language, you know.
Ok, there is alot of stuff to check out.
bloggs, forums, websites.

after learning from them, buy a book!
thats what i did.