Do you like writing documentation? Or do you prefer writing code? When given a request, do you immediately think of solutions, imagining how you'll do it, writing it like this, with each line of if...else naturally appearing in your mind? Or do you think about the business logic, related parts, or what changes might impact the existing system?
When I first learned programming, I had no concept of writing documentation, not even reading it. All I did was read articles from others, follow their step-by-step instructions, and just replicate what they did. If I encountered difficulties, searching online didn’t take too much time. In short, I only did what was sufficient, nothing extra, leaving the rest to time and accumulated experience.
That habit stayed with me for a long time afterward. I was lazy to read, and even lazier to write. What is a programmer’s job? It’s to write lines of code that change the world, not to laboriously produce text like when students practice essays in literature class. It took too much time, and above all, I used to hate literature in the past! So I would often dive straight into writing code when I got a feature request. What could be more wonderful than solving a challenging problem that you were just biting your lip over a few minutes ago?
Later, as I gained more work experience, I began to think about how to write code that is easy to understand and maintain, so that at least if I came back to it later, it would still make sense. To some extent, I improved my skills a bit. But no matter how much effort I put in, many times I still spent a fair amount of time trying to recall why I had written a particular piece of code when revisiting it not long after.
Communication is an issue that seems easy but is actually difficult. Think back: how many times have you explained an issue to your colleagues to make them understand? Or when asked to present an idea on paper or on a whiteboard, how many times did you have to erase and redo it until everyone exclaimed, "Ah, so that's what you meant"? During my working and meeting years, I’ve witnessed many debates that went nowhere, dragging on, leaving everyone exhausted because they couldn’t fully understand each other. This leads to a massive waste of time and money.
When I started taking blogging seriously, I gradually noticed a distinct change in my thinking, my mindset, and how I approached issues compared to before. I no longer buried myself in writing code immediately after receiving a request, nor did I think in lines of if...else and algorithms full of challenges. Instead, I expressed everything in written form, slowed down my thinking, clarified the issue, considered the related aspects, evaluated my understanding, and many other things. Writing code was no longer as important; the question became why I should write those lines of code.
In fact, writing brings many unexpected benefits. Writing (especially academic writing, analytical writing, and essay writing) forces the writer to organize ideas, arrange logic, reason, choose words and structure, and develop analytical and critical thinking skills. Many studies show these results. The most recent is a research article on the impact of language skills and critical thinking on the writing ability of non-English-major students (regular program) at the Academy of Policy and Development. The results indicate that students with a solid linguistic foundation, including vocabulary and grammar, combined with good critical thinking skills, tend to write more coherent and persuasive essays.
I’m writing these lines because I was recently tasked with restructuring the system architecture infrastructure at work. The main job involves reconfiguring some servers, services running on the servers, and documenting them. Thanks to this, the system has gradually become more transparent in others' eyes. Many people no longer feel vague about its existence. Moreover, in future discussions, there will be something to refer to and verify.
In conclusion, you won’t realize the value of something until you actually start doing it. Communication is an issue that seems easy but is actually difficult. Most problems arise because we don’t understand each other, and this costs a lot of time and money. Therefore, if you want to improve your ability to express issues and persuade others, start writing today!