Category Archives: Training

Webinar: Python for Data Science: A Tour of Enthought’s Professional Training Course

DataView Python for Data Science Webinar
What: A guided walkthrough and Q&A about Enthought’s technical training course “Python for Data Science and Machine Learning” with VP of Training Solutions, Dr. Michael Connell

Who Should Watch: individuals, team leaders, and learning & development coordinators who are looking to better understand the options to increase professional capabilities in Python for data science and machine learning applications

VIEW


Enthought’s Python for Data Science training course is designed to accelerate the development of skill and confidence in using Python’s core data science tools — including the standard Python language, the fast array programming package NumPy, and the Pandas data analysis package, as well as tools for database access (DBAPI2, SQLAlchemy), machine learning (scikit-learn), and visual exploration (Matplotlib, Seaborn).

In this webinar, we give you the key information and insight you need to evaluate whether Enthought’s Python for Data Science course is the right solution to advance your professional data science skills in Python, including:

  • Who will benefit most from the course
  • A guided tour through the course topics
  • What skills you’ll take away from the course, how the instructional design supports that
  • What the experience is like, and why it is different from other training alternatives (with a sneak peek at actual course materials)
  • What previous course attendees say about the course

VIEW


michael_connell-enthought-vp-trainingPresenter: Dr. Michael Connell, VP, Enthought Training Solutions

Ed.D, Education, Harvard University
M.S., Electrical Engineering and Computer Science, MIT


Considering Moving to Python for Data Science?

Then Enthought’s Python for Data Science training course is definitely for you! This class has been particularly appealing to people who have been using other tools like R or SAS (or even Excel) for their data science work and want to start applying their analytic skills using the Python toolset.  And it’s no wonder — Python has been identified as the most popular coding language for five years in a row for good reason.

One reason for Python’s broad popularity across a range of disciplines is its efficiency and ease-of-use. Many people consider Python more fun to work in than other languages (and we agree!). Another reason for its popularity among data analysts and data scientists in particular is Python’s extensive (and growing) open source library of powerful tools for preparing, visualizing, analyzing, and modeling data.

Python is also an extraordinarily comprehensive toolset – it supports everything from interactive analysis to automation to software engineering to web app development within a single language and plays very well with other languages like C/C++ or FORTRAN so you can continue leveraging your existing code libraries written in those other languages.

Many organizations are moving to Python so they can consolidate all of their technical work streams under a single comprehensive toolset. In the first part of this class we’ll give you the fundamentals you need to switch from another language to Python and then we cover the core tools that will enable you to do in Python what you were doing with other tools, only faster!

Additional Resources

Upcoming Open Python for Data Science Sessions:
Austin, TX, June 12-16, 2017
San Jose, CA, July 17-21, 2017Learn MoreHave a group interested in training? We specialize in group and corporate training. Contact us or call 512.536.1057.
Download Enthought’s Machine Learning with Python’s Scikit-Learn Cheat Sheets
Enthought's Machine Learning with Python Cheat Sheets
Download Enthought’s Pandas Cheat SheetsEnthought's Pandas Cheat Sheets

Webinar – Python for Professionals: The Complete Guide to Enthought’s Technical Training Courses

View the Python for Professionals Webinar

What: Presentation and Q&A with Dr. Michael Connell, VP, Enthought Training Solutions
Who Should Watch: Anyone who wants to develop proficiency in Python for scientific, engineering, analytic, quantitative, or data science applications, including team leaders considering Python training for a group, learning and development coordinators supporting technical teams, or individuals who want to develop their Python skills for professional applications

View Recording  


Python is an uniquely flexible language – it can be used for everything from software engineering (writing applications) to web app development, system administration to “scientific computing” — which includes scientific analysis, engineering, modeling, data analysis, data science, and the like.

Unlike some “generalist” providers who teach generic Python to the lowest common denominator across all these roles, Enthought specializes in Python training for professionals in scientific and analytic fields. In fact, that’s our DNA, as we are first and foremost scientists, engineers, and data scientists ourselves, who just happen to use Python to drive our daily data wrangling, modeling, machine learning, numerical analysis, simulation, and more.

If you’re a professional using Python, you’ve probably had the thought, “how can I be better, smarter, and faster in using Python to get my work done?” That’s where Enthought comes in – we know that you don’t just want to learn generic Python syntax, but instead you want to learn the key tools that fit the work you do, you want hard-won expert insights and tips without having to discover them yourself through trial and error, and you want to be able to immediately apply what you learn to your work.

Bottom line: you want results and you want the best value for your invested time and money. These are some of the guiding principles in our approach to training.

In this webinar, we’ll give you the information you need to decide whether Enthought’s Python training is the right solution for your or your team’s unique situation, helping answer questions such as:

  • What kinds of Python training does Enthought offer? Who is it designed for? 
  • Who will benefit most from Enthought’s training (current skill levels, roles, job functions)?
  • What are the key things that make Enthought’s training different from other providers and resources?
  • What are the differences between Enthought’s training courses and who is each one best for?
  • What specific skills will I have after taking an Enthought training course?
  • Will I enjoy the curriculum, the way the information is presented, and the instructor?
  • Why do people choose to train with Enthought? Who has Enthought worked with and what is their feedback?

