Computer Science Canada Which programming language should I learn? (Updated) |
Author: | wtd [ Tue Jan 04, 2005 4:06 am ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Post subject: | Which programming language should I learn? (Updated) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
I've seen it asked several times: what programming language should I learn? I like answering this question, so I thought I'd do so in one place by listing pros and cons for several different languages. I may also organize it into a chart, but there are a lot of categories and a lot of languages, and some of the scores would be subjective. ![]() Assembly Pros:
Cons:
C Pros:
Cons:
Code:
Adding a simple function/procedure:
C++ Pros:
Cons:
Code:
Adding a simple function/procedure:
Objective-C Pros:
Cons:
Code:
Adding a simple function/procedure:
Java Pros:
Cons:
As a "frame" for programs without knowing what that does. Code:
Adding a simple function/procedure:
Perl Pros:
Cons:
Code:
Adding a simple function/procedure:
Python Pros:
Cons:
Adding a simple function/procedure:
Ruby Pros:
Cons:
Code:
Adding a simple function/procedure:
Turing Pros:
Cons:
Code:
Adding a simple function/procedure:
Pascal Pros:
Cons:
Code:
Adding a simple function/procedure:
Haskell Pros:
Cons:
Code:
Adding a simple function/procedure:
Objective-Caml (O'Caml) Pros:
Cons:
Code:
Adding a simple function/procedure:
Eiffel Pros:
Cons:
Code:
Adding a simple function/procedure:
C# Pros:
Cons:
Adding a simple function/procedure:
Visual Basic (upto 6) Pros:
Cons:
VB.NET Pros:
Cons:
Delphi Pros:
Cons:
Ada95 Pros:
Cons:
Code:
Adding a simple function/procedure:
|
Author: | MihaiG [ Tue Jan 04, 2005 6:29 pm ] |
Post subject: | |
i should slap you.....you for got Visual Basic 6.... Delphi 5 and others..... |
Author: | zomg [ Tue Jan 04, 2005 6:37 pm ] |
Post subject: | |
considering how the long the list was he probably either 1)copied it from a website and they didn thave anything about VB or anything... 2)typed it up and left out VB cuz it was so long already 3)Perhaps he forgot it...unlikly tho BTW this list kicks thx for posting |
Author: | Catalyst [ Tue Jan 04, 2005 6:41 pm ] |
Post subject: | |
or he simply doesnt like visual basic 6 |
Author: | wtd [ Tue Jan 04, 2005 6:45 pm ] |
Post subject: | |
Catalyst wrote: or he simply doesnt like visual basic 6
Very much so, but yes, I typed it all myself and I was first including languages I am most familiar with. It will be expanded in the near future. |
Author: | zomg [ Tue Jan 04, 2005 6:46 pm ] |
Post subject: | |
its all coming together |
Author: | Martin [ Wed Jan 05, 2005 1:45 am ] |
Post subject: | |
Great guide wtd ![]() I've been considering learning C#, as it has some really nifty features, and what appears to be incredibly cleaned up syntax as compared to C++. All and all, it seems like an interesting language. My main motivation is that winAPI and COM are apparently being replaced by .net (I read somewhere that Longhorn is going to be built on .net) and I want to get into some DirectX. EDIT: Speaking of which, can anyone point me in the direction of a good, and free C# compiler for Linux? |
Author: | Tony [ Wed Jan 05, 2005 2:52 am ] |
Post subject: | |
wtd wrote: I typed it all myself
He defenatly did. You can see so in the views expressed tawards certain programming languages (well atleast to those who know wtd better) Anyways, wtd knows alot about alot of programming languages, and I find this list to be quite accurate. Great job ![]() |
Author: | wtd [ Wed Jan 05, 2005 3:02 am ] |
Post subject: | |
martin wrote: Great guide wtd
![]() I've been considering learning C#, as it has some really nifty features, and what appears to be incredibly cleaned up syntax as compared to C++. All and all, it seems like an interesting language. My main motivation is that winAPI and COM are apparently being replaced by .net (I read somewhere that Longhorn is going to be built on .net) and I want to get into some DirectX. EDIT: Speaking of which, can anyone point me in the direction of a good, and free C# compiler for Linux? Mono is a good C# environment on Windows, Linux, Mac OS X, etc. Be careful, though, Microsoft's plans for Longhorn change every other Tuesday. .NET is the way to go for Windows development, though. As for it being a cleaned up C++... it's really more a Java clone, though the guy in charge of developing C# headed up Delphi for Borland, so you'll find some parts of the language that behave more like Object Pascal. |
Author: | rizzix [ Wed Jan 05, 2005 3:09 pm ] |
Post subject: | |
martin wrote: I've been considering learning C#, as it has some really nifty features, and what appears to be incredibly cleaned up syntax as compared to C++. All and all, it seems like an interesting language. Ha the guy who dislikes java but likes c#.. lmao |
Author: | wtd [ Wed Jan 05, 2005 3:27 pm ] |
Post subject: | |
rizzix wrote: martin wrote: I've been considering learning C#, as it has some really nifty features, and what appears to be incredibly cleaned up syntax as compared to C++. All and all, it seems like an interesting language. Ha the guy who dislikes java but likes c#.. lmao But C# came from Microsoft. With that sig image I think he's obligated to like it. |
Author: | Martin [ Wed Jan 05, 2005 4:01 pm ] |
Post subject: | |
Hey, I'm not a Microsoft lackey. I'm just heading the anti-anti-microsoft campaign. I still use Firefox AND Linux. Hell, I make my money from programming in Linux. And my dislike of Java is entirely due to the classes that I took. |
Author: | Tony [ Wed Jan 05, 2005 9:24 pm ] |
Post subject: | |
martin wrote: And my dislike of Java is entirely due to the classes that I took.
You didn't go to any of your Java classes ![]() |
Author: | Martin [ Wed Jan 05, 2005 9:30 pm ] |
Post subject: | |
Brainf*ck Pros:
Cons:
And, on that note, you win a sticky. |
Author: | Bobrobyn [ Fri Apr 08, 2005 9:10 am ] |
Post subject: | |
He also forgot qbasic, which is a very fun, but old. *cough* we have to use it in our computer engineering classes */cough* ~Bob |
Author: | Tony [ Fri Apr 08, 2005 10:01 am ] |
Post subject: | |
Bobrobyn wrote: He also forgot qbasic
He didn't forget it. It was left out on purpose ![]() ![]() |
Author: | md [ Fri Apr 08, 2005 10:35 am ] |
Post subject: | |
QBasic is actually Quick Basic, and it implements standard basic, so it isn't a language in and of itself. Pros: Easy to learn Quick to debug VERY Portable VERY Stable language Cons: SLOW VERY SLOW Dead as far as new compilers/interpreters go No OO support Oh, and the best pascal comiler right now is FreePascal, which DOES have support for pascal objects, as well as classes. It's not standard, but i think there may be an effort to make a standard... either way if yuor looking for a really good pascal compiler FreePascal is the best. |
Author: | Universal [ Tue Apr 12, 2005 2:02 pm ] |
Post subject: | |
who the **** still uses asm or those old languages. VB is the way to go. |
Author: | wtd [ Tue Apr 12, 2005 2:09 pm ] |
Post subject: | |
Universal wrote: who the **** still uses asm or those old languages. VB is the way to go.
People who write the software that makes cars and thousands of other devices run properly, who make boatloads of money doing so. Which other languages do you consider too old to be of any worth? |
Author: | rizzix [ Tue Apr 12, 2005 2:11 pm ] |
Post subject: | |
VisualBasic ![]() |
Author: | wtd [ Tue Apr 12, 2005 2:23 pm ] |
Post subject: | |
Perhaps we should tell all of the LISPers still happily using it and its derivatives (notably, Scheme) after 50 years that they should use VB. |
Author: | Martin [ Tue Apr 12, 2005 2:26 pm ] |
Post subject: | |
wtd wrote: Universal wrote: who the **** still uses asm or those old languages. VB is the way to go.
People who write the software that makes cars and thousands of other devices run properly, who make boatloads of money doing so. Which other languages do you consider too old to be of any worth? Latin. |
Author: | Tony [ Tue Apr 12, 2005 3:31 pm ] |
Post subject: | |
martin wrote: Latin.
Suspendisse imperdiet elementum tellus. Proin eu magna non eros mollis. ![]() Jerk |
Author: | Mazer [ Tue Apr 12, 2005 3:35 pm ] |
Post subject: | |
Yeah, really Martin. Quando omni flunkus, moritati. |
Author: | Martin [ Tue Apr 12, 2005 3:50 pm ] |
Post subject: | |
I hate you both. Your pay is being cut by 50%. |
Author: | wtd [ Tue Apr 12, 2005 3:55 pm ] |
Post subject: | |
:: prefers Español :: |
Author: | Universal [ Sun Apr 24, 2005 2:58 pm ] |
Post subject: | |
you only use asm and those languages for rom programming not computer application. Its either java or vb now although there is a demand for php or sql. |
Author: | [Gandalf] [ Sun Apr 24, 2005 3:24 pm ] |
Post subject: | |
Not really... I think C and C++ are looked for more widely than VB... |
Author: | Bobrobyn [ Fri Apr 29, 2005 6:40 pm ] |
Post subject: | |
I said Qbasic as a joke, I wasn't being serious. ~Bob Edit: I actually have to use it in my computer engineering class ![]() |
Author: | diqua [ Fri May 27, 2005 8:34 pm ] |
Post subject: | |
wtd did include vb6 just to tell you An after the fact edit. |
Author: | [Gandalf] [ Mon Dec 05, 2005 6:49 pm ] | ||
Post subject: | |||
Looking back, and... wtd, the Java example you showed won't compile since Java, being case sensitive requires the "System" in "System.out.println()" to be start with a capital letter. It goes well to discouraging beginners from learning Java, but in the spirit of equality... ![]()
|
Author: | wtd [ Mon Dec 05, 2005 11:30 pm ] |
Post subject: | |
Thanks for pointing that out. |
Author: | [Gandalf] [ Mon Dec 05, 2005 11:38 pm ] | ||
Post subject: | |||
There is also this example:
![]() |
Author: | eklypze [ Tue Dec 06, 2005 8:37 pm ] |
Post subject: | |
Great Guide! ![]() |
Author: | Martin [ Wed Dec 07, 2005 4:37 am ] |
Post subject: | |
Haskell is definitely where it's at. The lazy bit is cool, but leads to the occasional 'huh? Why does that work?' Mind if I spice up this guide with some example code later (not Haskell... I was thinking C/C++/Java to start) to flesh out the examples some more? |
Author: | wtd [ Wed Dec 07, 2005 5:56 am ] |
Post subject: | |
Martin wrote: Haskell is definitely where it's at. The lazy bit is cool, but leads to the occasional 'huh? Why does that work?'
The silence from you on the subject makes me wonder just how much of Haskell's power you've seen. ![]() Martin wrote: Mind if I spice up this guide with some example code later (not Haskell... I was thinking C/C++/Java to start) to flesh out the examples some more?
Knock yourself out. |
Author: | Martin [ Wed Dec 07, 2005 8:56 am ] |
Post subject: | |
Yeah, I haven't had much time to learn about it. Work's been picking up (finally) and there's too much to do after work. I downloaded a tutorial - Yet Another Haskell Tutorial by Hal Daume III. I'm somewhere in chapter 7 (Advanced Features). |
Author: | wtd [ Wed Dec 07, 2005 2:28 pm ] |
Post subject: | |
Martin wrote: I downloaded a tutorial - Yet Another Haskell Tutorial by Hal Daume III. I'm somewhere in chapter 7 (Advanced Features).
That's a good tutorial. |
Author: | Martin [ Wed Dec 07, 2005 7:52 pm ] |
Post subject: | |
I'm enjoying it. Haskell really promotes a different way of thinking, and I love ghci. One thing I'm not sure about Haskell though is how well it'd work for an actual application (besides math based ones). I guess I'll find out. |
Author: | wtd [ Wed Dec 07, 2005 8:09 pm ] |
Post subject: | |
http://www.pugscode.org/ |
Author: | Martin [ Wed Dec 07, 2005 8:11 pm ] |
Post subject: | |
So that's a 'yes, it works' I take it? |
Author: | wtd [ Wed Dec 07, 2005 9:08 pm ] |
Post subject: | |
Yes. ![]() |
Author: | Lazy [ Fri Nov 17, 2006 5:03 am ] |
Post subject: | |
Quote: Haskell really promotes a different way of thinking, and I love ghci.
One thing I'm not sure about Haskell though is how well it'd work for an actual application (besides math based ones). I guess I'll find out. How about <a href= "http://www.geocities.jp/takascience/haskell/monadius_en.html">this</a> - a 2d shooter game? It's a fun example of how anything can be done in Haskell - and it's a good excuse to download a game for "research purposes" ![]() |
Author: | haskell [ Wed Dec 27, 2006 12:31 am ] |
Post subject: | |
What about standard Lisp dialects, such as Scheme, Prolog, and Common Lisp? Lisp is tried and tested, and has a sense of eureka when you finally figure it out ![]() Modern Assembly examples? MASM32, TASM32, or FASM. You can snatch them off their home pages, probably available under GNU License or similar. Tcl/tk would be nice to add... But I doubt anyone thinks of learning Tool Command Language as a first language. Possibly awk, sed and the other forgotten tools, as some people learn those first in a Unix-based environment. AutoIt would be a good one to add... Its a Windows-based scripting language that can also be compiled to the standard Win32 PE file(.exe, not sure about .dll). Its a BASIC-like syntax and is very easy. AspectJ would be a good example of Aspect-Oriented programming. Though probably not something for a first language. Maybe Flash and Php? Web apps are pretty popular, and are a good transition from web design to computer programming. |
Author: | michaelp [ Mon Jul 30, 2007 8:52 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Sorry for the big bump, but what are you opinions on what is the best programming language for games? |
Author: | Dan [ Mon Jul 30, 2007 8:57 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Ratings of what langue is best are ushely over looking the point of having diffrent langues. What langue is best for a given job releys hevealy on what that job is, what kind of programers are doign the work, what there personal options are, what there person mataing the code will need, the time frames for coding the job any many other factors like what kind of system they are making it for and what operating system will it be aimed at if any at all. For gamming i whould not ventuer to guses what is "best" however i blive C, C++ and C# are popualr in the gaming industry. Remamber that popular dose not mean "best" or even good tho. |
Author: | michaelp [ Mon Jul 30, 2007 9:01 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
I was thinking about using C or C++ because I have a PSP, and do some PSP programming/hacking ( ![]() Still will have to look at other things to see what to choose, thanks for the input. |
Author: | wtd [ Tue Jul 31, 2007 12:47 am ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
You can always learn C or C++ later on, once you have a grasp on fundamentals. This is something students tend to forget: you can learn more languages, but you'll never forget the frustration brought on by choosing a hard one as one of your first. |
Author: | michaelp [ Tue Jul 31, 2007 2:28 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
I'm thinking more C than C++. I do know some little bits of programming, from LUA on the PSP. Do you know any good websites for C? edit: I'm also thinking about PHP, but unless I wanted to make a webpage, it wouldn't be useful would it? |
Author: | wtd [ Tue Jul 31, 2007 3:09 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
You could try reading my C Whirlwind in the C Tutorials section. Lua is a nice language. Nice and small. PHP is a monster, and you are best off avoiding it unless you have a compelling reason to use it (managing an existing app written in PHP). |
Author: | michaelp [ Wed Aug 01, 2007 10:26 am ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
C or C++ tutorials section? I don't see any tutorials in the "C tutorials" section. I don't have any compelling reason to use PHP, so I guess I won't use it. |
Author: | Aziz [ Wed Aug 01, 2007 10:48 am ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Under "Programming" heading. It's a subforum of the C forum. |
Author: | michaelp [ Wed Aug 01, 2007 12:18 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
You mean here? http://compsci.ca/v3/index.php?pf=101&h=1&start=0 And here's the tutorial section without any tutorials in it: http://compsci.ca/v3/viewforum.php?f=102 I know where to look, I just don't know where the tutorial is. |
Author: | neufelni [ Wed Aug 01, 2007 12:19 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
michaelp is right. There seems to be nothing in the C tutorials section. However, you can find wtd's C Whirlwind in the C++ tutorials section, right here. |
Author: | michaelp [ Wed Aug 01, 2007 3:20 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Thanks. I don't know why a C tutorial is in the C++ tutorials section, since learning C concepts when learning C++ or vice versa can make you write worse code. *hint hint* *nudge nudge* edit: What compiler should I use? I heard Dev C++ is good. Or MinGW? I would rather have something that takes up under a GB of space. |
Author: | PaulButler [ Wed Aug 01, 2007 7:08 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Dev-C++ is an IDE (Integrated Development Environment), not a compiler. I think Dev-C++ comes with the MinGW compiler though. Eclipse is also a good IDE for C++, and it is kept more up-to-date. A compiler will not even come close to taking up a gigabyte. An IDE might, though. Eclipse is a 100-some MB download. |
Author: | CodeMonkey2000 [ Wed Aug 01, 2007 7:13 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Eclipse is kinda slow on my computer. I prefer Code::Blocks because it has templates for openGL and SDL. |
Author: | michaelp [ Wed Aug 01, 2007 7:52 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Well, I only need a compiler, I'll just use Notepad++ for my actual code typing. I think I'll just set up MinGW, using this guide in the C++ tutorials section. It's seems easy enough. edit: Is the latest version 4.1.0? |
Author: | PaulButler [ Wed Aug 01, 2007 8:41 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Starting without an IDE is a good idea. Notepad++ is great with one huge annoyance - by default all the comments are displayed in Comic Sans. |
Author: | michaelp [ Wed Aug 01, 2007 8:44 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
I don't really make too many comments, so I won't mind too much. Again, can I get a link to the latest version of MinGW? In that guide, it's 4.1.0, but I'm not sure if it's the latest version of it. (If it even matters ![]() edit: Okay, on the computer I want to install it on doesn't have internet, can I just install on a computer that does have internet and then copy the MinGW folder (where I installed it) to the other computer? |
Author: | PaulButler [ Wed Aug 01, 2007 9:29 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
From the sourceforge files, it looks like 5.1.3 is the latest. Even if you do make comments, and you find comic sans as annoying as I do, it is easy to change. Rather than copying the installed files, why not just copy the installer? But if you needed to, you could just copy the installed files and change your PATH environmental variable so you could use MinGW from the command line. |
Author: | michaelp [ Thu Aug 02, 2007 8:32 am ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
If I'm not mistaken, you need an internet connection to get the files from a mirror, which the computer I'm going to use does not have. |
Author: | Aziz [ Thu Aug 02, 2007 8:55 am ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
I believe what he means is to download the .exe installer, then copy the installer to the other computer and run it from there. |
Author: | wtd [ Thu Aug 02, 2007 11:25 am ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
JUst to make it easy, C Whirlwind. |
Author: | michaelp [ Thu Aug 02, 2007 11:46 am ] | ||
Post subject: | RE:Which programming language should I learn? (Updated) | ||
Whatever. I decided to learn C++ instead, just because. And not gonna use MinGW, I'm going to use Dev-C++. Looks nice and easy to use. One question about it: I just found a "Hello World" script, but when I get the .exe, (and run it) it goes on my a millisecond and then goes off. Anything I might be doing wrong?
|
Author: | Aziz [ Thu Aug 02, 2007 11:55 am ] | ||||||||
Post subject: | RE:Which programming language should I learn? (Updated) | ||||||||
Yes. The command line isn't staying open. Btw, this was said before, but Dev-C++ isn't a compiler, it's an IDE (editor). It uses MinGW. The best way to start would be to use MinGW from command line. Because you'll realize what the program is doing (such as linking, etc). The line to compile the program (I wouldn't use "script" to define it) is:
(wtd, correct me if I'm wrong). Then you have to run it. If you double click the exe, and runs, gets to "return 0", returns from main, and terminates. There is no more use for the terminal window, so it closes. If you run the following on command line:
or even
that will cause the program to run, and then terminate, and you will go back to your prompt,with the output still showing. You could write a script to run it and keep the window open: DOS batch file:
And, I believe Dev-C++ has a bad "stigma" round the community, though it is quite popular. I myself use a text editor and command-line (my work with C++ is minimal). I do have Code::Blocks, which many more people are endeavored to (is that a word?). |
Author: | rdrake [ Thu Aug 02, 2007 11:56 am ] | ||
Post subject: | Re: RE:Which programming language should I learn? (Updated) | ||
michaelp @ Thu Aug 02, 2007 11:46 am wrote: Whatever.
Dev-C++ uses MinGW as its compiler, all it is is an IDE that makes managing larger projects easier. It should also be noted that MingGW includes compilers for both C (gcc.exe) and C++ (g++.exe).
I decided to learn C++ instead, just because. And not gonna use MinGW, I'm going to use Dev-C++. Looks nice and easy to use. michaelp @ Thu Aug 02, 2007 11:46 am wrote: One question about it: I just found a "Hello World" script, but when I get the .exe, (and run it) it goes on my a millisecond and then goes off. Anything I might be doing wrong? Nope, doing nothing wrong. The window outputs "Hello, world!" then terminates since it's done executing. You could change it to the following to have it pause:
Edit: Beaten by Aziz. |
Author: | michaelp [ Thu Aug 02, 2007 12:00 pm ] |
Post subject: | Re: RE:Which programming language should I learn? (Updated) |
Aziz @ Thu Aug 02, 2007 11:55 am wrote: Yes. The command line isn't staying open.
Btw, this was said before, but Dev-C++ isn't a compiler, it's an IDE (editor). It uses MinGW. The best way to start would be to use MinGW from command line. Because you'll realize what the program is doing (such as linking, etc). The line to compile the program I don't sweat the small details. I thought that I might be doing something wrong, thanks for those bits of information. I think I can actually start to do some programming now. ![]() |
Author: | Aziz [ Thu Aug 02, 2007 12:00 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Word. But in due note, I didn't know of that system("PAUSE") call. Though, how hackish is that? |
Author: | rdrake [ Thu Aug 02, 2007 12:03 pm ] |
Post subject: | Re: RE:Which programming language should I learn? (Updated) |
Aziz @ Thu Aug 02, 2007 12:00 pm wrote: But in due note, I didn't know of that system("PAUSE") call. Though, how hackish is that? It's quite hackish and I do believe it only works on Winders. All it does is execute the system command "PAUSE." |
Author: | Aziz [ Thu Aug 02, 2007 12:10 pm ] |
Post subject: | Re: RE:Which programming language should I learn? (Updated) |
michaelp @ Thu Aug 02, 2007 1:00 pm wrote: Aziz @ Thu Aug 02, 2007 11:55 am wrote: Yes. The command line isn't staying open.
Btw, this was said before, but Dev-C++ isn't a compiler, it's an IDE (editor). It uses MinGW. The best way to start would be to use MinGW from command line. Because you'll realize what the program is doing (such as linking, etc). The line to compile the program I don't sweat the small details. I thought that I might be doing something wrong, thanks for those bits of information. I think I can actually start to do some programming now. ![]() You should sweat the small details, especially with C++. I'm no expert, but I've read before about "cryptic linker errors" and if you don't understand whats going on in the background, you're going to be yanking hairs out. Not just the ones on your head. I'm talking, like, crotch and armpit hairs. |
Author: | wtd [ Thu Aug 02, 2007 2:19 pm ] | ||||||||||
Post subject: | RE:Which programming language should I learn? (Updated) | ||||||||||
So... what's wrong with learning simple, elegant programming languages?
Beats the pants off this "int main" and "std::cout <<" nonsense any day! ![]() |
Author: | Aziz [ Thu Aug 02, 2007 2:24 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
I was going to tell you that you were posting off topic, wtd, but then I looked at the topic title =\ What's that 3rd code sample from? |
Author: | rdrake [ Thu Aug 02, 2007 2:37 pm ] | ||
Post subject: | Re: RE:Which programming language should I learn? (Updated) | ||
Aziz @ Thu Aug 02, 2007 2:24 pm wrote: What's that 3rd code sample from?
|
Author: | Aziz [ Thu Aug 02, 2007 2:38 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
...I'm lost. |
Author: | PaulButler [ Thu Aug 02, 2007 4:16 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
The third code sample is from Objective Caml (OCaml). And given the thread title, here are some reasons you should learn it: 1. Type inference gives you the safety of static typing with little more effort than a dynamically typed language. 2. If performance is an issue, OCaml has a reputation for being faster than other functional languages and even C++ for some problems. 3. Once you have used an interactive console (I think OCaml calls it the toplevel), you can't go back. 4. Pattern matching is cool, even though I still don't fully understand it. 5. Functional programming is coming back into style ![]() 6. If you want access to a huge library of existing code, Microsoft's F# is basically OCaml with .NET integration. 7. It's not as hard as it looks. ![]() |
Author: | rdrake [ Thu Aug 02, 2007 4:18 pm ] |
Post subject: | Re: RE:Which programming language should I learn? (Updated) |
PaulButler @ Thu Aug 02, 2007 4:16 pm wrote: 6. If you want access to a huge library of existing code, Microsoft's F# is basically OCaml with .NET integration. The license even indicates that F# still contains some O'Caml libraries and code ![]() |
Author: | wtd [ Thu Aug 02, 2007 4:26 pm ] |
Post subject: | Re: RE:Which programming language should I learn? (Updated) |
PaulButler @ Fri Aug 03, 2007 5:16 am wrote: 5. Functional programming is coming back into style
![]() It never went out of style. You just keep getting style advice from people with no sense of style. ![]() |
Author: | WannaBeProgrammer [ Wed Jan 23, 2008 3:15 am ] |
Post subject: | Re: Which programming language should I learn? (Updated) |
one question, i hear that starting with C is bad and that its better to start with ruby or python, is that true? i have to admit that C is confusing, but i want to learn a language that will help me the most and C is used the most, what do u think i should do? ive been studying C and can barely program the simplest of code, maybe i just need to practise? or maybe i should try something easier? -Carl |
Author: | McKenzie [ Wed Jan 23, 2008 9:10 am ] |
Post subject: | Re: Which programming language should I learn? (Updated) |
There are a lot of good reasons to learn C first. I don't think "it's used the most" is that important. If you are serious about computers then you are going to learn a load of different languages. No one is going to offer you a job after you have been hacking around in your first language for one year. C doesn't do much for you, which means you have to do everything for yourself. If you enjoy a very low level approach then you can learn a lot with C. As you pointed out it is still very widely used and C knowledge will be valuable for some time to come. I taught C for about 6 years, as a second language. Typically, most students find it a frustrating up-hill battle. To take this up as a side project you are very likely to get frustrated and give up, but it is very much a personal thing. Ruby and Python are great as starter languages, but they are not without their faults as well. Keep in mind that when you are talking about what is "used the most" no one here has a crystal ball to tell you what language will be used in 5-7 years when you are looking for a Computer job, or 7-10 years when you want to switch jobs, and even then when everyone jumps on language X there will be a niche market for language Y. Explore languages because they are cool and fun to play with. If you are just starting, it is way too early to be worried about if you will ever be paid to do what you are doing. |
Author: | WannaBeProgrammer [ Wed Jan 23, 2008 2:37 pm ] |
Post subject: | Re: Which programming language should I learn? (Updated) |
yea its frustrating but im deffeinately not giving up, im just worried that i will go to college and take the game and simulation programming course, its a 3 year course, and ill fail out cause i dont have enough prior knowledge. i guess im just being impatient lol, but i really want to learn C fast so i can start programming my own games and stuff. how long does it take usually to master C? i see those learn C in 10 days things but i dont think thats true. |
Author: | McKenzie [ Wed Jan 23, 2008 2:50 pm ] |
Post subject: | Re: Which programming language should I learn? (Updated) |
"C in 24 Hours" means 24 1-hour C lessons. You will only finish them in 1 hour if you have some prior programming knowledge. Game programming is some fairly advanced stuff. It's like writing a novel. If you start learning Spanish, don't expect to be writing novels in Spanish next week. There is a load of fundamental knowledge you need in game design. There is no shortcut to this knowledge. |
Author: | WannaBeProgrammer [ Wed Jan 23, 2008 4:07 pm ] |
Post subject: | Re: Which programming language should I learn? (Updated) |
thanks =] ive been studying hard all day and hope to get a good understanding of programming with c and maybe c++ within the next three months |
Author: | wtd [ Wed Jan 23, 2008 7:09 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Here's the key: write code. Write a lot of code. Once you've written some code, show us. Be read for us to tell you it sucks, and why, and keep an eye out for constructive criticism. Then, when you think you understand that criticism, go back and do it again. Lather, rinse, repeat. |
Author: | wtd [ Wed Jan 23, 2008 7:10 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
There's nothing wrong with starting with C. Just remember, if you get frustrated, and C doesn't seem like fun... There are other languages out there that are fundamentally different from C and will still let you get to your goal. So, if C doesn't float your boat, don't give up on the whole thing. |
Author: | Devin_McElheran [ Fri Jan 25, 2008 12:58 pm ] |
Post subject: | Re: Which programming language should I learn? (Updated) |
I have tried C and Java and found both boring, the only language I can say I really learned is Visual Basic, I learned it in a computer science class at school last year, and I found it fun. A lot of languages were mentioned here and I'd like to learn one worth learning, good for games and stuff, so if you have any suggestions I'm open to them. |
Author: | Clayton [ Fri Jan 25, 2008 5:16 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
It's pretty hard to put a definition to "good" when you speak about programming languages. Each has their own pros and cons to be considered. Read through this again and make your decisions based on that. If that still doesn't give you enough information, Google is a godsend. |
Author: | DemonWasp [ Fri May 30, 2008 3:57 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
@Devin: If you're interested in game programming, then you should decide which you're going to start with: casual games or big-name games. Casual games (such as web games) are often Flash or Java. Rarely JavaScript. Other languages are used, but the simplicity of writing code in these languages (and the wide base of people who know the language) leads to their popularity. Big-name games (pretty much all the ones you see advertisements for) have a heavy tendency towards C and C++ (and some apparently include ASM code too, though I suspect that's becoming increasingly uncommon). I would imagine you can find the occasional VB or Java (see Tribal Trouble, a relatively big-name game coded in Java). The reason here is that performance is generally a primary concern, and C/C++ have a well-deserved reputation for being very fast. As for other languages, I couldn't say much. I know that Python might be usable (Blender is, as I recall, written in Python and it performs quite well with 3d stuff). |
Author: | Richard Knop [ Tue Jun 24, 2008 7:13 am ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Well, I would at least mention C++ and PHP. They are pretty popular and imho should have their place in the list. On the othe and, I would remove Delphi 5, Pascal and maybe few others that have really no place in 21st century and are basically dead languages. |
Author: | michaelp [ Mon Jul 07, 2008 3:53 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
They can be used as learning languages though, just to learn the basics of programming. edit: Something that I just noticed was that the C++ example with the function is pretty screwed up. ![]() |
Author: | alex.john95 [ Wed Jul 30, 2008 2:14 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
I also think that u can learn Java. |
Author: | michaelp [ Wed Jul 30, 2008 2:34 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
What do you mean by "i also think you can learn java"? Do you mean you can learn Java of as a programming language? :S |
Author: | Aziz [ Wed Jul 30, 2008 2:50 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
I also think that you can learn English, and how to not spam with pointless comments ![]() |
Author: | dc116 [ Sun Dec 14, 2008 6:38 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
I heard Java is really hard so I'm sticking to the easier ones for now. ![]() |
Author: | Insectoid [ Sun Dec 14, 2008 7:05 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
All right! Thread revival! dc116, Java isn't hard, it's just a pain in the arse, with its ridiculous method names and you-can-only-do-it-this-way style of programming. Try out Perl (very flexible and damn good fun) for a procedural language or Ruby for OOP (those being the only languages in which I have any experience at all besides Turing and Java). |
Author: | Aziz [ Sun Dec 14, 2008 7:09 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Or Python... Java can be what you make it - don't let extremists hold you back from doing something. It's just there's usually a reason to it, even if the reason is more complicated than you need to understand at that point. |
Author: | wtd [ Sun Dec 14, 2008 7:15 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Java is a lowest common denominator language. It's reasonably straightforward, honestly, and for the intelligent programmer who has some knowledge of object-oriented programming, the learning curve is fairly short, but once you do learn it... It doesn't really reward further learning by making things easier. |
Author: | Dragoonh [ Tue Feb 03, 2009 6:01 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Hey just randomly poping this out here I want to try programming out to see if I like it and if I do I plan on going into something like the gaming industry which language should I learn? |
Author: | Aziz [ Tue Feb 03, 2009 7:33 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Didn't you read the post and the 7 pages of documents? I'd suggest, Python. |
Author: | btiffin [ Tue Feb 03, 2009 10:12 pm ] |
Post subject: | Re: RE:Which programming language should I learn? (Updated) |
Dragoonh @ Tue Feb 03, 2009 6:01 pm wrote: Hey just randomly poping this out here I want to try programming out to see if I like it and if I do I plan on going into something like the gaming industry which language should I learn?
To tinker with game programming, I'd suggest Flash, Squeak or Scratch. Flash may actually get you sales or a job. The Smalltalks maybe not so much, but game programming is a lot more about game theory and the kind of creativity that attracts people than coding in a particular language. A professional shop will likely ask for a fairly solid grasp of C++, but in reality, they'll be using highly sophisticated and less than mainstream toolkits. Bare metal programming is likely a very small chunk of the efforts in most of today's high end games. For small games, Flash is great way to start and get noticed. Perhaps take a kick at Inform-7. Write a text-adventure game. If you are creative, a few pages of writing and you'll get a good feel if people may like the games you are likely to produce. Anyone else reading this; Inform-7 is the height and epitome of Natural Language compiler design, in my humble opinion. Worthy of a look if you care about such things. Cheers |
Author: | Aziz [ Tue Feb 03, 2009 10:14 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
You're promoting that again, b? I cannot comprhend it, there are no 1's and 0's. Can I make an endless loop, though? Memory leak? |
Author: | btiffin [ Tue Feb 03, 2009 10:43 pm ] |
Post subject: | Re: RE:Which programming language should I learn? (Updated) |
Aziz @ Tue Feb 03, 2009 10:14 pm wrote: You're promoting that again, b? I cannot comprhend it, there are no 1's and 0's. Can I make an endless loop, though? Memory leak?
Sure; drop down to Inform-6 ![]() Cheers |
Author: | ashtonfarell [ Tue Feb 02, 2010 7:16 am ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Hey wtd if you are beginner in programming language then you should prefer to teach C and C++. This is basic language which helps you to be a small programmer. then you should try to learn any web developing language like ASP.net and PHP. These both language are now good in market. |
Author: | SmokeMonster [ Wed Aug 03, 2011 3:00 am ] |
Post subject: | Re: Which programming language should I learn? (Updated) |
I'm thinking of learning another language in the next month before school starts again but I can't seem to decide upon one. I always wanted to learn a pure functional programming language (since right now I've mostly worked with C, Java & Ruby) so I was considering Clojure but Scala sounds really tempting considering all the hype around it. Which one should I pick? |
Author: | apython1992 [ Wed Aug 03, 2011 8:08 am ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Yay functional programming! I've learned a little bit of Haskell (not enough time to _really_ learn it) and I love the paradigm. I can see why people think it's too academic though. Scala is actually used industrially, which makes it rather tempting to learn. Given that you have only a month (I'm assuming you won't have much time when school starts), it might be unreasonable to learn a language like Haskell. How well do you know Ruby? It has support for functional programming concepts, and if you know it well enough you might have an easier time. You really must understand Lambda calculus to get functional programming, so that's a great place to start if you feel like learning a bit of more formal math. |
Author: | Rachelle [ Thu Aug 11, 2011 5:09 am ] |
Post subject: | Re: Which programming language should I learn? (Updated) |
Both Java & C# is object oriented and high class language. I suggest you to begin with JAVA. |
Author: | Sly14Cat [ Mon Apr 08, 2013 9:06 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
I think it's a good idea to learn C++ and Java. They obviously have much use in ge world of computing and they'll get you a job fast. |
Author: | Cancer Sol [ Mon Apr 08, 2013 10:37 pm ] |
Post subject: | Re: RE:Which programming language should I learn? (Updated) |
ashtonfarell @ 2/2/2010, 7:16 am wrote: Hey wtd
if you are beginner in programming language then you should prefer to teach C and C++. This is basic language which helps you to be a small programmer. then you should try to learn any web developing language like ASP.net and PHP. These both language are now good in market. Ahem. wtd ain't a beginner in programming. ![]() LOL. Sorry, that made me laugh really hard XD |
Author: | ncvitak [ Sun Jun 09, 2013 5:55 pm ] |
Post subject: | Re: Which programming language should I learn? (Updated) |
I would learn any C based language first, such as C, C++, Obj-C, Java, and many others that have the C syntax. |
Author: | mirhagk [ Mon Jun 10, 2013 4:38 pm ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
Coding in C is VASTLY different than coding in Java (or C#). The syntax is the easiest thing to learn in a language, all the little nuances, libraries and styles of programming are more important. |
Author: | Jonathan29 [ Thu Oct 03, 2013 2:19 am ] |
Post subject: | RE:Which programming language should I learn? (Updated) |
i will suggest you to go for c# first it's basic and easy to learn and then go for other languages. |