I think I was once a rockstar programmer. I was (a) more productive than my peers (b) understood and solved complex problems © intimate knowledge of every part of the stack from the CPU, CPU cache, memory and disk systems, all manner of device drivers, complete knowledge of the OSI stack, and the internals of DOS, OS/2, Windows and AIX; as well as realtime systems. Later when I started developing transaction systems for business I had managers who treated me like a rockstar and they allowed me to behave like one. (releasing my inner a-hole).
I’m reformed now. Many of my peers type faster than me and there are many more of them. Most complex problems are no longer complex thanks to a lot of open source and the internet. Since I no longer work on projects that have that sort of demand I have allowed a lot of that information to flush my cache. It’s nice to refresh from time to time but not required to do my job.
And finally, my managers are more sensible now. The industry as a whole has changed. Would-be rockstars are being “handled” (McConnell says fire them; “debugging the development process”) and processes like agile try to alter the set-point.
I still enjoy the work, the challenge, the stress, and the “problems”. But I no longer want to be a rockstar. Just show me the money instead.
UPDATE: Actually I was a rockstar programmer in more than one way. At the time I was a Rockstar programmer I was also a Rockstar. I was in a band, we had a recording studio and we recorded 2 albums.