• 0

What is the most relevant programming language to learn?


Question

Hi,

I know there's a sticky regarding easy programming languages, but at the moment I was wondering what would be the most beneficial language to sit down and learn?

Would the likes of ASP, .NET and Silverlight be good to have as they would appear to be the way Microsoft is pushing their web technologies.

Or would it be better to learn something like C+/++/# (I don't know what ones are even relevant) and PHP, even though it would not be as widely recognised as some of the Microsoft applicaiton and web languages, at least where employment is concerned.

I'd just like to state that I'm not looking for work in the software/development sector, but looking to develop a skill that I could use in my current systems role. Especially as I'm being exposed to a lot of SharePoint and Exchange.

Cheers!

Recommended Posts

  • 0

I'm learning C in my own time right now - it is probably best to get the fundamentals nailed down first by learning something like C then from there branching out. Years ago one used to learn Pascal to nail down those fundamentals but it appears in recent times Visual Basic has replaced that.

Learning a language doesn't mean you have to stick with it - the important part is getting those fundamentals nailed down first and foremost.

  • 0

If you are exposed to a lot of Sharepoint, I would suggest C# as a language that would benefit you greatly. Sharepoint is (mostly) written in C#, and VisualStudio.net has a wealth of integration.

  • 0

I'll have a look at C, as I can move into C+/++/# from there. It's good that I can then implement all/some/any knowledge at all into the SharePoint installs and configurations I've to do.

It really depends on what you want to do, if you want to do web apps then C/C++ are useless. Give us a bit more information ;)

That's the thing, I don't really want to do anything. Saying that I would love to build an applicaiton to catalogue all my CD's and DVD's. Just for the hell of it, you know. Yes, I know that these will already exist, and I can download and install them now, but where's the fun in that?

  • 0

1. PHP

# What it is: An open-source, interpretive, server-side, cross-platform, HTML scripting language, especially well-suited for Web development as it can be embedded into HTML pages.

# Why you should learn it: Its particularly widely used. "High-speed scripting with caching, augmented with compiled code plug-ins (such as can be done with Perl and PHP) is where the future is. Building Web apps from scratch using C or COBOL is going the way of the dinosaur,"

2. C#

# What it is: A general-purpose, compiled, object-oriented programming language developed by Microsoft as part of its .NET initiative, it evolved from C and C++

# Why you should learn it: Its an essential part of the .Net framework. "Learning C#, which is just Java with a different name plate, is critical if you heavily use Microsoft,"

3. AJAX (Asynchronous JavaScript and XML)

# What it is: Though technically not a programming language, AJAX uses XHTML or HTML, JavaScript and XML to create interactive Web applications.

# Why you should learn it: Ever since Google Maps put AJAX, well, on the map, the requests for AJAX-knowledgeable pros went through the roof. "The demand for AJAX knowledge is huge because its so damned hard to learn," said Huckaby. Of note, Microsoft announced recently plans to release a tool named Atlas that will make AJAX easier to implement. "If Microsofts Atlas tool is successful, it would bring the extreme complexity and annoyance of AJAX to the average worker,"

4. JavaScript

# What it is: Not to be confused with Java, JavaScript is a an object-oriented, scripting programming language that runs in the Web browser on the client side. Its smaller than Java, with a simplified set of commands, easier to code and doesnt have to be compiled.

# Why you should learn it: Embedded into HTML, its used in millions of Web pages to validate forms, create cookies, detect browsers and improve the design. With its simplicity to learn as well as wide use, its considered a great bang for your educational buck.

5. Perl

# What it is: Perl is an open-source, cross-platform, server-side interpretive programming language used extensively to process text through CGI programs.

# Why you should learn it: Perls power in processing of piles of text has made it very popular and widely used to write Web server programs for a range of tasks. "Learning some form of scripting language, such as Perl or PHP is critical if you are doing Web apps,"

6. C

# What it is: A standardized, general-purpose programming language, its one of the most pervasive languages and the basis for several others (such as C++).

# Why you should learn it: "Learning C is crucial. Once you learn C, making the jump to Java or C# is fairly easy, because a lot of the syntax is common. Also, a lot of C syntax is used in scripting languages,"

7. Ruby and Ruby on Rails

# What they are: Ruby is a dynamic, object-oriented, open-source programming language; Ruby on Rails is an open-source Web application framework written in Ruby that closely follows the MVC (Model-View-Controller) architecture.

# Why you should learn it: With a focus on simplicity, productivity and letting the computers do the work, in a few years, its usage has spread quickly. As a bonus, many find it easy to learn.

8. Java

# What it is: An object-oriented programming language developed by James Gosling and colleagues at Sun Microsystems in the early 1990s.

# Why you should learn it: Hailed by many developers as a "beautiful" language, it is central to the non-.Net programming experience. "Learning Java is critical if you are non-Microsoft,"

9. Python

# What it is: An interpreted, dynamically object-oriented, open-source programming language that utilizes automatic memory management.

