Which programming language should I choose??

by 91 replies
105
I want to become an expert in one type of programming language. Which one would you pick? Or if your currently pretty good at what your doing, what other route would you want to go now?
#programming #choose #language #programming
  • Read this recent discussion warriorforum.com/programming-talk/228422-your-programming-language.html
  • Thanks, nice thread.
  • Banned
    [DELETED]
  • If you ask about programming languages, I vote for 3 of the numerous ones out there.

    1. Java
    2. PHP
    3. Ruby

    I had been working on Java and J2EE technologies for the past 5 years. And there had never been a single moment which made me think otherwise. You will fall in love with it.

    PHP is a web language. Most of the websites which have high scalability prefer PHP to be the source of power behind them.

    Ruby is the next gen programming language. Easy to learn and easy to use. It looks as if you are talking to the compiler.
    • [2] replies
    • I think Java is a good start. When you've learned that you can pick up other languages pretty easy.
      • [1] reply
    • Banned
      [DELETED]
    • PHP is the best programming..
  • I'd recommend C#. You can use it to Develop both websites and programs.
  • Banned
    [DELETED]
  • I would definitely choose c#. I've a c++/java/c# developer and the work out there for c# is tremendous.
  • I'd recommend C#. The pay is excellent and there's plenty of work. A friend of mine works for a German bank based in Belgium, and he said they are finding it really difficult to get C# programmers. Everybody want to do Visual Basic. And they are offering 800 to 1000 euros per day !! ... for C# programmers

    Don't bother learning C or C++ first, you'll pick up how they work through your study of C#. Plus you need to get to grips with Object Oriented programming, so best avoid anything talking about how C works. Unless you are able to separate the structured programming teachings of C from the Object Oriented approach of C#.

    And combined with Visual Studio it makes for a very powerful and easy to use development environment. Plus, add ASP.NET to that and you can create web apps as well as windows apps.

    I have too many languages under my belt to even list here (EXAGERATION!!), well nearly. I learnt pascal and C in my first college courses (early 80s), and now they teach Java (just finished a degree at Sussex, Brighton - perpetual student!!).

    Once you know one of those languages it takes no time to learn the others. Very similar, really.


    Check out http://www.w3schools.com/ if you are interested in web development, they are excellent courses. I taught myself PHP, HTML, CSS, thanks to that site, thus enabling the creation of my web based tools site. Actually, PHP is extremely similar to C, which helped me a lot
  • C++ is considering a lower level language, relatively speaking, than C# and Java since programmers have to manage memories themselves. C# and Java is a lot pleasant to deal with when you can just focus on develop application, less on worrying about memory leaks.

    Of course, any programming language has its pros and cons, but in general, you should learn the 3rd generation programming language; among that, C# and Java are my favorite. As to web programming, PHP is well-rounded, not the best programming language due to it's lacking in object oriented features, but for simple web tasks, PHP is very useful. Even Facebook is written mainly in PHP!
  • in my opinion php is a good choice for website programming
  • Banned
    [DELETED]
  • PHP is a good programming language as it is easy-to-use. But, I have heard that ASP.Net is the latest medium with useful features and controls.
    • [1] reply
    • PHP will be a good choice when you look for quick learning and there are lot of open sources in php...

      Joomla, Drupal, Wordpress,...many are there for php...

      As for as .Net concerned there are quite a little open sources and are not familiar with people.....But, .Net is one of the best in market, I like you to prefer PHP based on its simplicity....
  • I've been doing PHP for almost 7 years now & love it..... PHP is widely used by many websites, but .NET seems to be used by more of the corporate world.

    Ruby & Python are also other good languages to have a look at...
  • The problem with getting a reasonable answer here is because people will happily recommend they language they find interesting. For example, I would suggest you learn Python - this is because I work with it everyday and love the flexibility and freedom it gives you to try out things very quickly.

    That said, I would suggest you look around.. try out a few online tutorials and see which one you think confuses you less.

    Good luck
    • [1] reply
  • You didn't specify what you plan to program. Web apps? Desktop programs? Either way there is no 'best' - just look over some tutorials and such for different languages and see which you prefer.
  • If i were to learn a programming language i would do each one of followings:

    1- PHP
    2- MySql
    3- Python
  • thanks for the thread dealbert
  • It basically depends on what kind of website you want to create and what kind of features and functions you are looking to put in your website.
  • I would recommend the following languages to beginners...

    For desktop based apps:
    - C/C++
    - Java

    For web-based apps:
    - PHP
  • For the very first startup with the programming C/C++ good for anyone.
  • I think you should go with Java its all time best choice.
    but if you want to earn money in less time the go with objective C (for iphone application development).
    Objective C is Ranked 9 currently and it was placed 45 last year.
  • Banned
    [DELETED]
    • [1] reply
  • Here is my opinion:

    1. Fastest to learn programming for beginners: php
    2. Best community support: php
    3. Most jobs (and most competition): .Net
    4. Most money: Java / ObjectiveC
  • Depends on what you're using it for. I'd probably become familiar with the basics of a few languages and build the skills up in each one as time goes on.

    For instance, PERL, is a great string manipulation language. There have been several instances that PERL would have saved me a ton of work, but I didn't know it, so I had to go ask a few people how to either get it done or do the ton of work that was required.

    ColdFusion is a great web templating language. You can get a lot more power out of PHP or JAVA or .NET, but if you're trying to make a proof of concept site, I can do it faster using ColdFusion, because I can work within the templates that the designer used. (Sure you can do that with other languages, but that requires some setup - ColdFusion is out of the box)...

    JavaScript - Oh this has made my life so much easier. sure it gives me a lot of double work, but I have built a lot of great tools and sites just using JavaScript (and HTML and what not) - understanding the syntax for this allows you to work with more complex languages like PHP, Java, etc.

    If you're looking for the Money in the professional work force, nothing beats C# for the number of jobs and what they are willing to pay them for that knowledge. Sure Java is up there as well, but the .NET environment pretty much has everything going for it that Java has going for it (it's even cross platform).

    If you're looking to make money as a Freelancer - I'd recommend PHP, There are a lot of small businesses that are under restrictive budgets so Free is a good thing for them. Plus, how many people do you find on WarriorForum that host thier sites using PHP?

    hope that helps
  • i'd recommend Java and PHP... they're widely used and lots of resources you can find on the internet...
  • Hi.
    I was thinking C++ and Java too, but besides them, what else? Java used in a many companies? I heard it was used everywhere I play D&D cough with a lot of programmers on sundays, and a couple of them work for the state, all say Java is really good and widely used, best for the web and most companies change to java. Today there are lots of programming tools,software,languages are available so it is little bit tricky to select best one..
  • Hey Colton, if you are just starting out programming, I would strongly recommend that you start with a programming language called "scheme". This programming language is a dialect from lisp, which is considered to be an AI language, but don't let this throw you off because it is a very good programming to learn from, here are several reasons.

    1. The syntax is fairly simple
    2. You'll become a better programmer after learning this language
    3. You'll learn a lot more with this programming language and be enlightened with it.
    4. You could have fun programming without much stress.

    I'm a CS student myself and after studied the first two classes of CS, I found out that the syntax and structure of other language is a daunting task, and more often it became a hindrance for me to learn the basic concepts of programming.

    For example, in C it is

    #include <stdio.h>

    int main()
    {
    int i = 1 + 1;
    printf("%d", i);
    }

    and in java, it would be like

    class addOne{
    public static void main(String[] args){
    int i = 1+ 1;
    System.out.println(i);
    }
    }

    and lastly in scheme

    (+ 1 1)

    compare with other programming language, it's more simpler in terms of syntax and you can learn more and not hindered by the structure of the syntax.

    Other programming languages like Python, Php, Ruby on Rails, ASP.NET, C# ... will also be good programming language to learn as they are also mainstream, but I would definitely stick with scheme and lisp because once learn the basics through this language, you will be able to learn other in less time.
  • I would recommend that you begin learning a programming language which you are good at. I think you can get various choice when it comes to getting the right programming language. Popular ones are PHP, C#,VB and Java
  • 1. Java
    2. PHP
    3. Ruby
    these language is going best now a day.
    you can use this language
  • Simple Basic languages are the best to learn essential concepts, try Purebasic or Darkbasic, both very fun to use
    • [1] reply
    • Programme Language Recommended:
      1. Java
      2. PHP
      3. Ruby
  • What to know either,looking for the answer.
  • Go for PHP
    • [1] reply
    • My suggestion is to learn to be a programmer first, meaning a logical problem solver. The language is really secondary because once you learn the basics of programming you can figure out the syntax of almost any computer language or programming library or framework rather quickly, especially with the online resources available today.

      Unfortunately, if you're looking to crack into a professional programming career, most companies today don't place much value on this skill. Organizations are more into looking at your testing your knowledge of various bits of programming language trivia or meaningless pieces of paper such as certifications and degrees. They seem to think that because someone crammed for and paid for a $1200 test on language trivia that they're a better programmer than someone with 20+ years of programming experience.
  • you should go for PHP because it more robust than any other programming language. Also depending on your need for the skill. If you want to delve into a career providing programming services for others, PHP is better. One problem is that, from my personal experience, PHP needs a lot of attention and determination on your part. The initial stages is very crucial because you can easily get discouraged with all the different variables and strings you have to know. You also need to give time for serious practice. PHP involves case sensitive strokes that you can only master how to use them with hours and days of constant practice.
  • php is best
  • Here's the deal:

    Just about all the most popular and powerful languages are based on a foundation of C. First came C, then C++, Then Java, and so on (all build on top of C). Even PHP is based on C. On th Mac side, the iOS platform for iPhone and iPad utilize Objective C, which is based on C/C++.

    Learn C++, then you will have a fundamental understanding of just about every language out there, at least he ones that matter. If you want to take a shortcut and get right into web programming you should start with PHP and Javascript. MySQL is a must if you plan on interfacing with databases.
  • First you choose c++ language after that choose java language.
  • I am software engineer. C and C++ is my favourite programming language. C and C++ is the base of any languages. C++ is a object oriented programing language. C is a general-purpose computer programing language.
  • I'll recommend PHP and Mysql and also try JAVA. They are the best platform I know so far
  • You may try to learn Java or C++ first. Once you learn C++, it will be very easy to learn other languages. After C++, you may learn PHP or JSP which are commonly used nowadays for creating websites.
    • [1] reply
    • Banned
      [DELETED]
    • In my opinion, the one that is easy to use, has lots of features and is supported on almost every host. There's such no best programming language, different tools work better for different jobs.
  • What's your goal? Being a programmer that
    solves what types of problems?

    If you're in Internet Marketing I'd learn PHP.
    It's a crappy language, but gets the job done.

    Tyrus
    • [1] reply
    • Great questions!
      But, if he's in IM, he should probably be expert of none.

      Learn how to make money
  • Hey guys, I think I have a little more specific image of what I want to achieve and would also like to hear your thoughts about which language might be most suited for my needs.

    I would like to create software applications that are able to load a websites code and then manipulate it, like extracting the text between marker1 and marker2 in each line of the code. After that it should be able to further use these extracted parts. I'm thinking about pinging for example, without really openening the websites.
    I think this can be done with javascript or anything similar too, but access to a certain website just doesn't sell as well as a piece of software I think, so why not take the more profitable route right from the start? ;-)

    This example of pinging would only be something to begin with to get into the feeling for the language and then proceed to more complicated projects.

    I do have experience in programming, mainly from school. I have done some programming in HTML (I know that's not a programming language, just wanted to mention it :b), Php, Delphi, C++ and Python.
    It has been some time though since I used this knowledge, so I'd pretty much have to start over anyway, no matter the language. I do have the way of thinking down though, when it comes to things like "how do I program this stuff with OOP?"

    About my personal preferences: I liked how easy and intuitive python worked. Sometimes I just GUESSED what could be the name of the function to make it work and it really worked. :-)

    Hope you can give me some advice on this.

    Thanks a lot to all your programmers out there!


    Sebastian
  • As no one is answering, maybe I give some additional information what I would like to be able to do.

    Apart from what I wrote in the post before, I also would like to be able to interact with sites like Twitter/Facebook/bookmarking sites, so I could write code that automates some of the things that you usually do on these sites. This would probably be a rather difficult task, but that's what I would like to be able to do in the long run.

    I'd appreaciate an answer, even if it's just a hint or something that you have heard might be useful for this. Anything is better than refreshing this thread 10 times a day and not receiving any answers

    Please try to help me, I'd appreciate it

    Yours,
    Sebastian
    • [2] replies
    • perl, it's a glue language and it's text parsing is second to none. A strong case could be made for python as well.
      • [ 1 ] Thanks
    • You then have a choice between Perl, Python and Ruby (maybe even others). The reason I've enlisted these three is because they're general purpose (not tied to the web or desktop). So you can always "expand your horizon."

      Perl will help you with quickly writing scripts to extract text from websites. Not that Python or Ruby are incapable of it, but Perl has earned a distinct reputation for this kind of work.

      Web automation can be achieved in any of the above languages.

      However, to kill two birds with one stone, you may want to try out a language like Ruby. Not only will it help you create the apps you're currently planning, but will also prepare you to create web apps using the Rails framework. Same goes for Python and frameworks like Django.

      Regards,
      Revolves
      • [ 1 ] Thanks
      • [1] reply
  • perl, it's easy if you want it to be, it's close to php, it's c-based, and can run c-like code. It's good for building websites and for parsing text. It's regular expression handling and hashes are to die for.
    • [ 1 ] Thanks
  • I like to master how to program using Java and PHP for they're popular to build dynamic websites.
  • Yes, you're right. You don't have to learn Python once you know Ruby (as long as it's serving you well). Many people learn multiple programming languages because their clients may have specific requirements regarding the language. It also allows a person to contribute to various open-source projects, regardless of the language it's written in.

    However, if you're programming for yourself (i.e., writing apps to help you in your daily task), then a single language will more than suffice.

    Good luck!

    Regards,
    Revolves
  • Well as expected, there are a lot of answers to this question and as normal it depends on who is answering. Most people are partial to there own languages they know and use daily.

    There isn't room to provide a complete answer to this question because it really depends on what you want to do. I know there are others that posted they are interested in program too and mentioned a specific topic, or use, they will be using programming for.

    I am a security researcher and use ALL the top languages, along with some ancient languages and specialty languages such as Ada. Below I will list what I personally use each language for mainly but there are also other uses for each language especially if you want to be a freelancer.

    Python = Used mainly for POC (Proof Of Concept) in the security industry
    Ruby = Language used primarily in Metasploit, a vulnerability framework
    PHP = Numerous of uses such as freelancing, SQL injection, Web development, etc
    C/C++ = Base language you need to know if you plan on being in the security field
    Perl = Also used for POC and a vulnerability language for SQL injection, and Web backend

    I could go on with most languages out there but I'm sure you get the point. You see there are a lot of references to the security industry above because that's one of the industries I'm in, along with Internet Marketing too. So that is why I listed the above languages as most others listed what they like or work in mostly too.

    I hope this helps you a little bit but if you have any questions give me a hauler and I'll be glad to answer any questions.

    CyberSorcerer
  • have some basic knowledge about several languages. I would recommend C (or C++).
    - It kind of the basic computer language.
    - Very widely used (in contrast with Pascal, Fortran, Cobol, ...)
    - Medium difficulty to learn. Good basis to learn Java later.
    - free compilers available, and many open-source libraries you can use and many more
    1. Java
    2. PHP
  • [DELETED]
  • If u r planning to do Web development , then php is the best to start ...hope this helps
  • I myself code in Delphi. I especially like it before it does NOT use .NET Framework - it uses native Windows code, which means it runs faster, and is not dependent on a billion DLL's and frameworks. Most of my software is a stand-alone .exe file.

    About accessing the different API's, there are ways to do that in nearly any language. I did find a way to use the Twitter API in Delphi, but I found out that using HTTP calls is SO much easier.

    Also, Delphi is a safe environment, which means you don't have to worry about Case Sensitivity, like if you declared your variable like this:

    Var
    MyString : String;

    You will be able to use it as simply "mystring".

    Delphi also has a huge collection of components to basically do it all for you - you can get third-party controls aswell, free and shareware. I own some shareware components, I am loving them!
  • The easy is Visual Studio
  • I love Microsoft visual studio, but I wish I have learned java as will.
  • No matter what anyone will say, you can't get away with just one programming language. Even if you are the biggest of experts in that language, you will lack perspective.

    People spend months solving complex problems in languages like Java or PHP that can be easily solved by languages like Erlang.

    Perspective is very important ... even though you don't need to use all the languages you learn, the more languages you learn (at least the principles), the better programmer you will be.

    One language is like living in a box. You can't see outside the box ... and you have to reinvent everything yourself. Some languages have frameworks and libraries that others don't have. And you can be inspired by those.

    Before you pick your main language, you will definitely try a few. Unless you start with PHP to do "the web" ... since that will probably be the end stop.

    Otherwise, try different paradigms. Functional languages like Scala, Haskell, Erlang ... OOP languages like Ruby, Java, Python ... do some metaprogramming. Only then will you get how things work and how to solve complex problems easily and effectively.
  • you can try php or java or .net
  • If I wanted to create software what is the best programming language I should know?
  • Hello........

    You have not mention about which kind of programming you want yo do...if you want to be a expert in website programing, you would go for any one of these
    1)PHP
    2)ASP.net
    3HTML
  • I think best programming language for you are:
    1. JAVA
    2. VB
    3. PHP
  • you can search in google for the best and affordable online tutorials to learn programming.
  • Banned
    [DELETED]
  • Banned
    [DELETED]
  • hey friend...
    i prefer .net language,,,
  • If you're looking to do web based programming, HTML and CSS are really simple, but would allow you to do design a website. There's not much money in designing a website though (or rather, there's a lot of competition).

    I know a variety of languages.. including Java, C, C++, PHP. I'd have to say I like PHP the best (web programming). You'd also wanna know MySQL for learning databases.

    Java, C, C++ are are fine and dandy but it's unlikely you'd be able to create entire applications using them by yourself. (And if you're choosing one, Java is not as "quick" but it has a much lower learning curve and is wayyy faster to develop in).

    I also have been looking into Adobe Flex.. it's pretty slick for adding to websites and desktop applications and is basically ActionScript for Flash.

    Just my two cents

    The Funk Doctor
  • I would say:

    1.c++
    2.c#
    3.java
  • PHP is a good start
  • Hi,

    If you have basic knowledge of the HTML than you can start learning of any opensource like wordpress , joomla etc its easy to learn and good demand in the market.

    With Regards,
    Fourways
  • You should learn first html then move towards php. php is very up in the industry nowadays. The best webiste to learn these is w3schools.com, its very good for beginners..providing you the facility to learn step by step.
  • My suggestion is to learn php because its easy,free,fast and has great support.
  • Python and Ruby have the easiest learning curve IMO. But it all depends on what you do. Run a visual effects company so python is by far the most practical language to learn when dealing with image, 3D and video processing.

    If I were going to do websites then I would probably earn Java, PHP or Ruby because that what I see most, I think you will be able to start programming fastest if you learn Ruby for web stuff because then you can use Ruby on Rails.
  • I suggest you to choose the PHP language for your future. Because it is very easy to learn and you can easily get the job in the market.
  • I think you must choose the JAVA programming language as it is the platform independent language and you can use this language for creating the any kind of software applications.
  • If you're basing your decision on pay, the scripting languages typically pay less. Enterprise languages like Java, C# etc... typically pay more.
  • It depends on why you wanna be an expert in one specific programming language. However, mastering one object-oriented language will enable you to learn any other language. Personally, i recommend you start with Java.
  • php all the way. Create any website you want.. with ease, and the language handles data types and memory issues for you (much like PERL). If you code C, you're going to have to deal with that. MySQL and PHP is where you can make "quick money" online.
  • Banned
    [DELETED]
  • They had been working on Java and J2EE technologies for the past 5 years. As there had never been a single moment which made them think otherwise. They will fall in love with it.
  • PHP is functional, fast, fun and practical -- Especially if you're into the web.

    With a solid understanding of those technologies under your belt work practically will fall into your lap. You can do most anything you want to with a web page and even develop desktop and mobile applications with frameworks like Adobe Air and PhoneGap respectively.

    PHP has:
    - a very large and active online community
    - an extremely large amount of flexibility between applications
    - Browser-based, thus cross-platform
    - Very low learning curve in comparison to compiled languages
    - A scripting language, so you can quickly make changes and correct mistakes (Compiles at runtime)
    - Generally cheaper web hosting plans

    ----------------------------

    Other suggestions with reasonable learning curves. (In order of ease)

    Scheme - @ducwic2go suggested this, I consider this optional but very helpful. If you're feeling daring, you can learn practically the entire syntax in the first lecture (01a & 01b) by Hal Abelson. If you go through that entire lecture series and put the work in to comprehend it, you'll be well on your way to becoming a great programmer.

    Ruby - Is just plain fun. This web focused, server-side language is still relatively new on the block but if you just want to have some fun with a powerful, Javascript-like scripting language, play with Ruby sometime. Ruby on Rails is a popular framework for this language if you want to look into that. The job pool for Ruby seems to be growing, but it hasn't really stood the test of time yet. If you want extremely easy to learn? This is your option.

    Python - Another scripting language and cross platform. Can be used to create desktop applications. (Free hosting with the Google App Engine)

    Perl - Very powerful language and flexible. Its syntax can be intimidating if you're new to programming, though.
    Java - Very flexible and powerful but can be a bit daunting to a beginner who has never coded before. Here's some good reading: The Perils of Javaschools.

    ----------------------------

    A few people to follow:
    Joel on Software - Often writes on the programming job market and posts some very thought invoking articles. Very much worth a visit.

    Coding Horror - The blog of Jeff Atwood, a software engineer at StackOverflow. You'll be hooked on his blog nearly immediately.

    Jeremy Zawodny - He hasn't been all that active recently, but he's a software engineer who used to work for Yahoo before joining Craigslist. Still, his archives are worth a scan.

    Good luck and Have fun with it!
  • Solid recommendations here.

    Mine are:
    Web Dev languages - PHP/SQL & Javascript
    General purpose - Python, C#, Ruby

    One thing that I didn't see recommended was Obj-C. I've heard that good Obj-C folks are making bank right now, since many corp. are trying to get apps in Apple's app store. But, since they are predominantly PC shops, they don't have the means to do so in house.

Next Topics on Trending Feed