Loading…
CppCon 2019 has ended
avatar for Bill Chapman

Bill Chapman

Bloomberg LP
Senior Software Engineer
Greater New York City Area
I graduated from college in the early eighties, then spent most of the next couple of decades in Silicon Valley doing CAD for the design of computer chips in Silicon Valley. In 1993 I spent a year in the Philippines, teaching computer programming in a university in Cebu where the medium of instruction was English.
In 2005 I moved to New York City to work in finance. I started out doing financial calculations for mortgage bonds, which was ironic because I don't believe real estate is a very good way to invest -- I would tell my friends "I'm like a drug dealer who never touches the stuff.". I had a front-row seat on the whole mortgage meltdown, have strong opinions about how & why it happened. Worked on tools during the metldown to figure out which bonds were the most toxic.

In early 2008, I transferred to the Bloomberg BDE team, writing low-level C++ libraries used by the rest of the company (it's a big company, with about 5,500 programmers) to do finance and news. We're at the bottom layer, we wrote our own version of the STL, and I almost never deal with financial concepts any more. I just do pure computer-science building blocks.

I've been paid to program since 1980, but I've never since libraries as high-quality as BDE anywhere. Before I started working on BDE, my code was always head and shoulders above that of my teammates in terms of the level of commenting I did. But in the BDE team, we comment a lot more than I was used to. And we have a lot of specific rules about exactly how the comments are to be done. In addition to all the comments, everything has to be exhaustively unit tested.

A lot of the BDE libraries are open-sourced, on github, for anyone to download (see my link). Everything ports effortlessly to Linux, Windows, Darwin (Apple/x86), Solaris (SPARC), and IBM Aix (PowerPC). We used to also support HPUX (Itanium) but we dropped it several years ago. There are vestiges of support for Cygwin and FreeBSD, but we haven't been testing there for many years.

My focus at this conference will be multithreading and high-performance computing. I've written a couple of thread-safe containers and a threadpool, and done maintenance on other thread-safe containers and threadpools in BDE over the years. We have our own atomic variables in BDE, written from scratch in assembly language, though I did not write any of them.
In my spare time I spent a lot of time trying to solve global warming, and am very active in Citizens Climate Lobby.
Saturday, September 14
 

09:00 MDT

17:30 MDT

 
Sunday, September 15
 

09:00 MDT

17:30 MDT

20:00 MDT

 
Monday, September 16
 

08:45 MDT

11:00 MDT

12:30 MDT

14:00 MDT

15:15 MDT

16:45 MDT

18:00 MDT

 
Tuesday, September 17
 

09:00 MDT

10:30 MDT

14:00 MDT

15:15 MDT

15:50 MDT

16:45 MDT

18:00 MDT

20:30 MDT

 
Wednesday, September 18
 

08:00 MDT

09:00 MDT

10:30 MDT

12:30 MDT

14:00 MDT

15:15 MDT

16:45 MDT

18:00 MDT

20:30 MDT

 
Thursday, September 19
 

09:00 MDT

10:30 MDT

12:30 MDT

14:00 MDT

15:15 MDT

15:50 MDT

16:45 MDT

18:30 MDT

 
Friday, September 20
 

09:00 MDT

10:30 MDT

12:00 MDT

13:30 MDT

14:45 MDT

16:15 MDT

 


Twitter Feed