The basic design concept of Tbricks by Itiviti is modular: a high-performance system core is complemented by independent apps that contain all business logic. The apps are ready to use out-of-the-box but can also be customized, often using zero lines of code. However, when coding is required, C++ has been the only option — until Tbricks 2.8, due out in May. For the first time, Tbricks now offers a Java apps API. We asked Tom Williams, Assistant VP Sales Engineering Itiviti to explain.
Tom Williams, C++ or Java — does it really matter?
There are pros and cons with both languages, of course. A Java fan might say that Java is more user friendly, while the C++ advocate could argue that C++ is faster. But in the end, I think it boils down to personal preference, the firm’s current code base and the right tool for the job.
Why does Itiviti introduce Java apps in Tbricks?
To keep an edge in the constantly changing financial markets, our customers need the power to adapt their systems at any time. Tbricks is Itiviti’s main trading platform going forward, and it was designed for change from the start. All Tbricks’ business logic is delivered as apps combined with a high-performance core. All apps come with development tools and complete source code, allowing you to customize or copy them to use as blueprints for proprietary apps. With the introduction of the Java apps API, the transition to Tbricks is easier if you already have in-house Java competence and a Java code base, as you might if you currently use Orc Liquidator by Itiviti.
Will all Tbricks features be available in both languages?
Yes, there will be complete feature parity between the Java and C++ APIs. Anything you can do in C++, you can also do in Java.
If a firm has no preference, would you recommend Java or C++?
Anything you can do with an app with the C++ API in Tbricks, you will also be able to do with Java, but my advice would be to use both depending on the use case. As a general rule, for anything extremely latency-sensitive you should still use C++. The core of Tbricks (as with Orc Liquidator) is written in C++, meaning that any code written in Java requires a translation through a middle-layer which adds a little overhead. On the other hand, time to market might be quicker with Java, especially if the developer is used to that language.
As an example, if you were writing a trading strategy you may use C++ because performance is important, at the cost of potentially taking longer to implement. If you were writing an app that is not latency-sensitive, such as an app to manipulate static data or a risk report, you might use Java to speed up time to market.
It is really less about learning Java or C++, and more about learning how to write an app in Tbricks. If you’re used to one of the languages, you can switch between the two quite comfortably, at least on the level required to create or customize a Tbricks app. We want people to focus on writing business logic, not boilerplate code. Our core technology takes care of a lot of this anyway so that you can just focus on writing what’s important to you.
What is the single most important advantage of Java-enabling Tbricks apps?
The Java apps API is a new choice for rapid development, empowering firms to leverage their existing Java code base as well as the huge selection of open source, third party and enterprise integration solutions that are available to the Java community.
The Java apps API will be introduced in Tbricks 2.8, due out in May.
Execution Regulation, technological advances and behavioral changes mean that trade automation will increase, which will in turn force systems and their providers to become more agile, agree speakers at a GlobalTrading roundtable. The degree to which firms should standardize and the merits of outsourcing, however, remain controversial topics. This video and article sum up the key […] March 15, 2018
Execution Lars Wiberg, VP Strategic Research Trading and Trade Execution, discusses pre- and post-MiFID II trends in the OMS-EMS arena, covering a number of issues including consolidation, optimization, cost savings, workflow, globalization and outsourcing. March 7, 2018
Execution This is the second part in a series that explores the past, present and future of Order Management Systems (OMS) and the closely related Execution Management Systems (EMS). We cover these trading tools mainly from a sell-side perspective. As financial markets change, new demands on trading technology appear. This includes the functional requirements of the […] February 27, 2018
Trading Henrik Thörnqvist, SVP Service Innovation and Implementation, discusses Itiviti Managed Trading and outlines the benefits of opting for a fully managed trading solution. Read more about Itiviti Managed. February 22, 2018