diff --git a/interfaces/_legacy/01-variadic-funcs/main.go b/advfuncs/01-variadic-funcs/main.go similarity index 100% rename from interfaces/_legacy/01-variadic-funcs/main.go rename to advfuncs/01-variadic-funcs/main.go diff --git a/interfaces/_legacy/02-func-values/main.go b/advfuncs/02-func-values/main.go similarity index 100% rename from interfaces/_legacy/02-func-values/main.go rename to advfuncs/02-func-values/main.go diff --git a/interfaces/_legacy/03-func-to-func/main.go b/advfuncs/03-func-to-func/main.go similarity index 100% rename from interfaces/_legacy/03-func-to-func/main.go rename to advfuncs/03-func-to-func/main.go diff --git a/interfaces/_legacy/04-closures/main.go b/advfuncs/04-closures/main.go similarity index 100% rename from interfaces/_legacy/04-closures/main.go rename to advfuncs/04-closures/main.go diff --git a/interfaces/_legacy/05-higher-order-funcs/main.go b/advfuncs/05-higher-order-funcs/main.go similarity index 100% rename from interfaces/_legacy/05-higher-order-funcs/main.go rename to advfuncs/05-higher-order-funcs/main.go diff --git a/interfaces/_legacy/06-functional-programming/main.go b/advfuncs/06-functional-programming/main.go similarity index 100% rename from interfaces/_legacy/06-functional-programming/main.go rename to advfuncs/06-functional-programming/main.go diff --git a/error-handling/01-deferred-funcs/main.go b/advfuncs/07-deferred-funcs/main.go similarity index 100% rename from error-handling/01-deferred-funcs/main.go rename to advfuncs/07-deferred-funcs/main.go diff --git a/error-handling/03-png-detector-with-panic/main.go b/advfuncs/08-png-detector-with-panic/main.go similarity index 100% rename from error-handling/03-png-detector-with-panic/main.go rename to advfuncs/08-png-detector-with-panic/main.go diff --git a/error-handling/02-png-detector/pngs/cups-jpg.png b/advfuncs/08-png-detector-with-panic/pngs/cups-jpg.png similarity index 100% rename from error-handling/02-png-detector/pngs/cups-jpg.png rename to advfuncs/08-png-detector-with-panic/pngs/cups-jpg.png diff --git a/error-handling/02-png-detector/pngs/empty.png b/advfuncs/08-png-detector-with-panic/pngs/empty.png similarity index 100% rename from error-handling/02-png-detector/pngs/empty.png rename to advfuncs/08-png-detector-with-panic/pngs/empty.png diff --git a/error-handling/02-png-detector/pngs/forest-jpg.png b/advfuncs/08-png-detector-with-panic/pngs/forest-jpg.png similarity index 100% rename from error-handling/02-png-detector/pngs/forest-jpg.png rename to advfuncs/08-png-detector-with-panic/pngs/forest-jpg.png diff --git a/error-handling/02-png-detector/pngs/golden.png b/advfuncs/08-png-detector-with-panic/pngs/golden.png similarity index 100% rename from error-handling/02-png-detector/pngs/golden.png rename to advfuncs/08-png-detector-with-panic/pngs/golden.png diff --git a/error-handling/02-png-detector/pngs/shakespeare-text.png b/advfuncs/08-png-detector-with-panic/pngs/shakespeare-text.png similarity index 100% rename from error-handling/02-png-detector/pngs/shakespeare-text.png rename to advfuncs/08-png-detector-with-panic/pngs/shakespeare-text.png diff --git a/error-handling/02-png-detector/pngs/work.png b/advfuncs/08-png-detector-with-panic/pngs/work.png similarity index 100% rename from error-handling/02-png-detector/pngs/work.png rename to advfuncs/08-png-detector-with-panic/pngs/work.png diff --git a/error-handling/02-png-detector/main.go b/advfuncs/08-png-detector/main.go similarity index 100% rename from error-handling/02-png-detector/main.go rename to advfuncs/08-png-detector/main.go diff --git a/error-handling/03-png-detector-with-panic/pngs/cups-jpg.png b/advfuncs/08-png-detector/pngs/cups-jpg.png similarity index 100% rename from error-handling/03-png-detector-with-panic/pngs/cups-jpg.png rename to advfuncs/08-png-detector/pngs/cups-jpg.png diff --git a/error-handling/03-png-detector-with-panic/pngs/empty.png b/advfuncs/08-png-detector/pngs/empty.png similarity index 100% rename from error-handling/03-png-detector-with-panic/pngs/empty.png rename to advfuncs/08-png-detector/pngs/empty.png diff --git a/error-handling/03-png-detector-with-panic/pngs/forest-jpg.png b/advfuncs/08-png-detector/pngs/forest-jpg.png similarity index 100% rename from error-handling/03-png-detector-with-panic/pngs/forest-jpg.png rename to advfuncs/08-png-detector/pngs/forest-jpg.png diff --git a/error-handling/03-png-detector-with-panic/pngs/golden.png b/advfuncs/08-png-detector/pngs/golden.png similarity index 100% rename from error-handling/03-png-detector-with-panic/pngs/golden.png rename to advfuncs/08-png-detector/pngs/golden.png diff --git a/error-handling/03-png-detector-with-panic/pngs/shakespeare-text.png b/advfuncs/08-png-detector/pngs/shakespeare-text.png similarity index 100% rename from error-handling/03-png-detector-with-panic/pngs/shakespeare-text.png rename to advfuncs/08-png-detector/pngs/shakespeare-text.png diff --git a/error-handling/03-png-detector-with-panic/pngs/work.png b/advfuncs/08-png-detector/pngs/work.png similarity index 100% rename from error-handling/03-png-detector-with-panic/pngs/work.png rename to advfuncs/08-png-detector/pngs/work.png diff --git a/error-handling/04-image-detector-recover/main.go b/advfuncs/10-image-detector-recover/main.go similarity index 100% rename from error-handling/04-image-detector-recover/main.go rename to advfuncs/10-image-detector-recover/main.go diff --git a/error-handling/04-image-detector-recover/pngs/cups-jpg.png b/advfuncs/10-image-detector-recover/pngs/cups-jpg.png similarity index 100% rename from error-handling/04-image-detector-recover/pngs/cups-jpg.png rename to advfuncs/10-image-detector-recover/pngs/cups-jpg.png diff --git a/error-handling/04-image-detector-recover/pngs/empty.png b/advfuncs/10-image-detector-recover/pngs/empty.png similarity index 100% rename from error-handling/04-image-detector-recover/pngs/empty.png rename to advfuncs/10-image-detector-recover/pngs/empty.png diff --git a/error-handling/04-image-detector-recover/pngs/forest-jpg.png b/advfuncs/10-image-detector-recover/pngs/forest-jpg.png similarity index 100% rename from error-handling/04-image-detector-recover/pngs/forest-jpg.png rename to advfuncs/10-image-detector-recover/pngs/forest-jpg.png diff --git a/error-handling/04-image-detector-recover/pngs/golden.png b/advfuncs/10-image-detector-recover/pngs/golden.png similarity index 100% rename from error-handling/04-image-detector-recover/pngs/golden.png rename to advfuncs/10-image-detector-recover/pngs/golden.png diff --git a/error-handling/04-image-detector-recover/pngs/shakespeare-text.png b/advfuncs/10-image-detector-recover/pngs/shakespeare-text.png similarity index 100% rename from error-handling/04-image-detector-recover/pngs/shakespeare-text.png rename to advfuncs/10-image-detector-recover/pngs/shakespeare-text.png diff --git a/error-handling/04-image-detector-recover/pngs/work.png b/advfuncs/10-image-detector-recover/pngs/work.png similarity index 100% rename from error-handling/04-image-detector-recover/pngs/work.png rename to advfuncs/10-image-detector-recover/pngs/work.png diff --git a/error-handling/04b-named-params/main.go b/advfuncs/10b-named-params/main.go similarity index 100% rename from error-handling/04b-named-params/main.go rename to advfuncs/10b-named-params/main.go diff --git a/error-handling/04b-named-params/pngs/cups-jpg.png b/advfuncs/10b-named-params/pngs/cups-jpg.png similarity index 100% rename from error-handling/04b-named-params/pngs/cups-jpg.png rename to advfuncs/10b-named-params/pngs/cups-jpg.png diff --git a/error-handling/04b-named-params/pngs/empty.png b/advfuncs/10b-named-params/pngs/empty.png similarity index 100% rename from error-handling/04b-named-params/pngs/empty.png rename to advfuncs/10b-named-params/pngs/empty.png diff --git a/error-handling/04b-named-params/pngs/forest-jpg.png b/advfuncs/10b-named-params/pngs/forest-jpg.png similarity index 100% rename from error-handling/04b-named-params/pngs/forest-jpg.png rename to advfuncs/10b-named-params/pngs/forest-jpg.png diff --git a/error-handling/04b-named-params/pngs/golden.png b/advfuncs/10b-named-params/pngs/golden.png similarity index 100% rename from error-handling/04b-named-params/pngs/golden.png rename to advfuncs/10b-named-params/pngs/golden.png diff --git a/error-handling/04b-named-params/pngs/shakespeare-text.png b/advfuncs/10b-named-params/pngs/shakespeare-text.png similarity index 100% rename from error-handling/04b-named-params/pngs/shakespeare-text.png rename to advfuncs/10b-named-params/pngs/shakespeare-text.png diff --git a/error-handling/04b-named-params/pngs/work.png b/advfuncs/10b-named-params/pngs/work.png similarity index 100% rename from error-handling/04b-named-params/pngs/work.png rename to advfuncs/10b-named-params/pngs/work.png diff --git a/error-handling/exercises/01-refactor/main.go b/advfuncs/exercises/01-refactor/main.go similarity index 100% rename from error-handling/exercises/01-refactor/main.go rename to advfuncs/exercises/01-refactor/main.go diff --git a/error-handling/exercises/01-refactor/solution/main.go b/advfuncs/exercises/01-refactor/solution/main.go similarity index 100% rename from error-handling/exercises/01-refactor/solution/main.go rename to advfuncs/exercises/01-refactor/solution/main.go diff --git a/error-handling/exercises/README.md b/advfuncs/exercises/README.md similarity index 100% rename from error-handling/exercises/README.md rename to advfuncs/exercises/README.md diff --git a/interfaces/log-parser/functional/Makefile b/advfuncs/logparser/functional/Makefile similarity index 100% rename from interfaces/log-parser/functional/Makefile rename to advfuncs/logparser/functional/Makefile diff --git a/interfaces/log-parser/functional/chartwriter.go b/advfuncs/logparser/functional/chartwriter.go similarity index 100% rename from interfaces/log-parser/functional/chartwriter.go rename to advfuncs/logparser/functional/chartwriter.go diff --git a/interfaces/log-parser/functional/field.go b/advfuncs/logparser/functional/field.go similarity index 100% rename from interfaces/log-parser/functional/field.go rename to advfuncs/logparser/functional/field.go diff --git a/interfaces/log-parser/functional/filters.go b/advfuncs/logparser/functional/filters.go similarity index 100% rename from interfaces/log-parser/functional/filters.go rename to advfuncs/logparser/functional/filters.go diff --git a/interfaces/log-parser/functional/groupers.go b/advfuncs/logparser/functional/groupers.go similarity index 100% rename from interfaces/log-parser/functional/groupers.go rename to advfuncs/logparser/functional/groupers.go diff --git a/interfaces/log-parser/functional/main.go b/advfuncs/logparser/functional/main.go similarity index 100% rename from interfaces/log-parser/functional/main.go rename to advfuncs/logparser/functional/main.go diff --git a/interfaces/log-parser/functional/pipeline.go b/advfuncs/logparser/functional/pipeline.go similarity index 100% rename from interfaces/log-parser/functional/pipeline.go rename to advfuncs/logparser/functional/pipeline.go diff --git a/interfaces/log-parser/functional/result.go b/advfuncs/logparser/functional/result.go similarity index 100% rename from interfaces/log-parser/functional/result.go rename to advfuncs/logparser/functional/result.go diff --git a/interfaces/log-parser/functional/textreader.go b/advfuncs/logparser/functional/textreader.go similarity index 100% rename from interfaces/log-parser/functional/textreader.go rename to advfuncs/logparser/functional/textreader.go diff --git a/interfaces/log-parser/functional/textwriter.go b/advfuncs/logparser/functional/textwriter.go similarity index 100% rename from interfaces/log-parser/functional/textwriter.go rename to advfuncs/logparser/functional/textwriter.go diff --git a/interfaces/log-parser/refactor-notes/refactor-00/changes.md b/advfuncs/logparser/refactor-notes/refactor-00/changes.md similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-00/changes.md rename to advfuncs/logparser/refactor-notes/refactor-00/changes.md diff --git a/interfaces/log-parser/refactor-notes/refactor-00/main.go b/advfuncs/logparser/refactor-notes/refactor-00/main.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-00/main.go rename to advfuncs/logparser/refactor-notes/refactor-00/main.go diff --git a/interfaces/log-parser/refactor-notes/refactor-00/parser.go b/advfuncs/logparser/refactor-notes/refactor-00/parser.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-00/parser.go rename to advfuncs/logparser/refactor-notes/refactor-00/parser.go diff --git a/interfaces/log-parser/refactor-notes/refactor-00/result.go b/advfuncs/logparser/refactor-notes/refactor-00/result.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-00/result.go rename to advfuncs/logparser/refactor-notes/refactor-00/result.go diff --git a/interfaces/log-parser/refactor-notes/refactor-00/summarize.go b/advfuncs/logparser/refactor-notes/refactor-00/summarize.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-00/summarize.go rename to advfuncs/logparser/refactor-notes/refactor-00/summarize.go diff --git a/interfaces/log-parser/refactor-notes/refactor-01/changes.md b/advfuncs/logparser/refactor-notes/refactor-01/changes.md similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-01/changes.md rename to advfuncs/logparser/refactor-notes/refactor-01/changes.md diff --git a/interfaces/log-parser/refactor-notes/refactor-01/main.go b/advfuncs/logparser/refactor-notes/refactor-01/main.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-01/main.go rename to advfuncs/logparser/refactor-notes/refactor-01/main.go diff --git a/interfaces/log-parser/refactor-notes/refactor-01/parser.go b/advfuncs/logparser/refactor-notes/refactor-01/parser.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-01/parser.go rename to advfuncs/logparser/refactor-notes/refactor-01/parser.go diff --git a/interfaces/log-parser/refactor-notes/refactor-01/result.go b/advfuncs/logparser/refactor-notes/refactor-01/result.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-01/result.go rename to advfuncs/logparser/refactor-notes/refactor-01/result.go diff --git a/interfaces/log-parser/refactor-notes/refactor-01/summarize.go b/advfuncs/logparser/refactor-notes/refactor-01/summarize.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-01/summarize.go rename to advfuncs/logparser/refactor-notes/refactor-01/summarize.go diff --git a/interfaces/log-parser/refactor-notes/refactor-02/changes.md b/advfuncs/logparser/refactor-notes/refactor-02/changes.md similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-02/changes.md rename to advfuncs/logparser/refactor-notes/refactor-02/changes.md diff --git a/interfaces/log-parser/refactor-notes/refactor-02/main.go b/advfuncs/logparser/refactor-notes/refactor-02/main.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-02/main.go rename to advfuncs/logparser/refactor-notes/refactor-02/main.go diff --git a/interfaces/log-parser/refactor-notes/refactor-02/parser.go b/advfuncs/logparser/refactor-notes/refactor-02/parser.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-02/parser.go rename to advfuncs/logparser/refactor-notes/refactor-02/parser.go diff --git a/interfaces/log-parser/refactor-notes/refactor-02/result.go b/advfuncs/logparser/refactor-notes/refactor-02/result.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-02/result.go rename to advfuncs/logparser/refactor-notes/refactor-02/result.go diff --git a/interfaces/log-parser/refactor-notes/refactor-02/summarize.go b/advfuncs/logparser/refactor-notes/refactor-02/summarize.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-02/summarize.go rename to advfuncs/logparser/refactor-notes/refactor-02/summarize.go diff --git a/interfaces/log-parser/refactor-notes/refactor-03-deprecated/changes.md b/advfuncs/logparser/refactor-notes/refactor-03-deprecated/changes.md similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03-deprecated/changes.md rename to advfuncs/logparser/refactor-notes/refactor-03-deprecated/changes.md diff --git a/interfaces/log-parser/refactor-notes/refactor-03-deprecated/main.go b/advfuncs/logparser/refactor-notes/refactor-03-deprecated/main.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03-deprecated/main.go rename to advfuncs/logparser/refactor-notes/refactor-03-deprecated/main.go diff --git a/interfaces/log-parser/refactor-notes/refactor-03-deprecated/parser.go b/advfuncs/logparser/refactor-notes/refactor-03-deprecated/parser.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03-deprecated/parser.go rename to advfuncs/logparser/refactor-notes/refactor-03-deprecated/parser.go diff --git a/interfaces/log-parser/refactor-notes/refactor-03-deprecated/result.go b/advfuncs/logparser/refactor-notes/refactor-03-deprecated/result.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03-deprecated/result.go rename to advfuncs/logparser/refactor-notes/refactor-03-deprecated/result.go diff --git a/interfaces/log-parser/refactor-notes/refactor-03-deprecated/scanner.go b/advfuncs/logparser/refactor-notes/refactor-03-deprecated/scanner.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03-deprecated/scanner.go rename to advfuncs/logparser/refactor-notes/refactor-03-deprecated/scanner.go diff --git a/interfaces/log-parser/refactor-notes/refactor-03-deprecated/summarize.go b/advfuncs/logparser/refactor-notes/refactor-03-deprecated/summarize.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03-deprecated/summarize.go rename to advfuncs/logparser/refactor-notes/refactor-03-deprecated/summarize.go diff --git a/interfaces/log-parser/refactor-notes/refactor-03/changes.md b/advfuncs/logparser/refactor-notes/refactor-03/changes.md similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03/changes.md rename to advfuncs/logparser/refactor-notes/refactor-03/changes.md diff --git a/interfaces/log-parser/refactor-notes/refactor-03/main.go b/advfuncs/logparser/refactor-notes/refactor-03/main.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03/main.go rename to advfuncs/logparser/refactor-notes/refactor-03/main.go diff --git a/interfaces/log-parser/refactor-notes/refactor-03/parser.go b/advfuncs/logparser/refactor-notes/refactor-03/parser.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03/parser.go rename to advfuncs/logparser/refactor-notes/refactor-03/parser.go diff --git a/interfaces/log-parser/refactor-notes/refactor-03/result.go b/advfuncs/logparser/refactor-notes/refactor-03/result.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03/result.go rename to advfuncs/logparser/refactor-notes/refactor-03/result.go diff --git a/interfaces/log-parser/refactor-notes/refactor-03/summarize.go b/advfuncs/logparser/refactor-notes/refactor-03/summarize.go similarity index 100% rename from interfaces/log-parser/refactor-notes/refactor-03/summarize.go rename to advfuncs/logparser/refactor-notes/refactor-03/summarize.go