Skip to content

Latest commit

 

History

History
34 lines (30 loc) · 2.91 KB

README.md

File metadata and controls

34 lines (30 loc) · 2.91 KB

Team Treehouse Python Basics

Learn the building blocks of the wonderful general purpose programming language Python.

What you'll learn

  • Fundamental programming concepts
  • Input and Output
  • Conditional branching
  • Loops
  • Exception handling

Teacher: Craig Dennis

Pros

  • Concepts and examples are well thought out and easy to understand.
  • Examples, pacing and walk-throughs are great for beginners.
  • Some decent mini-challenges in the middle of some lessons that let the student try things for themselves.
  • Great real-world example of how to work on an agile scrum team as a developer by using Trello. Really nice to introduce beginners to this workflow.
  • Touches on some more advanced techniques like error handling and refactoring and doesn't just stick to over simplified basics.
  • The final section 4 project does a great job at tying all of the concepts together and has great challenges for the user to do on their own.

Cons

  • Can be a little too goofy at times explaining certain commands or concepts for intermediate level students. It is a beginner level course though so the overall tone is tolerable and definitely approachable to new users.
  • Pacing can be a little slow at times for more experienced students.
  • A lot of the exercises are done in the Python REPL so it's hard to go back and look at previous commands or statements that you've typed and ran. The REPL is great to see instant results but nothing is saved within it. It would be better for me if I could write and run these commands in separate .py files so I can revisit them in later exercises or even when I'm working on other future projects. You barely touch the hello.py file that you begin with. It gets better in later sections though and you only work in one file for the last section. I just would have liked to see a bit more work within an editor for some early exercises. Using VS Code and it's integrated terminal output was a great solution for me.
  • Related to the above complaint: Some of the early exercises actually delete and remove previous code that you've typed in hello.py. It's hard to remember all the previous steps and exercises when this happens. These may be minor concepts that overlap one another but I prefer to have distinct chunks of code for each exercise or concept. The student should never have to delete or remove previous code just to make the console/terminal output cleaner. If the console becomes too dirty than either just comment lines out or create different files for different concepts and don't pile everything into one .py file. This would result in using way more print() calls to see the output of each command but I think the tradeoff is worth it. Using a git repo and making commits after every exercise or new concept helps track changes these changes if you ever need to go back and revisit something.

Started: May 20, 2020

Used:
Python 3.7.7
iTerm2 3.3.10beta4
zsh 5.8
Visual Studio Code 1.45.1