In this chapter you have added to your arsenal of Moodle coding techniques the ability to create new blocks. You have learned how to manage language files to add localization support to your plugins. You have also learned much about how to leverage Moodle's permission system by using and even adding capabilities. You created your first data input screen to capture user input and redisplay it, in a Hello World block. You also explored how Moodle schedules tasks to be completed: in the background, on a set interval. Finally you looked at a couple of real world examples of blocks in action, including using a block as a container.
In the next chapter, you will learn about filters.