Layperson who’s never seen it: “Impossible”
Practitioner who’s becoming better: “Extremely difficult”
Expert: “We do this all the time. What’s the big deal?”
I have reviewed or maintained the code of thousands of other programmers, and I’ve encountered maybe a couple dozen I’d actually hire and about 5 I’d consider as technical co-founders. What’s the biggest difference? Until today, I wasn’t sure how to verbalize, but now, I think a good description would be those who think there’s a tradeoff between design and usability and those who know better…
As far as I’m concerned, there’s is a close correlation between good code and user experience. There’s a close correlation between readable code and maintainable code. There’s a close correlation between expertise and precision to detail “throughout”. And perhaps most of all, there’s a close correlation between something built properly to stand the test of time and “long term” user satisfaction.
If you want to learn a hobby, develop a passion, or really dig deep, by all means, just code it. Sometimes that’s simply the best way to understand what goes on under the hood and learn what’s possible once you learn the right way to build things. “Once you learn the right way to build things.”
But please leave your experiments on your own hard disk where they belong. You may have thought that those bleeding pixels were cool, but your name will be cursed by the poor souls who forever have to maintain your mess.