Edgewonk’s main developers about security, speed and the Edgewonk technology
Rolf and Moritz, Founders of Edgewonk, were searching for a way to push their software to the next level but their coding abilities were limited since they are mainly traders. So, being close friends with Moritz, we talked about it, made some comments, and got excited since Edgewonk was a very cool product. Just about a week later, we started working on Edgewonk 2.0 because things just felt right.
Both of us still have a leading job in IT companies and years of software development behind us. Since we noticed some concerns of Edgewonk users since Edgewonk 2.0 went public last week, we wanted to raise our voice and explain some things :-).
Edgewonk uses Java 8; there are a lot of misconceptions about Java in terms of IT-security and speed. Most of them are completely wrong or only true in a way that does not apply to Edgewonk at all. Thus we feel that it’s necessary to say a few words on that matter.
What is Java?
Java is a runtime platform that allows building platform-independent applications. Applications using Java run on many devices in different areas, from embedded devices like smartphones and car repair tools, to some of the biggest web applications available. Java hereby is divided into several parts that are all called Java, for one the Java Virtual Machine which is the platform independent core on which applications are executed and the Java programming language which we use to develop Edgewonk 2.0. See  and .
Why did we use Java?
When we started working on Edgewonk 2.0, the first decision to make was to either create a webapp and make Edgewonk a cloud service or write a desktop app. To us, it was important to make it clear that our users are in control of their trading data at all times. We thought that traders need the option to access their trading data and strategies without having to connect to an online service. Therefore, we decided that Edgewonk should stay a desktop application as it always was. Edgewonk is of course still usable in the cloud, if the users want to do that. However, one of our major goals was to make a platform independent application (since a lot of our users were unhappy with Edgewonk being Windows only and needing MS Excel).
This left us with three choices:* Use C++ and basically write big parts of the application for every operating system* Use C# / Mono and only have GTK as a Gui Library (which is a GUI Framework that didn’t look good by default and nobody had enough experience with it to modify the looks to what we wanted to achieve)* Use Java
To us, Java seemed to be the best available option for this project.
But isn’t Java horribly slow and looks ugly?
Many people think this and it’s a very old misconception that comes from the time when we had Java Applets. However, a lot of development has been done since the late 1990’s and nowadays lots of high-performance software is written in Java. It’s a fast platform that employs techniques like “just in time compilation” to optimize the software being executed to work faster on your computer. However, it is tricky to maintain and optimize the runtime parameters of the Java Runtime when deploying software like Edgewonk on so many computers. On the other hand, since millions of developers worldwide use Java there’s usually always experts to consult around.
What about Java Security? I heard bad things about it!
The Java platform has had bad press for its security in the past few years. However, it’s a big system with many parts. The security problems usually consider either specific frameworks or the technologies Java Applet and Java web Start. The latter two are not used in Edgewonk. As for frameworks, we’re regularly updating the frameworks we are using and we’re watching the Common Vulnerabilities Exposure  for everything that concerns Edgewonk. So we will deliver you bugfixes as soon as possible whenever we see something. We think that the risk for Edgewonk is extremely low since we’re not an application anyone can connect to from the internet and Edgewonk doesn’t have server components.
But Java programs look horrible!
Well…Edgewonk 2 does not. We think it speaks for itself ;-).