11 ms·
Bloomberg Runs on 25M lines of Fortran (2006)
- deleted 11y ago[deleted]
- josephmx 11y agoThis reads a bit like the old "Google will rule the world!" blog posts, doesn't it?
- geekus_maximus 11y agoThat's because it is old
- melling 11y agoThis article is from 2006. I imagine something has changed in 9 years.
- fyolnish 11y ago26 million?
- sean_the_geek 11y agothanks for pointing that out! Completely missed it.
- retube 11y agoYou clearly haven't worked in a large enterprise!
- cmollis 11y agoright on.
- melling 11y agoSure I have. That’s why I said "something" instead of "a lot". They were investigating C++ in 2006 and I've actually talked to a C++ developer from Bloomberg so something has changed. Just search their job listing: http://jobs.bloomberg.com/go/All-Open-Positions/515100/?q=&title=developer&sortColumn=posteddate&sortDirection=desc http://jobs.bloomberg.com/go/All-Open-Positions/515100/?q=&t...
- baldfat 11y agoI still feel Fortran gets a bad rap. Fortran has been a work horse and is extremly fast. (Mind you I learned Assembly on a C64 so Fortran looked so much "nicer" back in the 80s and I don't program in it at all but it seems like everyone treats it like it is some mothballed slow poke.
- davelnewton 11y agoThey have a lot of C++, Ruby/Rails, JavaScript, etc.
- exbbergdev 11y agoYes, it's even more Fortran now.
- raldi 11y agoThe information in this article was wrong even back in 2003 when I started there.
- 1971genocide 11y agoWait. How can you trivially conclude that its would be easy to provide the same speed as Blomberg terminal ? If I am not mistaken even shaving off fractions in terms of time has a lot of value. And maybe you need 25 million lines of FORTRAN code to achieve that efficiency ?
- angdis 11y agoYeah, they brush it off as a minor issue, and just conclude Google can handle it! This sentence makes me dismiss the entire article: "The trading model and real time issues are just technical problems. Google is smart enough to solve them."
- spacecowboy_lon 11y agoQuite Google has never been about exactness if 1 in 10k searches serves a bad result - they dont care. And I have written mission critical Fortran software for big telcos' and tust me nothing contreates the mind when one on Vint's reports nudges you and says this had better be right or we are both looking for anew job.
- jamesrom 11y agoAnd there are 6 million rivets in the Sydney Harbour Bridge.
- deleted 11y ago[deleted]
- pma 11y agoBloomberg terminal and Thomson Reuters are certainly ripe for strong competitors.They are basically operated as monopoly for decades.Yc,developers and others should take on this challenge. http://www.nytimes.com/2015/09/10/business/dealbook/the-bloomberg-terminal-a-wall-street-fixture-faces-upstarts.html?ref=business http://www.nytimes.com/2015/09/10/business/dealbook/the-bloo...
- throwaway5752 11y agoFirst it's Thomson Reuters. Second, YC has little chance in this market which requires large capital for the data feeds, and has enormous incumbent advantages. Third, FactSet is a player there, it's not even a duopoly.
- pma 11y agoThere is no such thing as "incumbent advantages" for market this is based on technology that could be duplicated.The same is applicable to payment system that paypal,stripe and others take on now.Same with car industry that Telsa is working on.Did you read the linked article about MONEY.NET.The thing is that developers have not been paying much attention to nuts and bolts of these terminals,until lately.http://fortune.com/2014/03/20/can-the-bloomberg-terminal-be-toppled/ http://fortune.com/2014/03/20/can-the-bloomberg-terminal-be-...
- fennecfoxen 11y agoNo incumbent advantages? Not even an advantage associated with the reduced financial risk of operating a money-making business in the space? No name recognition? No established working relationships between Sales and Important Customers? No firm-specific human capital in the form of all the little things their employees know about how business in this sector works?
- protomyth 11y agoYour better & duplicated technology is generally no match for the incumbent's connection, trust, familiarity, and fully expense-accounted sales team. That is the incumbent advantage and why Oracle wins so often. Its very much like message boards. HN and Reddit have the hot hand and the connections overcome better technology of other boards. Once the connections become too toxic, people will migrate to the next thing. Then you might have a shot, but the group with the best connections will probably be the next thing.
- beezle 11y agoIt would have been interesting to know if they are using Fortran 95 or the more recent (and very modern) 2003. People who like to beat on Fortran rarely know that it has evolved quite a bit since '66 and '77
- edu 11y agoThe article is from 2006, should be noted on the title. And, anybody knows if the situation is still the same?
- bradleyankrom 11y agoIt's a lot of C++ today. In fact, they have open-sourced a lot of the in-house tools they use, eg bde: https://github.com/bloomberg/bde https://github.com/bloomberg/bde
- nly 11y agoI'm kind of surprised, but happy, to see they're using WAF as a build system. I've really enjoyed using it in the past.
- radmuzom 11y agoThe article seems to assume that there is something "wrong" with running on 25M lines oF Fortran. It does not provide any technical reason why Fortran is not the right tool for the job. Why does this need to be "Web 2.0"?
- DrJokepu 11y agoI client of mine still has a fairly large piece Delphi of code in production and I must say it's a bit of a liability for them. An example of a technical problem they face is getting the particular version of Delphi they use work with TLS (and that's becoming a problem now as everyone's starting to disable SSLv2 & SSLv3). The fact is that they simply wouldn't face this kind of problems if they have ported their code to something like Python, C# or Java. On the non-technical side of things, they also struggle with hiring developers who are capable of (or willing to) work with Delphi, especially junior developers. A significant portion of their staff also doesn't know how to work with Delphi, so reassigning resources to match the needs of the business is often a challenge. I imagine these issues would probably apply to Fortran as well.
- baldfat 11y agoHow is Python even being mentioned as a replacement for Fortran? That is like replacing C code with Python just because ... Sorry I really love Python but I see it as a slow weighing beast that is always a good second best choice for everything it does. Great if you only know Python or only want to know Python but for production? Speed issues is the main reason why Python is not more widely used.
- dragonwriter 11y ago> How is Python even being mentioned as a replacement for Fortran? Its probably being mentioned as such because a lot of the reason people use Fortran is because of key high-performance libraries for particular numeric application domains -- not because Fortran is necessarily the best language, aside from the existence of the those libraries, to express higher-level solutions in those domains. And because Python has convenient wrappers for those libraries, such that where that is the motivation for using Fortran, Python is a reasonable alternative. > Speed issues is the main reason why Python is not more widely used. Sure, and that's why you wouldn't (with the current implementations available) want to write the low-level numeric routines underlying NumPy in Python. OTOH, once you have NumPy, a lot of time Python makes perfect sense as the language to use for higher-level solutions that rely on the functionality provided by those libraries.
- baldfat 11y agoA little Wikipedia information: Market share has grown since this was written in 2006. Market share in 2007 26% and 2011 30% Money: 315,000 Bloomberg Terminal subscribers (2 year subscriptions) worldwide at $20,000 per user = 6.3 BILLION dollars a year! EDITED for spelling
- stevoo 11y agoI have to disagree with having a company actually coming in and taking out everything that bloomberg has been building the past years. This is an extremely hard market to get it. Bloomberg is extremely dedicated at what they do and they do not take competition lightly. They do use there massive power to make the life of competition as hard as they can. As for Bloomberg there terminal and all of the services that they provide is top notch. I have a lot of friction with all of there data, and this is by far the best i have worked with.
- monopolemagnet 11y agoBy comparison, this is 33% more LoC than a BWR/PWR nuclear reactor (Monte Carlo method / quadruple integral (⨌) equivalent) simulator product formerly known as CORETRAN-01.
- monopolemagnet 11y agoFinite element analysis modeling is really hard, even for nuclear engineers whom can code. A lot of scientific control system apps get built with LabVIEW or Agilent VEE. If it makes beyond the niche consultancy stage, such things are often (re)written in whatever an engineer happens to know: C, Python, Haskell, LISP, [favorite language religion here]. Edit: BTW, just came across a supposed successor to VMEbus [0] (a standard industrial data bus): VXIbus [1] 0: https://en.wikipedia.org/wiki/VMEbus#/media/File:VMEbus.jpg https://en.wikipedia.org/wiki/VMEbus#/media/File:VMEbus.jpg 1: http://www.vxi.org/specifications.html http://www.vxi.org/specifications.html
- spacecowboy_lon 11y agoOnly 1500 coders I recall at British Telecom hearing oh we need to put extra 800 developers on a single product.
- zimbatm 11y agoWhen the compiler code size is a fraction of the whole it would actually make sense to improve on it instead of rewriting everything. Like Facebook did for PHP and their HHVM. Obviously Fortran doesn't have a speed problem but it could be improved in other ways like static analysis and nicer syntax notations.
- protomyth 11y agoConverting to later versions of the Fortran standard would get you a long ways there. Plus with all the focus in 2003 & 2008 with C interoperability, you can plug in later open source libraries. [edit: I wonder what a modern version of RATFOR would look like]
- tempodox 11y agoI don't know how comparable this is, but JaneStreet seem to be quite happy with OCaml. I for one would give that some consideration before actually going C++. And that's ignoring the question why they would depart from Fortran in the first place.
- drglitch 11y agoBBG's competitive advantage is not data - in fact, it's pretty mediocre. Any reasonably large player sources their own data feeds due to too many holes in the former. BBG's killer features are support and _chat_ - chat with other _trusted_ counterparties who also paid the admission price.
- deleted 11y ago[deleted]
- apaprocki 11y agoSigh. Bloomberg-er here -- this article is old. There is certainly a lot of Fortran remaining in sections (you don't rewrite working code with C linkage in another language just because -- you rewrite it if you have something to gain), but it is nowhere near as bad as this old article makes it sound. Many teams are C++ only and have been for a long time (see our open-source code on GH for a sample). Keep in mind that if you deal in absolute numbers you are missing the bigger picture -- the actual real number will be much smaller and it will be an even smaller percentage of the total codebase. edit: Can mods put (2006) in the title? Seems reasonable...
- zerr 11y agoRegarding C++, what are percentages of "90s style C++" vs Modern C++11/14?
- apaprocki 11y agoIf you read over BDE docs on Github you'll see that it currently targets C++03. It has a few C++11 detected features, and each new version release gains more C++11/14 support. So to answer your question -- neither. The vast majority of code is Modern C++03 and it is in the process of moving towards C++11/14.
- spacecowboy_lon 11y agoWhat REAL advantage does the switch to C++ from Fortran have for you? And NO not knowing fortran doesn't count if at 18 at my first job was told oh hear is a book on fortran learn it your graduates with a fancy CS degree can do the same.
- ig1 11y ago(In a previous life I worked at Bloomberg) I don't remember the exact figures but 25m lines of Fortran seems plausible, but it was still the minority of the code base. The majority at the time was in C and C++, with probably a few million lines of Perl and Javascript as well. Plenty of the Fortran dates from the 80s, rewriting it in a modern language would be a huge project which lots of risks and limited upside. No significant new fortran has been written for a long long time (>10 years). It's also a mistake to think of Bloomberg as a single piece of software, it's closer to an app store, there's are thousands of specialist apps (functions in Bloomberg terminology) and most users only use half-a-dozen, but which half-a-dozen varies significantly between users. This makes it very hard to displace wholesale. There are individual pieces a competitor can go after but identifying a subset of functionality that's enough to convince users to switch is hard. There's also a lot of stickiness which goes beyond pure functionality. Network effect and brand are also key parts (having a Bloomberg Terminal is a status symbol).
- osullivj 11y agoIs any of the ticker plant code behind the dealer quote pages in Fortran? Or any of the auto-ex stuff? Curious, as that's the stuff I had to plug in to. Via an ION gateway, naturally...
- ig1 11y agoI didn't work in that area, but I imagine almost anything you use at Bloomberg will go through C++, C and Fortran.
- apaprocki 11y agoHi Imran :) The number is actually much smaller, but it is still a minority. We have many times more lines of server-side JS than we do Fortran.
- ig1 11y agoHi :) From what I recall there's a ticker somewhere which tracks lines of Fortran code which I vaguely recall being in the millions.
- crb002 11y agoBloomberg can write a one page Python flask/bottle wrapper around any of that Fortran and serve it up as a microservice. They got Pang Ko from Mathworks who is one of the top parallel computing data structure minds in the world. I'm betting Bloomberg will be around until another player like JP disrupts the market with a truely distributed trading platform.
- meerita 11y agoI know Bloomberg is the Kraken of the softwares out there, but i wonder how many lines lines would be in other langs?
- USNetizen 11y agoPeople would be really surprised how much of the critical infrastructure of this country in government and enterprise runs on technologies around half a century old. This is nothing new. The IRS still uses millions of lines of COBOL to process our tax returns, the VA uses millions of lines of MUMPS (M) to store and process health and benefits records, and the list goes on and on. It's not going anywhere soon, either. People skilled in these legacy languages and technology stacks are also amongst the highest paid and most in-demand in the country, at least here on the east coast in places like New York and DC.
- smanzer 11y agoUnhappy academic here - codebases with millions of lines of Fortran are very prevalent here as well. It is both better and worse than a lot of people think; like a lot of the other comments said, that code is rarely touched, but when you need to touching it can be very painful. Modifying old Fortran is rough, mostly because of that awful, awful IMPLICIT keyword. Though I will say that the native multidimensional array support does make certain sections much easier to read than corresponding vanilla C code.
- allenwlee 11y agoIn my mind, Markit is the biggest future threat to Bloomberg
- PaulHoule 11y agoI have been looking at some projects at Bloomberg from the outside and even those the projects are interesting I don't think I'd want to work their because of bureaucracy and inertia -- it's the kind of place where you'd need to get approval to install a text editor on your machine. I have found that often "high profits" get in the way of customer service because they are a disincentive to "quality is free" thinking and make it possible to sustain the unsustainable for way too long. To take an example, Cable companies are so profitable that they think nothing of the cost of replacing cable boxes that break, or of excessive truck rolls. These not only cost money but they anger consumers. My mother-in-law quit cable in disgust and switched to OTA TV after she had three cable boxes burn out in three months and would have to go stand in an long line to return it and pick up a new one. Quality is free and screwing up is expensive -- even if you can afford to screw up it costs you customers and it costs you employees. But again, turnover is no problem if you are making enough money you can afford to spend 5x what things should really cost.
- GCA10 11y agoWell said. Thanks for the perspective.
- matthewaveryusa 11y agoI worked at bberg for 4 years. Changed about 2 lines of fortran code. Some people do more, others so less, but the norm is you'll spend a sliver of your time in fortran. Great place to work, too bad it's in NYC
- infinotize 11y agoThere's actually a SoMa office now (as well as London, which has been around).
- eb0la 11y agoI though Fortran programmers are more expensive than C++ ones; but itjobsearch.co.uk says they aren't. Fortan programmer: 45,000 GBP (3 month avg), +23% salary change from last year C++ programmers: between 47K GBP to 100K (for c++ quants).With 3-5% average salary change from year to year. I don't know Fortran; but looks like the fame about its high costs comes from mainframe hardware (which also runs C++, btw).
- vasche 11y agoHow is this news?
- DanBC 11y agoHacker news isn't news. You might want to re-read the guidelines.
- shitgoose 11y agoIn Fortran one can add two matrices: A=B+C. Try it in C++ (NumPy is better that way, but still this is an extension to a rocky foundation). The amount of freely available high quality math/statistical libraries for Fortran is unmatched. Why in the world would you give up on this just because you can use Google account? Google Payments for settlement?? WTF? Settlement is a bit more then credit card charge or moving money between checking accounts. Google Fiance as a ticker plant?? Yea, right. Even Yahoo provides options data, Google has just basic stock prices. Compare it with BBG that has everything. Build terminal in Web Kit? Why??? Every time I see suggestions like this, I remember minions, rushing from one framework to another - "koonga la mala makuna, koonga!".
- anonu 11y agoI didn't notice the "2006" in the title until I read that the terminal cost a grand a month! I thought something was off!! Bloomberg Terminal costs more like $2k/month per user nowadays... maybe more??
- oneJob 11y agoJust read the article. Yeah, a Bloomberg terminal does a lot (a lot alot) more than scroll "news tickers, checking Bloomberg email, and trading." When the author suggests that Google might make a play for market share (or some other Web 2.0 player), it is clear that there is an enormous lack of understanding as to exactly what Bloomberg is, as a product.