Hello, even though I´m not at all new to trading, I don´t know the first thing about programming (a great deal of people today would say that because of that, I don´t know the first thing about trading too, LOL, but I beg to disagree, so, no need for these comments, LOL). But since I´m always taking a pick at this website, I could´t help to notice that for a lot of people this is a GREAT deal. I Googled a little bit about the subject in general, not trading related, and my impression is that the most "famous" language in general today is JAVA. On the other hand, most of the posts that I´ve seen that are programming related on ET are about C/C++. Why is that? Or am I just talking nonsense here?
Java got most of its notoriety for it's "Write once, run anywhere." architecture. In layman's terms, that just means it was designed from the ground up to be a cross-platform language. Historically, trading platforms never really needed to be cross platform because almost everyone ran Windows. With so many devices out there these days, times have changed somewhat in that regard, which is why we've seen Java used for relatively newer platforms like thinkorswim, TWS from Interactive Brokers, etc.
Sorry if I gave that impression.. I´m NOT asking which one is better. I´m just curious of the fact that I have seen much more people talk about C++ than any other language here.. But when I googled it, it seems to me that Java and even other languages are currently being more utilized. I´m just trying to know if this is a false impression or if "trading related programming" really uses more C++ and if that is the case, why?
C++ can be cross platform but it requires your code to be re-compiled for each platform individually. Depending on the code you've written, that code may or may not compile for the next platform you want it to run on.
To answer your earlier question, I think the relative "popularity" of Java versus C++ here doesn't mean anything. C++ *is* a cross-platform language but that misses the larger point. GUIs developed in Java are truly portable. GUIs developed in C++ have to use a cross-platform GUI framework such as Qt to be portable.
Actually that's easy to imagine. I run my auto-trading environment on a headless Linux box from the command line. I control it using a simple web interface.