To often, I find myself looking for additional resources. Python development is a good example.

There are great articles and web-sites online that tell you all kinds of interesting stuff. There are places that answer every conceivable question. I have free ebooks that I have downloaded. I have purchased books on the subject. There are great online classes that get you started and youtube videos that illustrate concepts.
I receive email news letters about python developments, tools and software. To top it off, many python tools have great online documentation.

This morning I was browsing the web, following links, looking for more resources. All of a sudden it hit me --

Stop looking for resources and dig into the ones you already have

I think I've been suffering from a form of procrastination. Instead of gathering superficial information about a broad range of python topics, I need to get down to the business of reading the books, working through their examples, completing the courses.

AND, most importantly, finishing up some of the development I've been doing.

This happens when we get stuck. There is some problem with my code, so search stack overflow and other helpful web sites. There are answers, but the real problem is that you don't understand some aspect of what you're doing.

The Problem

I am learning Flask. It is a simple web development framework for python. My project is to rebuild my PHP book reading web site as a python flask app.

I am going along, following an online tutorial. Many parts of my application are identical to the tutorial, so things are going well. The tutorial uses a database, I use a database, perfect! The tutorial uses SQLAlchemy to manage the database. So, I install SQLAlquemy and follow along.

The tutorial uses a very simple table to illustrate the concepts. So, the SQLAlchemy classes are simple. Oops. My book tracking database is more complex, there are relationships between tables. I have one to many relationships. I have indexes to speed up data retrieval. My forms need to contain drop-down select lists that allow the user to make choices and then have those choices updated in the database.

I'm stuck because the tutorial is no longer easily translated into my use case. I just wanted to learn flask, but now I realize that I need to learn SQLAlchemy too. I have ideas for other projects and they all require ways to manage the data. I could probably manage the data without SQLAlchemy, but having an ORM (object-relational mapper) seems like a really great idea.

The Solution

The key seems to be realize that you are avoiding the mental cost that it will take to your knowledge to the next level.

Time to roll up my sleeves and dig in deeper. Stop wasting time surfing, and dig into the docs.

This may require putting together some other test applications that allow exploring SQLAlchemy and once I've gained that understanding, return to my book reading application.

So, technology imitates life. When you get to the top of one hill. You can see that another series of hills lie ahead. Breaks over. Time to pick up the walking stick and continue the hike.