I started programming at 13 to build my own role-playing game forum engine in PHP. I failed, but the magic of software stayed with me and I wanted to become a software engineer. I am fortunate I didn't discover programming through the prism of formal education. I had an issue to solve, coding was the solution: it wasn't forced on me, it came to me.
A program is a bag of instructions transforming an input into a worthwhile output. Software allows us to represent knowledge in a different way, sometimes more efficiently, to access it or distribute it. The beauty of software resides in its educational purpose. Education comes from "ex-ducere", meaning, "to guide", toward what's outside. Software is an opportunity for growth, an opportunity to transcend, the ability to help others access a higher level of comfort - freedom from pain.
And this is why I find programming so beautiful. A vision of pure creation. A language coming to life to bend reality.
Humans have a tendency to disenchant the world. If I had to convince someone to study software engineering, I wouldn't define it as pure engineering. Instead, I would emphasize its creative yet practical aspect. Being a great software engineer is being an innovative problem solver.