Dec 18, 2021
Addressed to the Candidate:
So, you're getting ready to write a Ph.D. dissertation in a computer science experimental area. You're in for a surprise unless you've written a lot of formal documents before: it's challenging!
There are two ways to achieve success:
This is a rare path to choose. The few that do so, do it fast that they are barely noticed when they depart the University. Do not choose it if you want to leave a lasting impression and have a lengthy career as a graduate student.
It's basically just a matter of outlasting your doctorate committee. The good news is that they are far older than you, so you can probably anticipate who will die first. The bad news is that they've played this game before (after all, didn't they persevere in front of their Ph.D. committee?).
Here are a few pointers to consider when you decide to start serious about writing. The list continues on and on; you won't be able to read it all at once. However, before you write anything, please read it.
In a dissertation, good writing is crucial. Good writing, on the other hand, cannot make up for a lack of ideas or thoughts. A clear presentation, on the other hand, always reveals flaws.
Mostly, they are very often overly used. Use strong words instead. For example, one could say, ``Writers abuse adverbs.''
They have no place in a formal document.
A scientific dissertation does not make moral judgements. Use ``incorrect/correct'' to refer to factual correctness or errors. Use precise words or phrases to assess quality (e.g., ``method A requires less computation than method B''). In general, one should avoid all qualitative judgements.
In the sense of ``good'' (it is judgemental).
Nothing is.
You're judging again.
Today is tomorrow's yesterday.
How soon? Later tonight? Next decade?
Even if you were, so what?
It doesn't matter how something appears;
all that matters are the facts.
usually vague
careful; can be vague
Does not mean ``various''; different than what?
colloquial
vague & colloquial
vague & colloquial
vague & colloquial
vague & colloquial
vague & colloquial
vague; do you mean ``some'', ``many'', or ``most''? A quantitative statement is preferable.
colloquial
only if you know the statistical probability (if you do, state it quantitatively
be careful: obvious/clear to everyone?
Can have a negative connotation, as in ``simpleton''
Just use ``with''
define terms precisely to eliminate the need to clarify
makes it a meta-sentence; rephrase
As in ``This causes concern.'' Reason: ``this'' can refer to the subject of the previous sentence, the entire previous sentence, the entire previous paragraph, the entire previous section, etc. More important, it can be interpreted in the concrete sense or in the meta-sense. For example, in: ``X does Y. This means ...'' the reader can assume ``this'' refers to Y or to the fact that X does it. Even when restricted (e.g., ``this computation...''), the phrase is weak and often ambiguous.
The second person has no place in a formal dissertation.
The first person has no place in a formal dissertation. If self-reference is essential, phrase it as ``Section 10 describes...''
A trap to avoid. Reason: almost any sentence can be written to begin with ``we'' because ``we'' can refer to: the reader and author, the author and advisor, the author and research team, experimental computer scientists, the entire computer science community, the science community, or some other unspecified group.
Computer programs don't hope, not unless they implement AI systems. By the way, if you are writing an AI thesis, talk to someone else: AI people have their own system of rules.
It doesn't matter who said it or who did it. In fact, such statements prejudice the reader.
A dissertation is precise. If a sentence says ``Most computer systems contain X'', you must be able to defend it. Are you sure you really know the facts? How many computers were built and sold yesterday?
Absolutely?
Who says so?
Would a mathematician agree that it's a proof?
Used in the sense of ``prove''. To ``show'' something, you need to provide a formal proof.
Your mother probably told you the difference.
Voice:
Make use of active structures. Instead of "the device is launched by the operating system," say "the operating system starts the device.”
Tense:
Use the present tense when writing. Instead of "The system will utilize the frame after it writes a page to disk...," say "The system writes a page to disk and then uses the frame..."
Instead of "a data block awaiting output is not on the queue," say "no data block waits on the output queue."
Make sure that the subject of each sentence performs exactly what the verb states. "Programs must make procedure calls using the X instruction," is not the same as "Programs must call procedures using the X instruction?" The first is, in fact, demonstrably incorrect! "RPC requires programs to transfer huge packets," for example, is not the same as "RPC requires a method that permits programs to communicate large packets."
The rules of logic should be known by all computer scientists. Regrettably, when the language of dialogue is English rather than mathematical symbols, the rules are more difficult to follow. For example, the line "There is a compiler that translates the N languages by..." implies that there is a single compiler that handles all the languages, whereas the sentence "There is a compiler that translates the N languages by..." implies that there may be one, two, or many compilers. The distinction is clear when stated in mathematical symbols since the words 'for all' and 'there exists' are reversed.
"We realized..." had no place in the dissertation after working eight hours in the lab that night. It makes no difference when you recognized it or how long it took you to figure it out. "Jim and I arrived at the numbers given in Table 3 by measuring..." is another example. In the dissertation, include an acknowledgment to Jim, but no names (including your own) in the main body. You might be inclined to record a long series of failed tests or a lucky chance that led to success. It should be avoided at all costs. Do not document what appears to be supernatural effects (e.g., 'we might not have detected the power supply error warning on the network bridge if that cat hadn't crawled through the hole in the floor'). Never attribute metaphysical origins to such circumstances or suggest that mysterious forces may have influenced your outcomes. In conclusion, stick to the facts. Describe the outcomes without focusing on your feelings or the events that led to them.
Both of the examples below are incorrect: "The method described in Section 2 represents a significant advance in distributed system design because..." "Although the next section's technique isn't earth-shattering,..."
Papers, not authors, are always cited. Even when a paper has numerous authors, a singular verb is used to refer to it. "Johnson and Smith [J&S90] reports that...", for example.
"The authors claim that X" should be avoided. Because it refers to the writers' views rather than the facts, the inclusion of the word "claim" raises doubt on "X." Simply state "X" followed by a reference if you agree that "X" is right. If a document must be cited instead of a result, say something like "the paper states that..." or "Johnson and Smith [J&S 90] gives evidence showing..."
When the lines between an idea and an example of it are blurred, the reader may become confused. An algorithm and a specific program that implements it, a programming language and a compiler, a general abstraction and its specific implementation in a computer system, and a data structure and a specific instance of it in memory are all common examples.
When establishing a concept's nomenclature, take sure to consider how the notion translates to a practical application. Think about the following scenario:
An address space is a notion used in virtual machine systems. After a program requires an address space, the system dynamically produces one, and when the program that created the space has done utilizing it, the system destroys it. Each address space in a VM system is identified by a small, limited number. From a conceptual standpoint, each new address space should have a unique identification. However, if a VM system runs for a long enough period of time that all potential address space identifiers are exhausted, it must reuse a number.
The crucial issue is that the topic makes sense only because "address space" is defined independently of "address space identifier." If the distinction between a notion and its implementation is to be discussed, the definitions must allow for it.
"Data" refers to the facts that emerge from an experiment. The term "knowledge" suggests that the facts have been evaluated, condensed, or integrated with data from other studies in order to generate usable information.
Cause-and-effect linkages must be distinguished from mere statistical correlations in a dissertation. Even if all computer programs written in Professor X's lab require more memory than computer programs written in Professor Y's lab, it may not be due to the professors, the lab, or the programmers (for example, perhaps the people working in Professor X's lab are working on applications that require more memory than applications in Professor Y's lab).
It's important to only form conclusions that are supported by the evidence. If programs run much slower on computer A than on computer B, for example, one cannot conclude that the processor in A is slower than the processor in B unless all differences in the computers' operating systems, input or output devices, memory size, memory cache, or internal bus bandwidth have been ruled out. In fact, unless the results of a controlled experiment are available, one should refrain from passing judgment (e.g., running a set of several programs many times, each when the computer is otherwise idle). Even if the reason of an event appears to be evident, no judgment can be drawn without robust, supporting data.
In a scientific dissertation, no inferences are drawn regarding an idea's economic potential or commercial success, and no speculation is made about the idea's evolution or origins. A scientist must remain objective about an idea's merits regardless of its commercial appeal. A scientist, in particular, never considers commercial success to be a valid measure of merit (many popular products are neither well-designed nor well-engineered). As a result, assertions like "almost 400 vendors create items utilizing technique Y" have no place in a dissertation.
When evaluating ideas, a scientist eliminates all political influences. Obviously, whether a theory is endorsed by government authorities, political parties, religious groups, or other organizations should make no difference. More importantly and frequently neglected, whether an idea originated with a Nobel Laureate or a first-year graduate student makes little difference. The notion must be evaluated independently of the source.
In general, a dissertation must outline the research problem, explain why it is significant, detail what others have done, describe the new contribution, document the experiments that support the contribution, and draw conclusions. A dissertation does not have a standard format; each one is unique. However, novices preparing a dissertation in the experimental fields of computer science might find the following example useful:
A summary of the problem, why it's significant, a synopsis of previous research, and a declaration of your hypothesis or specific question to be investigated. Make it so that anyone can read it.
Only new terms will be accepted. Make the definitions exact, succinct, and clear.
Describe the central idea that your work is based on. Make it a "theme" that connects all of your points. It should provide a conceptual answer to the issue stated in the introduction. Add another chapter if necessary to provide additional thinking regarding the problem or its solution.
Experiments that give evidence in support of your argument should be described. Typically, experiments focus on either proof-of-concept (showing that a method/technique is viable) or efficiency (showing that a method/technique outperforms existing methods/techniques).
Describe how the fundamental idea can be expanded, extended, or used in new ways.
Summarize what you've learned and how you can put it to use. Mention the research prospects for the future.
A brief synopsis of the dissertation (a few paragraphs). Describe the problem as well as the research strategy. Make a point of highlighting the original contributions.
Inside-out construction is the simplest technique to construct a dissertation. Write the chapters that describe your research first (3, 4, and 5 in the above outline). As new phrases emerge, keep a list of them and their definitions. Even if you use a technical phrase in a standard way, define it.
Separate the definitions into their own chapter. Make the definitions formal and precise. Examine the following chapters to ensure that each use of a technical word corresponds to its meaning. Write the conclusions after reading the middle chapters to double-check the terminology. Next, write the introduction. Last but not least, write an abstract.
Practice, by the way, is the key to success. Reading essays like these never taught anyone how to write. Instead, you must practice, practice, and practice some more. Every single day.