Ask HN: What are some interesting papers in CS for a beginner?
I am looking for papers which are easy to understand, papers which are for undergraduates. I often stumble upon papers which require lots of reading to do and soon I have dug into a recursive rabbit hole. I would like to know about papers which have minimal citations/dependencies and only require knowledge of CS basics.
A good example of such paper would be Bitcoin. You don't need to be a CS wizard to understand the paper. Plus, you can ignore the math part and yet appreciate the beauty of Bitcoin.
Some other examples: Bit Torrent, TOTP RFC.
93 comments
[ 3.0 ms ] story [ 192 ms ] threadhttps://github.com/papers-we-love/papers-we-love/blob/master...
http://www.reed.com/dpr/locus/Papers/EndtoEnd.html
http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.67....
It provides a good selection of classics annotated with the purpose of guiding you through the paper.
There's also the seminal Bitcoin paper http://fermatslibrary.com/s/bitcoin
Architectural Styles and the Design of Network-based Software Architectures (the paper that invented REST):
http://jpkc.fudan.edu.cn/picture/article/216/35/4b/22598d594...
Solving the Dating Problem with the SENPAI Protocol:
http://sigtbd.csail.mit.edu/pubs/veryconference-paper10.pdf
Papers I Read https://shagunsodhani.in/papers-I-read/
https://www.cs.kent.ac.uk/people/staff/dat/miranda/whyfp90.p...
It's more of a "position paper" than a "research paper", I suppose, so there's no theorems or proofs or anything.
For example, I think this one on their rendering pipeline REYES (Render Everything You Ever Saw) is pretty readable, and gives a great overview of how they rendered stuff like Red's Dream, in the years leading up to Toy Story: http://graphics.pixar.com/library/Reyes/paper.pdf
(Edit to add: in fact, just check out the overviews at http://graphics.pixar.com/library/ which are much better than I can describe here)
http://www.loebner.net/Prizef/TuringArticle.html
> Turning Machine
His name's Turing
For bit of background about Turing’s life and efforts in WW2.
The reason for this is that many papers aren't all that well written and well argued. Many are, to be sure, but it will get undergrads to understand what is clear, what is not.
It will also ensure that they are not intimidated by papers and the math on them. They should know they can dive into one and learn something and come out the other end.
But if you want specific recommendations, I find that the HCI (Human Computer Interaction) papers are very readable. Maybe its the people drawn to the field?
Here is just a random example:
https://arxiv.org/pdf/1711.03115.pdf
https://www.microsoft.com/en-us/research/publication/time-cl...
"A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable." Leslie Lamport
* Architectural Styles and the Design of Network-based Software Architectures (aka REST from ch. 5) (Fielding, 2000) [1]
[0]: http://www.dougengelbart.org/pubs/augment-3906.html
[1]: https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm
[0]: https://raft.github.io/raft.pdf
https://www.microsoft.com/en-us/research/wp-content/uploads/...
[0] https://www.microsoft.com/en-us/research/wp-content/uploads/...
Amazon's Dynamo.
Twitter's Cassandra.
What I would suggest instead as a learning exercise is to pick a domain you want to tackle and reinvent the wheel by implementing it. while doing so you’ll naturally find yourself digging into research papers. The advantage here is that during implementation you’d have understood the problem and the context much better and can relate to what the authors are discussing and trying to solve. Instead of moving backwards from solution to problem.
-john carmack
Also Jim Gray “why do computers stop and what can be done about it” http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.59.65...
Most papers by Jon Bentley (e.g. "A Sample of Brilliance") are also great reads and usually pretty short.
I'm a frequent contributor to Fermat's Library (https://fermatslibrary.com), which posts an annotated paper (CS, Math and Physics mainly) every week. In the annotations you will usually find a concise piece of knowledge that helps you understand some part of the paper without having to spend a long time in the "recursive rabbit hole". For instance, in the Bitcoin paper, there is an annotation with a succinct explanation of the essential cryptography concepts (Hash functions, Public Key Cryptography, Signatures) you need to know to understand the paper. And the nice thing is that if you feel so inclined, you can add your own annotations and make the paper easier to grasp for the next person who reads it :)
- Reflections on Trusting Trust (Annotated Version) - http://fermatslibrary.com/s/reflections-on-trusting-trust
- A Sample of Brilliance (Annotated Version) - http://fermatslibrary.com/s/a-sample-of-brilliance
- Bitcoin: A Peer-to-Peer Electronic Cash System - https://fermatslibrary.com/s/bitcoin
http://www.cs.utexas.edu/users/EWD/
Classics and very good reading. Some of the papers are hand written.
[1]: http://courses.cs.vt.edu/cs2604/fall05/wmcquain/Notes/Supple...
[2]: http://math.harvard.edu/~ctm/home/text/others/shannon/entrop...
[3]: https://arxiv.org/pdf/1411.2738.pdf
[4]: https://arxiv.org/pdf/1402.3722.pdf