# What language should I choose?



## deleted122510 (Mar 18, 2009)

C++ is a bit hard for me, I just stuck with C#, and I can barely get the hang of it. Look around TSF for a thread of me asking how to compile a 'Hello World' application in C#, LOL.

Java is just like C++, I think. Never learned it but if it's anything like C#, it must be fun.

Visual Basic is a great language, it's fun, it's fast, and it's easy. Visual Basic .NET is much easier I think, although some say it's quite complicated, I enjoy it very much and I'm very proud to say I'm a Visual Basic .NET programmer.

Microsoft also released Visual C# and Visual C++, which are a lot easier to handle than regular C#/C++ compilers such as Dev++, so if you're going in the 'C#' direction, I suggest (for a compiler) to use Microsoft Visual C#/C++.

Batch is also another language, but it's a scripting language, same as JScript, VBScript, etc - although, that doesn't mean it's easy. I find batch to be very hard actually - I just recently started fooling with it.

I haven't really dabbled into anything such as Boo or F#, so I can't tell you much about those ones, but a quick Google search will do you wonders, guaranteed.

Assembly is another language that everyone calls very hard, but I haven't really actually sat down and played it before, so I can't really have an opinion on this as far as experience wise.

COBOL is another option, but it's an oldie, but a goody.

Ruby and Perl are money making languages, they produce lots of primary and commercial software used today - but, they're scripting languages like Batch.

Pascal is also the same as Ruby/Perl; scripting.

I hope this helped you.

PLEASE, feel free to add to this; improve it; fix errors; etc.


----------



## Squashman (Apr 14, 2005)

I don't recall Pascal being a scripting language. That was the first language I learned to program in. Everything was compiled.

Any language takes time to learn. You just need to understand the syntax and sometimes reading the help files just doesn't make any sense until you see some examples of how it is used.


----------



## deleted122510 (Mar 18, 2009)

I believe Pascal is, but I could be wrong. I thought it was similar to Python.


----------



## ahmorrow (May 5, 2009)

http://en.wikipedia.org/wiki/Pascal_(programming_language) said:


> Pascal is an influential imperative and procedural programming language, designed in 1968/9 and published in 1970 by Niklaus Wirth as a small and efficient language intended to encourage good programming practices using structured programming and data structuring.





http://en.wikipedia.org/wiki/Python_(programming_language) said:


> Python is a general-purpose high-level programming language.[2] Its design philosophy emphasizes code readability.[3] Python claims to "[combine] remarkable power with very clear syntax",[4] and its standard library is large and comprehensive. Its use of indentation as block delimiters is unusual among popular programming languages.
> 
> Python supports multiple programming paradigms (primarily object oriented, imperative, and functional) and features a fully dynamic type system and automatic memory management, similar to Perl, Ruby, Scheme, and Tcl. Like other dynamic languages, Python is often used as a scripting language.
> 
> The language has an open, community-based development model managed by the non-profit Python Software Foundation, which maintains the de facto standard definition of the language in CPython, the reference implementation.


For a very large list of programming languages and pretty basic--but thoughtful introductions to each go to the wikipedia link below.

http://en.wikipedia.org/wiki/List_of_programming_languages


----------



## Engineer Babar (Jul 17, 2009)

I don't know why people find C++ a difficult language in the beginning. I learned C++ and have no problems in the beginning. Its the basic language in the programming world and how are you gonna learn any other language well without a base in C++??


----------



## ahmorrow (May 5, 2009)

My thoughts exactly.


----------



## jamiemac2005 (Jul 5, 2007)

Just to add, pascal is a compiled language. A dire one at that. Who's invention was to teach new students basic programming techniques. I learned pascal after C-style languages as a part of my computing course and absolutely hated it. The OO side of pascal is absolutely dire to work with.


----------



## Engineer Babar (Jul 17, 2009)

C++ rocks.. What you all say??


----------



## deleted122510 (Mar 18, 2009)

c# > c++


----------



## dm01 (Oct 10, 2006)

Java <> C++ > C#

C# is about as broken as VBA (another monstrosity M$ considered necessary to inflict upon the world) IMHO.

C# is Microsoft's answer to the explosive popularity of Java. Since they didn't control Java, they tried to kill it. Windows did not natively support Java for a while, only C#.NET. C# tries to be similar to Java in structure and function, but is by NO means the same. Once you have seen the possibilities of Java, you will want to know more.


----------



## ahmorrow (May 5, 2009)

I agree. The only thing that even comes close to Java is web based scripting languages and well... those are browser dependent, meaning one browser will support a feature while another won't and the programmer needs to take that into consideration. The only thing a Java programmer needs to take into consideration is simply: Where will my program be used? On a phone? a computer disconnected from the internet? a website?

Whenever M$ comes up with a language that can go anywhere once written... I might give it a good try. Java is simply the easiest language to use simply because after you learn it, there isn't much use for anything else.


----------



## Engineer Babar (Jul 17, 2009)

But ahmorrow the point is that you can learn java better and faster after having a good base in C++.
What you say??


----------



## ahmorrow (May 5, 2009)

