…… or do they just need Technical skills. Many studies have shown that Soft skills along with technical skills are necessary for professional growth. From a company and services point of view, groups with better soft skills communicate better, gel together and create robust products. Let us go through the soft skills that we think are required to create beautiful software.
What is Focus?
Focus is the ability to concentrate on a single task without interruptions or delays and without getting distracted.
Some Famous Quotes on Focus
“If you focus long enough on mastering a certain skill, you will one day be able to excel in this particular area. However, if you’re not focused and switch from one random activity to another, it’s unlikely that you’ll ever master what you’re doing. Instead, Will Durant encourages us to persist with whatever we’re doing until we excel in it.”
Zig Ziglar on focusing all you have on a specific target
“I don’t care how much power, brilliance or energy you have, if you don’t harness it and focus it on a specific target, and hold it there you’re never going to accomplish as much as your ability warrants.”
Jacqueline Leo on maintaining your focus
“One look at an email can rob you of 15 minutes of focus. One call on your cell phone, one tweet, one instant message can destroy your schedule, forcing you to move meetings, or blow off really important things, like love, and friendship.”
Zen quote on focusing on the present activity
“When walking, walk. When eating, eat.”
This excellent proverb is not only about walking and eating. It describes a general approach to life. The proverb encourages us to focus all our attention on the present activity. It tells us not to do a great number of activities simultaneously, but to do one activity with the greatest attention instead
Anil Ambani on the cultivation of concentration
“Concentration can be cultivated. One can learn to exercise willpower, discipline one’s body and train one’s mind.”
No matter how difficult it may seem in the beginning, we must never forget that it is possible to increase one’s willpower and concentration. It takes time and patience to cultivate these skills, but if you are not discouraged by difficulties and challenges, you will affect beneficial changes in your entire life.
Why is it so difficult to Stay Focused on the Task at hand?
In this day and age of Instant messaging, facebook, twitter and smart phones, distractions are lurking just around the corner to pounce and ruin your concentration. A single WhatsApp message can destroy your train of thought and ruin your current focus. These are some of the common distraction sources while working
- E Mail Clients:
- Chat Clients
- Facebook updates
- Instant Messaging
- Requests for a new ‘Urgent’ Task
- App notifications
- Browsing the net. Multiple open browsing windows
- Day dreaming
- Not being clear about the task at hand
- Doing work that is not urgent. Not setting priorities.
Why is it Critical for Software Developers to stay focused?
While it is important for all workers not to be distracted (stay focused) while working on a task, for software developers it is critical. Coding is as much of an art as it is science and programmers tend to juggle a lot of details at the same time. The mind is constantly buzzing, evaluating and choosing from amongst these details. Any distraction most likely break this chain of thought and coders have to start all over again to get to the point they were at before the interruption. This is famously called the ‘Context Switching Cost’.
In cricketing parley batsmen often refer to ‘Being in the zone’. Sunil Gavaskar, the famous opener once mentioned tht he was often surprised that he had reached a century because he was so oblivious of scores and runs scored. His focus was entirely on facing the next ball !
- Distractions delay task completion
- Distractions increase the number of bugs
- Task delays cause mental stress and increase frustration levels
- Increased stress can lead to burnouts
- Distractions lead to insecurity
- As per a Wall Street Journal study a typical distraction costs 23 minutes
- According to Game Developer Magazine, an average programmer is likely to get just one uninterrupted two-hour session in a day
- Developers need more time to ‘get back in the zone’ than a typical worker. Teach your Non Tech coworkers why you need to stay in the zone.
- Software development is a team game. You don’t want to become the ‘weak link’ in the chain.
How to avoid Distractions (While Coding)?
While there are some distractions that are difficult to avoid (An SOS from the Boss!), there are measures that the software developers can take to minimize interruptions.
- Close all E Mail Clients or set a timer to periodically check your Email.
- Put your Instant Messaging Apps to Not available or Do Not Disturb.
- Set your phone to silent mode
- Wear Head Phones when you simply can’t be interrupted.
- Prioritize your tasks for the day.
- Plan and gather as much information as possible before commencing the task.
- Break your large tasks into smaller subtasks.
- Evaluate when a request for a new task comes in. Unless it is very urgent politely decline for the day.
- If you have no choice but to interrupt your task, comment your code with all essential information that you will need when returning to the task.
- If possible code at the time when there are least interruptions. Become a night owl.
- Internet is a killer of focus. Block nonessential tempting websites
- Use timers (Pomodoro Technique) for short periods of time (20 to 30 minutes). Watch this short video.
- Be honest to yourself and others.
- Don’t Give up.
Watch out this space for the fourth soft skill needed by software developers.
Cheerio. Happy Coding!