Programming Forums
User Name Password Register
 

RSS Feed
FORUM INDEX | TODAY'S POSTS | UNANSWERED THREADS | ADVANCED SEARCH

Reply
 
Thread Tools Display Modes
Old Jan 6th, 2006, 6:24 AM   #11
alcdotcom
Programmer
 
Join Date: Jan 2006
Location: Dallas, TX
Posts: 49
Rep Power: 0 alcdotcom is on a distinguished road
The best thing you can do is read all of the posts, consider them carefully, and then take them all with a grain of salt (including this one). I'm not saying that these guy and girls don't know what their talking about because they obviously do. But everyone learns differently, so I'm not going to tell you which language to choose, but rather my experience and opinion. My first real programming language was C++. After that I studied PHP, C#, and Java. I've really focused on Java lately because that's what they teach at my university. The more I learned, the more I wish it had been my first language. Java is a very popular language and has been around for quite a while, which means that there are many books and free online resources to choose from. Everything you need to program in Java (including some fantastic IDEs) can be downloaded free. You can write a Java program on any computer and (as long as you don't use native code) run it on any computer that has Java installed. So, you can develop on a Linux computer and run on a Mac or Windows computer without rewriting or recompiling anything. Another thing I really like about Java is that the source code is freely available. This may not seem like a big deal until you're tooling along one day and hit a snag with one of the Java libraries. Because you have the source code, you can look beyond the API and into the actual code itself to find out how it works and help with debugging. It's can also be a great way to see examples of good programming style and practice. Java is also very similar in syntax to C# (which was modeled after Java). There are fundamental differences, but learning one gives you a huge advantage in learning the other. They both have certain advantages, depending on what you are wanting to do. For platform independence, Java seems to have the edge. C# wins for simplicity and ease of developing GUI applications (thanks to Visual Studio .NET). C# is also better if you are mainly wanting to focus on Windows applications. Normally I'd say that Java has an advantage in the area of cost because most of its tools are free, but currently you can get a free C# IDE from Microsoft. I don't kow how long that will last, however, so grab it while it's there. Java is also the lingua franca at many univerties, which -depending on you goals-may or may no be an advantage. Frankly, Java is not the easiest language to learn (it's not hard, but not the easiest). But ultimately, the easiest may not neccessarily be the best choice. Among the languges mentioned so far, however, I don't think there is a "bad" choice.
alcdotcom is offline   Reply With Quote
Old Jan 6th, 2006, 1:56 PM   #12
MicDareall
Programmer
 
Join Date: Dec 2005
Posts: 67
Rep Power: 0 MicDareall is an unknown quantity at this point
Quote:
Originally Posted by kurt
i heard that Java is a better choice if learning OOP for the first time, compared to C++.

i'm just stating what my lecturer told me.
Python is an easier first lanuage and does not force OOP on a new programmer from the start plus when you actually dive into OOP in python you will realize you have been taking advantage of OOP the whole time and have a greater grasp for the actual purpose of it


And obviously alcdotcom hasn't dove into Python yet, or he would realize everything that he said about why Java is so great, and C#, is also what makes python great..... except its an easier first language to learn then either of those two because of the simple syntax it uses....
MicDareall is offline   Reply With Quote
Old Jan 6th, 2006, 2:35 PM   #13
alcdotcom
Programmer
 
Join Date: Jan 2006
Location: Dallas, TX
Posts: 49
Rep Power: 0 alcdotcom is on a distinguished road
Quote:
Originally Posted by MicDareall
And obviously alcdotcom hasn't dove into Python yet, or he would realize everything that he said about why Java is so great, and C#, is also what makes python great..... except its an easier first language to learn then either of those two because of the simple syntax it uses....
I've always wanted to try Python, but I just never had the time. Well, I probably could have tried it in place of one of the other languages, but I needed to get a programming job and there just weren't any Python jobs to be had. Economic reality can be a powerful motivator.

Edit: the Python situation has probably changed - I don't know.
alcdotcom is offline   Reply With Quote
Old Jan 6th, 2006, 4:06 PM   #14
Arevos
Programming Guru
 
Arevos's Avatar
 
