Over time the languages, theories, practices, and tools of the software development trade change. One thing, however, remains the same: Change, and your ability to accept it. If you don’t, you become irrelevant and loose value. I was recently reminded of this by someone with FAR more development experience than I. Someone who can even add sections of the Windows 8 experience to his list of achievements. Even if you don’t like Windows 8 from a functional aspect, you can respect the level of software development it takes to write an operating system. The point is, unless you shift your point of view to see the larger picture, instead of your local problems, you’ll quickly loose ground in your career.
You might have read a previous post about how a project I was working on, was moving away from WordPress. I outline my concerns and excitement to try something new. I was waist deep in that project, and the one thing that I’ve realized is you have to Learn to Learn.
Did he just say “Learn to Learn”?
Yeah, learning to learn sounds dumb, I know. You’d be surprised how many people can’t seem to grasp new concepts. For some it’s even manifested as a ‘fanboy/girl’ type rivalry where their method/language is better. Don’t believe me? Walk into a room with a diverse group of developers and bring up the topic of data types and casting. It’ll be like an debate grenade went off. People stick to what they know, and when it’s challenged they get defensive. But you don’t have to! Take any opportunity you have to learn about how a language or process works. Things like that help you evolve your skill set and become valuable no matter what team you are on.
It’s a life-long education
When it all comes down to it, whether you work for yourself or a company, your education and improvement is on you. Let me rephrase that so you hear it better:
You alone are responsible for your education
Not your boss, or HR department. Not your professor or teachers. You, and you alone are the one who needs to make the decision to further yourself. The field of software development is one that changes constantly, and rapidly. For instance, about every 6 months, a new version of PHP is released. Some of those minor, but some with great impact to the way we develop. Even if it doesn’t change the way you develop your software, it’s up to you be sure of that.
Where do you learn to learn?
Learning to learn may seem like a foreign concept, but really what it means is, exercising your brain to retain knowledge. In reality, the only way to do this, is practice. In this case, that means being sure to continue learning and educating yourself.
This answer is about as personalized as what’s your favorite color. Personally I learn best from doing. I look for tutorials, code snippets, and projects to execute them in. When using tutorials, be sure to write out the lines by hand, and not copy & paste. When you take the time to write out the code, you’re brain processes it differently than just reading.
Others I know are great book learners. They can pick up a book and become a topic expert in a weekend. This isn’t me. I don’t have the attention span, but if you do, try and read a book a month that pertains to your goals.
If you are a classroom learner, you can check out your local colleges and see if they have an Audit program. Auditing a class is like taking it, without the grade. You participate in class discussions, get the notes, lectures, and assignments, all with the understanding you are bettering yourself. You’ll have to check with each individual institution to see if they offer this sort of program and if the courses you want to take are available to audit.
So what’s your preferred learning method? Have you taken the time to learn something new lately? What was it?