# Decorators

## Day 1: Quick howto

Welcome to this lesson. Decorators are a sometimes overlooked and more advanced feature. They support a nice way to abstract your code. Although hard to grasp at first there is not that much to it.

In today's videos you will watch me explain this powerful concept. You can follow along with my Jupyter notebook [here](https://github.com/talkpython/100daysofcode-with-python-course/blob/master/days/22-24-decorators/decorators.ipynb).

## Day 2: A practical exercise

Try to take a crack at [Write a decorator with argument](https://pybitesplatform.com/bites/write-a-decorator-with-argument/).

If you get stuck we have a more open-ended challenge as well: [Write DRY Code With Decorators blog challenge](https://pybit.es/articles/codechallenge14/).

Look at the code you have written so far, where could you refactor / add decorators? The more you practice the sooner you grok them and the easier they become.

## Day 3: More practice

The exercise and code challenge of yesterday should keep you busy for a bit, today get some more practice in.

## Time to share what you've accomplished!

Be sure to share your last couple of days work on Twitter or Facebook. Use the hashtag **#100DaysOfCode**.

Here are [some examples](https://twitter.com/search?q=%23100DaysOfCode) to inspire you. Consider including [@talkpython](https://twitter.com/talkpython) and [@pybites](https://twitter.com/pybites) in your tweets.

See a mistake in these instructions? Please [submit a new issue](https://github.com/talkpython/100daysofcode-with-python-course/issues) or fix it and [submit a PR](https://github.com/talkpython/100daysofcode-with-python-course/pulls).
