Developers today are building a new class of applications. These applications no longer fit on a single server, but instead run across a fleet of servers in a data center. Examples include analytics frameworks like Apache Hadoop and Apache Spark, message brokers like Apache Kafka, key-value stores like Apache Cassandra, as well as customer-facing applications such as those run by Twitter and Netflix.
These new applications are more than applications, they are distributed systems. Just as it became commonplace for developers to build multithreaded applications for single machines, it’s now becoming commonplace for developers to build distributed systems for data centers.
But it’s difficult for developers to build distributed systems, and it’s difficult for operators to run distributed systems. Why? Because we expose the wrong level of abstraction to both developers and operators: machines. Read more…
Material Up — material design inspiration. MD is a physics engine for UI.
Flafka (Cloudera) — Flume plus Kafka, offers sub-second-latency event processing without the need for dedicated infrastructure. (via Abishek Tiwari)
terraform.io — open source package providing a common configuration to launch infrastructure, from physical and virtual servers to email and DNS providers.
Remote Work: An Engineering Leader’s Perspective — Even proponents of remote work seem to think that you should either have a distributed team from the get go, or stick to a traditional on-site team. Our experience shows that this is incorrect…
Quantum OS — Linux desktop based on Google’s Material Design. UI guidelines fascinate me: users love consistency, designers and brands hate that everything works the same.
Inside AWS — Every day, AWS installs enough server infrastructure to host the entire Amazon e-tailing business from back in 2004, when Amazon the retailer was one-tenth its current size at $7 billion in annual revenue. “What has changed in the last year,” Hamilton asked rhetorically, and then quipped: “We have done it 365 more times.” That is another way of saying that in the past year AWS has added enough capacity to support a $2.55 trillion online retailing operation, should one ever be allowed to exist.
Gearpump — Intel’s “actor-driven streaming framework”, initial benchmarks shows that we can process 2 million messages/second (100 bytes per message) with latency around 30ms on a cluster of 4 nodes.
Foundations of Data Science (PDF) — These notes are a first draft of a book being written by Hopcroft and Kannan [of Microsoft Research] and in many places are incomplete. However, the notes are in good enough shape to prepare lectures for a modern theoretical course in computer science.
VCs Return to Backing Science Startups (NY Times) — industry and energy investment doubled this year, biotech up 26% in first half, but a lot of the investments are comically small and the risk remains acutely high.
dronecode — Linux Foundation common, shared open source platform for Unmanned Aerial Vehicles (UAVs). The platform has been adopted by many of the organizations on the forefront of drone technology, including 3DRobotics, DroneDeploy, HobbyKing, Horizon Ag, PrecisionHawk, Agribotics, and Walkera, among other.
Angular JS Style Guide — I love style guides, to the point of having posted (I think) three for Angular. Reading other people’s style guides is like listening to them make-up after arguments: you learn what’s important to them, and what they regret.
Consensus Filters — filtering out misreads and other errors to allow all agents, or robots, in the network to arrive at the same value asymptotically by only communicating with their neighbours.
Why Banks are BASE not ACID — Consistency it turns out is not the Holy Grail. What trumps consistency is: Auditing, Risk Management, Availability.
dash — offline access to API documentation. Useful for those long-haul flights without wifi …
Gartner’s Top Trends for 2015 — ubicomp, IoT, 3d printing, pervasive analytics, context, smart machines, cloud computing, software-defined everything, web-scale IT, and security. Still not the year of the Linux desktop.
Move Fast, Break Nothing (Zach Holman) — Gartner talks about “web-scale IT”, but I think the processes and tools for putting code into product (devops) are far more transformative than the technology that scales the product delivery.
Making Fast-Paced Multiplayer Networked Games is Hard (Gamasutra) — This may all sound like smoke and mirrors because that is exactly what it is – we are just maintaining the illusion the game is playing out in wall clock time even though updates are arriving from the past.
I Heart Logs — I linked to Jay Kreps’s awesome blog post twice, and now he’s expanded it into a slim O’Reilly volume which I shall press into the hands of every engineer I meet. Have you heard the Good News?
BAP — Binary Analysis Platform from CMU. Translates binary into assembly and then into an intermediate language which explicitly represents the side effects of assembly instructions, such as flag computations.
Reactive Manifesto — We believe that a coherent approach to systems architecture is needed, and we believe that all necessary aspects are already recognised individually: we want systems that are Responsive, Resilient, Elastic and Message Driven. We call these Reactive Systems.