Published by James Gallagher on .
This article takes approximately 4 minutes to read.
I often feel a pressure to write about coding. That’s what I am good at. My life is about more than coding and browsing the web. I do a lot more. It’s just that the “lot more” is harder to quantify than a clear project that I’ve worked on in my terminal.
I go through periods where I tire of writing software and need to take a break. What usually causes this is that I take on too much at once. I found this weekend that some of my projects started to become more like tasks. I don’t want to have a to-do list full of tasks for projects on which I am working. I like to keep busy but when I’ve got a list of tasks I don’t want to do I know that it is time to take a break. I cleared my to do list.
Last week, I set myself a little side project. I decided to tidy my bedroom / office space. It had been a long time since I had gone through all of my possessions and thought about whether I still needed them. That’s the thing: stuff accumulates. This year in particular I’ve become attached to the way things are in my room. It’s now time for change.
Little by little, I started to tidy up. I sorted a lot of old cables, electronics, and useless stuff into bags. Those bags were then disposed of at the end of the week at my local recycling center. I decided to take tidying up step-by-step because it was a big job. There was a lot that I needed to get through.
I believe that the inspiration for this comes from how I’ve been trying to tidy up my software. I have been tidying up my liceneses and making sure that my GitHub profile only shows the work that best reflects me as an engineer. I’ve deleted a lot of my old repositories with code in React and Ruby on Rails. That code was once important to me but now it reflects a development philosophy that no longer aligns with me. I much prefer to make use of the most simple technologies I have and add complexity later.
It’s why I haven’t gotten tired of vanilla Python (although I have taken long breaks from the language). Vanilla Python is simple yet powerful. I often introduce frameworks to accomplish more advanced tasks. That’s fine. As long as I can justify why I am adding a new feature to a project, I’m happy with doing it. That’s also why some of my projects end up bare-bones. If I cannot think of a scenario where I’ll use a feature, I am not going to build it.
Designing a New Work Environment
I’ve worked in the same seat for a number of years. I’ve got good memories on this seat. Now is the time where I’m thinking about what is next. Yesterday I purchased a desk plant which now sits next to my lamp. The sun is presently illuminating the plant. It is artificial but it fits in very well with the overall aesthetic of my new room. It’s my new room because it seems like I have just launched a new version. We’re in vN+1, where N is equal to however many iterations there have been of my room in the past.
I decided to make these changes because I’m looking for a change. I often get so consumed with coding that I fail to take a moment and appreciate what else there is around me. When I have a lot to work on, I get sucked in. I do like to take time where I reflect on whatever else it is that is going on. I have taken great comfort in tidying lately, both in terms of my software and my workspace. Having a clean workspace makes me happier. Having clean software makes me feel better about the code I push out into the world.
I believe that documentation is just as important as the software that I write. It’s no wonder I think this way. I am a technical writer. Documentation lets me inform you, the user, about how I architected a project. Knowing how I have configured a project on my system should give you all the resources you need to set up one of my software projects on your system. The better documented my code is, the happier I feel. I don’t have any systems around comments but I like to add them in where I feel they are necessary. I like to make sure every project has a README. I updated a few repositories that did not have one at the weekend so that my code is easier to understand.
I’m not sure how I am going to design the rest of my work environment. I am thinking about hanging a picture on the wall. I’m going to go all out on this new design. I sit in this chair a lot. I sit at this desk for most of my day. A little bit of investment in a better workspace seems wise.