Overview
Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Explore the intricacies of designing high-performance software in this 57-minute Devoxx conference talk. Delve into the concepts of response times, throughput, and scalability, and understand their significance in achieving optimal performance. Examine how modern hardware functions and its impact on software design abstractions. Gain insights from Java Champion Martin Thompson's extensive experience in building complex, high-performance computing systems. Learn about queue theory, the Universal Scalability Law, and the importance of proper logging frameworks. Discover the principles of clean code and effective design, including feature envy, B-tree implementation, and data structure optimization. Analyze the impact of branches, loops, and inlining on performance. Understand the role of set theory, continuous integration, and telemetry in software development. Apply these concepts to real-world scenarios, drawing parallels with motor racing and open-source development.
Syllabus
Introduction
Performance
throughput
response time
Scalability
Queue Theory
Universal Scalability Law
Logging Frameworks
Clean Code Movement
Representation
Code
Design Principles
Dijkstra
Design Basics
Feature Envy
Implementing Btrees
Relationships
Data Structures
Botching
Simple Example
Branches
Simple stuff
Loops
Why Does This Matter
Major Loops
Composition
Inlining
Set Theory
Jam Hitch
Continuous Integration
Telemetry
Motor Racing
Open Source
Summary
Taught by
Devoxx