QCon: Fundamental Answers
What are the common threads that disparate speakers are talking about?
You are building a distributed system. “There will never be a silver bullet,” said Caitie McCaffrey. Consistency, availability, and partition tolerance: pick two, and you often have no choice but to first pick partition tolerance.
Engineers must first identify the distributed computing tradeoffs they are willing to make, then find appropriate architectural patterns.
Functional programming makes life easier. Jessica Kerr explored the applications of JVM functional languages to concurrency management. Both she and Caitie use the actor pattern to separate concerns in a hazardous distributed system.
Our next theme is React Week, which has drawn analogies to functional programming.
What trends are changing software most forcefully?
Modern security concerns demand new approaches. Bots are generating fake ad clicks, attacking our banks with refrigerators, and tempting us with lascivious messages on Ashley Madison.
Every important problem is an engineering problem. QCon talks have a huge range of topics. Health, sociology, sales, operations, and logistics have changed because data velocity provides a tight feedback loop.
Building smooth movement of data is a distributed systems engineering problem. Interpreting that data is a statistical engineering problem. Acting on those interpretations is a managerial engineering problem.
What languages, patterns, and management strategies are gaining in popularity?
Open-source continues to change the world. In the past, Microsoft rejected open-source, but now they are embracing it. Phil Haack talked about .NET and NuGet, and Caitie McCaffrey discussed Orleans. Each of these is open-source.
How can a developer optimally take advantage of conference attendance?
Hang out in the hallways and have conversations. They are great for learning and communication. Developers can intermingle with speakers and ask them questions.
Attend talks on disparate topics. Christopher Kelly’s episode embodied this. Health Hacking is not conventionally thought of as related to software engineering, but the episode was all about how to diagnose and solve problems about a complex distributed system–the human body.