No language is better than any other. Those are strange thoughts that certain people with affinities for their own programming languages tend to perpetuate. Just as addition isn't any "better" than division, so C# isn't any better than PHP and vice versa. In the big battle for language supremacy, we tend to forget about one key component in that battle. And that is the programmer. The person who will piece together the logic using their years of accumulated knowledge. It's not the language that makes a great product. It's the programmer using a language that will achieve this.
In this day and age, you will see job postings for a myriad of programming languages. Everything from PHP to C# to Cobol to Pascal even if you look hard enough. The language out weighs the person. The personality that will be entering your doors everyday to create something. Companies aren't really looking for programmer's, but more for people with a long list of technical keywords at their disposal, which are two very different things.
So today's let's spend some time and talk about the programmer. Not the language. Not the framework, or the IDE. But the person sitting in that chair typing non-stop for minutes at a time building this picture in their minds as to what they need to build for a company. Let's talk about the human computer that calculates logic much faster than any machine can and or will.
At least, when they need to be. You won't see many programmer's spending their time co-mingling at office parties. And if you do, it's with other programmer's and nobody understands them. So they leave the party together to have their own fun. But they made their appearance at least. They enjoy eating lunch in small groups and eating at their desk is perfectly fine as long as they have a browser and a good playlist to work to.
They know more than you think
One of the cool things about being a programmer, is that in order to do your job correctly, you sort of have to know much about a companies inner workings. It's just a given. Not to the level of Sysadmin mind you, but they know enough to get people's attention. But they also understand privacy. It's part of the job. And so they keep certain information to themselves in order to not stir up any trouble.
This also equates to a programmer having to learn about different businesses and products in order to do their jobs correctly. In my time, I've had to build software for marketing agencies, magazine publishers, affiliate marketing sites, online digital media sales and many many in between. Because of this, you walk away with a slew of new concepts that you didn't expect to learn, but that will undoubtedly come in handy some day.
Gets distracted easily
One of the unfortunate side effects of being a programmer is that their brains kind of never turn off. New ideas are constantly pouring in from some endless reservoir. And while that can be an amazing gift, it can also be a bit overwhelming. Every new ideas is amazing, and so a programmer will spend many a day jumping from one to the other and then back again never fully finishing any one thing to the best of their ability.
If a programmer can master this amazing gift, then they will indeed have a place somewhere as a person who has shaped the way that the world works in some way.
They function better alone sometimes
Not to say that programmer's belong in dungeons typing away login pages. But a programmer needs their space to do their magic. Just as you won't have a painter in the middle of 8 other painters all talking about their weekend, you can't have a programmer surrounded by project managers all discussing their various ideas. There's a much studied mental state known as being in the zone that is very much real and that has given rise to many of the amazing technologies that you use today. And a programmer reaches that state many a time in their life, but only in quietude usually.
Your idea is incredible, until Mark walks in and tears it apart in exchange for his amazing idea. Now you're idea is no longer your idea. And that energy that you have built up for it has all but vanished. In isolation, these problems go away. Which is why programming might actually be one of the few tasks that are indeed better left to the lone wanderer that is a programmer. As Einstein put it:
I live in that solitude which is painful in youth, but delicious in the years of maturity
Programmer's are humans, kind of. Part person, part machine maybe. But human nonetheless. They aren't geniuses, as many people make them out to be. Their brains just work better when it comes to analyzing virtual problems. And that's not a simple task that's gifted to every individual. Everyone has their own gifts. A programmer's simply happens to be the ability to hear a problem involving numbers and steps and to piece it together in a digital way to express that idea through a thing we have to call a computer.
But they're still human. They read, they learn, they get tired of programming for weeks, sometimes months at a time. But they always come back. They always build something new. They always dream of helping people somehow through this thing we call code .