Thursday, 05. December 2019, MicroTek, Modern patterns of parallel and distributed systems in .NET

from 05. December 2019 - 9:00
till 06. December 2019 - 17:00


Show map
0 people attending
Event description
We are beginning a new era of geographically-distributed, highly-available systems with processor designs that are scaling out in core counts quicker than they are scaling up in core speeds. In order to keep up with performance expectations as complexities and datasets grow, developers must meet the challenge by scaling out software architectures over modern computing resources.
In this course, you will become the master of the multicore and distributed systems domain. Learn how to harness the power of parallel computation and multicore computation to dominate peer applications in finance software, video games, web applications and market analysis. Successful programmers know how to partition computations over large distributed datasets in order to leverage modern hardware and computing environments. This course will introduce you to the tools to achieve high-performance, reliable and maintainable code through functional-style parallelism and concurrency. In order to yield the most performance, computer programmers must consider how to partition and divide computations to maximize the performance while taking full advantage of multicore processors.
You will gain an insight into the best practices necessary to build concurrent and scalable programs in .NET and .NET Core using the functional paradigm and OnPrem and Cloud-based applications.
Class overview : This course is designed to introduce you to technology and tools available to developers at every level who are interested in achieving exceptional performance in applications. You will leave with the skills and know-how needed to optimize and maximize application performance, effectively use multi-core computation, and maximize the computational resources utilization.
This course is designed for a full immersion into the fascinating world of parallel programming and distributed systems.
Duration: 8-hours
Skill Level: Intermediate
What you will learn : This class teaches how to put into practice various functional concurrent programming techniques to achieve a highly performant and scalable solution, in either a local or distributed environment. Furthermore, this class provides a series of “go-to” references for questions and answers about concurrency and distributed systems. These recipes aim to solve both common and complex problems you may encounter in concurrent applications.
The following objectives will be satisfied in the duration of the course:

Functional concurrent programming concepts, and the skills needed in order to understand the functional aspects of writing multithreaded programs.
Leverage multicore computation, increasing the capacity and speed of programs
Programming techniques and best practices for concurrent programming
How to overcome the concurrent pitfalls writing complex parallel application effortlessly
Choose and leverage the best concurrent patterns in any scenario

Show more
How to write deterministic concurrent code using immutability
Implementing concurrent patterns such as divide-and-conquer, fork/join, producer-consumer, Map-Reduce, pipeline and more (Data & Task Parallelism)
Building high-performance concurrent systems that self-adapt the degree of parallelism based on the current resources available
Techniques and principles to build a concurrent pipeline
Asynchronous programming model to implement unbounded parallel computations.
Integrating concurrent programming abstractions to compose parallel computations and to handle concurrent errors
Asynchronous Functional Combinators to express complex flow in a declarative and composable style
Maximize the performance with the Task Parallel Library controlling side effects
Analyze the garbage collector as the bottleneck and improve performance with memory consumption optimization
Performance Tips & Tricks to high performant and multithreaded applications.
The share-nothing approach for lock-free concurrent programming
Handling and composing high-volume real-time event stream processing
Dive into reactive programming using the asynchronous message passing programming model 
Natural isolation as complemental technique with immutability for building concurrent programs
Design and compose sophisticated workflow using the TPL DataFlow blocks
Implementing a concurrent Reactive Scalable Client-Server
Apply Reactive Programming everywhere with Agents and Actors
How to develop applications that scale up & out using the same programming model (Agents and/or Actors)
Designing and implementing a clustered, high-availability architecture that is elastic, scales in or out, on demand
Building highly available, self-healing distributed systems and scalable systems using the message passing model
How to write scalable and robust server-side asynchronous code
Designing and implementing highly-scalable, reactive and fault-tolerant distributed systems

Audience : Any developer who wants to improve their skills and employ polyglot techniques to solve concurrent problems Are you a software engineer, developer or solution architect who wants to break the bonds of sequential programming and leverage the power of multi-core computers? Or are you know OO technologies but are interested in learning about 'Functional Programming'? Are you interested in combining different program paradigms and concurrent libraries to dramatically reduce bugs? Then this course is for you!
Prerequisites : 2-3 years of professional experience and a basic knowledge of a .NET programming language, recommended either C# or F#. No experience in functional programming and/or .NET Core is necessary.
Directions and Parking Information can be found here:
Where can I contact the organizer with any questions? For any questions about the event, e-mail tericcardo@
About the instructor : Riccardo Terrell is an information systems and technology professional and architect specializing in software & systems development. He has over 20 years experience delivering cost-effective technology solutions in the competitive business environment. Riccardo is passionate about integrating advanced technology tools to increase internal efficiency, enhance work productivity, and reduce operating costs. He's currently a Senior Consultant with Excella Consulting, and a MVP who is active in the .Net, functional programming, and F# communities. Riccardo believes in multi-paradigm programming to maximize the power of code and is the author of "Functional Concurrency in .NET”; which, features how to develop highly-scalable systems in F# & C#.

Modern patterns of parallel and distributed systems in .NET, MicroTek event

Credit and Money Management Workshop

Credit and Money Management Workshop

Saturday 16. May 2020
Small Business Workshop

Small Business Workshop

Saturday 30. May 2020
Small Business Workshop
Saturday 20. June 2020
Credit and Money Management Workshop
Saturday 11. July 2020
Small Business Workshop
Saturday 18. July 2020
Small Business Workshop
Saturday 15. August 2020
Credit and Money Management Workshop
Saturday 12. September 2020
Small Business Workshop
Saturday 19. September 2020
Find more interesting events
Get event recommendations based on your Facebook taste. Get it now!Show me the suitable events for meNot now