Refactoring before implementing new learning guide #3
new learning guide prototype implementation
minor optimization: refactoring required
Some minor optimizations