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

The original article was posted by Michael Veksler on Quora

A very well known fact is that code is written once, but it is read many times. This means that a good developer, in any language, writes understandable code. Writing understandable code is not always easy, and takes practice. The difficult part, is that you read what you have just written and it makes perfect sense to you, but a year later you curse the idiot who wrote that code, without realizing it was you.

The best way to learn how to write readable code, is to collaborate with others. Other people will spot badly written code, faster than the author. There are plenty of open source projects, which you can start working on and learn from more experienced programmers.

Readability is a tricky thing, and involves several aspects:

  1. Never surprise the reader of your code, even if it will be you a year from now. For example, don’t call a function max() when sometimes it returns the minimum().
  2. Be consistent, and use the same conventions throughout your code. Not only the same naming conventions, and the same indentation, but also the same semantics. If, for example, most of your functions return a negative value for failure and a positive for success, then avoid writing functions that return false on failure.
  3. Write short functions, so that they fit your screen. I hate strict rules, since there are always exceptions, but from my experience you can almost always write functions short enough to fit your screen. Throughout my carrier I had only a few cases when writing short function was either impossible, or resulted in much worse code.
  4. Use descriptive names, unless this is one of those standard names, such as i or it in a loop. Don’t make the name too long, on one hand, but don’t make it cryptic on the other.
  5. Define function names by what they do, not by what they are used for or how they are implemented. If you name functions by what they do, then code will be much more readable, and much more reusable.
  6. Avoid global state as much as you can. Global variables, and sometimes attributes in an object, are difficult to reason about. It is difficult to understand why such global state changes, when it does, and requires a lot of debugging.
  7. As Donald Knuth wrote in one of his papers: “Early optimization is the root of all evil”. Meaning, write for readability first, optimize later.
  8. The opposite of the previous rule: if you have an alternative which has similar readability, but lower complexity, use it. Also, if you have a polynomial alternative to your exponential algorithm (when N > 10), you should use that.

Use standard library whenever it makes your code shorter; don’t implement everything yourself. External libraries are more problematic, and are both good and bad. With external libraries, such as boost, you can save a lot of work. You should really learn boost, with the added benefit that the c++ standard gets more and more form boost. The negative with boost is that it changes over time, and code that works today may break tomorrow. Also, if you try to combine a third-party library, which uses a specific version of boost, it may break with your current version of boost. This does not happen often, but it may.

Don’t blindly use C++ standard library without understanding what it does - learn it. You look at std::vector::push_back() documentation at it tells you that its complexity is O(1), amortized. What does that mean? How does it work? What are benefits and what are the costs? Same with std::map, and with std::unordered_map. Knowing the difference between these two maps, you’d know when to use each one of them.

Never call new or delete directly, use std::make_unique and [cost c++]std::make_shared[/code] instead. Try to implement usique_ptr, shared_ptr, weak_ptr yourself, in order to understand what they actually do. People do dumb things with these types, since they don’t understand what these pointers are.

Every time you look at a new class or function, in boost or in std, ask yourself “why is it done this way and not another?”. It will help you understand trade-offs in software development, and will help you use the right tool for your job. Don’t be afraid to peek into the source of boost and the std, and try to understand how it works. It will not be easy, at first, but you will learn a lot.

Know what complexity is, and how to calculate it. Avoid exponential and cubic complexity, unless you know your N is very low, and will always stay low.

Learn data-structures and algorithms, and know them. Many people think that it is simply a wasted time, since all data-structures are implemented in standard libraries, but this is not as simple as that. By understanding data-structures, you’d find it easier to pick the right library. Also, believe it or now, after 25 years since I learned data-structures, I still use this knowledge. Half a year ago I had to implemented a hash table, since I needed fast serialization capability which the available libraries did not provide. Now I am writing some sort of interval-btree, since using std::map, for the same purpose, turned up to be very very slow, and the performance bottleneck of my code.

Notice that you can’t just find interval-btree on Wikipedia, or stack-overflow. The closest thing you can find is Interval tree, but it has some performance drawbacks. So how can you implement an interval-btree, unless you know what a btree is and what an interval-tree is? I strongly suggest, again, that you learn and remember data-structures.

These are the most important things, which will make you a better programmer. The other things will follow.

Every programming language has a mechanism to allow the programmer to create variables which hold custom data entered in by either the coder themselves or by the user of the application.

Regardless of whether you’re new to programming or not, you will have used variables and you should understand that in javascript they can hold any value such as a number or a string of text.

There is also another type of variable called an Array. Now, depending on who you talk to, some will say an array is actually an object, while others say it is a variable. Neither one is wrong but for the sake of simplicity we’ll refer to it as a variable.

Now, arrays are special because they can hold multiple values as opposed to standard variables which can only hold a single value at one time. If you can, try and imagine that your computer’s memory is made up of thousands of little boxes, and each of those boxes has an address which javascript will use to retrieve the array values when needed.

A whole new world was thrown wide open with the advent of the concept of open source. The biggest advantage of open source projects is the easy availability of the source code and also the rights to tweak it or modify the code as we deem fit.

Listed below are some top open source projects that are making waves with their innovative ideas at this moment.

ProjectLibre

Project Libre is the open source replacement of Microsoft Project. It was one among the top 10 open source projects of 2013. With over 6 million downloads; it has most certainly captured the imagination of people around the world. Details of project Libre could be found at http://www.projectlibre.org/ . Project Libre has separate release for mainframes. It also has a web based version which further increases its overall appeal. One of the main advantages is that it has a list of tasks that can be tracked to closure. It can also be used in conjunction with LibreOffice to provide a great set of tools to the team leaders.

Diaspora

It’s befuddling when you think about how many ways there are to communicate in 2013. I’d say there are too many new ways to communicate – social media, phone, Skype, instant message, text message, email, it goes on and on. But do any of them outweigh the power of a good old-fashioned face-to-face meeting? Most business executives would argue no. Nothing can replace a face-to-face meeting, at least yet.

 

That said, face-to-face meetings are without question the most expensive kind, given the travel costs required to make them a reality, and companies around the globe have been trying to make them more financially manageable ever since the recession set in. But recession or no, face-to-face meetings are rarely in the budget cards for small businesses. So how can entrepreneurs around the globe get more out of their virtual meetings while ensuring any physical meeting is worth the cost?

  

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.