• Coding
  • what new language to start?

well i'm done with visual basic 6.. i'm think it's time to move on to something serious..
what should i start first before c++. c or c#. anw what is the mainly the difference between them?(c & c#)
Go for .NET which includes C# and VB.NET (in addition to many other languages but these 2 are the most popular).
There is a world of difference betwee c and c#
It's basically the same syntax (AFAIK), but so is PHP and javascript.
But once you get into the stuff that matters, c# is much more high level, like VB.NET, and C is much more tied to the hardware, it is only one step above assembly language.
To give you a simple but striking example, there is no "string" type in C! (there is in C++ though).
There is only arrays of characters, which you have to declare with the correct length, or use memory allocation functions if you want to change their length.
C++ of course is not so sadistic, but still very much a hardware-tied language, which compiles directly into machine-specific binaries.
BTW there is another language which took some importance; Pascal with its Delphi variant. It's kind of halfway between Visual Basic and C++, and has some interesting language features and an IDE for fast application development. I think it's kinda "yesterday" though, it was a big thing in the 80ies and 90ies i think.
ballouta,

the subject has been covered many times in this forum. Use the search function, you'll find all the info you need.

You're young and moreover you're coming from a VB6 environment. I strongly suggest you stay away from C, C++ or C#. They are very powerful languages each having its own features that makes it special, but they're also very difficult to understand and not at all "beginner-friendly".

You could try to learn an interpreted language like Python, Ruby or even PHP or Javascript. These languages are powerful yet they have a simple syntax, so they're easy to understand. They are also very much web oriented so if you ever feel like starting to develop your own webapps, they're the way to go.

Anyway, as usual, a big dispute is going to happen over that topic. But no matter what, keep in mind that the choice is yours, try stuff and pickup the one you are comfortable with. And also don't be afraid to ask a lot of questions, everyone here will try to answer you.

Welcome to the infernal hell that is programming :)
BTW there is another language which took some importance; Pascal with its Delphi variant. It's kind of halfway between Visual Basic and C++, and has some interesting language features and an IDE for fast application development. I think it's kinda "yesterday" though, it was a big thing in the 80ies and 90ies i think.
I agree Pascal could be interesting (at least Delphi). The reason it is dead is because it never knew commercial success. After all, it was a language invented for pure pedagogical reasons, to help students understand main concepts of programming. ;)
BTW, how did the interview go? :)
NO! not javascript... HELL NO! I've learned a few languages so far, none of them was half as complicated as javascript was.
interesting read :)

Is kinda 'outdated' though. Claiming that real programmers use only FORTRAN in 2010 is like claiming that the only valid way of traveling is hot air balloons. Times change and sometimes you've got to run with the flow.

PS I love the way he dismisses UNIX .... xD
ok javas out.. so i start with Python or Ruby?
you chose for me
Ok I'll help you out...

1. If you want something easy to learn then go for either Ruby or Python. Python was actually my FIRST attempt at learning programming languages (that was years ago) but I did not carry on with it and I know nothing about it right now. It was very simple at that time, but I was too young so I didn't take it seriously.

2. Concerning Ruby, many guys on this forum (and on other forums I go to) always praise Ruby for its easy to read and simple syntax. It is not demanded much in the Lebanese market (just like Python), but it is definitely worth looking at for your personal knowledge.

3. If you want something that will help you find a job in the Lebanese market then go for either PHP or .NET. I would personally recommend .NET because the availability of .NET positions is greater than anything else in the Lebanese market. PHP is much easier to learn though, it is a very powerful dynamic language, but it can only be used for web development (unless you use some external library which I cannot remember at the moment).

4. Forget about C or C++ unless your going to program for hardware. These are low-level languages which deal with hardware and memory allocations and this kinda stuff. Rahmu always says that knowing C is what distinguishes a good programmer from the "yet-another'programmer" and I have to agree because C teaches you discipline with its strict syntax and type checking. But anyway, personally I wouldn't recommend it for someone who is just getting started with programming.

The choice is yours, good luck :)
im still 16 years old. it's still early for me to get a job in .NET or something :P i have some ideas in programing since i nearly mastered visual basic 6. so you recommend me to start with ruby then go to .NET ?
ok javas out.. so i start with Python or Ruby?
you chose for me
Please note that Java is NOT Javascript ! , plus Javascript is easy IMO, I don't see anything hard in it although it is a bit boring.

As for Java, I find it good for beginners as long as you are learning the right way and doing everything on your own while relying less on pre-built stuff in the beginning. I recommend this book if you are interested in Java.
ballouta wroteim still 16 years old. it's still early for me to get a job in .NET or something :P i have some ideas in programing since i nearly mastered visual basic 6. so you recommend me to start with ruby then go to .NET ?
Ruby then PHP then C# and VB.NET (the .NET framework)
The nonobvious alternative (if you are not yet man enough to handle C++ :P) is to try out Actionscript. Why?
It has an immediate route for graphics and drawing. You can keep yourself highly motivated by seeing your programming rather than putting stuff out into a text stream or pressing a simple button. If you're visually intrigued, Actionscript (and it's graphics model) is definitely highly recommended. (It is more so if you are interested in game programming for many reasons, some of which are already mentioned).

If you are going to pick between C, C++, Java, C#. I would recommend C# instead of Java because of the beauty of the IDE and the new features of the language. C# is designed to be better than C++ and Java for what it does (concrete object oriented rapid application development).

Not all programmers want to become web developers (some of them want to control freaking robots, some of them want to program linux kernels, others want to create router programs). If you are so inclined, the C/C++ is hands down the way to go. C++ (with Direct X and OpenGL) /C# (with XNA/DirectX) also comes in handy when you're interested in game programming (Java is a far third).

I have a soft spot for VB6. I used to program in it at your age. It's just beautiful. My first game ever was programmed in VB6, and I still think it was my most fun game to play.
@kassem. you know any good website that have some tutorials or that can help me with ruby ?
arithma wroteI have a soft spot for VB6. I used to program in it at your age. It's just beautiful. My first game ever was programmed in VB6, and I still think it was my most fun game to play.
yep. i'm with you in this. i created thousands of little programs and games animations and alot of crazy things.. but i want to start with something soled that can be useful to me in the end.
You might want to check out Lynda.com if you're a fan of video training tutorials like myself. They have two series on Ruby. One which teaches you the basics and one which goes beyond the basics.

P.S: I second arithma's post as well. We're both huge fans of actionscript 3.0, it's beautiful!