10 Tips on How Developers Can Increase Their Productivity 🔥
Sometimes lines of code don’t come easy and you are unable to concentrate. Here are ten tips from software developers on what helps them stay focused.
Maintaining a high productivity level is hard. Sometimes lines of code don’t come easy, you feel anxious and unable to concentrate. The good news is that there’s a huge English-speaking coding community on the net that you can learn from.
If you are a junior developer, you should discover what’s best for you and apply your personal best productivity hacks early on. Even if you have years of coding experience, it’s never too late to try new habits because there’s always a chance that the old ones no longer serve you.
This article shares ten tips from software developers on what helps them stay focused and productive throughout the day.
1. Know Your Development Environment
“Become increasingly familiar with your development environment and tools. Know your editor like the back of your hand. What’s the quickest way to find a class or refactor a method? What’s the quickest way to modify a text file (learn regex). Don’t reinvent the wheel.
Know all of the libraries available in the language(s) of your choice and how to use them. Force yourself to write an example with each library. Keep those examples handy, so you can review them whenever needed. Once you’re familiar enough with a library,
a) you’re more likely to remember to use it when the opportunity strikes and
b) you’re more likely to know how to use it and, therefore, resist the temptation to spin your own.”
— Puneet Lamba (LinkedIn profile)
2. Keep Your Code Blocks Clean & Short
“Write clean and short code blocks. Nothing is worse than trying to figure out what you did 2 months ago and how it needs to be changed. When you have massive methods and classes, it can be very difficult to figure out what the original logic was. Variable, method and class names are vital to understanding code. Wrapping things into smaller code blocks allows you to make more meaningful names. Our brains can’t hold the complex logic of a 400 line method and often results in hard to spot bugs. I highly recommend Clean Code by Robert C. Martin.” — Serguei Fedorov (Quora Profile)
3. Take Care of Yourself
“The biggest issues are related to the little big stuff: sleeping enough, eating well, taking care of health, giving enough rest to your head, living in an area that you like, having variety in the things you enjoy doing, making sure your other muscles get some work to do and not only your brain.” — Vesa Piittinen (LinkedIn profile)
4. Rewrite Your Code
“Rewrite your code at least a few times. This sounds non-productive, but I am not alone. Robert C. Martin asks serious developers to refactor not only newly introduced code but also existing code, as a routine part of every task. This will keep quality high, and that is where project lifetime productivity comes: by being able to react fast to changes, by coping with unpredictable, by making it easy for colleagues to take over for one another.” — Nicolae Marasoiu (LinkedIn profile)
5. Keep it Clean
“Using a fairly simple tool, I find that best practice is to finish each day with a clean desk policy and a list of tasks to complete the following day. This means I am starting each day fresh and ready to attack the day at hand without worrying about the chaos I left the night before.
Where possible, it is extremely beneficial to not finish in the middle of something to save from confusion or lost work, and begin with something fresh that you can start and complete in your assigned working hours. Keeping this clean desk helps keep a clean mind and keeps me focused on each achievable goal.” — Rorie Devine (LinkedIn profile)
6. Turn Notifications Off
“Get good at notification settings. Out of the box things like slack, messages, email all interrupt you all day long. Take a minute to prune and hone your notification settings to save hours of interruption and frustration.” — John Jacob Salzarulo (LinkedIn profile)
7. Take Breaks
“Step away from your code for at least 5 minutes every hour and a half. An hour and a half works for me, others may vary, but take regular breaks, even if it’s just to walk across the office and stare out the window at an empty sky for 5 minutes, it gives your brain a chance to calm down a little and perform a pseudo semi reset on itself. If you spend too long concentrating on a singular thing you’ll get the programmer’s equivalent of writer’s block, I call it “Code Blindness”, don’t know if that’s a thing or not though.” — Peter Shaw (Quora profile)
8. Document Your Code
“Be it code, architectural design, some magic tricks for your compiler, etc. This is really important when you work in a team. A lot of the time, your co-worker will ask you for things that you have explained zillion times to the other co-workers but him. If you have to keep explaining it to everyone, it will suck your time like a black hole. You don’t want to spend too much explaining the same thing over and over, but at the same time, you want to be helpful and get respect from your peers.” — Alex Nico Napitupulu (LinkedIn profile)
9. Estimate Your Tasks
“Build a solid relationship with your project manager, they’re not your boss, you’re in this together. Help them understand which parts are hard to estimate, come up with smaller solutions that you can iterate on and are easier to estimate.” — Risc12 on Reddit
Most R&D teams use Jira for project planning, team collaboration and performance analysis. But few are aware that Jira’s functionality can be improved through app integrations and Chrome extensions. For example, in actiTIME, you can define task estimates, compare them against the tracked hours and review your productivity in customizable reports.
10. Learn From Others
Our advice is: never stop learning from other people’s mistakes and successes. Those who are new to the craft can avoid most mistakes that others have already made and learned from. Experienced developers have a chance to reconsider their habits because some of them might no longer serve them.
If you’d like to learn more productivity hacks from developers and share your experience, join our discussion on dev.to or share your tips & tricks below in the comments!
Author, CTO, Subscribe to my newsletter: https://mailchi.mp/fb661753d54a/developassion-newsletter
I've shared a ton of ideas in Volume 1 of my Dev Concepts collection:
- Learn to type FAST (80+ WPMs)
- Master your Operating System: its shortcuts, how to manage processes, how to navigate the file systems, etc
- Learn IDE shortcuts (create/rename files, extract methods, classes, functions, implement/override/refactor methods, etc)
- Automate code formatting, and anything else that wastes time and brain cycles
- Write tests
- Use the Terminal and master aliases to automate repetitive tasks and type less
- Use mind mapping, diagrammatic reasoning & problem structuring techniques to analyze problems & tasks
- Create mental models to better understand what you're doing
- Practice practice practice!
- Contribute to open source to learn from great developers and improve
- Learn to search efficiently
- Use design thinking, 6 thinking hats and similar techniques to increase your creativity
- Structure your work and tasks (create yourself a system to be super organized & efficient); Read about GTD
- Estimate tasks using relative weights to better compare them
- Prioritize work regularly (focus on urgent & important)
- Plan your days ahead
- Build solid habits
- Become a morning person & focus on the most important task as soon as you can (highlight for the day -- miracle morning & Make time techniques)
- Manage your time. Learn about techniques like Pomodoro, use a time timer to visualize time
- Work in a structured manner
- Focus (for real!)
- Focus on outcomes rather than on details
- Take advantage of downtime to improve (learn new things, contribute to open source, etc)
- Reflect on work regularly (identify your weaknesses)
- Broaden your horizons and learn about architecture, software design, back-end, front-end, infrastructure, etc
- Master all the general concerns (e.g., error handling, code quality, logging, performance, i18n, l10n, encoding, caching, how to fix bugs, source control management, security, etc)
- Find your Ikigai and stay motivated
- Have fun
And there's a ton more in there. Hope this helps someone out there!
If you're curious, you can learn more about my project over here: https://dev-concepts.dev/