• Welcome to Valhalla Legends Archive.
 

Language Recommendation

Started by Mitosis, January 12, 2008, 08:06 PM

Previous topic - Next topic

Mitosis

Hello everyone. I'm interested in programming, but haven't exactly settled on a language yet. As far as my programming experience goes, I create websites and use PHP5. My primary operating system is OS X Leopard, I only boot into Windows for 3ds Max and CAD. I should probably say what I am interested in (at this point in time), creating tools for web development. Creating my own editor interests me. You have heard this many times I am sure, but eventually I would like to create GUI applications.

Should I be limiting myself to a language which only runs on one type of system?

Is a language that supports multiple platforms such a good idea for a newcomer?

I have had people tell me to learn Java, C#, C, Python and Ruby, but with no specific reason.

So what is everyones thought on this? What would you guys suggest and why? I'm sorry if this thread is not wanted.

brew

#1
I would say assembly...
but then i'd get flamed to no end. Really, you should look into it. How can one use the statement "x = 1" without knowing what it does? It accomplishes something. You know the result. But do you know the means? Do you know what the compiler writes in order for that desired result to be achieved? Nope. In my opinion one should learn assembly before anything higher level, like C. I learned everything in the reverse order. I first learned vb6, thought that was teh shit, then learned C, then learned assembly. I never had the chance to fully appreciate how high level and simple everything else was. This is why you should learn assembly first. When you move on to C, you'll look at things like loops and conditional statements, and think, "Wow. This is so useful. I'm glad I have a compiler to translate such a high level language into machine code for me."
That's how things would be, ideally.
However we all know that would never happen. Since you already know PHP, I'd say the way to go is C. If you're accustomed to and comfortable using the object oriented features of PHP, you can use C++. From what I've heard, C++'s OOP features are very powerful. Not to mention C is nowhere near platform specific, so you can develop for Mac and Windows side by side.
<3 Zorm
Quote[01:08:05 AM] <@Zorm> haha, me get pussy? don't kid yourself quik
Scio te esse, sed quid sumne? :P

Mitosis

Thanks for your reply Brew, but is it really necessary to start with Assembly for what I want? I'm not trying to contradict you, I am just curious about that topic.

I'm open to any other opinions.

Dale

Quote from: Mitosis on January 12, 2008, 10:13 PM
Thanks for your reply Brew, but is it really necessary to start with Assembly for what I want? I'm not trying to contradict you, I am just curious about that topic.

I'm open to any other opinions.

I recommend C# to you, from two different aspects, one being It's my favorite language :). Two being, because it's a powerful language that isn't just limited towards application development, but website development as well! It'll also get you used to the syntax of C/C++ which you are I'm sure, familiar with since you know PHP. C# is powerful and will get you off to a great start in my opinion.

Good luck language hunting!

Best regards, Dale.

Banana fanna fo fanna

Talked to you on AIM. I'd suggest Java, Python, C#, or Objective-C in that order. The bitch with C# is that I am unsure how well supported winforms is on OSX.

In a nutshell:

- Java is pretty well entrenched in the industry and is crossplatform, but I still think it sucks for user applications (you need to be SMART and learn about threading)
- Python is my fav language and wxPython is pretty awesome. Industry support is surprisingly OK, but tool support is lacking (no Visual Studio)
- C# is also pretty well entrenched in the industry and you get Visual Studio which beats the pants out of most development environments (though i <3 emacs). I think it's the best language/toolset/platform combo for desktop apps. It isn't quite cross platform yet, though.
- Objective-C/Cocoa is what Macs use, period.

Mitosis

Quote from: Banana fanna fo fanna on January 12, 2008, 11:34 PM
Talked to you on AIM. I'd suggest Java, Python, C#, or Objective-C in that order. The bitch with C# is that I am unsure how well supported winforms is on OSX.

In a nutshell:

