Skip to main content


Showing posts from May, 2017

What marketing might look like in the future

There once lived a wise, middle aged, bald prophet named Marc Andreessen. His job, was to profit from prophecy. Today, he is one of the most well known, and respected, venture capitalists in the world. He is famous for some of his sayings such as "if you want to see where a bubble is forming, follow the MBAs" in reference to the MBAs going to Wall St during the mortgage backed securities crisis of 2008 and the dot com bust in 2002. Arguably, his most famous saying is/was "software is eating the world". Today, it's a foregone conclusion that, software has broken the way a lot of industries fundamentally operate. I think it's particularly interesting, however, to think about what that means for marketing. I'm of the opinion that, very few companies really understand what they're doing and that modern marketing should not only look like engineering... it should be engineering.

One way to think about marketing is that there are two key components to mar…

Differences and similarities in web servers

If you talked to a new grad and asked them "how can I achieve concurrency in code?" There are two obvious answers: multi-threading and multi-processing. Factually, both approaches are schemes to map instructions to the CPU/bare metal. Although from the hardware's standpoint, they are very different, from an engineer's standpoint, many use cases tend to be fairly similar. This matters for web servers.

In fact, for a long time, those two methods (multi-processing and multi-threading) were the primary ways to map HTTP requests to a web server's hardware. That is, if a request comes in, a request will map to a process or map to a thread. In Apache HTTPD-speak, you can control which scheme you use. That mapping component is called the "Multi-Processing Module" or MPM. This is all fine and dandy if the requests don't do anything requiring blocking or asynchronous behavior and all requests are short lived. However, nearly all modern web applications requir…