Simplifying System Complexity through Data-Oriented Programming
In this GOTO Aarhus 2023 presentation, Yehonathan Sharvit discusses the principles of Data-Oriented Programming and how it can be utilized to reduce complexity in system design.
🔥 Related Trending Topics
LIVE TRENDSThis video may be related to current global trending topics. Click any trend to explore more videos about what's hot right now!
THIS VIDEO IS TRENDING!
This video is currently trending in Thailand under the topic 'สภาพอากาศ'.
About this video
This presentation was recorded at GOTO Aarhus 2023. #GOTOcon #GOTOaar
https://gotoaarhus.com
Yehonathan Sharvit - Author of Data-Oriented programming @viebel
RESOURCES
https://twitter.com/viebel
https://github.com/viebel
https://linkedin.com/in/viebel
https://blog.klipse.tech
ABSTRACT
Complexity is one of the main difficulties in the development of successful software systems. Modern programming languages and frameworks make it easy to develop and deploy our code quickly, but as the code base grows, complexity makes it challenging to add new features.
Data-Oriented programming is a paradigm that aims at reducing the complexity of information systems such as back-end applications, web services, web workers, and front-end applications by rethinking data.
Data-Oriented programming treats data as an immutable value that is manipulated by general-purpose functions. Moreover, data is validated à la carte.
In this talk, we illustrate the principles of Data-Oriented programming in the context of a software production system.
After attending this talk, you will be able to apply Data-Oriented programming principles in your preferred programming language and reduce the complexity of the systems you build.
Takeaways
• Apply Data-Oriented Programming principles in your preferred programming language
• Apply data validation techniques without using static types
• Represent data with immutable data structures
• Manipulate data with generic functions [...]
TIMECODES
00:00 Intro
01:10 What is complexity?
03:00 Information systems
03:54 Principles of data-oriented programming
05:49 What makes a software system complex?
07:23 Principle No 1: Separate code from data
12:16 Principle No 2: Represent data with generic data structures
22:51 Principle No 3: Do not mutate data
28:42 Immutability in practice
29:42 What about data validation?
36:06 History of data-oriented programming
38:38 Summary
39:17 Outro
Read the full abstract here:
https://gotoaarhus.com/2023/sessions/2535
RECOMMENDED BOOKS
Yehonathan Sharvit • Data-Oriented Programming • https://amzn.to/3NFPbSV
Yehonathan Sharvit • The Clojure Workshop • https://amzn.to/3NfFN77
https://twitter.com/GOTOcon
https://www.linkedin.com/company/goto-
https://www.instagram.com/goto_con
https://www.facebook.com/GOTOConferences
#Complexity #DataOriented #DataOrientedProgramming #Programming #SoftwareEngineering #YehonathanSharvit #Viebel #Immutability #Clojure
CHANNEL MEMBERSHIP BONUS
Join this channel to get early access to videos & other perks:
https://www.youtube.com/channel/UCs_tLP3AiwYKwdUHpltJPuA/join
Looking for a unique learning experience?
Attend the next GOTO conference near you! Get your ticket at https://gotopia.tech
Sign up for updates and specials at https://gotopia.tech/newsletter
SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily.
https://www.youtube.com/user/GotoConferences/?sub_confirmation=1
Video Information
Views
45.4K
Total views since publication
Likes
292
User likes and reactions
Duration
39:34
Video length
Published
Jun 26, 2023
Release date
Quality
hd
Video definition
About the Channel
Tags and Topics
This video is tagged with the following topics. Click any tag to explore more related content and discover similar videos:
#GOTO #GOTOcon #GOTO Conference #GOTO (Software Conference) #Videos for Developers #Computer Science #Programming #Software Engineering #GOTOpia #Tech #Software Development #Tech Channel #GOTOaar #GOTO Aarhus #Yehonathan Sharvit #Complexity #Data-Oriented Programming #Viebel #Clojure #Immutability
Tags help categorize content and make it easier to find related videos. Browse our collection to discover more content in these categories.