What's makes the difference between a casual coder and a professional software engineer? How do beginner Pythonists become intermediate developers?
One part masterclass, one part crash course, Enterprise Software with Python answers this question by touching on every element of the enterprise software development. PayPal's Lead Developer of Python Infrastructure Mahmoud Hashemi busts myths and offers guidance, using Python to demonstrate standard patterns and practices that apply across the software industry.
Python is renowned for making it easy to get started with programming, but a lot of Python programmers are set adrift after learning the language basics. Enterprise Software with Python gives you an insider's introduction to:
- Defining software and software requirements for professional practice
- Fortifying your corporate environments with the power of open source
- Implementing, debugging, and reviewing project implementations
- Measuring, optimizing, and scaling applications at the enterprise level
- Preventing availability and security disasters with simple, practical changes
- Testing and documenting codebases for long-term maintenance
- Packaging and deploying optimally within your organization
- Winning autonomy by earning the confidence of your management and teammates
Whether you are currently at a large organization, hope to work in the enterprise, or are just looking to further develop your skills, Enterprise Software with Python will help you take your craft to the next level.
Mahmoud Hashemi is lead developer of Python Infrastructure at PayPal, where he focuses on service frameworks, application security, and system resiliency. He is an avid Wikipedian and co-creator of several Wikipedia-based projects, such as Listen To Wikipedia (listen.hatnote.com) and The Weeklypedia (weekly.hatnote.com). He is also the author of several other open source libraries (github.com/mahmoud).
Table of Contents
- Introduction to Enterprise Software with Python
- Defining the Basics
Architecture & Design
- Designing Architectures: Professional Planning 00:05:44
- Gathering Requirements: Understanding the 6 Aspects of Software 00:16:56
- Researching Environments: From Production to Development 00:17:48
- Choosing Dependencies: Evaluating Building Blocks 00:17:35
- Getting Assistance: Finding Help in the Software World 00:13:20
- Presenting Designs: Navigating the Organizational and Interpersonal 00:27:18
- Development Environments: Editors and Dev Tools 00:16:33
- Source Control, Issue Tracking, and Continuous Integration 00:10:42
- Workflow: Starting a Python Project 00:20:16
- Design Patterns: Idioms for Python Projects 00:37:32
- Debugging: Solving Problems in Python projects 00:27:14
- Security: Software Risk Management Fundamentals 00:27:34
- Code Review: Python Antipatterns and Collaboration 00:15:47
- Testing: Practical Python Quality Engineering 00:15:19
- Logging and Monitoring: Introspectable Python Projects 00:22:16
- Profiling and Performance: Strategies for High-Speed Python 00:45:48
- Documentation: Preserving the Legacy with Python 00:22:33
- Packaging and Deployment: Going Live with Python 00:11:21
- Next Steps
- Title: Enterprise Software with Python
- Release date: February 2016
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781491943755