Journal Articles
Browse in : |
All
> Journals
> CVu
> 312
(7)
All > Topics > Process (83) Any of these categories - All of these categories |
Note: when you create a new publication type, the articles module will automatically use the templates user-display-[publicationtype].xt and user-summary-[publicationtype].xt. If those templates do not exist when you try to preview or display a new article, you'll get this warning :-) Please place your own templates in themes/yourtheme/modules/articles . The templates will get the extension .xt there.
Title: Avoid Stagnation
Author: Bob Schmidt
Date: 06 May 2019 23:37:51 +01:00 or Mon, 06 May 2019 23:37:51 +01:00
Summary: Pete Goodliffe cautions us against allowing our programming skills to become stale.
Body:
Iron rusts from disuse; water loses its purity from stagnation...even so does inaction sap the vigor of the mind.
~ Leonardo da Vinci
When was the last time you learnt something new and exciting enough to put on your CV? When was the last time you were stretched beyond your capabilities? When was the last time your work made you feel uncomfortable? When was the last time you discovered something that delighted you? When were you last humbled by another programmer and encouraged to learn from them?
If the answers to these questions are ‘the dim and distant past’ then you have entered the comfort zone: a place that some regard as nirvana – where your life is easy and your work days are short and predictable. (Note that the ‘distant past’ is not so long ago when you measure in programmer years, which is why people find it so hard to estimate the duration of software projects!)
However, the comfort zone is a pernicious place. It’s a trap. An easy life means you’re not learning, not progressing, not getting better. The comfort zone is where you stagnate. Pretty soon you’ll be overtaken by younger developer upstarts. The comfort zone is an express route to obsolescence.
Be wary of stagnation. Seeking to become a better programmer, by definition, is not the most comfortable lifestyle.
Few people make a conscious decision to stagnate. But it can be easy to slip into the comfort zone and coast along your development career without realising. Take a reality check: is this what you’re doing right now?
Your skills are your investment
Beware: maintaining your skill set is hard work. It involves putting yourself in uncomfortable situations. It requires a very real investment of effort. It can be risky and hard. You might even embarrass yourself. That doesn’t sound entirely pleasant, does it?
It’s therefore not something that many people feel naturally inclined to do. You spend so many hours of the day working, don’t you deserve to have an easy life and then go home to forget all about it? It’s natural to learn towards the familiar and the comfortable.
Don’t do it!
You have to make a conscious decision to invest in your skills. And you have to make that decision repeatedly. Don’t see it as an arduous task. Delight in the challenge. Appreciate that you are making an investment that will make you a better programmer, and a better person.
Expect to invest time and effort to grow your skill set. This is a worthwhile investment; it will repay itself.
An exercise for the reader
How can you shake yourself up right now? Here are some changes to make that will push you out of the comfort zone:
- Stop using the same tools; there might be better ones that will make your life easier if you’d only learn about them.
- Stop using the same programming language for every problem; you might be smashing a walnut with a sledgehammer.
- Start using a different OS. Learn how to use it properly. Even if it’s one that you don’t like, spend a while trying it out to really learn its strengths and weaknesses.
- Start using a different text editor.
- Learn keyboard shortcuts and see how it impacts your workflow. Make a conscious effort to stop using a mouse.
- Learn about a new topic, something that you don’t currently need to know. Perhaps deepen your knowledge of maths or of sorting algorithms.
- Start a personal pet project. Yes, use some of your precious spare time to be geeky. Publish it as open source.
- Manoeuvre yourself to work on a new part of your project, one you know little about. You might not be productive immediately, but you’ll gain a wider knowledge of the code and will learn new things.
Consider expanding yourself beyond the programming realm:
- Learn a new language. But not a programming language. Listen to an audiobook teaching series on Japanese on your drive into work.
- Rearrange your desk! Try to look at the way you work in a new light.
- Start a new activity. Perhaps start a blog to journal your learning. Spend more time on a hobby.
- Take up exercise: join a gym or start running.
- Socialise more. Spend time with geeks and with non-geeks.
- Consider adjusting your diet. Or going to bed earlier.
Job security
Being a better developer, one with a more rounded skillset, one who is constantly learning, will increase your job security. But ask yourself if you really need that: are you in the right job?
Hopefully you are in the right career: you enjoy programming. (If you don’t, consider seriously if a career change might be a good option. What would you really like to do?)
There is a danger in staying in one job or one role too long, of doing the same thing over and over with no new challenges. All too easily, we get entrenched in what we’re doing. We like being local experts; the king of our little coding castle. It’s comfortable.
Perhaps it’s now time to move on to a new employer? To face new challenges and move on in your coding journey. To escape the comfort zone.
Staying put is usually easier, more familiar, and more convenient. In the recent rocky economic climate, it’s also the safer bet. But it might not be the best thing for you. A good programmer is courageous, both in their approach to the code and their approach to their career.
Questions
- Are you currently stagnating? How can you tell?
- What was the last new thing you learnt?
- When did you last learn a new language? When did you last learn a new technique?
- What new skill should you learn next? How will you learn it? What books, courses, or online material will you use?
- Are you in the right job at the moment? Do you enjoy it, or has all the joy been sucked out? Are you working the 9-to-5, or are you enthused and engaged to see your project succeed? Should you look around for new challenges?
- When did you last get a promotion? Or a pay raise? Does a job title have any real meaning? Does your job title bear any relation to your skills?
Pete Goodliffe is a programmer who never stays at the same place in the software food chain. He has a passion for curry and doesn’t wear shoes.
Notes:
More fields may be available via dynamicdata ..