SlideShare a Scribd company logo
Visual introduction to concurrency
and parallelism patterns
Dániel Vámosi
A visual introduction to concurrency and parallellism patterns
A visual introduction to concurrency and parallellism patterns
What is concurrency?
Why is it important?
Moore's Law (1965)
Moore's Law (1965)
Concurrency is not parallelism
Pure speedup is not the silver
bullet
High availability!
High availability!
Fault tolerance
Scalability
Distribution
Responsiveness
Concurrency models emerged
Actor model (Erlang / Elixir)
Communicating Sequential Processes (Go)
...
Visual turn in software
inspection?
A visual introduction to concurrency and parallellism patterns
The Zen of Erlang
By Fred Hebert
A code-free presentation about the core principles and
philosophies of Erlang
Let it crash
Blow it up
Rocket science
Fight fire with fire
Controlled burns
Processes
Fully isolated
Message passing
Asynchronous
Links and monitors
Codifying dependencies
Preemptive scheduling
Don’t trust the devs
Supervision trees
Structure interactions
Supervision strategies
Why restarting works
Heisenbugs and friends
A visual introduction to concurrency and parallellism patterns
A visual introduction to concurrency and parallellism patterns
Thank you
Any questions?
E-MAIL
info@digitalnatives.hu
job@digitalnatives.hu
PHONE
+36 30 208 5625
ADDRESS
Andrássy út 66. Budapest, H-1062
Digital Natives Ltd.

More Related Content

PDF
How to support innovation in organisations @ Startup Safary
PDF
A termékfejlesztés rögös útja (avagy barangolás a módszertanok és eszközök er...
PDF
Agile és lean workshop @ Startup Safary
PDF
Introduction to GraphQL with Ruby
PPTX
How flat organisations support the innovation
PPTX
CULTURE OF INNOVATION
PDF
Testing in JavaScript
PDF
Basics of Metaprogramming in Ruby
How to support innovation in organisations @ Startup Safary
A termékfejlesztés rögös útja (avagy barangolás a módszertanok és eszközök er...
Agile és lean workshop @ Startup Safary
Introduction to GraphQL with Ruby
How flat organisations support the innovation
CULTURE OF INNOVATION
Testing in JavaScript
Basics of Metaprogramming in Ruby

More from Digital Natives (7)

PDF
Ruby meetup 7_years_in_testing
PPT
Digital natives incubation process_2011-11-23_v09
PDF
Evolution of the Software Development Process ad Digital Natives
PPTX
Mixgar in Volt festival 2011
PPTX
Mixgar prezi v1.2
PDF
Budapest.rb 2011/01 - Rails Deployment
PDF
Budapest.rb 201010
Ruby meetup 7_years_in_testing
Digital natives incubation process_2011-11-23_v09
Evolution of the Software Development Process ad Digital Natives
Mixgar in Volt festival 2011
Mixgar prezi v1.2
Budapest.rb 2011/01 - Rails Deployment
Budapest.rb 201010
Ad

Recently uploaded (20)

DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
Big Data Technologies - Introduction.pptx
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Encapsulation theory and applications.pdf
PDF
Approach and Philosophy of On baking technology
PDF
Machine learning based COVID-19 study performance prediction
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPT
Teaching material agriculture food technology
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Empathic Computing: Creating Shared Understanding
PDF
Spectral efficient network and resource selection model in 5G networks
The AUB Centre for AI in Media Proposal.docx
Big Data Technologies - Introduction.pptx
Mobile App Security Testing_ A Comprehensive Guide.pdf
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Encapsulation theory and applications.pdf
Approach and Philosophy of On baking technology
Machine learning based COVID-19 study performance prediction
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Understanding_Digital_Forensics_Presentation.pptx
The Rise and Fall of 3GPP – Time for a Sabbatical?
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Teaching material agriculture food technology
MYSQL Presentation for SQL database connectivity
Unlocking AI with Model Context Protocol (MCP)
Advanced methodologies resolving dimensionality complications for autism neur...
Empathic Computing: Creating Shared Understanding
Spectral efficient network and resource selection model in 5G networks
Ad

A visual introduction to concurrency and parallellism patterns