Best Programming Language to Learn

Discussion in 'Trading Software' started by StockOperator, Sep 8, 2003.

  1. cable

    cable

    Python is great - teaches all the building blocks you need, very forgiving, encourages good clean coding style, very rapid development, multiplatform, multipurpose, free documentation everywhere, etc. and will get you more chicks than Visual Basic.
     
    #21     Sep 8, 2003
  2. Personally, I don't like Python... my other Python is good enough to get the chicks...
     
    #22     Sep 8, 2003
  3. sprstpd

    sprstpd

    Since you mentioned Python, I'll mention Perl and Ruby. My favorite programming language so far is Ruby.
     
    #23     Sep 8, 2003
  4. funky

    funky

    learn Java, then learn J2EE.
     
    #24     Sep 8, 2003
  5. nitro

    nitro

    The first language I learned was C.

    However, some people cannot get over the terse syntax and pointers, even smart people. For them I suggest (Visual) Basic or maybe Pascal.

    nitro
     
    #25     Sep 8, 2003
  6. NinjaTrader_Dierk

    NinjaTrader_Dierk ET Sponsor

    Hi,

    Programming language discussions are always quite lengthy ...

    But let me tell you this: After ~15 years of experience in programming virtually all "major" languages on UNIX and Windows, I would suggest taking a closer look on the .NET technology running on Windows. And here I would suggest using VB .NET. That's what I'm using as my current main programming language (for over a year now), and I'm overall happy :)

    You may PM me, if you need more details.

    Dierk
     
    #26     Sep 8, 2003
  7. Interesting discussion. Personal opinion?

    To start off with, BASIC isn't a bad way to go at all. It really covers the 'basics' of programming and will get you started with logical operators in a more user-friendly way. Once you get your head around it, you can move onto something better, like C++

    Generally, I'd say the final answer is C++

    C++ can do anything, it's extremely powerful and memory-efficient. It's object-oriented and you have access to the largest libraries of routines, dll's, anything. You name it. It's massive.

    Don't even bother with C. That's yesterday's spaghetti-code world. Object-oriented modular programming has long taken over the world of efficient programming.

    Only problem with C++ is indeed the pointers. People here say are they good or bad? Well, they can indeed be very very useful and make programs work very efficient - BUT:

    1. If you don't know what you're pointing at, or pointing at an address another program is already using, you can point at the wrong address content and make your computer crash. - And possibly never find the bug. Even Windows programmers apparently do this (blue screens : fatal exception error on address X@!%$# - You know it! A lot of that is pointer disasters)

    2. Pointers mean no portability. Since pointers are designed to specifically point at certain memory addresses, they will not be the same on a WIN, G4, Solaris, UNIX / Linux machine.

    The solution to come by the pointer problem is JAVA. Because JAVA runs on a virtual machine, it doesn't have the pointer problems (and doesn't use 'pointers', anyway). Therefore, JAVA is at least theoretically a more stable and certainly more portable (the virtual machines work on any platform, the code is just portable). Of course the lack of pointers also makes it easier for newbies to learn. Further advantage of JAVA is that it really is very hard to crash your computer using it. In fact, it should theoretically be impossible. Nevertheless, I have seen computers crash running a virtual machine. It's a strange world.

    So, really, my conclusion would be BASIC, C++ / JAVA.
    If it was me, personally I'd skip BASIC and go straight to the proper languages. BASIC is ugly, slow and cumbersome.

    Just my 5 cents. Not that I have any idea what I'm talking about. :p

    ~Scientist
     
    #27     Sep 9, 2003
  8. I would choose C# to learn on. I started with Commodore 64 Basic, moved on to Pascal, then C, then C++ (which is what I use most of the time these days). I've also worked with Python and Perl, both of which I like in some respects. But if I were starting all over again, I'd start with C#. Once I was comfortable with C#, I'd then learn C++ to get a feel for it and the use of pointers). Just my 2 cents.
     
    #28     Sep 9, 2003
  9. wallaby

    wallaby

    Programming is like anything else - once you understand the
    fundamental concepts properly - you can pick up and program
    in virtually any language. Not only this, but you will have
    the advantage of being able to pick a suitable language to
    solve a particular problem.

    The importance of understanding the fundamentals well and
    providing a solid base is why a language such as C has been
    taught in universities for a long time, and still is.
    Understand the basics, then use something like Java or
    C++ (in that order) to understand objects and you'll be well
    on your way.

    Like others here I have a bias towards C as a first language.

    These days, providing it doesn't need to fly like a bullet and
    keeping in mind life is generally better away from the PC,
    I have been using 'scripting languages' More beer mate ...

    Cheers
     
    #29     Sep 9, 2003
  10. Many of the programmers who grew up on C eventually learn C++ but fall short in object-oriented design. Bring back Objective-C and NeXTSTEP! Seriously though, if you're new to programming, start with Java and learn good software design in the process instead of getting waylaid by the legacy languages such as C and Pascal.
     
    #30     Sep 9, 2003