# Why you should learn it: Designed to be a highly readable, minimalist language, many say it has a sense of humor (spam and eggs, rather than foo and bar), Python is used extensively by Google as well as in academia because of its syntactic simplicity.

10. VB.Net (Visual Basic .Net)

# What it is: An object-oriented language implemented on Microsofts .Net framework.

# Why you should learn it: Most argue that VB.Net is currently more popular than ever and one of the only "must-learns." "It is currently dominating in adoption and that is where all the work is,"

  • 0
I honestly don't see the need for VB when you have C#. The two are virtually the same, no?

VB is easier in most respects and doesn't have pointers. C# has some slightly stranger syntax for some things IMO, but supports pointers and is a bit faster in some cases. VB is easy for previous VB6 devs to pick up. C# is closer to C/C++

  • 0

First.. learn PHP and MySQL this will give you an incredibly big market availability and will also allow you to get into various frameworks based off PHP.

It's free and will get you competitive.

Microsoft stuff is good to get into but it's really a much narrower choice because you are tied to much more closed platform and set of tools. It's a different mindset so to speak. Don't get me wrong, you'll probably make more money with Microsoft stuff like .NET and C# but once you pick that you are kind of stuck in that direction.

C++ is definitely a good choice as it is supported beyond Microsoft and definitely is a good grounds for anything really.

At least my 2 cents and from my own personal experience as I worked with all of them.

  • 0
That's the thing, I don't really want to do anything. Saying that I would love to build an applicaiton to catalogue all my CD's and DVD's. Just for the hell of it, you know. Yes, I know that these will already exist, and I can download and install them now, but where's the fun in that?
For desktop applications, C# or Python. Python is easier to pick up and generally gets the job done faster, but C# has the better libraries and IDE support. Another advantage of C# is that the syntax is very similar to Java, and to a lesser extent, C++ and C.

For games as a hobby, again, C# or Python. XNA is far superior to PyGame, but you can still get some nice 2D stuff running on PyGame if you're into that. Anything more serious and XNA does the job best. For industry-class performance, you need C++. Any serious job as a game programmer requires C++.

