Dont get me wrong when I say that a good programmer like a good DTP operator. And theres no disgrace in that!
I have been a programmer for a good 7 years or more now. From being a programmer I have now shifted into a more managerial and commercial position in the IT industry. But I am still a hobbyist programmer for the sheer joy of it. So having been there and done that, let me demystify programming for those who think its only for the select few.
Programming requires logic and presence of mind; skills that any job would do with. A software programming language is a tool; the languages syntax is its grammer. Once you can remember and speak this language you can create complex and beautiful applications. The joy in creating these applications is that somebodys life out there will get positively affected with our effort. Somebodys work will get a boost due to our applications. Others joy is our joy. Thats what software application is for. If you get paid for it then its icing on a yummy cake.
A good DTP operator goes through a learning curve thats very very similar to a software programmer. The DTP guy has a keen sense of colour, visualizing skills, aesthetic sense and an eye for beautiful layouts. When people think less highly of the DTP guys skill and more highly of the programmers skills I make it a point to dig in and argue.
To be a good programmer you should want to spend hours alone with your PC to create a beautiful tool. You should take pride that many people will use your tool to make their lives better. You should want to go the extra mile to refer books, friends and the internet till you solve that complicated knot in your code.
Its all worth it because its all wonderful. Its all well because it always ends well!