Python Training FAQs

Do you need Python training?

If you have a current or upcoming project where you need more than just cursory knowledge of Python, then we have the training for you, even if your project isn't 100% developed in Python. Our clients have included students who need Python knowledge to supplement existing skills to support, extend, and maintain large Python-based and Python-oriented systems such as
Mailman (mailing list manager), Plone (content management system), Zope (web application server), TurboGears or Django (web development frameworks); or perhaps have projects in Jython or IronPython that basic well-rounded Python knowledge could greatly contribute.

      Our courses are targeted towards technical individuals who program periodically or full-time, and who may work in any of the following professions: software (systems, Internet, network) engineering; QA / software quality assurance or QA tools, framework, or automation engineering; technical support; release / SCM engineering; IT / IS / system administration and webmasters; hardware design and verification; scientists and mathematicians; technical management; database engineers; multimedia / graphic artists and animators; embedded design engineers; high school teachers, college lecturers, etc. The only requirement is that you have experience programming in another high-level computer language like C/C++, Java, Perl, PHP, JavaScript, TCL/Tk, VB/Basic, Unix shell scripts, etc. A background in C/C++ or object-oriented programming are helpful but not required.

What kind of Python training suits your needs best?

The most popular course we offer is our Python Programming I: Intro to Python comprehensive introduction to Python. Even if you have team members who already "know" Python, chances are, they will learn something new in this course. Our courses are intense, go into more detail of how Python manages objects and memory under-the-covers, and feature both review and code exercises. We recommend this course for customers who have both beginner and advanced students, or those with intermediate skills but desire formal training.

      Our second offering is Python Programming II: Advanced Python. Rather than a "Python 102" type of course, ours features a set of advanced topics for which intermediate Python users can immediately apply their skills to. Topics include (but are not limited to): network programming, multithreaded development, web/CGI applications, database/SQL access, extending Python in C, GUI programming with Tkinter, etc. Click on the course description link above to get more information. You know when your staff members are ready for the advanced course if they can answer this seemingly-simple quiz question (PDF®), and more importantly WHY.

      For those who need to get up-to-speed and require immersion into application development in the topics covered by our advanced course, we also offer a combined session called Core Python Programming which allows you to take both the intro and advanced courses back-to-back. It also features a discounted rate over taking the courses separately.

      Finally, we also offer a variety of specialized courses for specific needs. For those who are completely new to programming period. Python is very friendly to use and makes a great first language; our Introduction to Programming using Python is a great way to expose newbies to programming. If your team needs a high-level but hard-core introduction to Network Programming with Sockets, Internet Client Programming (i.e., FTP, NNTP, SMTP, POP3, etc.), and Web/CGI Programming, then you will be interested in the Internet Programming with Python course. The other targeted course we offer is for those interested in Programming Microsoft Office using Python or just Win32 COM Client programming in general. Although we focus on Office applications, the material is relevant regardless of which type of COM server you are talking to.

Why us?

All of our training is:
  • Interactive
    Our courses are not the typical dry lectures that you had in college or in any professional continuing education or vocation school setting -- your instructor has seen too much of that in his lifetime. Rather, the session focuses on you and your needs. Questions are always encouraged and often lead to discussions of interest to everyone. Your instructor is engaging, charismatic, and enthusiastic about the materials, and it will show at classtime and during labs.

  • Hands-On
    Each day of training is peppered with lab exercises to bring it all home. No course in programming can possibly be effective without having you code in the language and topic that you're learning. There are also an abundance of recommended problems from the textbook to try after-hours as well!

  • Comprehensive
    We discuss more than just syntax and "how to do it" in Python. We cover topics and objects in an in-depth way so as to tranfer knowledge of how the Python virtual machine works under the covers. We do not get a chance to address all of the extra topics which other instructors may offer in their intro courses because we feel that a solid foundation to Python development is more important than covering as many topics of interest in a short 3-days.