- Java is pretty well entrenched in the industry and is crossplatform, but I still think it sucks for user applications (you need to be SMART and learn about threading)
- Python is my fav language and wxPython is pretty awesome. Industry support is surprisingly OK, but tool support is lacking (no Visual Studio)
- C# is also pretty well entrenched in the industry and you get Visual Studio which beats the pants out of most development environments (though i <3 emacs). I think it's the best language/toolset/platform combo for desktop apps. It isn't quite cross platform yet, though.
- Objective-C/Cocoa is what Macs use, period.

I am assuming that in my case Python or Objective-C/Cocoa would be best for developing on OS X. I'm going to do some reading up on the two languages and then tell you what I think.

Hell-Lord

Java or C# for sure, don't burden yourself with C/C++ unless you are doing some really process intensive routines then maybe do those in a lower level language.

brew

Don't listen to them. C/C++ is ideal for you. Since when is Mac going to support the Microsoft .NET framework that C# uses? I do assume you're developing for mac. I mean hey, I wouldn't be developing for windows right now if my computer wasn't shipped with it. Python is also nice, though. If you don't like C++.
<3 Zorm
Quote[01:08:05 AM] <@Zorm> haha, me get pussy? don't kid yourself quik
Scio te esse, sed quid sumne? :P

Joe[x86]

Quote from: brew on January 14, 2008, 11:04 AM
Since when is Mac going to support the Microsoft .NET framework that C# uses?

Fink + Mono.
Quote from: brew on April 25, 2007, 07:33 PM
that made me feel like a total idiot. this entire thing was useless.

MysT_DooM

RealBasic, fun and easy  for making stuff for macs


vb6, something about that combination of numbers and letters is sexy

Mitosis

Quote from: brew on January 14, 2008, 11:04 AM
Don't listen to them. C/C++ is ideal for you. Since when is Mac going to support the Microsoft .NET framework that C# uses? I do assume you're developing for mac. I mean hey, I wouldn't be developing for windows right now if my computer wasn't shipped with it. Python is also nice, though. If you don't like C++.

I'm currently looking into Java and C/C++/Cocoa development books.

Dale

Quote from: brew on January 14, 2008, 11:04 AM
Don't listen to them. C/C++ is ideal for you. Since when is Mac going to support the Microsoft .NET framework that C# uses? I do assume you're developing for mac. I mean hey, I wouldn't be developing for windows right now if my computer wasn't shipped with it. Python is also nice, though. If you don't like C++.
You're assuming he's developing for Mac?...

Quote from: Mitosis on January 12, 2008, 08:06 PM
My primary operating system is OS X Leopard, I only boot into Windows for 3ds Max and CAD.


Warrior

Quote from: brew on January 14, 2008, 11:04 AM
Don't listen to them. C/C++ is ideal for you. Since when is Mac going to support the Microsoft .NET framework that C# uses? I do assume you're developing for mac. I mean hey, I wouldn't be developing for windows right now if my computer wasn't shipped with it. Python is also nice, though. If you don't like C++.

Except that C# is an EMCA standard, and it's been reimplemented outside the .NET Framework.
Quote from: effect on March 09, 2006, 11:52 PM
Islam is a steaming pile of fucking dog shit. Everything about it is flawed, anybody who believes in it is a terrorist, if you disagree with me, then im sorry your wrong.

Quote from: Rule on May 07, 2006, 01:30 PM
Why don't you stop being American and start acting like a decent human?

Warrior

Quote from: Banana fanna fo fanna on January 12, 2008, 11:34 PM
Talked to you on AIM. I'd suggest Java, Python, C#, or Objective-C in that order. The bitch with C# is that I am unsure how well supported winforms is on OSX.

Yea, WinForms is pretty bad even on Mono IIRC. I'd go with GTK#.
Quote from: effect on March 09, 2006, 11:52 PM
Islam is a steaming pile of fucking dog shit. Everything about it is flawed, anybody who believes in it is a terrorist, if you disagree with me, then im sorry your wrong.

Quote from: Rule on May 07, 2006, 01:30 PM
Why don't you stop being American and start acting like a decent human?

Banana fanna fo fanna

Yo dude. I hate Java. But learn Java anyway. Everyone else does. You are going to be screwed when you enter a CS program in college and don't know Java.