Do you rely on syntax highlighting when developing software? If so, you may be shooting yourself in the foot. In this post, I will argue that syntax highlighting, while aesthetically seductive, moves focus from content to form, and [b]discourages those who look at the code from trying to understand it[/b].
Name:
Anonymous2014-02-20 4:04
I was having drinks with a VP at my company, he's about 50. Early in his career he was working at a large tech company in Canada. There was an older man in this company, about 60, who never seemed to do anything and always asked people to play ping pong. He'd get lunch with people, chat them up, but was quiet on details and didn't seem to work in any department, or at least no one said they worked with him.
One day, my VP asked him what his story was, and he told him this:
For many years he was a mainframe developer involved in all aspects of development, and he was quite good. He wrote low level drivers, networking libraries, application code, etc. He raised a family and had a good life. When he was 50 he decided to retire, and spent several years sailing, gardening, traveling, and playing ping pong.
One day, he received a call from his former employer asking him to write a driver for their proprietary mainframe, and offered him a lucrative contract. He steadfastly refused, enjoying his leisurely retirement and hating the idea of 'working for the man'. They offered him double the already high amount, and he still refused.
A few weeks later, they called him back. They explained that they had signed a billion dollar deal, and this mainframe driver was a total necessity- they had to have it. Must have. Deal would fall apart without it. And the mainframe driver code was so niche and esoteric, they literally couldn't find a single person on earth other than him who they could trust to write the code in a reasonable amount of time.
He still refused, and said there was no way he could do it. He was retired!
Still they persisted, and told him to give a number, any number. He said $5 million dollars, a number so absurd he didn't think they would possibly agree. Indeed, the company laughed and hung up on him.
A month later, they called him back. Still unable to find anyone else, they agreed to pay him $5 million, with a catch- he had to work a 9-5 at the company to 'support' the driver for 5 years, and his salary would be $1 million a year. His only responsibility would be to support that driver, nothing else.
After thinking about it for a few days, he agreed. He wrote the driver in a weekend, and for 5 years he played ping pong, read the newspaper, drank beer all day at work, clocking in his 9-5 and collecting his $80k a month. No one ever had a support issue with his driver.
According to my VP, he was one of the happiest men he ever met.
Moral of the story? There is a good argument to being a generalist, learning all you can about many technologies. However, being an expert in a niche technology can also pay extraordinary dividends. Take a look at COBOL programmers who work on the financial system mainframes- sometimes it pays to be esoteric.