We’ll also provide a guided tour and insights about our our five primary course offerings to help you understand the fit for you or your team:

View Recording  


michael_connell-enthought-vp-training

Presenter: Dr. Michael Connell, VP, Enthought Training Solutions

Ed.D, Education, Harvard University
M.S., Electrical Engineering and Computer Science, MIT


Continue reading

Webinar: An Exclusive Peek “Under the Hood” of Enthought Training and the Pandas Mastery Workshop

See the webinar

Enthought’s Pandas Mastery Workshop is designed to accelerate the development of skill and confidence with Python’s Pandas data analysis package — in just three days, you’ll look like an old pro! This course was created ground up by our training experts based on insights from the science of human learning, as well as what we’ve learned from over a decade of extensive practical experience of teaching thousands of scientists, engineers, and analysts to use Python effectively in their everyday work.

In this webinar, we’ll give you the key information and insight you need to evaluate whether the Pandas Mastery Workshop is the right solution to advance your data analysis skills in Python, including:

  • Who will benefit most from the course
  • A guided tour through the course topics
  • What skills you’ll take away from the course, how the instructional design supports that
  • What the experience is like, and why it is different from other training alternatives (with a sneak peek at actual course materials)
  • What previous workshop attendees say about the course

See the Webinar


michael_connell-enthought-vp-trainingPresenter: Dr. Michael Connell, VP, Enthought Training Solutions

Ed.D, Education, Harvard University
M.S., Electrical Engineering and Computer Science, MIT


Continue reading

Webinar: Work Better, Smarter, and Faster in Python with Enthought Training on Demand

Join Us For a Webinar

Enthought Training on Demand Webinar

We’ll demonstrate how Enthought Training on Demand can help both new Python users and experienced Python developers be better, smarter, and faster at the scientific and analytic computing tasks that directly impact their daily productivity and drive results.

View a recording of the Work Better, Smarter, and Faster in Python with Enthought Training on Demand webinar here.

What You’ll Learn

Continue reading

Exploring NumPy/SciPy with the “House Location” Problem

Author: Aaron Waters

I created a Notebook that describes how to examine, illustrate, and solve a geometric mathematical problem called “House Location” using Python mathematical and numeric libraries. The discussion uses symbolic computation, visualization, and numerical computations to solve the problem while exercising the NumPy, SymPy, Matplotlib, IPython and SciPy packages.

I hope that this discussion will be accessible to people with a minimal background in programming and a high-school level background in algebra and analytic geometry. There is a brief mention of complex numbers, but the use of complex numbers is not important here except as “values to be ignored”. I also hope that this discussion illustrates how to combine different mathematically oriented Python libraries and explains how to smooth out some of the rough edges between the library interfaces.

http://nbviewer.ipython.org/urls/raw.github.com/awatters/CanopyDemoArchive/master/misc/house_locations.ipynb

Beyond Object-Oriented Programming

Several weeks ago I was out of town teaching an on-site custom training course. While I don’t like being away from my wife and six children, I always enjoy the opportunity to teach Python and demonstrate the productivity that can be gained with the tools that are available for it (e.g. NumPy, SciPy, Matplotlib, Chaco, Traits, Mayavi, nose, pyflakes, sympy, IPython, …). We typically teach scientists and engineers, so our students are often well-versed in topics such as vectorization, linear algebra, and signal/image processing. We also train professional programmers, however, and with that audience the aforementioned ideas might be less familiar territory. Such was the case with last month’s class, with mostly developers in attendance. This type of student, of course, brings an entirely different type of expertise to the classroom. I really enjoy this shift in context and appreciate the opportunity to discuss software engineering concepts like object-oriented programming.

Now, I don’t consider myself a computer science expert. When I’m discussing probability theory, electromagnetics, magnetic resonance imaging, ultrasound, or inverse theory subjects in which I’ve read enough literature and considered the prominent problems thoroughly enough to provide some depth to my perspective the conversation will turn a bit more academic. My understanding of programming, however, is more pragmatic and based on experience rather than theory.

It’s a bit ironic actually. In academia, I was much more of a theoretician than an experimentalist. I was known for giving very hard tests in subject areas that most students hated (and I loved). In the business world, the reverse seems to be true, as my understanding comes mostly from experiment and experience. My knowledge of software engineering has been gleaned from hands-on development and observation, with reinforcement and guidance provided by a handful of wonderful books such as “The Pragmatic Programmer” by Andrew Hunt and David Thomas.

It’s also important to recognize the impact that interaction with the Python community has had on my growth as a software developer. Reading the source code of both Python and Numeric, creating PEPS, writing NumPy, and reviewing patches have all been helpful in my ongoing struggle to produce useful contributions. Finally, being a part of the Enthought development team and watching how our software craftsmen deconstruct scientific problems so that they can create elegant solutions with code has dramatically informed my capacity to think like a scientist and developer simultaneously.

