Comment Re:This is not human languages! (Score 1) 413
Great points about programming. Any good programmer can maintain well commented code, even if it's in a language that they are not familiar with. (not to discount times when depth of knowledge in the body of class libraries is important). Knowing where and how to look for the right questions to answer is a much more difficult skill to master, and harder to fill when it comes time to hire a programmer.
Most importantly, what makes a good programmer is someone who knows when there are questions bigger than "what flavor of gas to fill up the car with" so to speak. Many, many, many customers will get much more value from IT professionals who can first ascertain whether it's a data problem, business process problem, or a problem that can be solved by writing code. As a good software engineer (and occassional PHB), it's what I look for whenever I hire someone.
Let's not forget to collect all of the relevant constraints to the problem first. If there's an obvious solution to be found by utilizing a combination of environments and tools, by all means, that should be explored first (ie. some new stored procedures in the database, enhanced data validation in the user interface level, more relevant data capture in the business process, and a bit of additional analysis via a piece of specialized code), before one has the luxury of selecting from the available languages and tools, and deciding whether performance, maintenance, extensibility, interapplication communication and integration make any draws toward one choice over another.
So many users, PHB's and customers do not understand why IT folks spend so much time worrying about the color of the windows on the caboose, when all they care about is whether it's the right train to get on to get where they want to go! A good software professional solves the users' problems within the constraints of the environment, and when it makes sense, chooses one, two or five tools and languages, depending on what's appropriate.
Most importantly, what makes a good programmer is someone who knows when there are questions bigger than "what flavor of gas to fill up the car with" so to speak. Many, many, many customers will get much more value from IT professionals who can first ascertain whether it's a data problem, business process problem, or a problem that can be solved by writing code. As a good software engineer (and occassional PHB), it's what I look for whenever I hire someone.
Let's not forget to collect all of the relevant constraints to the problem first. If there's an obvious solution to be found by utilizing a combination of environments and tools, by all means, that should be explored first (ie. some new stored procedures in the database, enhanced data validation in the user interface level, more relevant data capture in the business process, and a bit of additional analysis via a piece of specialized code), before one has the luxury of selecting from the available languages and tools, and deciding whether performance, maintenance, extensibility, interapplication communication and integration make any draws toward one choice over another.
So many users, PHB's and customers do not understand why IT folks spend so much time worrying about the color of the windows on the caboose, when all they care about is whether it's the right train to get on to get where they want to go! A good software professional solves the users' problems within the constraints of the environment, and when it makes sense, chooses one, two or five tools and languages, depending on what's appropriate.