Why OCaml

Why OCaml

This was a nice talk to listen to on the way to work this morning about how the engineering team at Jane Street Capital think about OCaml, their reasons for picking it, and how it’s worked out for them so far.

Not Google

Noteable excerpts from You Are Not Google

Regarding the Dynamo paper and Cassandra:

Having read the Dynamo paper, and knowing Cassandra to be a close derivative, I understood that these distributed databases prioritize write availability (Amazon wanted the “add to cart” action to never fail).

they did this by compromising consistency, as well as basically every feature present in a traditional RDBMS

Regarding Service-Oriented Architecture:

But by the time Amazon decided to move to SOA, they had around 7,800 employees and did over $3 billion in sales.

Regarding GFS and MapReduce:

But do you need to read and write back to literally thousands of disks? How much data do you have exactly? GFS and MapReduce were created to deal with the problem of computing over the entire web, such as… rebuilding a search index over the entire web.

Perhaps you have read the GFS and MapReduce papers and appreciate that part of the problem for Google wasn’t capacity but throughput: they distributed storage because it was taking too long to stream bytes off disk. But what’s the throughput of the devices you’ll be using in 2017?

What great management is

  • Apply simple (but not easy) principles consistently
  • Learn about your staff as people
  • Work with other managers as a team
  • Develop shared goals
  • Explain the goals
  • Define what success means
  • Tackle the highest priority work
  • Help people work together effectively
  • Create an environment of trust

from

Behind Closed Doors: Secrets of Great Management
by Johanna Rothman and Esther Derby

City Scaling

How does an organisation scale out?
Like a city.

How does a city scale out?
Good question.

How does one run an organisation like a city?
The market is a defining trait of a bustling city.
Exchanges, transactions.

Why go to a city?
To trade. To exchange goods and services with others.

The city is where buyers and sellers gather.
The market is a concentration of buyers and sellers.

So, run an organisation like a market?
Not just a market, but a sufficiently large organisation will need some form of market structure to sustain growth. Otherwise, some other sub-optimal structure will form anyway.

What defines a market?
Prices.
Transactions.
Trust.
Safety.

Enterpreneurship is the business of finding new patterns of specialisation and trade.

Firms are formed to lower the cost of transaction. A firm derives a portion of profit simply by being able to transact more cheaply internally than on the open market.

When intra-firm transaction becomes less efficient than transacting on the open market, the structure of a firm becomes a liability.