Skill Divide
I was reading a very interesting article on Coldfusion’s Skill Divide by Brian Kotek.
He basically found that CF programmers mainly fall into two extremes those who embrace cutting edge development techniques (and software engineering practices) and those who “embed queries in their display pages”. I think his observations hold true for programmers in general. There are people who content with whatever process in place (main focus is to get jobs done period) and those who seek to improve (get jobs done in better quality with as a result of a better process).
*Side note: I found out some of a company’s (name withheld for privacy and confidential issues) past projects were laid out using HTML tables and these were sites built at least after the year 2000 when surely CSS has accepted as a web standard. I cannot judge on why this was the case, as I wasn’t there when these sites are built. But one very plausible cause is either over worked developers or developers not interested in skill improvements.
I find it hard to believe that anyone who wants to be in the IT industry should want to be in the first category. Nothing is wrong with just aiming “get jobs done period”, cause at the end of the day that what’s management wants, but I think having that sort of mentality will disadvantage the developers themselves in the long run.
So if I want to be a developer who can improve over the time, what should I do? Well firstly, I need to start read up more, I enjoy reading tech blogs (so far I follow some CF-centric blogs) and I enjoy finding out the best practices in software engineering field.
I want to push my fellow workers to their technical limit, read some more, play around with frameworks, do comparison studies on competitors, read some more and share your knowledge with the team. But maybe I am just being naive here, do people have the necessary skills and willingness to learn?
If we are advancing our development process and practices, we will leave some people behind. Brian has similar thought:
“This creates a problem. As our development group has kept advancing, we’ve embraced frameworks and design patterns and best-practices… So bringing someone in who isn’t at least somewhat familiar with these ideas is going to require a substantial ramp-up period to become productive.”
If I am advocating new things and everyone else is not on board with me (or just find it too hard to follow), this will just put more workload to me. I think I have already being overloaded with work compared to most of my colleagues (there is only one developer at the office who has more work than me I think -> but he’s top developer in the company, so it’s to be expected
).
July 28th, 2007 at 12:37 am
me and charlie want to know why you asked these questions to the Universe, and not us?
advocate away felix. you’ve got more skills than i do, and you work more days per week and read more tech sites. Drew is desperate for direction, and i think the rest of us can keep up…
August 15th, 2007 at 10:51 pm
Well, all the stuffs here are kinda thoughts on progress and some of them were written on the spur of a moment (out of frustation sometimes), so I don’t feel comfortable to discuss them with you guys yet.
And it’s not really asking the Universe (the internet is a stupid place to put this.. but anyway) but rather asking myself.
However you might be right, I should be asking the guys about:
1. Whether or not they want to develop themselves as developers.
2. How can we do that individually.
3. How can we help each other out.
My post is not about me being the “smart” one or whatever, in fact I DO NOT want to be the “smart” one, heck I don’t think I can handle the pressure. Having 1 or 2 “smart” developers is good, but it’s so much better if everyone is smart, so there’s no over dependency on a person.
It’s not true Andrew that I’m having more skills than you, I might know CF a little more than you but I am not good at Linux and all those networking stuffs.
I tend to have a different perspective now on whether developers should seek to themselves, realizing that people are at different stages of life, have different passions, some might have “a life” outside IT. Company that you are working for might also be a hindrance for self development, not all companies have a set time and budget for training, some companies might like their developers to be certified, some don’t care.