Preprint Best Practices in Computer Science I truly believe in the benefits of pre-print distribution, however I'm not sure how to exactly proceed. Here are some questions I have in mind:


When should I make them available? Before peer-review? After camera-ready? 
Where should I publish them? ResearchGate keeps asking for my pre-prints, although most of the ones I read come from Arxiv. And there's always my personal website at the University.
How do I handle versioning, or how many versions should I keep? Would that disperse any potential citations?
What happens to the pre-print after the paper is published? Should the pre-print make a reference to the publication DOI?


I would specially like to know what's the "state of the practice" in Computer Science.
The best practices I've seen in sciences, including computer science, involve


making the pre-print available upon/slightly before submission of the manuscript to the journal/conference,
publish the pre-print on the repository where the manuscript fits in thematically, i.e. where you find most pre-prints you read/cite (like arXiv oder Zenodo), or use your institutional repository, and
update the pre-print with the post-print (the version after peer-review but without the journal/conference layout) if allowed by the journal/conference, so that you have one or two versions available.


You can check whether you're allowed to update you pre-print with the post-print in Sherpa/RoMEO, on the journal/conference webside or in the copyright transfer agreement you have to sign upon acceptance. There is also statet what other conditions apply, e.g. whether a link to the published version is necessary or you have to use a specific licence and so on.