Serving the Quantitative Finance Community

 
User avatar
vplanas
Topic Author
Posts: 0
Joined: October 6th, 2004, 4:53 am

Anyone using Java in QF?

December 6th, 2005, 7:33 am

Many (non financial) companies are replacing C++ by Java. Is this happening as well in QF?Why almost everyone that i know and that moved from C++ to Java is so happy?Can you list some advantages-disadvantages of Java in the especific case of QFthanks.
 
User avatar
ckarakus
Posts: 1
Joined: October 28th, 2004, 8:05 am

Anyone using Java in QF?

December 6th, 2005, 11:02 am

QuoteOriginally posted by: vplanasMany (non financial) companies are replacing C++ by Java. Is this happening as well in QF?Why almost everyone that i know and that moved from C++ to Java is so happy?Can you list some advantages-disadvantages of Java in the especific case of QFthanks.Claiming everyone moving from C++ to Java is just a meaningless assertion!People use Java to develop e-commerce, web applications because Java ,more correctly, J2EE is good for the task. now in the past i know some people developing that kind of applications with MS COM, VC++, ATL, ... technologies and it did not scale very well and the whole thing was a real mess. That is whay MS invented this .NET thing. As for C++, it is the INDUSTRIAL language, workhorse of real applications. Some stupid people who does not know anything about software just tend to use anything new because they think anything that come later is just better.In QF, C++ is standard. Just ask anyone serious in this business. True people use Java, C#, Pyhton, ... but they cannot replace C++. Real, core applications are still developed in C++. other languages are good for interfacing C++ core, scripting, prototyping (my favoritte one is Python)And also, good C++ developers are also the people know developing high performance, realtime software much better than other developers because c++ requires you have brain, knowledge and experience. This does not mean being a good Java developer is a trivial task but those languages became modern COBOL: everyone and his brother doing it. Can they do C++: not really. C++ is has a formiddable barrier keeping those trash minds away
 
User avatar
Cuchulainn
Posts: 23029
Joined: July 16th, 2004, 7:38 am

Anyone using Java in QF?

December 6th, 2005, 11:06 am

QuoteOriginally posted by: vplanasMany (non financial) companies are replacing C++ by Java. Is this happening as well in QF?Why almost everyone that i know and that moved from C++ to Java is so happy?Can you list some advantages-disadvantages of Java in the especific case of QFthanks.Good questions. QF is a special domain where you need special tools. BTW I think we had a lot of discussion on this comparison in the past. http://www.wilmott.com/messageview.cfm? ... adid=28559 > Why almost everyone that i know and that moved from C++ to Java is so happy?No idea why. Maybe you can tell us.
Last edited by Cuchulainn on December 5th, 2005, 11:00 pm, edited 1 time in total.
 
User avatar
cordless
Posts: 0
Joined: October 13th, 2005, 5:49 pm

Anyone using Java in QF?

December 6th, 2005, 5:59 pm

Lots of people use java for real-world applications, and not just web applets. Looking at workopolis or monster or your favourite job-posting site shows that java jobs are abundant. The gui for Matlab and Maple, for example, require a jvm to run.Java has some "nice" features too, depending on who you talk to. No explicit pointers, deallocation done by garbage collection, and no preprocessor commands, for example. But java has some bad features too: the language is controlled by sun, you usually need a jvm, and regardless of what people say it is usually bearishly slow. The speed can be increased, but I'm not happy with a baseline of 20% slower programs (admittedly anectodal). A simple google search gives lots of people's opinions on the merits of each language. http://www.google.com/search?q=c%2B%2B+ ... mparisonIn quantitative finance, C++ seems to be the right tool for the job. Fast, extendible, easy to learn the basics, and lots of libraries already exist. The community has also probabaly reached the point where it's too late to convert everyone to a new language (kind of like how some physics is with fortran).
Last edited by cordless on December 5th, 2005, 11:00 pm, edited 1 time in total.
 
User avatar
arkestra
Posts: 2
Joined: November 25th, 2005, 9:59 am

Anyone using Java in QF?

December 7th, 2005, 8:16 am