C is useful, many would say, for the purpose of learning low-level concepts, and most of today's existing code is probably still written in C (and in COBOL, for that matter), so if you choose your job at random, there's a good chance you'll see some C code. It is, however, a PITA. Might as well start with it so that you can't compare with better languages and fall into depression (I don't like C :p ).

I can't speak for web programming languages as I did almost no web development, but if that's your cup of tea, I can suggest http://www.w3schools.com/ and start with HTML as it seems you need a basic understanding of that before jumping into Javascript and PHP.

Edited by Dr_Asik
  • 0
I honestly don't see the need for VB when you have C#. The two are virtually the same, no?
Indeed. You can write your programs in C# and run them through an automatic converter if your company really requires VB.

Jokes aside, VB and C# are probably the two most similar languages in existence, and VB is losing its relevance.

  • 0
First.. learn PHP and MySQL this will give you an incredibly big market availability and will also allow you to get into various frameworks based off PHP.

A bit off topic, but: isn't Oracle buying up Sun and killing off MySQL? It really shouldn't matter because SQL is generally the same across variants, but just something to keep in mind.

  • 0

I'd start with java, has a well defined syntax and is also cross platform

A bit off topic, but: isn't Oracle buying up Sun and killing off MySQL? It really shouldn't matter because SQL is generally the same across variants, but just something to keep in mind.

The 'killing off mysql' is in contention at the moment, I certainly wouldn't want to see it disappear!

  • 0
VB is easier in most respects and doesn't have pointers. C# has some slightly stranger syntax for some things IMO, but supports pointers and is a bit faster in some cases. VB is easy for previous VB6 devs to pick up. C# is closer to C/C++

You can do pointer stuff in VB.NET as well (same framework and such), although there's a lot more syntax required.

VB.NET and C# will (in most cases) compile down to the exact same code, so there's no real speed difference for the majority of things.

  • 0
A bit off topic, but: isn't Oracle buying up Sun and killing off MySQL? It really shouldn't matter because SQL is generally the same across variants, but just something to keep in mind.

Sun can bought (and can sell) the MySQL name/trademarks but users can simply fork the code and continue on with a new name. After Sun snagged MySQL nearly all of the original developers jumped ship and many have started their own branches (MariaDB and Drizzle are probably the most well known).

  • 0

To be honest, you really never will know what you end up doing.

I used C, C#, C++, ASP, Java, Perl, Python, and Ruby in college and did a web project in Perl for work. I hated Perl.

I graduated and got a job at a good company programming OS software. Guess what I'm using.

Perl and Shell. Go figure...

  • 0

My advice is to try some languages, and stick to the one that you find the easiest to learn and has a lot of the basic principles used in others laguages. It will be the basis when you will move to another language.

In the end, "destiny" decides which language you will use and not you. At best you can learn the common stuff that all languages have so you won't have too much trouble learning a new one. I'd recommend learning c# because it has a well defined syntax, a lot of resources that you can read and visual studio helps you a lot when coding. And it has a lot of principles that are widely used in other languages.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • Hello, The Nvidia Founders Edition 3080 video card is approximately six years old, correct? Have you looked into whether replacement fans are available for it? Perhaps replacing those will improve cooling, especially when combined with cleaning the card's heatsink and replacing the thermal interface materials. Regards, Aryeh Goretsky  
    • Hello, While ~104 GB of space may seem generous (at least compared to other e-readers which have 8-32GB), I feel at this price point the device should have a Micro SDXC card slot for expansion, particularly if it allows audio books to be installed and played. I hope to see more reviews of 6" phone-sized e-readers on Neowin in the future. It will be interesting to see how they compare. Regards, Aryeh Goretsky
    • Sandboxie Plus 1.17.8 / Classic 5.72.8 by Razvan Serea Run programs in a sandbox to prevent malware from making permanent changes to your PC. Sandboxie allows you to run your browser, or any other program, so that all changes that result from the usage are kept in a sandbox environment, which can then be deleted later. Sandboxie is a sandbox-based isolation software for 32- and 64-bit Windows NT-based operating systems. It is being developed by David Xanatos since it became open source, before that it was developed by Sophos (which acquired it from Invincea, which acquired it earlier from the original author Ronen Tzur). It creates a sandbox-like isolated operating environment in which applications can be run or installed without permanently modifying the local or mapped drive. An isolated virtual environment allows controlled testing of untrusted programs and web surfing. Sandboxie is available in two flavors Plus and Classic. Both have the same core components, this means they have the same level of security and compatibility. What's different is the user interface the Plus build has a modern Qt based UI which supports all new features that have been added since the project went open source. The Classic build has the old no longer developed MFC based UI, hence it lacks support for modern features, these features can however still be used when manually configured in the Sandboxie.ini. Sandboxie Plus 1.17.8 / Classic 5.72.8 release notes: Added added DisableCustomTitleOpt=[process,][y|n] to allow [#] sandboxie title markers on custom-titlebar windows (Delphi VCL, Qt, Electron) that were previously skipped to prevent DWM repaint CPU loops #5387 Changed updated bundled ImDisk driver to 3.0.2 #5419 Fixed fix Suppress logs for expected non-user SIDs #5422 SbieSvc.exe: SBIE2218/2219 error when run program as administrator #5417 fixed explorer.exe crashes in Application Compartment when Huorong Security is installed #5423 Download: Sandboxie Plus (64-bit) | 23.5 MB (Open Source) Download: Sandboxie Classic (64-bit) | 3.0 MB Links: Sandboxie Website | GitHub | ARM64 | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • Hello, Christian Maas' XVI32 is a nice (and very small) hex editor. Speaking of hex editors, many years ago a colleague and I who both worked at Tribal Voice managed to edit a copy of the company's PowWow instant messaging client to make it behave better now that all of its lookup servers and other server-side tech was gone.  The program didn't support NAT (RFC-3022 was introduced in January 2001, the same time Tribal Voice was shuttered), but it still worked okay if you manually set up port-forwarding on your router.  The server at http://powwow.jazy.net/ hosts a copy (usual warnings about downloading and running untrusted code from random internet servers apply). I occasionally use some tools like Funduc Software's Search and Replace and Application Mover when I need to make mass-edits to text-based files or move programs with a hard-coded installation directories, respectively.  When I need to figure out the exact LCD panel inside of a laptop, EnTech Taiwan's Monitor Asset Manager is my go-to tool for that purpose. JD Design's website (now hosted on github.io) has a number of interesting freeware and shareware utilities.  I used to use their TouchPro utility to set the file timestamps on software I was mastering to match its version number (e.g., version 3.00 of a program had all of its files dates set to 3:00AM, and so forth). Karenware has a number of interesting freeware utilities, too. Regards, Aryeh Goretsky  
    • I still use HexChat! Not really as ancient as the 1994 AutoCAD above my post, but I have never found anything better to replace it. Yes we still operate an IRC server https://www.neowin.net/irc/ 😛 
  • Recent Achievements

    • Week One Done
      Jeroen Wilms earned a badge
      Week One Done
    • Week One Done
      rolfus earned a badge
      Week One Done
    • One Month Later
      Leroy Jethro Gibbs earned a badge
      One Month Later
    • Conversation Starter
      flexorcist earned a badge
      Conversation Starter
    • One Month Later
      AndreaB earned a badge
      One Month Later
  • Popular Contributors

    1. 1
      +primortal
      509
    2. 2
      +Edouard
      198
    3. 3
      PsYcHoKiLLa
      138
    4. 4
      ATLien_0
      90
    5. 5
      Steven P.
      82
  • Tell a friend

    Love Neowin? Tell a friend!