Python Programming Training Classes in Training/Chicago,

Training Suggestions from the Experts

An Experienced Python developer must have

... an understanding of the following topics:  Map, Reduce and Filter, Numpy, Pandas, MatplotLib, File handling and Database integration.  All of these requirements assume a solid grasp of Python Idioms that include iterators, enumerators, generators and list comprehensions.  

To quickly get up to speed, we suggest you enroll in the following classes: Beginning Python and Advanced Python 3

Call for Details: 303.377.6176

Learn Python Programming in Training/Chicago and surrounding areas via our hands-on, expert led courses. All of our classes either are offered on an onsite, online or public instructor led basis. Here is a list of our current Python Programming related training offerings in Training/Chicago: Python Programming Training

We offer private customized training for groups of 3 or more attendees.
Upcoming Instructor Led Online and Public Python Programming Training Classes
Python for Scientists Training/Class 4 August, 2025 - 8 August, 2025 $1750
HSG Training Center 1312 17th Street, Unit #2502
Denver, CO 80203 (303)377-6176
Hartmann Software Group Training Registration

Python Programming Training Catalog

cost: $ 3length: 1390 day(s)
Python continues to be a popular programming language, perhaps owing to its easy learning curve, small code footprint, and versatility for business, web, and scientific uses. Python is useful for developing custom software tools, applications, web services, and cloud applications. In this course, you'll build upon your basic Python skills, learning more advanced topics such as object-ori ...
cost: $ 1290length: 3 day(s)
The focus will be on advanced data processing and the use of scientific libraries (e.g. numPy, Panda, SciPy, Jupyter Notebooks, etc.) ...
cost: $ 1190length: 3 day(s)
In this Python training course, students already familiar with Python programming will learn advanced Python techniques such as: IPython Notebook; the Collections module; mapping and filtering; lamba functions; advanced sorting; working with regular expressions; working with databases, CSV files, JSON and XML; writing object-oriented code; testing and debugging; and learning about Unicode and ...
cost: $ 1290length: 4 day(s)
In this Python training course, students already familiar with Python programming will learn advanced Python techniques such as IPython Notebook, the Collections module, mapping and filtering, lamba functions, advanced sorting, writing object-oriented code, testing and debugging, NumPy, pandas, matplotlib, regular expressions, Unicode, text encoding and working with databases, CSV files, JSON and ...
cost: $ 1190length: 3 day(s)
This three-day course provides the student with the knowledge to create and run Python scripts that include Python-specific data structures, function, modules, and classes. ...
cost: $ 1190length: 3 day(s)
This course provides an overview of the basic to advanced features of the R programming language. It is presented as a combination of lectures and hands-on exercises. Course Topics: ... Data Science Basics ... R Language Basics ... Intermediate R ... Charting and Graphing ... Statistical Processing ... Introduction to Text Analytics and the tm Package ... Introduction to Collaborative Filtering .. ...
cost: $ 1290length: 4 day(s)
This 4 day course picks up where Introduction to Python 3 leaves off, covering some topics in more detail, and adding many new ones, with a focus on enterprise development. This is a hands-on programming class. All concepts are reinforced by informal practice during the lecture followed by lab exercises. Many labs build on earlier labs, which helps students retain the earlier material. ...
cost: $ 1290length: 4 day(s)
This four day course leads the student from the basics of writing and running Python scripts to more advanced features such as file operations, regular expressions, working with binary data, and using the extensive functionality of Python modules. Extra emphasis is placed on features unique to Python, such as tuples, array slices, and output formatting. This is a hands-on programming class. All ...
cost: $ 1890length: 4 day(s)
This course introduces the Apache Spark distributed computing engine, and is suitable for developers, data analysts, ...
cost: $ 1090length: 3 day(s)
This course introduces the Apache Spark distributed computing engine, and is suitable for developers, data analysts, ...
cost: $ 1790length: 3 day(s)
This class employs the Python modules Matplotlib, Scipy and Numpy, Pandas, Sklearn and the IPython to explore a variety of different Machine Learning algorithms. Students will gain an in depth knowledge of Advanced Python constructs and a basic understanding of Machine Learning. ...
cost: $ 790length: 2 day(s)
This is a rapid introduction to NumPy, pandas and matplotlib for experienced Python programmers who are new to those libraries. Students will learn to use NumPy to work with arrays and matrices of numbers; learn to work with pandas to analyze data; and learn to work with matplotlib from within pandas. ...
cost: $ 1690length: 4 day(s)
This is a 4 - day course that provides a ramp - up to using Python for scientific and mathematical computing. Starting with the basics, it progresses to the most important Python modules for working with data, from arrays, to statistics, to plotting result s. The material is geared ...
cost: $ 1750length: 5 day(s)
This is a 5 - day course that provides a ramp - up to using Python for data science/machine learning. Starting with the basics, it progresses to the most important Python modules for working with data, from arrays, to statistics, to plotting results. The material is geared towards data scientists and engineers. This is an intense, hands - on, programming class. All concepts are reinforced by ...
cost: $ 1290length: 4 day(s)
This course begins with an abbreviated primer on Python (language syntax, data structures, basic data processing, Python functions, modules and classes). The remainder of the course covers open source Python tools relevant to solving your day-to-day financial programming problems. Specific topics addressed include: array computation and mathematics with NumPy; statistical computation with SciPy; ...
cost: $ 1750length: 5 day(s)
This is a 5 - day course that provides a ramp - up to using Python for scientific and mathematical computing. Starting with the basics, it progresses to the most important Python modules for working with data, from arrays, to statistics, to plotting result s. The material is geared towards scientists and engineers. This is an intense, hands - on, programming class. All concepts are reinforced by ...
cost: $ 1290length: 4 day(s)
This four day course leads the student from the basics of writing and running Python scripts to more advanced features such as file operations, regular expressions, working with binary data, and using the extensive functionality of Python modules. Extra emphasis is placed on features unique to Python, such as tuples, array slices, and output formatting. This is a hands-on programming class. All ...
cost: $ 790length: 2 day(s)
This two day course covers a handful of various Python advanced topics including high level data structures, network programming, writing GUI's in Python, and CGI programming. This course is particularly well suited for programmers who are building application frameworks, integrating Python with other software, or using Python for distributed computing. ...
cost: $ 1290length: 4 day(s)
This 4 day course picks up where Python I leaves off, covering some topics in more detail, and adding many new ones, with a focus on enterprise development. This is a hands-on programming class. All concepts are reinforced by informal practice during the lecture followed by lab exercises. Many labs build on earlier labs, which helps students retain the earlier material. Audience: Advanced users, ...