I think it doesn't matter where you start. One language is basically the same as any other in the most broadest respect. The only thing that really changes are the syntax and reserved words.

Honestly I know C++ and then I tried learning Java a while back and got really confused. Then I kinda forgot most of everything I know from C++ and tried it again. Java is a bit simpler now. That's my personal experience and I can't really speak for anyone else, but if you've got a book teaching you the ins and outs of a language, who cares if you know some other language that is more or less the same, but different enough to get you confused?


----------



## ferrywayes01 (Sep 14, 2009)

Hello
Actually you are confuse about the languages, But as u specified U like C# Then why are not creating website or projects with .net 2.0 with C# languages. Or get some trial or overview of language and decide it.
Best luck.


----------



## jamiemac2005 (Jul 5, 2007)

I agree with dm01's post. C# is a .Net monstrosity cooked up by microsoft, the fact that the IDEs for .net languages can all be forced into one shows how little MS care about the actual language.

Java is a brilliant language when you get used to it. If you don't know OO when you start to learn it you're not going to have an easy ride... But if you take a book (Java in a Nutshell or similar) and read it through you'll find the language to be brilliant.


----------



## ahmorrow (May 5, 2009)

Absolutely Jamiemac, I always knew there was a reason I liked you lol.


----------



## jamiemac2005 (Jul 5, 2007)

Haha woop. Microsoft-only languages just don't make sence to me. They're dire...


----------



## progcomputeach (Sep 16, 2009)

C# and VB are very popular languages these days... VB is a little easier to learn.


----------



## jamiemac2005 (Jul 5, 2007)

The problems with C#.Net and VB.Net are quite simple to sum up:
1) From the point of view of someone who'd like to expand their programming knowledge outside of windows .Net emulation in anything other than windows is very poor. So you're learning a windows only language
2) From a commercial point of view 50-60% of your end user (depending on who that is of course), wont want to sit through a 300mb download to update to the latest version of .Net to use your program... They will find an alternative.
3) .Net is not openly distrobuted it's source is expandable but mostly developed by MS. MS' development teams have bigger fish to fry and therefore don't prioritise developing the language.
4) The IDEs provided by MS are limited, so learning the full language without paying to do so is impossible... So you'll always have a need to learn.
And 5) if you're looking to go onto professional programming you don't want to be anywhere near .Net languages, .Net languages can be readily converted between (you an go from VB.Net to C#.Net quite easily... So you're easy to replace, rather than putting out job ads for a specific language people put out ".Net programmer"...

There's a load of reasons i could go into not wanting to learn a .Net language, and few that convince me to want to learn a .Net language.

From my point of view if you want a powerful language, that's close to the processor, multipurpose, with a lot of expansion possibilities(from windows apps to writing firmware/hardware drivers) i'd say start with C or C++.

If you want a powerful general purpose language which you can readily distrobute to the world without having to recompile for each new format... And can only see yourself writing desktop apps/games/multipurpose(or bespoke) software i'd say throw yourself at Java.

If you want something to use as a batch-like tool i'd say go towards Python.

And if you want something to help learn the basics of programming, along side structure and keeping syntax perfect. But aren't bothered about windows apps, i'd push you towards web development.

I can see no case where i'd actively tell someone to go and learn a .Net language as their first language.

Just to help you out, my first console/desktop app language was Pascal and Delphi 7. It is a dire langauge that i would not inflict upon anybody else. I have since stopped using it. Before Pascal i had learned web-based languages and was a proficcient programmer(sorry for my spelling). I then went on to VB.Net (briefly), saw many similarities between the syntax of Pasal and VB.Net (They are very similar)... I then dabbled with C++ and am now actively learning Java... If i could go back i would have ignored the first two languages and jumped towards Java... C++ would have been a viable option in my mind aswell.

If you really wanted a breakdown of what i think of different programming languages i could provide it, and i'd be putting the .Net and pascal-like languages at the bottom.


----------



## ahmorrow (May 5, 2009)

... I thought he said simple... that's too many lines to be simple... must be written in some M$ monstrosity


----------



## jamiemac2005 (Jul 5, 2007)

You don't want to see the complicated version


----------



## progcomputeach (Sep 16, 2009)

whichever language you learn(VB , C# or Java), learning object oriented programming will benefit you. OOP is being used widely these days.


----------



## JKR (Jan 28, 2007)

If you want simple try LOGO.


----------



## deleted122510 (Mar 18, 2009)

Or SiMPLE.


----------



## ahmorrow (May 5, 2009)

Or Assembly.


----------



## deleted122510 (Mar 18, 2009)

Or VB/VB.NET.


----------



## ahmorrow (May 5, 2009)

Or binary.


----------



## progcomputeach (Sep 16, 2009)

Has anyone used Visual Studio 2010? Thats for anyone using C# or VB.NET..


----------



## jamiemac2005 (Jul 5, 2007)

haha i'd actually agree with assembly, brilliant once learned. I dislike .Net languages.

and i don't like visual studio, SharpDevelop is an open source alternative that i prefer. I don't think developers should be charged to develop.


----------

