Launching into Computer Science- Unit 12

3 minute read


Unit 12

Despite the challenges, unit 12 was my favorite of all. The end-of-module assignment was an introduction to the world of academic writing and helped me to learn a new way of thinking. Having never done it before, there was a period of adjustment. I started the assignment very early, but made the mistake of writing first, before fully exploring the theme I selected and the related niches. I found that academic research is extremely detailed in nature, and not spending enough time learning the various niches and terminologies, makes it harder to write a paper. I initially found papers relevant to my topic and used them as the basis of my essay, however, after I continued to read and study all the related academic literature, I realized that I would have to start my paper again from scratch, because the inital frameworks were not fully appropriate for the case study I selected; they were too vague and did not make it possible to clearly identify areas for improvement. In light of this, I decided to change my strategy and focused on reading the content of entire papers with the aim of building a “mental model” of the topic, and connecting niche subtopics to that main topic. This helped me to determine what terminology to use when looking for papers, and also helped a lot in making my logic clear and easy to understand, regardless of whether the reader has experience in the area of research or not.

In light of what I experienced, the key insight I obtained from the assignment was to see arguments in an “atomic” way. In other words, I learned how to build complex arguments by using very simple reasoning. It’s not possible to make a convincing argument for a certain improvement if there’s no clear cause/effect relationship shown, or no set of statements that clearly build on each other. For simple reasoning to be made, however, a higher level of academic understanding is required because arguments are built on established works. To be specific, a good understanding makes it possible to relate papers and findings to each other, in such a way that it becomes possible to establish the most truthful representation of what is known. Based on this foundation, it becomes straightforward to create a convincing, yet detailed and well-thought out argument.

The changes to my thinking also helped me a lot at work. Being able to deconstruct complex arguments and situations into simple units of reasoning helped me greatly in working more efficiently. Something which I have noticed, based on what I’ve read about other developers and their experiences, is that work can be slowed down significantly when misunderstandings occur. Time is wasted and colleagues can end up going in circles with no progress made on either side. This happens extremely often when technical personnel work with non-technical personnel. In my experience, once I began applying what I learned from academic writing, communication and work became much more efficient. By relying on simple units of logic, I could explain complex problems and scenarios to non-technical colleagues in a way that they could understand, improving coordination and speeding up the process of completing certain tasks. In addition, it also helped my debugging skills- I have had multiple situations where I would have ended up wasting time debugging a problem that never existed; but by learning to break down complex scenarios into small pieces of functionality, it became easier to determine the true causes of specific problems, without the need for a debugger or contacting multiple stakeholders in the product.

In future assignments, I will continue with this strategy, however, I think the journey has just begun; I’m confident that there are more efficient ways of thinking and working that can be discovered.