If it works doesn't imply it's good. Improving the internal structure of a project is important for many reasons. Refactor also means simplify the debug processes, tuning up performances and make the code readable to avoid a gradual spaghetti project failure. In this talk, I will show practical PHP code samples of bad smells, what's the better way to start refactiring and some useful tools.