Effective Serialization with Python
1h 12mAdvanced2020-08-25
Authors

Miki Tebeka
CEO at 353Solutions
Course details
When you're making calls between different services, you can use serialization to move data around in a predictable manner for easy encoding and decoding. In this course, instructor Miki Tebeka takes a deep dive into the subject of serialization with Python, exploring key serialization formats, how to work with each format, and how to pick the right one for your Python project. He covers Python-specific serialization formats such as marshal and pickle; how to serialize and deserialize using JSON; how to encode and decode messages and serialize using protocol buffers; how to use msgpack; and more. Along the way, he shares challenges that allow you to put your new knowledge to the test.
Skills covered
Programming FoundationsAdvancedPythonProgramming LanguagesOpen SourceSoftware Development
Concepts
0. Introduction
- 01 - Serialization with Python
- 02 - What you should know
- 03 - Accessing the exercise files on GitHub
1. Serialization Overview
- 04 - Why do we need serialization
- 05 - Picking a serialization format
- 06 - General serialization rules
- 07 - Serialization formats overview
2. Python Specific Serialization Formats
- 08 - Marshal and pickle serialization
- 09 - Serialization with repr
- 10 - Using eval and exec for serialization
- 11 - Challenge - repr and read pickle
- 12 - Solution - repr and read pickle
3. JSON Serialization
- 13 - Basic JSON serialization
- 14 - Serializing custom types to JSON
- 15 - Streaming JSON
- 16 - Challenge - Convert log records to JSON
- 17 - Solution - Convert log records to JSON
4. Protocol Buffers Serialization
- 18 - Protocol buffers overview
- 19 - Writing the definition file
- 20 - Generating serializers
- 21 - Using protocol buffers
- 22 - gRPC
- 23 - Challenge - Trade objects size
- 24 - Solution - Trade objects size
5. Other Serialization Formats
- 25 - msgpack serialization
- 26 - YAML serialization
- 27 - XML serialization
- 28 - SQL
- 29 - Challenge - ETL from XML to database
- 30 - Solution - ETL from XML to database
6. Unicode
- 31 - What's Unicode
- 32 - str and Bytes
- 33 - Normalization
- 34 - Case-insensitive comparison
- 35 - Detect encoding
- 36 - Challenge - Counting strings
- 37 - Solution - Counting strings
Conclusion
- 38 - Next steps
Related courses
Related learn paths
- Introduction to Fundamental Skills for Data Work: Data Collection
- Navigating the Cybersecurity Threat Landscape
- Generative AI for Learning and Development Professional Certificate by LinkedIn Learning
- Explore a Career in Front-End Web Development
- Improve Your Business Analysis Skills
- Managing your Career as a Developer
- Professional Soft Skills Learning Pathway
- Business Writing Professional Certificate