Which programming lang to learn?

I am new to programing. I work primarly on windows Servers and Workstations.
I don't want to start off with an outdated lang that no one uses. I need something relivant with Microsoft

I have scripted before batch and etc.

Also what tools will I need to begin my adventure?
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Paul MacDonaldDirector, Information SystemsCommented:
VB.Net and C#.Net are the two big Windows languages.
John TsioumprisSoftware & Systems EngineerCommented:
Well till recently i was 100% sure that C# was the way to go...robust language a lot of features and so on...
Then i had a "close encounter" with Java and Javafx and i was ready to switch sides....
But the clear winner for the future is anything web based...look around everybody is screaming for web applications.....the appeal of getting access to the things your need from every device from every where in the world is the big and definite winner.
So i guess the road is :
HTML + CSS for beginning
PHP as as solid base for developing web apps
Javascript for next level -->very similar to Java & C# so if you get familiar with this then the others would be easy to master
Angular.js & node.js &jquery for the top level....this level will never stop expanding

If you want only Microsoft languages then you can't go wrong with C#...Visual Basic is still here but its always 1 or 2 steps behind...Every programming book,example ,tutorial especial from 2008 and later is first on C# and then it is transferred to Basic...
As for the tools Visual Studio Community Edition is all you need VSC

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Paul MacDonaldDirector, Information SystemsCommented:
Java is fine, but is not "relivant with Microsoft."  It runs in its own sandbox, which means it will run everywhere, but doesn't have the ecosystem of support a Microsoft language does.

I agree web-based development will likely be the long-term destination for most programmers, but not nearly all, and there are lots of things you can do on the desktop that you can't do from a browser.
Starting with Angular 5

Learn the essential features and functions of the popular JavaScript framework for building mobile, desktop and web applications.

Given your situation, I'd also suggest C#. I wouldn't bother with VB.Net. They are both .NET framework languages so they both compile to roughly the same thing and use the same tools, but you'll find more people using C# than VB.Net, more code examples, more support, more demand for it, etc...

I'd HEAVILY disagree with the statement "clear winner for the future is anything web-based" - they are two different worlds. Completely different ways of running and thinking. It's like saying airplanes are the future, not cars. They're both the future - they serve different purposes, but C# will be around for a long while.

Java is a good language, but it's REALLY heavy to run. I'd say C# would be a stepping stone to Java.

Like tsgiannis said, the Visual Studio Express or Community Edition will serve your basic needs, although you get a lot of nice and useful tools with the commercial versions of Visual Studio.
Bill PrewIT / Software Engineering ConsultantCommented:

What are your goals in learning a programming language?  Is this just to broaden your skills, or make yourself more marketable, or to solve some particular work problem?  Are looking for scripting language recommendations, or web applications, etc?

Fareed Ali KhanCommented:
Keeping in view your work is related to System Administration or Infrastructure setup. I would suggest you to go with Python and Windows Powershell.

With the help of Python and Powershell you can easily handle the cloud infrastructure setups. You can use Python on non windows servers. And Powershell on windows servers.
Adrian HealCommented:
You should take a close look at C#. It was developed by the same guy who developed Delphi (Delphi is awesome but not so widely used). Learning C# will allow you to focus on developing .net applications. Applications that take full advantage of Microsoft products and framework. Microsoft have a strong support network including training and certification.

VB.net would also provide access to the .net framework but Visual Basic does not give me such as warm feeling.  Perhaps based on my experience with BASIC (Beginners All-purpose Symbolic Instruction Code) programming on microcomputers. It reminds me of the old days when BASIC was slow (due to being interpreted and executed 1 line at a time). I like to feel as if I am moving forward and I am happy to break with the past.

Learning either C# or VB.net will offer you the chance to develop desktop applications and more. You can get official Microsoft certification based on either language. Remember that certification must be maintained through exam retakes when Microsoft say it is necessary (on their changes and new product / feature releases).

Which ever language you choose it is only the syntax (the wording) in the language that is really different. In all languages you will have sequences of instructions, selection between instructions based on criteria, repetition of instructions, encapsulation (in what ever form it is available), and operators. I would recommend, though, to stick to ONE language and do it well. All is not lost if you learn one and transfer to another at a later date.

C# is my recommendation.
Adrian HealCommented:
Sorry, Forgot to post a link to the tool:


This is an easy and free place to begin.
Ray PaseurCommented:
Didn't see this question before now, but here are my $0.02.  Start with JavaScript, and learn it very, very well.  It runs on every browser, so if you write anything at all in JavaScript and you publish it on the WWW, you have deployed your application directly onto your clients' computers.  That alone argues for getting JavaScript right -- completely right -- at the very beginning.  Of course you will also need to understand HTML(5) and CSS(3).  On the server, you can use PHP and MySQL or any similar scripting language and database variant.  If you want a job at Facebook, learn PHP because HHVM is a PHP derivative and that's what they use.  If you want to build web sites professionally, but you're not interested in working at Facebook, learn the Laravel framework and WordPress.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Programming Languages-Other

From novice to tech pro — start learning today.