Let's get honest: learning and mastering programming doesn't happen by accident or talent. In my fifteen years in the IT industry I have learned a lot about what works and what doesn't - I've wanted to be a better programmer and I was experimenting and searching for it.
The successful programmers who are able to reach the top and maintain it (finding nice job, working on interesting projects and getting high salary) share very similar habits which helped their progress. These good habits aren't anything secret or difficult, but they allow individuals to progress day by day.
I've compiled these habits of lucky professionals so we can all use them and enrich ourselves.
1. Minimize Time Lost
Efficiency is about producing a specific outcome with a minimum amount of waste, expense or unnecessary effort. It is of high importance to divide your professional life to days, days to hours and hours to minutes.
- Reduce number of meetings
- Decline meetings without agenda
- Ignore long non professional talks
- Minimize social media time at work
- Don't multitask
- Prioritize and organize on daily/weekly basis
- Have long-term plan
- Less time sitting
- Focused work
- Dealing with harder problem
- Learn faster
2. Sport! Sport! Sport!
Select an appropriate sport for yourself and practice it as long as you can. It's preferable to be a competitive sport if you like to enrich your social life and meet other people. To lead a highly effective professional life, a healthy body and mind is a must. Sport is the perfect tool against mind exhaustion, depression and lack of motivation.
- Always find time for sport - don't skip it because of work
- Get stuck on a hard task? - then go out for a walk or sport
- Don't work immediately after sport routine
- Find friends who share your sport interests
- Use workdays for indoor sports and enjoy active weekends outside in nature
- Do small sport routines at the office - even on the chair - exercise shoulders, legs etc
- Mental health
- Self confidence
- Leadership skills
- Stress management
3. Taking notes
I don't know everything which I did before but I know where to find it! Taking notes helps you retain more information and stay organized in highly complex areas like programming. The 15 minutes habit at the end of the working day is enough to make us more productive. Never start a new day without knowing where to start or searching the whole day for something from the last month.
- Use special app like Typora
- Research how other people do it
- Daily updates on documentation
- Once per week for analysis and reorganization
- Keep only important things in great detail
- Stay organized
- Spend less time searching
- Use your brain and memory for important things
4. Learn new things
Make a habit of adding new skills whenever this is possible. The more you know the more creative you will be. The process of learning makes life more interesting and keeps our brain healthy. Have you ever experienced the case where you were doing something for years and then suddenly you find an easier and faster way to do it? Remember it's not about how much you know now but what you don't know which might improve your life.
- Have fun while learning
- Experiment with new ideas, tools, methods
- Set apart time for discovery of new ideas
- Socializing and learning go together
- Test and adapt the new knowledge
- Becoming wiser
- Healthier brain
- Broaden your mind
Meditation is an ancient form of searching your inner-self and the answers related to it. This practice survived thousands of years and reached our society because it works and it's accessible. But don't be deceived that it's easy to make it right. It's better to search or ask experienced people about it. The habit of meditation a few minutes daily will help you solve harder programming challenges with less mind effort. Meditation is a habitual process of training your mind to focus and free yourself from thoughts.
- Do it on daily base
- Find nice peaceful place
- Find what time during the day works best - morning
- Use different meditation techniques and find what works better
- Improves Sleep
- Controls Anxiety
- Improves Emotional Health
6. Talk with more experienced
Find someone successful and learn more about him. Why do you think that he is successful? Is there something he has that you don't? Find more experienced and successful people in your company - drink a coffee with them or have a walk. They have much more experience than you and can share interesting stories and life hacks.
- Become friend with such people
- Ask questions which will help your growth as a person
- Test and adapt useful experience of the others
- Surround with successful people and learn from them
- New friends which might help you
- Learn from others mistakes
- Sometimes practical knowledge is more important than theoretical knowledge
7. Enjoy the nature
Spend more time outside in nature - everyday whenever you have this opportunity. Programming depends highly on memory and logical thinking. Walking in nature improves your short-term memory, frees your mind and boosts cognitive functioning. Forest walks are the most powerful way to fight with stressful states. As we know programming is related to stress - missing deadlines, hard problems, changing technologies.
- Respect nature
- Dress for the weather
- Bring a bottle of water
- Socialize with other people who enjoy nature
- Meet friends in the parks not in the office buildings
- Improved physical and mental health
- Reduce stress
- Enjoy experience of the most complex system
- Learn from the trees, birds, water
- Best ideas and simplest solution come in nature
Best practices and good habits are easy to do for a few days or a week but almost impossible to stick to them for years. Remember 3 years are needed to learn a new habit and only 3 days to forget it! Be persistent and patient and only then you can get the benefits from those habits. Doing them from time to time is not enough if you like to go in the desired direction. I'll finish with:
What are we? What we do!
How good we are? How and how much we do it!
Please do share your comments and ideas on this interesting topic. I would like to learn more!