When I was growing up, kids could either be “Math” kids or “English/writing” kids. Now that I’m older, I find this notion silly — the skills for both are very similar. Being able to critically think, break down large problems into understandable chunks, and having a decent memory are all skills that would benefit you in both areas. Back in the day though, the rivalry was real.
I’ve really found value in well-written documentation, especially in the tech world. In fact, if there’s a code package out there that doesn’t have good support in the form of understandable written documentation it’s an automatic “NO” from me. Trying to comb through the source code of the package and stack overflow for implementation examples is fine if you have a really rare particular problem, but not if you’re just trying to figure out how to install the package!
On the project side of things, I really believe that having written documentation is key to having a successful project. Sometimes it’s hard to focus on the writing and planning portion of a project because it doesn’t give the immediate gratification of building something or fixing a bug. It also takes time, and taking the time to write things down may feel like a slow down. However, I really feel like just the practice of having to explain your thoughts in a document is well worth the effort, and having a design document that your entire team has read, reviewed, and agreed on can be the difference between a success and a failure. Deciding on architecture upfront can save you from trying the headache of integrating parts of your code ahead of time. And you can stay flexible! If you’re writing down your reasons for choosing to do something a certain way, switching will be easier to justify if you compare it against the original reasons.
I know it can be daunting, especially when you’re just starting out but writing is like a muscle. The more you practice, the easier it becomes over time.