I know that you are a top rated developer. In fact I know that everyone reading this is rankning among the top 10% of all developers. How I know? Because 90% of all developers never read a programming blog, never make any side projects to learn something new, never spend any time or effort outside work hours to improve.
Many years ago, Tom Demarco and Timothy Lister wrote in Peopleware:
The average software developer, for example, doesn’t own a single book on the subject of his or her work, and hasn’t ever read one. That fact is horrifying for anyone concerned about the quality of work in the field, for folks like us who write books, it is positively tragic.
Back when they wrote that, books and not the web was the main source of information. Nowadays blogs and other web resources have largely overtaken books as the main source of information. Did that solve the problem? Do people read more? In my experience: Unfortunately not. The basic pattern persists: Most developers don’t care.
Getting Perspective
With the Internet being globally accessible and a key resource to any developer I don’t understand how people can chose to not participate in the on-line community. I’m not talking about every developer creating an own blog (who would read all that text anyways?). I’m talking about the value of reading blogs. The value of helping out sometimes on Stack Overflow (sometimes != spending hours every day). The value of keeping up to date with what happens. The value of keeping an eye on the wider perspective, outside your current assignment.
I know web developers who think that ASP.NET Web Forms is state of the art and jQuery is a niche script library for early adopters. You’re maybe laughing when reading this – but remember that you are one of the top 10% of developers that do read blogs. The other 90% don’t. They don’t know what is going on in the development community. They don’t make the connection between the fancy apps on their phones, the interactiveness of modern social network web sites and the work they do.
To me it’s amazing and I have no explanation why people behave that way. If you have any theories, please leave a comment. I know that you are one of those who cares because you’re reading this blog post, but I bet that you have people around you that don’t care.
The Silent Mass
Enough of rants. There is no use to it. The 90% that I really would like to reach with this post won’t read it (even if this is the very first programming related blog post you read, you’re now automatically transferred into the 10% that do, leaving the 90% behind).
For us belonging to the 10% it is important to remember that the other 90% do exist. On Stack Overflow most people just read answers found googling a specific problem. If they don’t find the answer, most people never post an own question. It’s like the dark matter in universe. It’s there – but nobody sees it. But even if those people never leave an active trace themselves, they are very much part of the software industry. They are developing software too, using the same (but probably older) tools as the 10% do.
Ignoring the silent mass and just listening to the loud-mouths can be really dangerous. That’s what Microsoft did when they effectively killed Visual Basic (VB6) and reused the name for another language (VB .NET). For those being active in the community, constantly pushing the limits of what could be done with the language, it was a natural step to move into a full fledged object oriented language. For those appreciating the simplicity of the language and using it to create line of business applications it was a disaster. Visual Basic 6 was a simple to learn, entry level language that let someone with limited programming skills create useful applications. Visual Basic .NET is a first class member of the .NET family, with all the complexity that follows. That’s why VB6 refuses to die.
What to do?
So what to do now? How to make the world of programming a better place?
I think that the we who are active in the community have a responsibility to involve the rest. We have to try to turn those numbers around, to have 90% of developers keeping up to date. It will be hard, but as programming is more qualified than ever there is no alternative. Help your fellow developers to get involved. Help them set up an RSS reader and provide them with a good starting point such as Chris Alcock’s Morning Brew. (While you’re helping out, make sure they sign up for the Passion for Coding RSS feed too.)
The community will grow stronger with each person you get involved, but never forget the silent mass and their needs.
Why help those 90% to come out of darkness? It’s their conscious choice, let’ respect it. And their stance is quite helpful in making them easily distinguishable when it is time to separate them from the good enthusiastic developers.
As to your example with WebForms and jQuery, if you think it’s funny, hear this. A few years ago I was interviewing at a company in Munich. They were actually developing in .NET but were writing code in some sort of a Notepad and then compiling it via command line. When I asked them what prevented them from using the Visual Studio, they told me, they tried it 6 years ago, didn’t like it and chose a different notepad application to write the code. In that 6 years nobody cared enough to have a look at new versions of Visual Studio to see if they perhaps got better.
Needless to say I ran away from them (flown away actually).
From my experience I will tell you what it is. For most people this is just a job. I have friends that are in this what you call 90% and I have actually talked to them about it . They say they are happy that way, they are happy earning the money they earn, the are happy with the knowledge they have and they are happy being working in their comfort zone, in repetitive work without being challenged and just going home to have fun and forget about code. This is just a job to support their lives, not a passion. For them is no different than working selling in a clothes store for example. I don’t think many salesmen on clothes stores learn everything about the kind of fabric and why it is better or worse. I do respect them and they are normally very nice people that are right in their own way, is just that they have different interests in their lives. I think is what you would call a vocation. It’s not their vocation. I don’t think there is anything to be done about it. It’s hard to make someone like something they don’t. You probably don’t want them as your boss for sure :)… but they probably don’t care about being a boss either.
Having been a project manager for more than a few years, and as a CTO in a small web development company, you’ll be amazed by the lengths the “90%” would go NOT to apply themselves in their “field of choice”. Many are uninspired, unmotivated and as Carlo has said, they are more than satisfied staying where they are, in the very center of their comfort zone. Any proactive steps like workshops, discussions, “do your own project” days and what not only motivates a mere fraction of the programmers these days. As one of the programmers recently “chanted”, “Anything I need to learn, I’ll learn it on the job; so why be so tense about it”. Indeed!
I agree with Carlo,
I am probably in that 10%, I do things most people don’t even care whether it is possible or not, like installing linux on a Wii; most people aren’t like this, they write software as a work which pays better than selling shoes in a big store in a mall.
I think that one must consider him/herself lucky to be able to do a job which happens to be his/her passion too; of course at home I am interested in different topics than the ones I think about at work.
Web forms is in deed state of art. It is only criticized by who read only blogs but not the manuals and documents.
Ok, I might have been a bit too rude on web forms. I know that there are significant improvements in .NET 4.5. In some cases web forms provide a more rapid development than MVC, if the application fits well within the web form’s model of thinking.
What I find problematic is that there are a lot of people not bothering to learn MVC and jQuery. Maybe they’re still using .NET 2.0. Without ever trying new versions of Web Forms and other competing frameworks they cannot make an informed decision of what framework to use for a project.
I am in that 90%. I love my software development job, but I also love dancing, music, baking and cooking, seeing friends, spending time with my children and a lot of other things. I’d love to be more up to date on a lot of work-related topics, but I’m not a fast reader and I cannot find much time for reading blogs etc on my spare time. Of course, that’s a concious choice from my side. I choose to spend my spare time on other interests. And I do that since I’ve found out that being in some sort of “20%” is good enough for me. I’m still highly employable, I still get stimulating work assignments, my colleagues and my boss still think I do a good job. Though I’m not truly up to date with the industry, I still beat some 80% of my co-workers, and that’s a good enough score for me if it frees some time for other passions.
Where did you get this 90% figure from?
In my experience that’s way off the mark. I’ve been working in and around development teams for over 15 years – for quite varied companies – and practically every developer I’ve ever worked alongside has at least read books and blogs on development. The vast majority have been self-professed geeks who if anything spend far too much time reading about software (and other tech subjects). I can recall, off the top of my head, only one single developer I worked alongside who was fairly apathetic about his profession, and I wasn’t too friendly with him, so for all I know he too could have been cramming up on books every night.
Of all the different industry sectors I’ve worked in (government, defence, research, travel, journalism and news, several digital agencies, product companies), and all the companies I’ve worked for, I’d say that the development staff were, in general, by far the most likely to be actively interested in their field, and the most likely to work on their own side projects. Am I just a statistical anomaly?
(Note: I’m not saying every developer I’ve ever worked with has been good at his job, but they have been overwhelmingly interested in it both as a career and as a subject in general).
My experience matches that of Mark. I have found myself on the leading edge of “reading” in many organisations but I have only ever found a few who appeared to avoid reading around their field.
Most of the organisations I have worked for have been small. Of the large ones I would estimate that the amount of reading done there is greater. This may point to some dissatisfaction with a current role in a large org. In small companies you tend to fit in, or ship out, pretty fast, so most small company developers are not unmotivated.
My solution for large companies is to become lost of smaller companies. Somehow I cannot see this being a popular idea.
I am currently at a large org and I will admit to doing more reading than I did in my last job.
The 90% is an estimate based on my own experience. If you have other experiences I can only congratulate to being so fortunate to be working with people who are truly interested in their field of work.
It would definitely be interesting to see some more scientific numbers than my own guesses. From the comments it’s impossible to say if people in general do read or not. There is one thing though can be fairly safely concluded from the comments: There’s a huge variance between different teams. You and Gordon experience that most developers do read, while Khalid confirms my observations.
I don’t know about the percentages, but fundamentally, people are busy. If you have a job, a house, kids, a spouse, free time becomes a precious commodity. Learning about new technologies has to be weighed against any other hobbies, interests, and obligations, and unless you have a strong reason to prioritize it or just happen to love learning new stuff for its own sake, it will lose out. Another issue is having a purpose – if you want to learn something new, you can do a simple tutorial and hello world in a fairly short amount of time, but you don’t typically learn much in that process, so then you have to come up with a more complex thing to build/do with said technology, and that can be a lot easier said than done.
There is a name for phenomena, in general:
Sturgeon’s Law