Wednesday 2 September 2015

Twelve – Women who Code

I thought I may need to apply the ‘inappropriate Meetup group’ rule, but then I saw the sentence: ‘guests and men are welcome too’.  That was all I needed; I was going.  After a short tube ride I emerged at Oxford Circus and gathered my bearings.  It was the middle of the evening rush hour and I was encircled by teaming and rushing crowds; it was a struggle to find my intended destination: a nearby pub.

There was a part of me that was disappointed; this was another technology Meetup; ‘coding’ is the process of writing or creating computer software.  Again, I wanted to do something different; something that was wacky or unusual.

I studied computer science as an undergraduate and out of a group of twenty men, there were four women, and this was apparently pretty normal.  A couple of months earlier I had visited a tech conference as a part of my 'day job’.  It was very clear that things hadn’t changed in twenty years.  In fact, the gender disparity seemed to be worse.  Out of an audience of around two hundred, you could count the number of women who were at the event on one hand.

I climbed a flight of stairs and found myself standing amongst a group of three women. They all looked at me; I had nowhere to hide.  After some brief introductions I learnt that the group I had stumbled into was apparently a part of a wider international movement and I was visiting the ‘London chapter’.  There were apparently thirty five other similar ‘women who code’ groups around the world, helping software developers and technical people to network with each other.  I was told that I could go to the bar and order anything I wanted; the sponsor had put a tab behind the bar: free beer!  After my glass had been charged with expensive Italian lager, it was time for a brief introduction and then a talk: the highlight of the night.

The talk was by a chap called Phil who owned his own consultancy firm. The title of his lecture was: ‘how to make code run really fast’.  He began by asking a couple of questions: ‘who here is a developer?’  Almost everyone put up their hand.  ‘Who here codes in Java, or knows of Java?’ About half of audience of about thirty put up their hand.

Phil worked in the financial sector where he helped to develop ‘high frequency trading systems’ written in a programming language called Java.  He told us about financial exchanges and encouraged us to conduct measurements of our code, telling us to think of things in terms of ‘speed percentiles’.  Memory, he said, is really important, since this can have a significant knock on effect when it comes to the ‘garbage collector’.  Phil mentioned profilers and described some code optimisations.  He then shared an old tech adage that small changes make big improvements.

It wasn’t too long before Phil moved onto the subject of microprocessor architectures.  I took a long sip of my free beer; I was starting to get restless.  Phil fired a wide range of technical concepts at us: memory caches, disk input output, multi-threaded software, the use multiple cores and the need to balance development time against trading time performance.

As Phil talked, I realised I had question that I really wanted to ask, but this then made me ask another question: ‘should I really behave in a way that could potentially affect the dynamics of the group?’  I had my ‘don’t be disruptive’ rule, but I realised it had fuzzy boundaries.  I felt that I ought to keep my trap shut.  After all, this wasn’t a Meetup that was aimed at me; I was a bloke, and blokes like me have an annoying habit of asking smartarse questions.

I enjoyed Phil’s talk.  Like the earlier Meetup, it took me back to the time when I used to be a developer, and I was pleased that I was able to roughly follow what he was talking about.

‘What are you doing here?’ asked Sarah, after the talk had ended.  It wasn’t a confrontation; she asked her question with a smile.  Sarah lived in Luton and worked in the government as a data analyst.  This was her first ever Meetup event.  I sensed that Sarah was someone who was pretty easy going.

‘Well… I have two reasons.  The first reason is one that is true and a second one that I’ve made up.  I’ll tell you the second reason.’  I told Sarah that I used to be a software developer, and that I’m acutely aware of the gender divide in IT.  ‘I also have a colleague who does research into the relationship between gender and IT, so I’ll be telling her about this event’.  Sarah forgot to ask me about the first reason.

‘I was wondering if you were some kind of letch…’ Sarah joked.  I assured her that I wasn’t (but then again, I don’t think letches are thoroughly aware of their own lecherous behaviour).

I caught up with Phil at the bar, and asked him about the question that I had been mulling over.  Phil was from Australia and studied both computer science and electrical engineering at the University of Melbourne.  He had worked in the financial sector for around five years.

‘I’ve heard of high frequency trading, but I don’t know what kind of things are traded…’ I said, fully prepared to express my ignorance.

‘It can be anything where speed gives you an advantage.  Two examples are, say, foreign exchange and equities, but there are others’.

Phil told me about the algorithmic trading that lies at the heart of high frequency trading.  A trader doesn’t have to a human; it can now be a computer program.  He described a couple of algorithms that are used: software can look at price movements and can make the assumption that a price will always fall back to an average (and will buy and sell shares accordingly); another strategy is where software tracks price movement momentum.  If the price movement slows, a computer might make a decision that a share price has reached its peak (and therefore sell, and make a profit).  He mentioned that some banks had their own exchanges too.  I asked Phil about this.

‘These are exchanges that are run by different companies where you can buy and sell the same thing.’

I asked an obvious question: ‘how do they make sure that they all have the same prices?’ I imagined a super high speed data connection between exchanges that keeps all the prices in sync.

‘Ah, well, they don’t.  There are discrepancies.  You buy something on one side, at one price, and sell on the other side at a different price.  The difference is your profit.  The faster you can do your trades, the bigger the profit, and the more you can take advantage of discrepancies between exchanges’.

I was puzzled.

‘IT systems used to be considered as a cost to the business, but things are different.  The IT systems actually are the business.’ Phil continued, oblivious to my confusion.

It was a nice event; everyone was friendly and no one seemed to mind that I wasn’t a woman.  I also really appreciated the free beer, pizza and chicken wings.  I had expected less talk about hard core tech issues, and more discussion about issues that surround IT, computing and gender; this simply didn’t happen.  I was also initially surprised why a man seemed to be doing most of the talking, but the reason for his appearance soon became clear: he was recruiting; he needed Java developers.

As I travelled home, I thought about what Phil had said and I remained confused.  If you make money through buying and selling on the discrepancies between prices, then where is the money coming from?  Have high frequency traders found a new way to magically create ‘new money’ by applying a clever technical wheeze?

I did some digging and found an answer.  I learnt that a high frequency trader gains money because someone else is likely to lose out; you prevent someone else from getting a fair price on a commodity.  You might gain a couple of pennies here and there, but if you do high frequency trading all day, every day, you can make a lot of money.

One further thought struck me just as I was walking home from the train station.  Phil’s work was all about understanding the technical minutiae of how to get machines to do things quicker to make your rich employer even richer.  I did a quick thought experiment: how would I feel if I had to do his job to do for a living?  I didn’t have to think for too long until I had an answer: I would probably hate it.

No comments:

Post a Comment