We believe in creating the most effective Python programmers from the start -- we cover objects, syntax, style, data types, flow constructs, and memory management in-depth, so attendees know the ins and outs of how to write optimal Python code and with fewer mistakes. We believe that if users can program knowing how Python works under the covers, they will write more "correct" programs from the start. Poor coding is language independent, and it can still happen with a great language like Python, so why go through this at all? Syntax alone isn't good enough training in our opinion.

      Do not underestimate our Python "intro" -- this is not a beginner's course to "get your feet with with Python and its syntax." It is a hard-core introduction to getting to know Python's objects and memory model to stop potential bugs before you even code them. Unlike seminar-based training, there are also intensive lab exercises (both review and coding) to hammer home the concepts, covered via multiple lab sessions per day of training. Being able to write more effective programs from the get-go cuts down on the total time required for debugging and refactoring, and this has significant and measurable organization costs overall, going well above and beyond the insignificant costs of technical training: your ROI with us is the "best bang for your buck."

      Likewise, our advanced course is geared towards those who already know Python well enough to apply their knowledge to specific application areas such as those described above. Each advanced topic is augmented with lab exercises where even if you don't need this code for your work yet, the work you put into each coding exercise will become valuable when you do need it -- you could review your code as a way of "getting back into" the relevant topic of interest. In fact, we are the only Python training organization that even offers advanced Python training!

      Another reason to choose us is that our courses are based upon the well-received book, Core Python Programming, part of Prentice Hall's highly-regarded Core series. It is a great book for both learning and teaching Python, and we take advantage of these features. Not coincidentally, the course is delivered by the author himself, who is not just a "technical trainer" but rather, a senior software architect by profession who just happens to have significant teaching experience. Overall, he has over 25 years of programming, writing, and teaching experience, and is the perfect trainer, mentor, and consultant for your complex software development projects. We have been in business for over 10 years and have taught other professional courses such as C Programming, and Introduction to Unix, in addition to our Python curricula.

What other Python services do we offer?

Non-interactive Training

For example, we have a Python training video that mirrors the "Introduction to Python" (Python Programming I) course that we offer. You may license this by itself, or you can also license it with all the course notes and lab exercises! A multimedia slide presentation is also available -- these are the course notes done originally in PowerPoint but with audio of our instructors added to it. All are available at reasonable fees costing much less than having a live instructor. While not as effective as live instructor-based training, these represent your next best alternatives due to scheduling or budgetary conflicts.

For those with an even more restrictive budget, we have another alternative: we can license a multimedia-enhanced PowerPoint presentation complete with audio of our lectures embedded within the file. Follow along the slides along with our instruction. As with the video materials, you may also license the multimedia PowerPoint file with all of the course notes and exercises to help enhance this style of instructional delivery.

Contact us for more information on either of these non-interactive training options.

Contract Technical Instruction

We can serve your needs if our instructors have the background for your courses, and you would like us to use your course-developed materials and only require on-site technical instruction or corporate training. We can teach a variety of courses, which include but are not limited to: Python, C, Unix / Linux / FreeBSD / Solaris, Unix shell programming, and web / CGI / HTML / CSS / Javascript development.

Private Tutoring

For more one-on-one private instruction, our instructors are available for individual tutoring sessions, daytime, evenings, and/or weekends. We have an hourly rate plus travel costs (if not local). Appointments must be arranged in advance.

Consulting and Engineering

As described above, our primary instructor, Wesley Chun, is not just a "technical trainer" but rather, an experienced senior software engineer who just happens to have long-term teaching experience. With his 25+ years of programming, writing, and teaching experience, he is the perfect trainer, mentor, and consultant for your complex software projects. This means that he can communicate directly with software engineers, engineering managers, and project managers with regards to your Python-related project.

He is well-versed in the ever-mutating triangle of time, resources, and features and can serve as a sounding board to your senior architects in terms of making critical system design decisions and issue resolution. If you need him to roll up his sleeves and get into the trenches with your development team, he can do that too. We have both consulting as well as architect/engineering rates.

We also consult in other areas in addition to our work in Python. Please contact us for more information and scheduling.

Technical Documentation

Have some Python documents which need review? Planning on writing a Python book, magazine or journal article? Need the advice or opinions or copy-edit skills of a seasoned writer and programmer? We can do this too. Contact us for rates. Click here for more information on our editing writing, and documentation services.

What is the Advanced short course?

The first day of the (full) Advanced course is the same as the last day of the Introductory course -- we call it the "Combo Day" -- so the Advanced short course is really for those who have attended our Intro course already. Since this course is only 2-days in length, it gives an additional discount and reduces the amount of out-of-office time for our former attendees. On the Combo Day, we will discuss more intermediate object-oriented programming features as well as the relationship between Python objects and interpreter's memory management.

Home

Python Training

Other Services

Our Staff

Contact Us

Notify me by e-mail:

Training Events
Core Python 2e
PrivacyPolicy
last updated:
$Date: 2007/07/05 08:41:07 $