Question Title

* 1. A new set of SilverStripe lessons covering more complex topics is proposed, please indicate below where you think the topic fits in terms of difficulty.

  Intermediate Advanced I don't know enough about the topic to rate
Implementing search
Getting the most out of your templates
How to install sake, and use it for database builds, tasks, testing
The shortcomings of ORM: when to use custom SQL
Adding AJAX behavior
Git workflow: rebasing, squashing
Introduction to Dependency Injection
Enriching your login experience with custom templates, authenticators, and SSO
Complex data relations: many_many, belongs_many_many, extraFields, ambigious has_many
Unit testing
Custom LeftAndMain interface
Hardening your SilverStripe site: Best practices for security
Making the Config API work for you, using exclusion/inclusion rules, environment dependent settings, etc
Error logging and debugging techniques
Caching (Partial caching and full caching options)
Configuring framework: password requirements, application name, logo, default admin, custom CMS menu, customising HTMLEditor
Reading and writing to external APIs
Creating subcontrollers with $url_handlers
SilverStripe's Code conventions
Robust and secure forms
Converting a static site to SilverStripe templates
Dependancy Managment with Composer
Using controller actions
Setting up support for Behat
Writing configurable modules that are easily consumed and adopted by the community
Must-have GridField modules
Environment management with _ss_environment et al
Introduction to Entwine
Building a RESTful API, introducing HTTP verbs, headers, working with request vars

T