This site discusses my choices in terms of papers that are writing.

It really is more dedicated to paper structuring and collaboration, rather than writing that is lower-level. It’s not supposed to be a golden standard in in whatever way, and I also usually do not declare that my choices will be the right solution to do just about anything. This can be mainly intended for my students – particularly, in order to prevent being forced to duplicate myself each and every time I take effect with a student that is newinfluenced by Claire Le Goues’ post a bit right back). Nonetheless, if you learn this information of good use, or desire to use a setup that is similar please just do it! I’ll upgrade this when I think about more points (or even find reasons that are strong do things an additional means later on).

Setup & Directory Construction

For virtually any brand brand new paper we work with, please produce an exclusive GitHub repository under the following name paper to our GitHub organization- – . For instance, I would name it paper-nadi-icse18 if I was the main author of the paper and planning to submit the work to ICSE ‘18 . Assume we began focusing on a paper, but nonetheless don’t a tangible place in mind. If that’s the case, make use of some descriptive expression. For example, if we had been taking care of extracting configuration constraints, the repo name will be paper-nadi-config-constr . Credits: we discovered this naming strategy within my time at TU Darmstadt and discovered it quite of good use, since typically group’s GitHub company could have a mixture of paper repos, rule repos, grant repos etc. Having some fixed prefix for documents made them better to spot.

We shall write all documents making use of LaTeX. In the event that you don’t now know LaTeX could be the time for you to discover.

When we are targetting a certain conference, remember to have the right template when it comes to meeting. It could be this type of shame to obtain a desk reject, due to utilising the incorrect template! Whenever we aren’t certain which meeting we’ll target, then simply utilize the standard ACM or IEEE template for the moment, but be sure to change to the best one once we choose a seminar

Rename the LaTeX that is main file main.tex and ensure that it stays within the main directory. Create a split tex apply for each area into the paper, and organize the directory as follows (this instance assumes our company is utilising the ACM template):

The >main.tex file as required. This can be could be a typical example of just what main.tex appears like:

  • Please try not to include any files that are generated the git repository ( e.g., .blg, .log, .aux etc.). This also includes the main.pdf file.


We shall collaborate through the repository that is git. Therefore please please please commit regularly and push the repo. You don’t have actually to attend it 5 times before pushing it to the repo till you have finished the whole section and revised. I am going to perhaps not read it anyways until such time you let me know it really is ready so commit often therefore we have actually good history just in case one thing goes incorrect and thus we don’t loose your entire writing if the computer crashes.

For very early drafts, i might typically mark up a pdf and deliver it for your requirements or we’d stay together and proceed through a printed part where I’ll mark up things even as we get. Either in full situation, We anticipate that you’ll upgrade things in the repository a short while later. In later on phases, after the content is really a bit stable, i shall typically begin things that are editing the repository. This may often be through making remarks into the text. Making it easier if necessary, always have the following macros defined (obviously, change colors as needed) for me to leave comments and for you to respond to them. In case a remark was already addressed and solved, then eliminate it through the text.

  • there could be some elements of the paper nevertheless under construction, e.g., numbers you nonetheless still need to have or perhaps a citation you nevertheless still need to find. of these, have actually a TODO macro defined such that individuals can very quickly spot what’s left to complete:
  • To ensure we are able to demonstrably see figures that want become dual checked, surround all figures with the\checkNum macro that is following. Remember to get rid of the color through the macro before publishing. Credits: once more, this is certainly another trick we discovered from TU Darmstadt pupils.

Whenever you are alone focusing on the repository, there aren’t any likelihood of disputes. Nonetheless, whenever we are both modifying the paper, we have to coordinate so that we have been maybe not both modifying the exact same parts (that’s why i love each section to go in an independent file). We could try this via Slack or e-mail.

Before you take to pulling modifications to your repository that is local yes to commit your present changes first after which do git pull –rebase . perform some same before pressing modifications. This decreases the probability of us getting unneeded conflict that is merge and offers a cleaner history for people (for example., no unneeded merges).

Myself so far, I think it is a good idea to have each sentence in a separate line (Sebastian Proksch at TU Darmstadt, now at U. Zьrich used to follow this) while I have not strictly implemented this. This will make it much easier to diff variations and resolve conflicts. We will make an effort to implement this myself in the years ahead.

  • We don’t claim to end up being the world’s writer that is best, but We have a few pet peeves:
    • be sure you understand when you should utilize the vs. a vs. neither. If you learn me personally constantly incorporating or getting rid of the ’s from your own text and you also don’t know very well what the problem is, come ask me personally why. Please do not just keep doing the thing that is same and once more; it is frustrating for both of us.
    • When you yourself have a phrase that is four lines very long, chances are confusing and hard to comprehend. Break it down. The greater amount of concisely you can easily say something the higher. If you want more terms, utilize numerous sentences. You’ll want to use the audience through the movement of the arguments. Don’t loose visitors by forcing them to return and read each sentence or paragraph twice. Make their life easier. Reviewers happen to be particular because it is.. don’t provide them with another explanation to shoot your paper straight down.
    • In order to prevent typing a list that is longplus it’s difficult to remember them all now), Claire Le Goues’ post has good recommendations on composing design. However, note exactly how she prefers getting the entire paper in one file and I also don’t ? – thus, each advisor’s individual choices.
  • Generally speaking, anticipate to do iterations that are multiple the paper. find yourself re-organzing things many times. Show patience your self time that is enough associated with deadline of these iterations.
  • I usually remember my PhD consultant, Ric Holt, for the words “big picture”. These are generally now etched during my mind. What exactly do they suggest? You constantly desire to inform the reader just what the big photo is. What’s the context for the issue you will be coping with? Exactly what are you doing? Why should they value what you yourself are doing? Who will gain out from the outcomes? How do the outcomes buy essays? a paper that is good makes the reader wondering about some of these points. Preferably, the introduction should currently respond to many of these “big picture” concerns without necessary overwhelming your reader with a great deal of low-level details or part “stories”.

    Linked to big photos, I’m a big fan of overview numbers that offer a numbered or labelled example of most actions associated with methodology or even the aspects of a framework, for instance. These figures can be referenced in then the text, and also make life so much easier for the reader. In addition they force you to definitely compose in a far more structured means. Examples: Figure 1, Figure 1, or Figure 1. Notice the way they are typical Figure 1 🙂

    Preferably, you intend to make your experiments such them and update the results in the paper as needed that it is easy to re-run.

    For numbers, plots etc., the way that is best to achieve this will be have script for reproducing the graph. Therefore we can essentially upgrade a label, re-run the script and re-compile our LaTeX then file. In the event that you currently do your numbers in LaTeX (We really don’t simply because We never ever tried it maybe maybe not because We have such a thing against it), then you definitely currently guarantee these are typically always as much as date.