Join Date: Aug 2005
Location: England
Posts: 1,499
Rep Power: 5 Arevos is on a distinguished road
Quote:
Originally Posted by alcdotcom
I've always wanted to try Python, but I just never had the time. Well, I probably could have tried it in place of one of the other languages, but I needed to get a programming job and there just weren't any Python jobs to be had. Economic reality can be a powerful motivator.
Java and C# jobs outnumber Python jobs by a considerable amount. You're right in thinking that it's economically useful to know Java or C++, but that's not to say that knowing Python isn't advantageous as a springboard language. Python is easy to learn and quick to program in; good for teaching programming fundementals.

And whilst Python jobs are rare, I'd expect they're considerably better paid because of that
Arevos is offline   Reply With Quote
Old Jan 21st, 2006, 6:56 AM   #15
Bitwise
Newbie
 
Bitwise's Avatar
 
Join Date: May 2005
Location: UK
Posts: 21
Rep Power: 0 Bitwise is on a distinguished road
C# and Java are far better choices for a starter than C++ in my opinion (C++ is simply too complex and not exactly a 'clean' implmentation of OOP). C# is limited to .NET, Java is cross platform, so that may influence your choice. Personally I would prefer C# as it has (in my opinion) a far better class library (the .NET framework) than Java and the best IDE of all (Visual Studio). Delphi (Object Pascal) is also a wonderful product, though this is not so widely used in the US as in Europe and Asia. Delphi has its own IDE. If you want a Pascal for Visual Studio, you could try Chrome from RemObjects. However, all things considered, I would probably recommend C#.

best wishes
Huw
__________________
Bitwise Magazine -serious computing :: www.bitwisemag.com
Bitwise is offline   Reply With Quote
Old Jan 21st, 2006, 11:03 AM   #16
clsk
Newbie
 
Join Date: Jan 2006
Posts: 13
Rep Power: 0 clsk is on a distinguished road
Quote:
Originally Posted by Arevos
I'd also have to recommend Python. It provides good structure for beginners, has a pretty simple syntax, and allows you to learn without getting bogged down in low-level details.

Python provides a very good overview of how to program, and there's no shortage of tutorials for people without previous programming experience.
What's wrong with learning low-level stuff?
IMO, the more you know about the low-level stuff the more productive you can be at a higher level.
clsk is offline   Reply With Quote
Old Jan 21st, 2006, 11:12 AM   #17
Ooble
I eat cake for breakfast.
 
Ooble's Avatar
 
Join Date: Jul 2004
Location: In my box.
Posts: 4,434
Rep Power: 9 Ooble is on a distinguished road
When teaching someone, you want them to be interested the whole way through. An attentive pupil, 90% of the time, will beat someone who doesn't care, even if that second person is smarter. With languages like Python, you get instant results, driving your curiosity as well as giving you an ego boost. When you need to type three lines of weird mnemonics just to get some numbers to add up, you're more likely to get bored, wander off and do something else. I started with C, and when I hit pointers, I gave up for a month and did more interesting stuff, like playing Quake. I don't know what drove me to try again, but I have a feeling it was boredom. There's nothing wrong with learning languages such as Assembly or C, but it's my belief they should be left until you already have one language under your belt.
__________________
Me :: You :: Them
Ooble is offline   Reply With Quote
Old Jan 21st, 2006, 4:40 PM   #18
Chris Weimer
Programmer
 
Join Date: May 2005
Posts: 34
Rep Power: 0 Chris Weimer is on a distinguished road
If you know C already, perfect your skills there. If you're going to do a lot of Windows work, Visual C++.NET or Visual C#.NET would also work. A good grasp of the .NET system would be very beneficial.
Chris Weimer is offline   Reply With Quote
Old Jan 21st, 2006, 5:53 PM   #19
Arevos
Programming Guru
 
Arevos's Avatar
 
Join Date: Aug 2005
Location: England
Posts: 1,499
Rep Power: 5 Arevos is on a distinguished road
Quote:
Originally Posted by clsk
What's wrong with learning low-level stuff?
Nothing, but it helps to have an understanding of programming before you do so.
Quote:
Originally Posted by clsk
IMO, the more you know about the low-level stuff the more productive you can be at a higher level.
Hm. This rather depends on what higher level language you're programming in. I can't think how low level programming experience would make you a better Python, Lisp or Ruby programmer.
Arevos is offline   Reply With Quote
Reply

Bookmarks

« Previous Thread in Forum | Next Thread in Forum »

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump




DaniWeb IT Discussion Community
All times are GMT -5. The time now is 11:38 AM.

Powered by vBulletin® Version 3.7.0, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Copyright ©2007 DaniWeb® LLC