I've been coding, off and on, for well on 20 years now. Did it for a living for a while, but otherwise mostly for fun and on weekends.
And it's been a blast.
For sheer, pure enjoyment, there is nothing quite like it. There is the gleam of an idea, the excitement of coming up with an approach to make it happen, the adrenaline rush of going forth and trying to convert it into reality, the heartache and physical exhaustion of a battle well-fought as you make it happen, and finally, hopefully, there is the finished product. Something unique and very personal.
Like writing, it is an endeavor that lets you go from idea to execution at any scale - no need to set up a company, or raise a lot of money, or go to a special school, or spend years in formal training. If it is something that turns you on, all you need is a PC and some minimal software.
I imagine painting, or composing music would have a similar thrill - I don't do these, but I can sense the drama behind them when I see a finished product.
And yet, unlike writing, or painting, or music, coding is also a very structured activity. There is a specific syntax that you need to follow, a specific set of instructions - even a semicolon in the wrong place can throw off everything.
And though this sounds limiting, it really is not. Somehow coding straddles the space from the rigour of science to the inspiration of art. In this sense, it is truly unique.
Within the confines of a coding environment, you literally enter a parallel universe, where the rules are well defined and followed, where a certain set of conditions always produce a specific output. And yet it is a universe where you are king, you can roam anywhere, create anything you can dream of.
For people who live in their minds - and when it gets down to it don't we all ? - there is really nothing quite like it.