Course Directory [training on all levels]

Upcoming Classes
Gain insight and ideas from students with different perspectives and experiences.

Blog Entries publications that: entertain, make you think, offer insight

For many people, one of the most exciting and challenging career choices is computer programming. There are several ways that people can enter the computer programming profession; however, the most popular method has traditionally been the educational route through an educational institution of higher learning such as a college or technical school.

Even though many people think of computer programmers as individuals with a technical background, some programmers enter the computer programming profession without a structured technical background. In addition, after further investigation several interesting facts are uncovered when a profile of the best computer programmers is analyzed.

When observing how the top programmers in the profession work, there are four characteristics that tend to separate the top programmers from the average programmers. These four characteristics are:

1.Creativity.
2.Attention To Detail.
3.Learns New Things Quickly.
4.Works Well With Others.

Creativity.

Being a top computer programmer requires a combination of several unique qualities. One of these qualities is creativity. In its very essence, computer programming is about creating programs to accomplish specific tasks in the most efficient manner. The ability to develop computer code to accomplish tasks takes a certain level of creativity. The top computer programmers tend to have a great deal of creativity, and they have the desire to try things in a variety of ways to produce the best results for a particular situation.

Attention To Detail.

While creativity is important for top programmers an almost opposite quality is needed to produce great computer programs on a consistent basis, this quality is attention to detail. The very nature of computer programming requires the need to enter thousands of lines of computer programming code. What separates many top programmers from average programmers is the ability to enter these lines of code with a minimum amount of errors and just as importantly test the code to catch any unseen errors. Top computer programmers have the necessary attention to detail to successfully create and enter the necessary computer code project after project.

