Programming Noob

Discussion in 'Automated Trading' started by Pathus, Jan 17, 2007.

  1. Pathus


    Before you flame me, please know that I searched around and only found pretty dated posts on programming. Basically I am wondering if I should learn to program before I enter the industry. I will hopefully land a job in institutional sales and trading.

    I know nothing about programming but I saw Java, Python, and C++ mentioned over and over. I am guessing I should pick Java or Python and learn, as C++ is supposedly very hard to learn for a newbie. Any input would be appreciated. Thanks.
  2. Kohanz


    A lot depends on how you are planning to "learn" how to program.

    Academically? Do-it-yourself?

    Are you completely new to programming?

    Learning how to program, and learning to use different program languages are quite different issues. However, the catch is you have to learn how to program using one language or another. You *could* start with one of the "easier" languages, like you mentioned, but then you will not learn some of the key concepts present in other languages (like pointers in C++, if you choose to go with Java).

    In the academic route that I took, the first language taught was C++ as part of an introduction to object-oriented (oo) programming and I thought this was a good choice and a good language to build a foundation on.

    Mind you, I had previously (in high school) spent some time using different forms of "BASIC" and Turing languages, so I wasn't a clean slate altogether.

    It's hard to say how a certain individual will take to something like C++, it very much depends on the type of thinker you are. Having been a teaching-assistant in a first-year University course on programming (with C++), I can say first-hand that some people take to it easily, and enjoy it greatly, while others struggle with ideas presented to them, no matter how much thought they put into it. And both groups of people may very well be intelligent, but one is perhaps more of an analytical thinker than the other.

    How much programming you need to know for trading jobs, I have no valuable insight on.
  3. andread


    I don't really know, but I wouldn't expect an institution to mix so easily software development and trading. Do you trading, and let other people write the code.
    At least, the developers I know who work or worked for a bank didn't do any trading :)
  4. Pathus


    Well, I heard it is good to know enough that the tech guys can't bullshit you, or to work with programmers who are developing trading systems.
  5. andread


    Ah, different issue. I wouldn't say that people tend to bullshit, but I do think that many are simply not good.
    Being on the other side of the fence I would say that in general it's good to work with someone who knows what you are talking about. But I think this applies more to general development than to pure implementation issues. Anyway, this is more the exception than the rule.
    The best statement is in the post above: learning how to program, and learning to use different program languages are quite different issues. If you want to know what the issues in software development are, how you can help, and who is talking nonsense, the best solution is probably to learn software engineering in general.
    If you want to go more into detail then it depends of course on what the developers you work with are using. If you want to learn something generic about programming I would look at Java or C#. I personal prefer Java, but for your situation I have the rough impression that C# can be more helpful.
  6. No. I know many traders and the IT skills of most of them are pretty poor. Our development team does just that - develops the applications that the traders need. I guess you could in practise cross from one to the other, but you could do that from another discipline as well.

    Learning how to code to a professional level takes a long time. And if it's not to a professional level, why bother? (Personally I have been hobby coding since about 1982 and it has been tremendously useful to me, so I think it's definitely worthwhile to learn to the concepts of programming and development so that you can use it for simple macro scripts etc.) But your boss isn't going to pay you based on your coding skills if you work in trading.

    I would spend the time on studying trading or finance or whatever.

  7. Pathus


    OK I think I understand the big picture. Thank you for posting. The thing is, people keep saying that is where the industry is going bla bla bla its all computers bla bla bla learn to program I guess they just don't know what they are talking about.