One of the things I’ve always appreciated about Python is the ability to program in many styles: object-oriented, procedural, functional, etc. While some languages immerse you in object-oriented programming, Python is less pushy, allowing you to use it as necessary and embellish it with additional styles. Perhaps, this is why I enjoy writing code with Python so much. My first exposure to real programming (beyond a few lines of Basic or toy assembly code on my TI 99/4A) was in high school where I learned Pascal. The book that I learned from taught me about top-down development: think of the problem at a large scale, break it up into smaller, logical pieces, successively code those pieces repeating the pattern until you are down to the smallest segments that you can see how to convert to code. This approach naturally lends itself to procedural programming.

While learning engineering in school, these concepts were reinforced as I learned how complex systems can be built by breaking the large system down into its component parts, designing and testing those parts, and then connecting them together into the larger system. In this process, each component may also be in fact another complex system that requires the same kind of design approach. In my mind, this process of creating robust components that are separately testable and interact through specific interfaces is the key to building robust products. It is encouraging that these concepts are also emerging in the computer software world in ideas like component-oriented programming, or Component-based Software Engineering.

Speaking of components… one of the fun things that happened every year while I was teaching Electrical Engineering at BYU is that I would get in my mail box several huge catalogs of electronic parts. These catalogs would contain thousands and thousands of parts. Even though I knew just enough about hardware to be dangerous, I was enthralled by the catalogs and would flip through them and try to imagine what could be built with all those cool components. MCM Electronics and Texas Instruments were two favorite vendors whose offerings I would meander through, idly dreaming what could be built if I had more hardware talent.

Then, as a passive student of economics, I learned from Gene Callahan this great concept called the structure of capital (this is not to be confused with the corporate finance concept of “capital structure”). This concept tries to capture all the necessary building blocks (and machinery necessary for their creation) that go in to producing even the most ordinary consumer good. This interlocking structure is critical to the creation of everything we buy. A valuable introduction to the big picture of this idea is the classic (if somewhat out-dated) essay “I Pencil”, by Leonard Reed.

It seems that the progress of any human-built thought, tool, organization, and society is restricted by the limited short-term memory and information management capabilities of the human brain. But, fortunately, the human brain is also the source of our escape from the brash consequences of these limitations. We each have the creative capacity, the generative capacity, and the power to build abstractions and ideas. As described in the last link, this is the capacity that education should be striving to enhance.

When developing software, we are limited by time and human understanding to the abstractions available to us. Computer science has steadily evolved abstractions that make a difference: integers, floating point numbers, data structures, file-systems, network protocols, and on and on. The good abstractions make subsequent programming easier and more capable. Some abstractions, however, are not widely applicable and never achieve that type of longevity. In fact, one of the struggles I have with a focus on object-oriented programming is that it turns everybody’s half-baked abstractions into objects that now must be dealt with by future developers. And shared-abstractions are a critical part of progress in any social endeavor.

A brain with a warehouse of intertwined abstractions has the ability to create more sophisticated, more compelling, more beautiful, and ever more useful things. In the same way, an economy with a network of intertwined capital structure has the ability to provide more satisfaction more quickly for its diverse participants. Analogies to this concept can probably be made in any creative enterprise: mathematics, music, literature, and science. Of more immediate interest to my day-to-day activities, however, is that developers with a cornucopia of intertwined abstractions can create ever more compelling, beautiful, and useful applications that will continue to drive our infatuation with computing machines. Python makes it easy to become a part of that continuing creation.

Intro to Scientific Computing in Python, June 15-19, Austin TX

Enthought is offering “Introduction to Scientific Computing in Python” at our offices in Austin, Texas from June 15th to June 19th. This course is intended for scientists and engineers who want to learn to use Python for day-to-day computational tasks.

  • Day 1: Introduction to the Python Language
  • Day 2: Array Calculations with NumPy
  • Day 3: Numeric Algorithms with SciPy
  • Day 4: Interfacing Python with Other Languages
  • Day 5: Interactive 2D Visualization with Chaco

The cost for the course is $2500. Please see the course description on the Enthought website for details.

Space is still available in our course on Python for Science, Engineering, and Financial Analysis, May 18th to 21st, in New York City

Python for Financial Analysis, May 18-21, NYC

Enthought is offering Python for Financial Analysis (a.k.a. “Python for Quants”) in New York from May 18th to May 21st. This course introduces financial quantitative analysts to the tools available in Python for financial analysis. This course is based on our “Introduction to Scientific Computing in Python” course, but puts a focus on financial analysis in the examples and exercises. Enthought developed this course in response to requests for customized training from clients in the financial industry. The course will take place at the Learning Tree Education Center in lower Manhatten.

  • Day 1: Introduction to the Python Language
  • Day 2: Array Calculations with NumPy
  • Day 3: More on NumPy; Numeric Algorithms with SciPy
  • Day 4: Software Engineering Best Practices
  • Day 5: Introduction to Traits; Interactive 2D Visualization with Chaco

The cost for the course is $2500 per person. Please see the course description on the Enthought website for details.