Python 3000: Tactical IPC
0.0 (0 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
16 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Python 3000: Tactical IPC to your Wishlist.

Add to Wishlist

Python 3000: Tactical IPC

Techniques, Technologies and More Programming Topics
0.0 (0 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
16 students enrolled
Created by Randall Nagy
Last updated 8/2016
Current price: $10 Original price: $45 Discount: 78% off
5 hours left at this price!
30-Day Money-Back Guarantee
  • 44 mins on-demand video
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Gain hands-on experience locating, running, writing and reading information from cooperating external programs.
  • Discover how to write programs that can you can use start and / or automate programs.
  • Learn how to both send and receive information to external programs using cross-platform standard input, as well as output streams.
  • Learn how to interface with the Python interpreter to run dynamically-created commands, as well as stand-alone scripts.
  • ... and more!
View Curriculum
  • Students should be comfortable using Python
  • The completion of Python 1000 & Python 2000 is recommended.

Once we have learned any programming language, the next task is to become familiar with the most common activities required to get our jobs done. 

 In these lessons, we will draw upon our experience with Python 3 in order to learn how to re-use the work of others developers, no matter which programming language they use. By leveraging the inter-process communication abilities common between all modern operating systems, we will discover the common denominator required for inter-program cooperation. Not only are these techniques universally available, but also required to speed-up cPython - the most used version of Python - by circumventing the Global Interpreter Lock (GIL.)

From passing startup-parameters to “piping” data in and out of other applications, as well as learning how to start, stop, and share data between both custom & popular applications, professionals interested in discovering cross-platform software automation and testing techniques will find these lessons truly valuable.

Who is the target audience?
  • Students who are looking to re-use / test other programs will need to know these techniques.
  • Those who want to add power to their cPython programs by removing the GIL slowdown.
  • Learners who want to understand how to chain programs together to manage inputs & gather run-time output.
Students Who Viewed This Course Also Viewed
Curriculum For This Course
Inter-Process Communications in Python
7 Lectures 43:43

A process running all-by-itself is like a horse running all alone. While we might enjoy the ride, the imagination begins to wonder what many horses - working together - might accomplish!

Upon the realization that any computer system has many other types of processes we are able to work with, the imagination is now set so as to enable our Python applications to do many fascinating things. -From connecting to web sites & downloading data,  to sending us text messages or load-balancing our workstations, there is never a need to re-invent the wheel when there are so many other vehicles for us to use.

In this training we will cover the width & breadth of what you will need to invoke & and manage build-in "shell" operations, as well as external programs.

Preview 01:13

We will review the major reasons why cPython users are most likely to want to use multiple processes. In this lesson we will also create a program that will help us enumerate all of the locations found along our default operating-system path. We will also review how to determine which type of (i.e. Windows or POSIX) operating system we are running on.

The Path 'Things Live On

By chaining inputs and outputs together, we discussed how software can fit together.

In as much as both Windows and POSIX each have a basic sorting capability, our first cross-platform task will be to re-use the external command from Python.

In this lesson, we will:

  • Write a cross-platform program to re-use the SORT command on 'nt' and 'posix.'

  • Learn how to send data to an external command using the standard-output

  • Discover how to retrieve the exit() code from an external application

Preview 09:41

Many software developers are surprised to discover that many commands we use every day are actually “built in” to a command interpreter.

While a source of confusion for many new software developers, in this lesson we will demystify the process by demonstrating how to invoke built-in commands from Python 3.

The goals for this lesson are to:

  • Understand the difference between external and commands

  • Learn how to interface with non-shell programs to automate command-line interfaces

External & Internal Command Types

When used as a “shell tool,” Python can be used to run everything from simple Python expressions, to complete applications & testing scenarios.

In this lesson, we will:

  • Learn how to implicitly and explicitly use Popen to run Python files

  • Learn how call and external script

  • Discover how to use Python as a “shell” or “command line” processor.

Python as Shell

The name “recursion” sounds complicated, but the idea of iteratively processing items such as nested folders is as simple as it is power full.

• Learn how call an parameterized, external, Python Script .

• Discover how to “filter” local directory content .

• Write a program to count files in a directory.

• Create & call a program that can iteratively search, tally, and report on directory trees & content.

Recursive Callme

Review & test a parent / child set of processes. Designed to leverage the operating-system to cooperatively work together, feel free to modify the re-usable duo to power your own GIL-avoiding inspirations!

About the Instructor
Randall Nagy
3.8 Average rating
168 Reviews
9,655 Students
14 Courses
Consulting Engineer & Educator

I've over 30 years of experience.

"Mr. Nagy presently earns his keep in the world by providing technology mentoring, training, hands-on consulting / software development, & customized content creation services.

Mr. Nagy has served as both a Principal Trainer & Principal Software Development Engineer. His "Linked In" recommendations testify to a 30+ year track record of excellent personal communication skills, design & analysis abilities, as well as superior consulting & training results.

Though tenured, Mr. Nagy is most often described as being extremely technical, yet very personable & easy to get along with.

The author of over 26 Open-Source Projects, Mr. Nagy's hands-on experience includes topics such as C/C++, Python, SO / SOA, Security, Testing, UML, Java/JEE, .NET (C# and VB.NET), LAMP, Hadoop, jQuery, HTML 5, Android, and more. Maintaining techniques in embedded engineering, Mr. Nagy has experience creating custom training for such expert-level, high-performance technologies as IBM Rhapsody.

Technically speaking, "... from the best Service-Oriented practices to embedded engineering, I maintain an extensive hands-on skill set. From Java and C/ C++, C#, PHP, Python, Ruby, HTML 5 and Web 2.0, I have both designed and implemented architectures from the UI / RIA to the server, well into the RFC Layer. …

I also have over 150 successful training / mentoring, publication, and speaking engagements to my credit. Recent experience includes such state-of-the art technologies as Hadoop, Android, WSO2, and TFS."