QuoteOriginally posted by: vplanasMany (non financial) companies are replacing C++ by Java. Is this happening as well in QF?Why almost everyone that i know and that moved from C++ to Java is so happy?Can you list some advantages-disadvantages of Java in the especific case of QFthanks.Every language has a set of problems it excels on, and a set of problems it's not so great on.Java is particularly good on problems involving objects, multithreading, sockets and so on. Lots of solid support in the language and libraries.Java weakens as you move away from object orientation being the best way to model your problemC++ is particularly good on optimization potential and low-level control, as well as offering a vast number of different approaches (oo, generative, functional, procedural).C++ does demand higher discipline and extra tools (memory tracking, for instance).Quant Finance is very unlikely to move to using Java for analytics. This is because analytics are maths, and maths is transformational (functional), a paradigm that object oriented languages just aren't a great match for. But you frequently get lots of Java calling the analytics, marshalling results around, and so forth.If QF analytics move to a different language, it would more likely be something with better support for functional constructs than Java. Python is gaining ground for prototyping. OCaml has some support (but can't do multiple dispatch very well, can be flaky on some platforms). I don't see any successful large-scale analytics happening anywhere else than C++ at the moment though, and that's across quite a few places.
 
User avatar
vplanas
Topic Author
Posts: 0
Joined: October 6th, 2004, 4:53 am

Anyone using Java in QF?

December 7th, 2005, 9:38 am

QuoteClaiming everyone moving from C++ to Java is just a meaningless assertion!People use Java to develop e-commerce, web applications because Java ,more correctly, J2EE is good for the task.[...] I claimed that almost everyone that i know in moving to Java.80% of my friend are programmers for e-commerce industries and developpers of world-wide applications. These are the ones that are very happy. Probably they are happy because for them , programming is not an exciting and challenging brainteaser in which you have to prove you're the smarter guy in town, but just a job, anf java makes your job easier.
 
User avatar
Cuchulainn
Posts: 23029
Joined: July 16th, 2004, 7:38 am

Anyone using Java in QF?

December 7th, 2005, 12:05 pm

> claimed that almost everyone that i know in moving to Java.Quants and traders use C++ and VBA (and C# more and more), hardly ever Java. I think that Java is popular in risk apps.Java is fine for web-based apps. That what it was made for, originally.Java is not the language for desktop apps. just like C++ is not the language for GUI design. Last, personal preferences (and prejudices) play a big role in chooosing a language.
Last edited by Cuchulainn on December 6th, 2005, 11:00 pm, edited 1 time in total.
 
User avatar
vplanas
Topic Author
Posts: 0
Joined: October 6th, 2004, 4:53 am

Anyone using Java in QF?

December 7th, 2005, 2:33 pm

The point was the second line of my post. (apologize if it wasnt clear enough)Most of the people i know is NOT in QF, they are in e-commerce and global solutions that's why most of the poeple I know dont use C++.The question is if this trend is local (proper e-commerce, web applications, ...) or global (java replacing C++ at any level but at different speed)
 
User avatar
Cuchulainn
Posts: 23029
Joined: July 16th, 2004, 7:38 am

Anyone using Java in QF?

December 7th, 2005, 2:39 pm

QuoteOriginally posted by: vplanasThe point was the second line of my post. (apologize if it wasnt clear enough)Most of the people i know is NOT in QF, they are in e-commerce and global solutions that's why most of the poeple I know dont use C++.The question is if this trend is local (proper e-commerce, web applications, ...) or global (java replacing C++ at any level but at different speed)I think Java will retain its web niche.For desktop C# is much better (and bad for the reasons Java is good).C++ is number crunching. I would hate to write a finite difference scheme in Java, in C# it would be a different story. Speed in Java versus C++ is not the real issue.So, less replacing, more like people choosing the right language for the right job. I think people have decided on what they want to do.
Last edited by Cuchulainn on December 6th, 2005, 11:00 pm, edited 1 time in total.
 
User avatar
vplanas
Topic Author
Posts: 0
Joined: October 6th, 2004, 4:53 am

Anyone using Java in QF?

December 7th, 2005, 7:35 pm

Ok, i'm not a programmer.if i should to start to learn properly a language now, which one should i choose and for what? C++, C#, Cuchulainn?
 
User avatar
Cuchulainn
Posts: 23029
Joined: July 16th, 2004, 7:38 am

Anyone using Java in QF?

December 7th, 2005, 7:51 pm

QuoteOriginally posted by: vplanasOk, i'm not a programmer.if i should to start to learn properly a language now, which one should i choose and for what? C++, C#, Cuchulainn?Right. I am beginnning to understand.The choice of language is secondary to a certain extent. The big question is what kind of career do you wish to pursue? This will determine the language that you NEED to know. For example, in QF C++ is king (for right or wrong, that's not an issue here).In the last 30 years I have made 3 major technology shifts. We need to learn new tools and techniques every 10 years.What are your goals and does computing play a role?P.S. You can't go wrong with C++ and C# in my opinion. Of course, I could be wrong but I do not see any other languages beating them. First C++ and then C# is a piece of cake. The other way around is not necessarily true.
Last edited by Cuchulainn on December 6th, 2005, 11:00 pm, edited 1 time in total.
 
User avatar
vplanas
Topic Author
Posts: 0
Joined: October 6th, 2004, 4:53 am

Anyone using Java in QF?

December 7th, 2005, 8:24 pm

Thanks for your reply.I'm mathematician. My goal is to implement myself the models i make, and also to add some new value to my background, or let's say, just because i learn new things every day. Next steps seem logically to me that it should be some average programmimng skills.I knew fortran and i shifted to VB. as you pointed out, jut wondering what will be the my new shift.P.S. I like VB for some small things but i'm really needing an OOP.
 
User avatar
anamini
Posts: 0
Joined: February 13th, 2004, 9:01 pm

Anyone using Java in QF?

December 8th, 2005, 1:57 pm

As a devout Java developer with a strong C++ background, I was rather dissapointed when my new gig was a C# shop. However, I am honest to say that C# is a beautiful language taking all the great things from Java and adding some new (delegates, properties) and retaining the number crunching ability of C++. IMHO, quant finance is more about financial models, and the implementation is more about speed, flexibility, and readibility. From a Java diehard to the C# writers, BRAVO!
 
User avatar
DavidJN
Posts: 270
Joined: July 14th, 2002, 3:00 am

Anyone using Java in QF?

December 8th, 2005, 2:44 pm

Front office users are primarily concerned with how fast software runs. Speed is (almost) everything. Design ease and elegance is your (i.e the developer's) problem.
 
User avatar
Cuchulainn
Posts: 23029
Joined: July 16th, 2004, 7:38 am

Anyone using Java in QF?

December 8th, 2005, 4:08 pm

> From a Java diehard to the C# writers, BRAVO! Yes, Bill got it right this time around. Still, all the stuff in C# is possible in C++ (excluding the GUI libraries and Reflection which are BTW big advantages).