March 2004 - Posts
All the projects I have worked on for the last few years have taken a Test Driven Development (TDD) approach. Primarily this is due to the short delivery cycle, with TDD offering a way to improve quality (amongst other things). I think most investment banks have been using TDD/Extreme/Agile in some shape or form for the last few years. Its therefore strange that only now, in 2004 does MSDN finally produce an article on TDD, when Kent Beck (to name one of many authors) has had a book out on this subject since 2002, and Martin Fowler has been speaking about it for almost the same length of time. Maybe MSDN needs to be a bit quicker on the uptake of certain software techniques.
UpTime 2000 - from a recent posting on the DevelopMentor CLR mailing list
IronPython Here's the performance data from December 2003. IronPython really shows that Jim Hugunim is doing an excellent job and that ActiveState got it completely wrong. All we need now is the download.
Update Based on Joel Pobar's blog about LCG, Jason Zander and Brad Abrams comments, maybe Python (and other dynamic languages) are the next big change coming down the line. I know from an investment banks perspective, Python is used in a small number of trading systems - just search JobServe for 'python and bank'
With another release of TraderServer1 and a further increase in trading volume we are now seeing a #Gen 2 Collection on averaged every 1min 10sec (based on the last two trading sessions), with ~4500 messages per second being processed. Comparing the performance data from the original release of TradeServer1 with this latest release really highlights the optimizations we have managed to make. These optimizations (mostly documented in this blog) have primarily centred around reducing contention and improving memory usage.
With regards to the "Success Story" I blogged about yesterday, we have decided to write a case study on the applications, and see if we can get it passed Corporate Communication and out into the wild. We're going to use the Microsoft case study format for the document.
As you may have gathered from my recent blog entries, we have put a number of .NET trading servers into production during Q1 2004. It was therefore nice to see a "Success Story" posted on the intranet news portal detailing our achievements. The project was in development for almost a year, with the following noteworthy achievements:
- Proof that .NET could performance in an extremely high volume trading environment
- A level of flexibility within the applications that goes beyond what is currently available from other vendors
- Patents pending on a number of components
- A highly componentized architecture
Unfortunately, due to NDA's, I can't blog the full "Success Story"
ASP.NET appear to be doing well in the world.
64-bit appears to be moving forwards from a Microsoft perspective.
Compared to ASMX and .NET Remoting, WinFX Remoting and Indigo are a lot closer:
ServiceEnvironment se = ServiceEnvironment.Load ();
RemotingManager rm = se[typeof(RemotingManager)] as RemotingManager;
ServiceManager sm = se[typeof(ServiceManager)] as ServiceManager;
Hope they fix the other issues we had.
Traders love charts, so I've been spending the last few days looking at ChartFX for .NET, a charting widget available from Software FX. This particular widget allows data binding though the normal suspects (DataTables, DataViews, Arrays, Collections etc). Version 6.2 even has support for Flash! The Crosstab data provider is a smart idea that converts data from tabular to columnar format. Also interesting is that ChartFX has support for real-time charting - important in the world I live in. Map support is also provided, although its a shame they don't appear to provide support for TreeMap's, although Radar Charts look interesting. Finally, here are a few samples of financial charts.
Doug recommends the book I have just ordered.
Thanks to a colleague for this remoting link
We will be presenting a number of .NET seminars internally over the coming few months - executive and "Under the Hood" technical seminars. Our first .NET seminar was in January 2004, and although there wasn't a large audience, the presentation appeared to go down well. Presenting .NET within an investment bank is always interesting, since there is already so much Java/Solaris/Linux in use. A number of banks during the late 90's moved a high percentage of their client-server development onto Java - today there are a large number of trading systems run on BEA Weblogic or IBM Websphere. On the desktop it's almost always a Windows operating system these days, so selling .NET for client development is a lot easier - the Java Swing (rendering) issues help to play into the .NET benefits. However, convincing an internal group that .NET is worth a test when they have been building applications in WebLogic or Websphere for the last x years is a lot harder, since the first question is usually, "So what's the .NET equivalent of an Applications Server?" One interesting point is that most executives who know little about .NET always think it's only a client side technology - maybe due to what they have heard in the press.
Tim has some good ideas on presentations, and the split between slides and demos.
With the AMD Athlon 64 available today (even in portables like eMachines M6807), Intel moving to release its EM64T technology for the Xeon processors, Visual Studio 2005 providing 32-bit/64-bit CLR's, Microsoft offering a customer preview of Windows XP 64-bit, it would appear what we are approaching the "Age of the 64-bit Desktop" (ignoring the Intel Itanium). I'm therefore curious to know how many people are actively looking at buying a 64-bit portable/desktop in the coming months.
I wonder if Microsoft will update Rotor to work on 64-bit processors.
Interesting article on Athlon 64 FX-53 running Windows XP 64-bit
Thanks to John, DataPower's XA35 and Savega's XPE 2000 could be rather useful (if you need the speed).
More Posts Next page »