This past weekend I took an online C++ test and received a score of 90% - which was in the 60th percentile. I also took a programming test that ran, but they may take off points based on the assumptions I made for the source of the data stream. In the end, I think I did OK, but the tests got me a little bummed out. I was thinking "Who's going to want to hire me when all I can do is a 60th percentile on the C++ test?" I then got to thinking about all the things I'm missing - all the things I wanted to do with my career.
I was pretty bummed out.
I wasn't looking forward to coming to work either.
But all that changed about an hour into my day when I chatted with a co-worker in London. He's taking over the duties as the lead developer on this project that I didn't want to be involved in. His statements were, without a doubt, the defining moment for me and why I do deserve to be paid what I'm paid.
It started out with an email from him about changing the settings in your .vimrc file to change the tab stops and expand tabs so that all the files you edit are spaces, and spaced properly. This is because his project relies heavily on Python scripts, and in Python the spacing is critical.
I wrote back to the group saying that the same thing could be accomplished within the file by using the Vim tags as part of a comment. Then, no matter what the individual's preferences are, the file in question is going to be formatted in the proper way.
His response was that "no one uses Vim, and this is what you should have as the standards anyway - for Perl, Python, Java, C++, Shell Scripts..." Amazing.
There's a need for Python file formatting, so let's modify Vim for everything to make it easier for this one set of scripts? When I asked him if that was his professional opinion that Vim should be modified as opposed to using the in-file tags, he said "Yes".
Now I saw why I can draw the salary I do. People who don't learn from history are doomed to repeat it. He made the statement:
You need to use some frameworks... and to be honest, development in vim is probably not as efficient as it used to be
Let's set aside that the frameworks questions is idiotic as it has nothing to do with the point at hand, but how on earth can a professional developer say something has become less efficient with time? Beats me.
So I'm sitting here laughing to myself about this exchange. He believes that HTML needs to be written by an optimizer, and IDEs are the way to do things. I have to laugh. I remember my High School Trigonometry teacher teaching us the half-angle/double-angle formulas for the trig functions - the 30/60/90 and 45/45/90 triangle - so that we could calculate all the trig functions without the calculators was all carried to class each day. Why? Because in order to learn what's going on, you need to understand it. Trust a machine too much, and you're liable to get burned.
Forget that the best development tools are the mind, a pencil and a pad of paper, and you're going to be just like this guy. A poser, thinking they know what's really going on when all they are doing is following the latest development trends. It's all shiny objects to them, and no substance. That's while I'll always have a job, and not have to worry about how much I've forgotten about the syntax of C++. The real work is done between the ears, not in a window.