Learns New Things Quickly.

The technology field is constantly changing. Almost daily new technology innovations are being developed that require computer programmers to learn new technology or enhancements to current technology on a regular basis. The top computer programmers are able to learn new technology or enhancements quickly, and then they are able to apply what has been learned to their current and future programming projects in a seamless manner.

Works Well With Others.

There are several differences between top computer programmers and other programmers. However, one of the biggest differences is the ability to work well with others. By its very nature, computer programming requires programmers to spend a lot of time alone developing computer code, but the top computer programmers are able to excel at this aspect of computer programming along with being able to work well with other people.

Regarding computer programmers, the top programmers approach and handle their jobs differently than other programmers, and these differences set them apart from the other programmers. For any average programmers who have the desire to excel as a computer programmer, they must understand and embrace the characteristics of top programmers.

 

Related:

How important is it to exercise for people in technology that sit for hours on end?

What are a few unique pieces of career advice that nobody ever mentions?

Being treated like a twelve year old at work by a Tasmanian-devil-manager and not sure what to do about it? It is simply a well-known fact that no one likes to be micro managed. Not only do they not like to be micro managed, but tend to quit for this very reason. Unfortunately the percentage of people leaving their jobs for this reason is higher that you would imagine. Recently, an employee retention report conducted by TINYpulse, an employee engagement firm, surveyed 400 full-time U.S. employees concluded that, "supervisors can make or break employee retention."

As companies mature, their ability to manage can be significant to their bottom line as employee morale, high staff turnover and the cost of training new employees can easily reduce productivity and consequently client satisfaction.  In many cases, there is a thin line between effective managing and micro managing practices. Most managers avoid micro managing their employees. However, a decent percentage of them have yet to find effective ways to get the most of their co-workers.  They trap themselves by disempowering people's ability to do their work when they hover over them and create an unpleasant working environment. This behavior may come in the form of incessant emailing, everything having to be done a certain way (their way), desk hovering, and a need to control every part of an enterprise, no matter how small.

Superimpose the micro manager into the popular practice of Agile-SCRUM methodology and you can imagine the creative ways they can monitor everything in a team, situation, or place. Although, not always a bad thing, excessive control, can lead to burnout of managers and teams alike.  As predicted, agile project management has become increasingly popular in the last couple of decades in project planning, particularly in software development.  Agile methodology when put into practice, especially in IT, can mean releasing faster functional software than with the traditional development methods. When done right, it enables users to get some of the business benefits of the new software faster as well as enabling the software team to get rapid feedback on the software's scope and direction.

Despite its advantages, most organizations have not been able to go “all agile” at once. Rather, some experiment with their own interpretation of agile when transitioning.  A purist approach for instance, can lead to an unnecessarily high agile project failure, especially for those that rely on tight controls, rigid structures and cost-benefit analysis.  As an example, a premature and rather rapid replacement of traditional development without fully understating the implications of the changeover process or job roles within the project results in failure for many organizations.  

In programming, memory leaks are a common issue, and it occurs when a computer uses memory but does not give it back to the operating system. Experienced programmers have the ability to diagnose a leak based on the symptoms. Some believe every undesired increase in memory usage is a memory leak, but this is not an accurate representation of a leak. Certain leaks only run for a short time and are virtually undetectable.

Memory Leak Consequences

Applications that suffer severe memory leaks will eventually exceed the memory resulting in a severe slowdown or a termination of the application.

How to Protect Code from Memory Leaks?

Preventing memory leaks in the first place is more convenient than trying to locate the leak later. To do this, you can use defensive programming techniques such as smart pointers for C++.  A smart pointer is safer than a raw pointer because it provides augmented behavior that raw pointers do not have. This includes garbage collection and checking for nulls.

