CS Glossary Ep.0 | Foreword
Why creating this glossary series?
Reading computer science literature can be hard. One important reason, I found is that some words have very specific meanings in computer science literature.
For example, in operating systems literature, when we say some design detail is “transparent”, we mean the design detail is hidden away (abstracted away) from the user. A little counter-intuitive, right?
There are many words like this. The word “abstracted” I used in explaining “transparent” is another example.
CS researches and students usually pick up these language through large amount of reading and long period time practicing. After encountering these words several times from different papers, one develop an idea what the word means in the literature. There are two problems with this approach:
- the idea generated is less precise. In general, the idea is more of a feeling of what the word mean instead of a precise definition
- this approach is inefficient. Usually, when one encounters a word, her or him already forgot how the word is used in a different context, thus the idea of what the word means can only be generated through large amount of reading.
The aforementioned approach is the approach that I used. Since it is inefficient, I spent a lot of time in understanding a set of words. But with time spent, I have developed understandings towards this set of words that help me read CS literature faster with better understanding.
I believe the sharing of the understanding towards this set of words will help people to get more out of CS literatures more efficiently. This is the reason this glossary series is created.
Comparing with existing CS glossary works
This is not the only material named “CS glossary” online. However, I noticed many of the other CS glossary works focus more on explaining CS specific terminologies and concepts. For example, what is CPU and what is time-sharing.
On the other hand, this work focus more on explaining word that has a “common sense” meaning outside of CS, and have a very particular set of meanings within CS that create bumps in reading CS literature.
Qualification and disclaimer
- The author (me..) is a PhD candidate in computer science.
- The author has over 8 years of experience in reading CS literature among which 4 years of intensive reading at the time this series started.
- The explanation of each word is empirical and based on the author’s experience instead of precise definition.
- The explanation of each word has not been peer reviewed. Even though feedback and discussion are more than welcome!