DEV Community

Kuba
Kuba

Posted on • Edited on

5 Things That Make My Software Developer Life Easier

While in a rush to be productive developers, we often forget that the system we build should work for us. Recently I stopped copying and pasting all automation, solutions, etc. Instead, I started thinking what are the things I don’t like in my current workflow and setup, and how to fix them.

Here are a few notes and ideas you can take as inspiration. Figure out which of those will solve your problems!

1. Windows, Tabs, Files

The thing I found extremely useful is keeping shortcuts of the same purpose across different apps under the same key combination. Let’s assume that the three most used tools are: browser, IDE, and terminal. In my case it would be:

  • Arc browser
  • Vs Code
  • Warp

All of them have a common thing which is tabs! We can move, open, close, and reopen tabs in each one of them. Why not set the same shortcut for opening a tab across all of them?

Let’s consider the “open new tab” command.

Probably for most of you the new tab would be: command + t. I’m opening new tabs in VS code more often so I will keep the command + p as my “new window” shortcut.

  • in VS code it is opening the search file prompt by default
  • in Arc, go to Edit keyboard shortcuts → find New tab... → double click and set it to command + p. At this point, you will probably get an error cause you try to overwrite the print shortcut. I got rid of it cause I’m printing the pages so often that I can do it with my mouse.
  • In warp, “new tab” is set to command + t out of the box. But what is under command + p? It is the command picker. If we reconsider Arc, it is also a command picker merged with the search toolbar. Adjust this setting to your needs

    Untitled

This is just an example. Think how you can do the same with splitting windows, moving them around, etc. This helps with switching contexts a lot.

2. Tests

Another useful shortcut setting is running the unit tests. Will show you my golden trio.

Run the test at the cursor. When working on specific unit tests I want to run them as often as I can and not lose focus.

Untitled

That is also why I don’t use the command + t as a new tab.

*****************************************Debug test at the cursor.***************************************** Also sometimes I want to debug the test too. Here comes the chords in VS code. An extremely cool feature that unlocks a lot!

Untitled

*************************Run all tests.************************* You expected that to be next. That’s a long command for me but I’m not using it very often. Still, it lets me stay focused on the code.

Untitled

3. Theme, Theme everywhere

Generally speaking, I’m not the guy who argues which IDE/theme is the best one. But recently I found that there are some color combinations that keep me less tired longer in late hours. Can’t tell you what are the rules for choosing such a theme but think about it and check a few.

Even I asked my girlfriend to make my wallpaper with colors I like.

tapeta1.png

tapeta2.png

4. Aliases

That’s the power!

If you are working with viertualenvwrapper and multiple repos. Here is something for you. The only rule is to name the virtual environment the same as the repo. Now typing only wo turns on your virtual environment.

alias wo='workon "${PWD##*/}"'
Enter fullscreen mode Exit fullscreen mode

Introduce color to file listing with ls. Check exa file lister. It adds some colors and a few extras to standard ls which makes browsing a bit easier.

alias ls='exa --long'
Enter fullscreen mode Exit fullscreen mode

Some of the commands are always run one after another. Remember that you can merge them into a single one very easily. Simple example:

alias lint='mypy . && flake8 && black . --diff' 
Enter fullscreen mode Exit fullscreen mode

Again, this is just an example. Let your imagination go wild.

5. Time

I was always very skeptical about all Pomodoro techniques etc. But I gave it a try and tbh. I loved it. And no! it didn’t make me a productive machine! It just forces me to rest.

Most of the problems I’m trying to solve for more than 10min are solved right after the break. That’s my personal statistic. Fresh mind? Different perspective? Idk. It works.

But there always was a question after break. Where did I finish before?

My solution is a Session. And it is not a promotion :) but I will give you a few reasons why it is worth considering using it.

  • You can set how long your session should be.
  • If you won’t stop, it is reminding you that you are working for too long.
  • Every session is connected with notes. When finishing, I’m writing down in a few sentences where I finished and what should be next thought when starting a new session.
  • You can browse back your notes.
  • I’m working on multiple projects sometimes so I organize those sessions into projects also.
  • Integration with apple scripts. I made myself one to close slack, email, messenger, etc. when starting a session. It helps a lot!

And many many more that I’m not aware of or not using yet. Those are only my favorites.


I hope you get inspired! Let yourself play with those tools since they are here to make life easier. What is your unique workflow tool?

Cheers!

This post was originally published on my blog. Check it out for more!

Top comments (0)