If you are going to use a raw pointer, avoid operations that are dangerous for specific contexts. This means pointer arithmetic and pointer copying. Smart pointers use a reference count for the object being referred to. Once the reference count reaches zero, the excess goes into garbage collection. The most commonly used smart pointer is shared_ptr from the TR1 extensions of the C++ standard library.

Static Analysis

The second approach to memory leaks is referred to as static analysis and attempts to detect errors in your source-code. CodeSonar is one of the effective tools for detection. It provides checkers for the Power of Ten coding rules, and it is especially competent at procedural analysis. However, some might find it lagging for bigger code bases.

How to Handle a Memory Leak

For some memory leaks, the only solution is to read through the code to find and correct the error. Another one of the common approaches to C++ is to use RAII, which an acronym for Resource Acquisition Is Initialization. This approach means associating scoped objects using the acquired resources, which automatically releases the resources when the objects are no longer within scope. RAII has the advantage of knowing when objects exist and when they do not. This gives it a distinct advantage over garbage collection. Regardless, RAII is not always recommended because some situations require ordinary pointers to manage raw memory and increase performance. Use it with caution.

The Most Serious Leaks

Urgency of a leak depends on the situation, and where the leak has occurred in the operating system. Additionally, it becomes more urgent if the leak occurs where the memory is limited such as in embedded systems and portable devices.

To protect code from memory leaks, people have to stay vigilant and avoid codes that could result in a leak. Memory leaks continue until someone turns the system off, which makes the memory available again, but the slow process of a leak can eventually prejudice a machine that normally runs correctly.

 

Related:

The Five Principles of Performance

In Demand IT Skills

The python keyword global is used in a function to distinguish a local representation of a variable with the same name. 

 

glbvar = 0

def setglbvar():
    global glbvar # include this declaration so that updates to glbvar are NOT LOCAL to this function
    glbvar = 1

def printglbvar():
    print glbvar     # No need for global declaration to read value of globvar

setglbvar()
printglbvar()       # Prints 1

training details locations, tags and why hsg

A successful career as a software developer or other IT professional requires a solid understanding of software development processes, design patterns, enterprise application architectures, web services, security, networking and much more. The progression from novice to expert can be a daunting endeavor; this is especially true when traversing the learning curve without expert guidance. A common experience is that too much time and money is wasted on a career plan or application due to misinformation.

The Hartmann Software Group understands these issues and addresses them and others during any training engagement. Although no IT educational institution can guarantee career or application development success, HSG can get you closer to your goals at a far faster rate than self paced learning and, arguably, than the competition. Here are the reasons why we are so successful at teaching:

  • Learn from the experts.
    1. We have provided software development and other IT related training to many major corporations since 2002.
    2. Our educators have years of consulting and training experience; moreover, we require each trainer to have cross-discipline expertise i.e. be Java and .NET experts so that you get a broad understanding of how industry wide experts work and think.
  • Discover tips and tricks about Python Programming programming
  • Get your questions answered by easy to follow, organized Python Programming experts
  • Get up to speed with vital Python Programming programming tools
  • Save on travel expenses by learning right from your desk or home office. Enroll in an online instructor led class. Nearly all of our classes are offered in this way.
  • Prepare to hit the ground running for a new job or a new position
  • See the big picture and have the instructor fill in the gaps
  • We teach with sophisticated learning tools and provide excellent supporting course material
  • Books and course material are provided in advance
  • Get a book of your choice from the HSG Store as a gift from us when you register for a class
  • Gain a lot of practical skills in a short amount of time
  • We teach what we know…software
  • We care…
learn more
page tags
what brought you to visit us
Training/Chicago,  Python Programming Training , Training/Chicago,  Python Programming Training Classes, Training/Chicago,  Python Programming Training Courses, Training/Chicago,  Python Programming Training Course, Training/Chicago,  Python Programming Training Seminar

Interesting Reads Take a class with us and receive a book of your choosing for 50% off MSRP.