Resources for Learning Python

Python the friendly snake

Python the friendly snake

I’ve been thinking about taking up a new programming language as a hobby for a little while. There’s a vibrant software community here in Portland, and working in more languages than TSQL opens up lots more opportunities for fun. I have no intention of becoming a full-time Python programmer, I just believe it’s fun to code and good to challenge your brain in new ways.

I picked Python to learn. It has a reputation for being approachable, it’s pretty widely used, and there’s lots of people in town who use it and have code camps, hackathons, and group coding sessions with Python.

I quickly discovered that there’s a ton of great ways to learn Python.

Learning Python the Hard Way

by Zed Shaw

This is an online book with exercises and videos. I’m about halfway through it already and it’s tons of fun! I really enjoy the writing and style of teaching. Each lesson has:

  • Example code for you to retype, study, and run
  • Study drills for you to question and extend what you’ve seen (these are really great)
  • Common student questions and answers (super-helpful for troubleshooting)
  • A video at the end (optional)

You can try the book for free online. It’s $29.95 for the paid version. I happily shelled that out after trying it and quickly becoming engaged.

Coursera – “Programming for Everybody (Getting Started with Python)” from the University of Michigan

by Charles Severance

One great thing about this class is that the instructor has also posted slide decks and YouTube videos for the class outside of it to support it. Charles Severance has posted a free textbook, and this class walks through Chapters 1-5 of it. You can the free textbook, videos, and exercises directly from

If you want the guided class, you can take it alone or as part of the 4 course “Python for Everybody” specialization. One course in this series focuses specifically on using databases with Python, which speaks to my data-loving little heart.

If you want the full certificate, it’s $415, but you can purchase it course-by-course. If you don’t want the certificate you can take the courses for free.

Coursera – “An Interactive Introduction to Programming in Python” from Rice University

by Joe Warren, Scott Rixner, John Greiner, and Stephen Wong

Rice has a two-part “Introduction to Python” course as part of their 6 course “Fundamentals of Computing Specialization” series. The cool thing with this one is that it takes you past the introduction. The series also contains classes on the Principles of Computing and Algorithmic Thinking, so you can work over 26 weeks not to just learn the basics of Python, but to become a better programmer and strategic thinker.

If you want the full certificate for this one, it’s $343. But again, you can take courses individually (and for free).

I learned about this one when Chris Harrison recommended it on Twitter. Thanks, Chris!

A Meetup Group Near You

Turns out that my local PyLadies chapter is giving an Intro to Python course!

There’s meetups for Python programmers in lots of different areas. is a really great spot to check what’s around you.

SQLWIT Slack Channel – Connect with Other Women who Work with SQL

Not an actual query

Not an actual query

Are you a woman in technology that works with SQL Server or other databases?

You might like to join our new slack channel –

Why have a slack channel for WIT?

Slack chat rooms are great for connecting with people and collaborating. Many DBAs work alone, and women in software development teams or working in IT often don’t have a lot of other women in their teams.

It’s a great experience to get to know other women who work in related fields and exchange ideas. Slack is a great way to do that remotely.

What do people chat about?

Slack is flexible. You can create “channels” for different topics, and have conversations in real time, or even asynchronously with people around the world.

For starters, we have channels for topics like getting help, finding/advertising jobs, and blogging.

Members can talk in whatever channels you’re interested in and create new channels. The slack room will go wherever the group is interested.

Want to sign up?

Email me at with the subject line  “SQLWIT slack channel”, and I’ll send an invite your way!

Taking the time to write about something makes you learn more

You know how sometimes you learn something, then you start to see it everywhere you look?

That happens to me all the time, and I’ve even started to try to take advantage of it.

There’s a name the phenomenon of encountering something once, then starting to see it everywhere: it’s the Baaader-Meinhof Phenomenon, also known as the “frequency illusion.”  And it’s helped me start to write better training material.

I’ve found that I write the best material when I take a bit of time to step back and write training material, but then make sure I mix in some consulting work. Then I revisit the material and refine it to make it better.

The reason is the I personally seem to be pretty influenced by the frequency illusion. If I want to really get to understand a merge join, for instance, taking some time to research it, write some demos, and create some slides will bring it to the forefront of my brain. Then I don’t really have to think about it too much more if my brain is interested — every merge join I run into for the next few weeks will practically be surrounded by a glowing halo, inviting me to get to know it better.

The net result is really two things: I’ve started giving myself longer timelines for developing some content.  And I’ve also finally admitted that I really can never procrastinate to get something started.


How I learned to write TSQL

I primarily work with SQL Server, but my favorite book on TSQL is the one that I learned with: The Transact SQL Cookbook.  It’s been many years since I picked it up, but I have a ton of happy memories of staring into this book while riding a train to and from work, getting my head around the examples and figuring out how they worked.

I haven’t picked up the more recent version, The SQL Cookbook, but I’m not surprised that it has pretty fantastic reviews.

Over time, the more I teach, the more I learn about the power of examples when it comes to learning. There’s something pretty magical for “recipe” style learning when it comes to picking up new concepts and new languages.

Powered by WordPress. Designed by WooThemes