O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Enterprise Software with Python

Video Description

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

  1. Introduction to Enterprise Software with Python
    1. Introduction and Overview 00:03:45
    2. Prerequisites and Viewing Guide 00:04:38
  2. Defining the Basics
    1. What is Enterprise Software? 9 Hallmarks of Enterprise Software 00:08:50
    2. What is Python? 3 Perspectives for the Organization 00:08:03
    3. What is Python Not? 4 Common Misconceptions 00:08:08
    4. When to Use Python? Motivations and Applications 00:13:24
  3. Architecture & Design
    1. Designing Architectures: Professional Planning 00:05:44
    2. Gathering Requirements: Understanding the 6 Aspects of Software 00:16:56
    3. Researching Environments: From Production to Development 00:17:48
    4. Choosing Dependencies: Evaluating Building Blocks 00:17:35
    5. Getting Assistance: Finding Help in the Software World 00:13:20
    6. Presenting Designs: Navigating the Organizational and Interpersonal 00:27:18
  4. Best Practices
    1. Development Environments: Editors and Dev Tools 00:16:33
    2. Source Control, Issue Tracking, and Continuous Integration 00:10:42
    3. Workflow: Starting a Python Project 00:20:16
    4. Design Patterns: Idioms for Python Projects 00:37:32
    5. Debugging: Solving Problems in Python projects 00:27:14
    6. Security: Software Risk Management Fundamentals 00:27:34
    7. Code Review: Python Antipatterns and Collaboration 00:15:47
    8. Testing: Practical Python Quality Engineering 00:15:19
    9. Logging and Monitoring: Introspectable Python Projects 00:22:16
    10. Profiling and Performance: Strategies for High-Speed Python 00:45:48
    11. Documentation: Preserving the Legacy with Python 00:22:33
    12. Packaging and Deployment: Going Live with Python 00:11:21
  5. Next Steps
    1. Project Ideas: Building Experience 00:11:11
    2. Technology Evangelism: Building a Community 00:18:02
    3. Other Resources: Building Skills 00:11:43
    4. Closing and Parting Words 00:05:25