mirror of
https://github.com/papers-we-love/papers-we-love.git
synced 2024-10-27 20:34:20 +00:00
commit
d9e5112446
27
.github/CONTRIBUTING.md
vendored
Normal file
27
.github/CONTRIBUTING.md
vendored
Normal file
@ -0,0 +1,27 @@
|
||||
## Contributing Guidelines
|
||||
|
||||
We have a few guidelines in place to keep the repo clean and easy to navigate. We recommend that you follow these conventions in your pull-request for a speedy merge. Note that every pull request we receive must have Two-Thumbs-Up minimum from PWL organizers/collaborators to be merged.
|
||||
|
||||
### Follow the group's ethos
|
||||
|
||||
We want to help bring academic research closer to practitioners and we strive to:
|
||||
* **Adhere to [Papers We Love Code of Conduct](https://github.com/papers-we-love/papers-we-love/blob/master/CODE_OF_CONDUCT.md)**.
|
||||
* **Keep the quality of papers listed high:** Books, blogposts, and/or reference pdfs don't go through the same review process that academic papers do and we won't add them to this repo.
|
||||
* **Help people understand why a paper is important:** We ask that you include with your commit an update to the directory README with a short justification of why you love this paper (for example: A paper might be interesting because it spawned a new domain, it was exceptionally well-written, or perhaps it was completely wrong about something.) Take look at this [pull request](https://github.com/papers-we-love/papers-we-love/pull/282/files) as a model.
|
||||
|
||||
### Respect content licenses
|
||||
|
||||
* **We will only merge pull requests that contain research papers that allow digital distribution.** Papers whose copyright prohibits redistribution will not be accepted; for example [license 8](http://www.acm.org/publications/policies/copyright-policy-v8/) from the [ACM digital library](http://www.acm.org/publications/policies/copyright_policy).
|
||||
* We encourage papers that do not allow digital distribution to be added to a README, with a link to the source URL, in the appropriate subject's folder. For example, [the distributed systems README](https://github.com/papers-we-love/papers-we-love/blob/master/distributed_systems/README.md).
|
||||
|
||||
### Follow our commit, naming, and directory-organization conventions
|
||||
|
||||
* Directory names are undercased and separated by underscores (example: artificial_intelligence)
|
||||
* Paper names are undercased and separated by dashes (example: out-of-the-tar-pit.pdf). Use the full title when possible.
|
||||
* If your pull request includes a binary file, like a `*.pdf` for example, please still include a link to the source URL in the appropriate subject's folder's README file and highlight it with a :scroll: emojii to show that the directory contains the file itself. Here's an example [pull request](https://github.com/papers-we-love/papers-we-love/pull/366/files).
|
||||
* After raising [this issue](https://github.com/papers-we-love/papers-we-love/issues/290), it would beneficial to also include the *year* along with the title, link, and description/importance when adding paper(s) to a README.
|
||||
* Please rebase all multi-commit branches/PRs into 1 single commit.
|
||||
|
||||
### Copyright
|
||||
|
||||
The name "Papers We Love" and the logos for the organization are copyrighted, and under the ownership of Papers We Love Ltd, all rights reserved. When starting a chapter, please review [our guidelines](https://github.com/papers-we-love/papers-we-love/wiki/Creating-a-PWL-chapter) and ask us about using the logo.
|
9
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
9
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@ -0,0 +1,9 @@
|
||||
## Paper Title:
|
||||
|
||||
### Paper Year:
|
||||
|
||||
### Reasons for including paper
|
||||
|
||||
-
|
||||
-
|
||||
-
|
@ -13,15 +13,16 @@ We value the participation of each member of the community and want all attendee
|
||||
Need help?
|
||||
----------
|
||||
|
||||
If you are experiencing harassment on or have concerns about content within the [GitHub repo](https://github.com/papers-we-love/papers-we-love), the **#paperswelove** IRC channel on Freenode, the **paperswelove.slack.com** Slack, or [PapersWeLove.org](http://paperswelove.org) please contact:
|
||||
If you are experiencing harassment on or have concerns about content within the [GitHub repo](https://github.com/papers-we-love/papers-we-love), the **#paperswelove** IRC channel on Freenode, the **paperswelove.slack.com** Slack, [PapersWeLove.org](http://paperswelove.org), or via remote presentations, please contact:
|
||||
|
||||
- **Zeeshan Lakhani** [zeeshan@paperswelove.org](mailto:zeeshan@paperswelove.org)
|
||||
- **Clint Newsom** [clint@paperswelove.org](mailto:clint@paperswelove.org)
|
||||
- **Ines Sombra** [ines@paperswelove.org](mailto:ines@paperswelove.org)
|
||||
- **Elaine Greenberg** [elaine@paperswelove.org](mailto:elaine@paperswelove.org)
|
||||
- **Jeremy Heiler** (Github) [jeremy@paperswelove.org](mailto:jeremy@paperswelove.org)
|
||||
- **Darren Newton** (paperswelove.org) [darren@paperswelove.org](mailto:darren@paperswelove.org)
|
||||
- **All** [contact@paperswelove.org](mailto:contact@paperswelove.org)
|
||||
|
||||
The organizers of your local Papers We Love meet-up/event are available to help you with any issues or concerns at live events.
|
||||
The organizers of your local Papers We Love meet-up/event are available to help you with any issues or concerns at live and/or live-streaming events. If they are unavailable for some reason, please send a message to our contact email address or to one of our core organizers listed above.
|
||||
|
||||
What it means
|
||||
-------------
|
||||
@ -39,11 +40,11 @@ Thank you for helping make this a welcoming, friendly event for all.
|
||||
Spelling it out
|
||||
---------------
|
||||
|
||||
Harassment includes offensive verbal comments related to gender, sexual orientation, disability, physical appearance, body size, race, religion, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.
|
||||
Harassment includes offensive verbal comments related to gender, sexual orientation, disability, physical appearance, body size, race, religion, age, sexual images in public spaces, deliberate intimidation, stalking, following, harassing photography or recording, sustained disruption of talks or other events, inappropriate physical contact, and unwelcome sexual attention.
|
||||
|
||||
Participants asked to stop any harassing behavior are expected to comply immediately.
|
||||
|
||||
Contributors to the GitHub repository, the Meetup and/or event-related sites, sponsors, or similar are also subject to the anti-harassment policy. Organizers (including volunteers) should not use sexualized clothing/uniforms/costumes, or otherwise create a sexualized environment..
|
||||
Contributors to the GitHub repository, the meetups and/or event-related sites, sponsors, or similar are also subject to the anti-harassment policy. Organizers (including volunteers) should not use sexualized clothing/uniforms/costumes, or otherwise create a sexualized environment.
|
||||
|
||||
Local Chapters
|
||||
--------------
|
||||
|
78
README.md
78
README.md
@ -1,8 +1,8 @@
|
||||
## ![Papers We Love](http://paperswelove.org/images/logo-top.svg)
|
||||
## ![Papers We Love](http://paperswelove.org/images/logo-top.svg)
|
||||
|
||||
**Papers We Love** (*PWL*) is a community built around reading, discussing and learning more about academic computer science papers. This repository serves as a directory of some of the best papers the community can find, bringing together documents scattered across the web. You can also visit the [Papers We Love site](http://paperswelove.org/) for more info.
|
||||
|
||||
Due to [licenses](https://github.com/papers-we-love/papers-we-love#respect-content-licenses) we cannot always host the papers themselves (when we do, you will see a :scroll: emoji next to its title in the directory README) but we can provide links to their locations.
|
||||
Due to [licenses](https://github.com/papers-we-love/papers-we-love/blob/master/.github/CONTRIBUTING.md#respect-content-licenses) we cannot always host the papers themselves (when we do, you will see a :scroll: emoji next to its title in the directory README) but we can provide links to their locations.
|
||||
|
||||
If you enjoy the papers, perhaps stop by a local chapter meetup and join in on the vibrant discussions around them. You can also discuss *PWL* events, the content in this repository, and/or anything related to *PWL* on our [Slack](https://paperswelove.slack.com/messages/general/), after [signing-up](http://papersweloveslack.herokuapp.com/) to join it, or on our *#paperswelove* IRC channel on freenode.
|
||||
|
||||
@ -11,59 +11,77 @@ If you enjoy the papers, perhaps stop by a local chapter meetup and join in on t
|
||||
Here are our official chapters. Let us know if you are interested in [starting one](https://github.com/papers-we-love/papers-we-love/wiki/Creating-a-PWL-chapter) in your city!
|
||||
|
||||
* [Amsterdam](http://www.meetup.com/papers-we-love-amsterdam/)
|
||||
* [Athens](https://www.meetup.com/Papers-We-Love-Athens)
|
||||
* [Atlanta](https://www.meetup.com/Papers-We-Love-Atlanta)
|
||||
* [Bangalore](http://www.meetup.com/Papers-we-love-Bangalore/)
|
||||
* [Barcelona](https://www.meetup.com/papers-we-love-bcn/)
|
||||
* [Beijing](https://www.meetup.com/Beijing-Technology-Meetup-Group/)
|
||||
* [Belfast](http://www.meetup.com/Papers-We-Love-Belfast/)
|
||||
* [Berlin](http://www.meetup.com/Papers-We-Love-Berlin/)
|
||||
* [Bhubaneswar](https://www.facebook.com/groups/pwlbbsr/)
|
||||
* [Boston](http://www.meetup.com/Papers-We-Love-Boston-Cambridge/)
|
||||
* [Brasilia](http://www.meetup.com/papers-we-love-bsb)
|
||||
* [Boulder](http://www.meetup.com/Papers-We-Love-Boulder/)
|
||||
* [Bucharest](http://www.meetup.com/papers-we-love-bucharest/)
|
||||
* [Chicago](http://www.meetup.com/Papers-We-Love-Chicago)
|
||||
* [Cairo](http://www.meetup.com/Papers-We-Love-Cairo/)
|
||||
* [Chattanooga](http://www.meetup.com/Papers-We-Love-Chattanooga/)
|
||||
* [Chicago](http://www.meetup.com/papers-we-love-chicago/)
|
||||
* [Columbus, Ohio](http://www.meetup.com/Papers-We-Love-Columbus/)
|
||||
* [Dallas](http://www.meetup.com/Papers-We-Love-Dallas/)
|
||||
* [Dallas](http://www.papersdallas.com/)
|
||||
* [Gothenburg](https://www.meetup.com/Papers-We-Love-Gothenburg/)
|
||||
* [Guadalajara](https://www.facebook.com/pwlgdl/)
|
||||
* [Hamburg](http://www.meetup.com/Papers-We-Love-Hamburg/)
|
||||
* [Hyderabad](http://www.meetup.com/papers-we-love-hyderabad/)
|
||||
* [Iasi](http://www.meetup.com/Papers-We-Love-Iasi/)
|
||||
* [Iowa City](https://www.meetup.com/techcorridorio)
|
||||
* [Kathmandu](https://www.facebook.com/groups/PapersWeLoveKathmandu/)
|
||||
* [Kyiv](https://www.facebook.com/groups/PapersWeLoveKyiv)
|
||||
* [Lebanon](http://www.paperswelovelb.club)
|
||||
* [London](http://www.meetup.com/papers-we-love-london)
|
||||
* [Los Angeles](http://www.meetup.com/papers-we-love-la)
|
||||
* [Madrid](http://www.meetup.com/Papers-We-Love-Madrid/)
|
||||
* [Medellín](https://www.meetup.com/paperswelovemde/)
|
||||
* [Montreal](http://www.meetup.com/Papers-We-Love-Montreal/)
|
||||
* [Mumbai](https://www.meetup.com/Papers-We-Love-Mumbai/)
|
||||
* [Munich](http://www.meetup.com/Papers-We-Love-Munich/)
|
||||
* [New York City](http://www.meetup.com/papers-we-love/)
|
||||
* [Paris](http://www.meetup.com/Papers-We-Love-Paris/)
|
||||
* [Philadelphia](http://www.meetup.com/Papers-We-Love-Philadelphia/)
|
||||
* [Portland](http://www.meetup.com/Papers-We-Love-PDX/)
|
||||
* [Porto](https://www.meetup.com/Papers-We-Love-Porto)
|
||||
* [Pune](http://www.meetup.com/Doo-Things)
|
||||
* [Raleigh-Durham](https://www.meetup.com/Papers-We-Love-Raleigh-Durham/)
|
||||
* [Reykjavík](http://www.meetup.com/Papers-We-Love-Reykjavik)
|
||||
* [San Francisco](http://www.meetup.com/papers-we-love-too/) || [Meetup list](https://github.com/papers-we-love/papers-we-love/tree/master/_meetups/SanFrancisco)
|
||||
* [Rio de Janeiro](https://www.meetup.com/pt-BR/papers-we-love-rio-de-janeiro/)
|
||||
* [San Diego](http://www.meetup.com/Papers-We-Love-San-Diego/)
|
||||
* [San Francisco](http://www.meetup.com/papers-we-love-too/)
|
||||
* [Seattle](http://www.meetup.com/Papers-We-Love-Seattle/)
|
||||
* [Seoul, Korea](http://www.meetup.com/seoul-tech-society)
|
||||
* [Singapore](https://www.facebook.com/groups/paperswelovesg/)
|
||||
* [St. Louis](http://www.meetup.com/Papers-We-Love-in-saint-louis/)
|
||||
* [Teresina](https://www.meetup.com/pt-BR/Papers-We-Love-Teresina/)
|
||||
* [Toronto](http://www.meetup.com/Papers-We-Love-Toronto/)
|
||||
* [Vienna](http://www.meetup.com/Papers-We-Love-Vienna/)
|
||||
* [Washington, DC](http://www.meetup.com/Papers-We-Love-DC/)
|
||||
* [Winnipeg](http://www.meetup.com/Papers-We-Love-Winnipeg/)
|
||||
* [Washington, DC](http://www.meetup.com/Papers-We-Love-DC-NoVA/)
|
||||
* [Winnipeg](http://pwlwpg.ca/)
|
||||
* [Zürich](https://www.meetup.com/Papers-we-love-Zurich/)
|
||||
|
||||
All of our meetups follow our [Code of Conduct](CODE_OF_CONDUCT.md).
|
||||
|
||||
### Past Presentations
|
||||
|
||||
View a complete list of [past presentations](https://github.com/papers-we-love/papers-we-love/wiki/Past-Presentations) or check out our [Youtube](https://www.youtube.com/user/PapersWeLove) and [MixCloud](https://www.mixcloud.com/paperswelove/) (audio-only format) channels.
|
||||
|
||||
## Search this Repo!
|
||||
[@polyfractal](https://github.com/polyfractal) indexed this repository with Elastic Search. Find papers [here](http://findpaperswelove.com) !
|
||||
Check out our [YouTube](https://www.youtube.com/user/PapersWeLove) and [MixCloud](https://www.mixcloud.com/paperswelove/) (audio-only format) channels.
|
||||
|
||||
## Info
|
||||
|
||||
We're looking for pull requests related to papers we should add, better organization of the papers we do have, and/or links to other paper-repos we should point to.
|
||||
|
||||
### Other Good Places to Discuss Papers
|
||||
|
||||
* [Papers We Love reddit](https://www.reddit.com/r/paperswelove)
|
||||
|
||||
### Other Good Places to Find Papers
|
||||
|
||||
* [2 Minute Papers](https://www.youtube.com/user/keeroyz)
|
||||
* [Bell System Technical Journal, 1922-1983](https://www.alcatel-lucent.com/bell-labs-journals)
|
||||
* [Best Paper Awards in Computer Science](http://jeffhuang.com/best_paper_awards.html)
|
||||
* [Facebook](https://www.facebook.com/publications)
|
||||
* [Facebook](https://research.fb.com/publications/)
|
||||
* [Google Scholar](http://scholar.google.com/citations?view_op=top_venues&hl=en&vq=eng) (choose a subcategory)
|
||||
* [Microsoft Research](http://research.microsoft.com/apps/catalog/default.aspx?t=publications)
|
||||
* [Functional Programming Books Review](http://alexott.net/en/fp/books/)
|
||||
@ -77,7 +95,7 @@ We're looking for pull requests related to papers we should add, better organiza
|
||||
* [Services Engineering Reading List](https://github.com/mmcgrana/services-engineering)
|
||||
* [Readings in Distributed Systems](http://christophermeiklejohn.com/distributed/systems/2013/07/12/readings-in-distributed-systems.html)
|
||||
* [Gradual Typing Bibliography](http://samth.github.io/gradual-typing-bib/)
|
||||
* [Security Data Science Papers](http://www.covert.io/security-datascience-papers/)
|
||||
* [Security Data Science Papers](http://www.covert.io/the-definitive-security-datascience-and-machinelearning-guide/)
|
||||
* [Research Papers from Robert Harper, Carnegie Mellon University](http://www.cs.cmu.edu/~rwh/papers.html)
|
||||
* [Lobste.rs tagged as PDF](https://lobste.rs/t/pdf)
|
||||
* [The Morning Paper](http://blog.acolyer.org/)
|
||||
@ -89,31 +107,19 @@ Please check out our [wiki-page](https://github.com/papers-we-love/papers-we-lov
|
||||
Reading a paper is not the same as reading a blogpost or a novel. Here are a few handy resources to help you get started.
|
||||
|
||||
* [How to read an academic article](http://organizationsandmarkets.com/2010/08/31/how-to-read-an-academic-article/)
|
||||
* [Advice on reading academic papers](http://www4.ncsu.edu/~akmassey/posts/2012-02-15-advice-on-reading-academic-papers.html)
|
||||
* [Advice on reading academic papers](https://www.cc.gatech.edu/~akmassey/posts/2012-02-15-advice-on-reading-academic-papers.html)
|
||||
* [How to read and understand a scientific paper](http://violentmetaphors.com/2013/08/25/how-to-read-and-understand-a-scientific-paper-2/)
|
||||
* [Should I Read Papers?](http://michaelrbernste.in/2014/10/21/should-i-read-papers.html)
|
||||
* [The Refreshingly Rewarding Realm of Research Papers](https://www.youtube.com/watch?v=8eRx5Wo3xYA)
|
||||
|
||||
### Applications/Ideas built around Papers We Love
|
||||
|
||||
* Love a Paper - [@loveapaper](https://twitter.com/loveapaper)
|
||||
|
||||
## Contributing Guidelines
|
||||
|
||||
We have a few guidelines in place to keep the repo clean and easy to navigate. We recommend that you follow these conventions in your pull-request for a speedy merge. Note that every pull request we receive must have Two-Thumbs-Up minimum from PWL organizers/collaborators to be merged.
|
||||
Please take a look at our [CONTRIBUTING.md](https://github.com/papers-we-love/papers-we-love/blob/master/.github/CONTRIBUTING.md) file.
|
||||
|
||||
### Follow the group's ethos
|
||||
|
||||
We want to help bring academic research closer to practitioners and we strive to:
|
||||
* **Keep the quality of papers listed high:** Books, blogposts, and/or reference pdfs don't go through the same review process that academic papers do and we won't add them to this repo.
|
||||
* **Help people understand why a paper is important:** We ask that you include with your commit an update to the directory README with a short justification of why you love this paper (for example: A paper might be interesting because it spawned a new domain, it was exceptionally well-written, or perhaps it was completely wrong about something.)
|
||||
|
||||
### Respect content licenses
|
||||
|
||||
* **We will only merge pull requests that contain research papers that allow digital distribution.** Papers whose copyright prohibits redistribution will not be accepted; for example [license 1](http://www.acm.org/publications/policies/copyright-policy-v1) from the [ACM digital library](http://www.acm.org/publications/policies/copyright_policy).
|
||||
* We encourage papers that do not allow digital distribution to be added to a README in the appropriate subject's folder. For example, [the distributed systems README](https://github.com/papers-we-love/papers-we-love/blob/master/distributed_systems/README.md).
|
||||
|
||||
### Follow our naming convention
|
||||
|
||||
* Directory names are undercased and separated by underscores (example: artificial_intelligence)
|
||||
* Paper names are undercased and separated by dashes (example: out-of-the-tar-pit.pdf). Use the full title when possible.
|
||||
|
||||
### Copyright
|
||||
## Copyright
|
||||
|
||||
The name "Papers We Love" and the logos for the organization are copyrighted, and under the ownership of Papers We Love Ltd, all rights reserved. When starting a chapter, please review [our guidelines](https://github.com/papers-we-love/papers-we-love/wiki/Creating-a-PWL-chapter) and ask us about using the logo.
|
||||
|
@ -1,49 +0,0 @@
|
||||
### PWLSF#1 => Dapper, a Distributed Systems Tracing Infrastructure
|
||||
Speaker: [Ryan Kennedy](https://twitter.com/rckenned)
|
||||
Date: [March 26, 2014](http://www.meetup.com/papers-we-love-too/events/168085182/)
|
||||
Links: [Paper](http://research.google.com/pubs/pub36356.html) || [Video](https://www.youtube.com/watch?v=ya9X63VPgV8) || [Slides](https://speakerdeck.com/paperswelove/pwl-sf-number-1-equals-ryan-kennedy-on-dapper-a-distributed-systems-tracing-infrastructure)
|
||||
|
||||
### PWLSF#2 => The Akamai Network
|
||||
Speaker: [Andy Gross](https://twitter.com/argv0)
|
||||
Date: [April 24, 2014](http://www.meetup.com/papers-we-love-too/events/168294502/)
|
||||
Links: [Paper](http://www.akamai.com/dl/technical_publications/network_overview_osr.pdf) || [Video](https://www.youtube.com/watch?v=bQCT93D1bsM) || Slides: N/A
|
||||
|
||||
### PWLSF#3 => Bimodal Multicast
|
||||
Speaker: [Bruce Spang](https://twitter.com/brucespang)
|
||||
Date: [May 22, 2014](http://www.meetup.com/papers-we-love-too/events/168461962/)
|
||||
Links: [Paper](http://www.csl.mtu.edu/cs6461/www/Reading/Birman99.pdf) || [Video](https://www.youtube.com/watch?v=iBvWB2K2ULU) || [Slides](https://speakerdeck.com/paperswelove/pwlsf-number-3-equals-bruce-spang-on-bimodal-multicast)
|
||||
|
||||
### PWLSF#4 => Calvin
|
||||
Speaker: [Joel VanderWerf](https://twitter.com/JoelVanderWerf)
|
||||
Date: [April 24, 2014](http://www.meetup.com/papers-we-love-too/events/171291972/)
|
||||
Links: [Paper](http://www.cs.yale.edu/homes/dna/papers/calvin-sigmod12.pdf) || [Video](https://www.youtube.com/watch?v=RxMBqVLfei0) || [Slides](https://speakerdeck.com/paperswelove/pwlsf-number-4-equals-joel-vanderwerf-on-calvin)
|
||||
|
||||
### PWLSF#5 => Impossibility of Distributed Consensus with One Faulty Process
|
||||
Speaker: [Henry Robinson](https://twitter.com/HenryR)
|
||||
Date: [July 24, 2014](http://www.meetup.com/papers-we-love-too/events/168566452/)
|
||||
Links: [Paper](http://macs.citadel.edu/rudolphg/csci604/ImpossibilityofConsensus.pdf)|| [Video](https://www.youtube.com/watch?v=HAimnwG4Qv4) || [Slides](https://speakerdeck.com/paperswelove/pwlsf-number-5-equals-henry-robinson-on-flp-imp-of-distributed-consensus-w-one-faulty-process)
|
||||
|
||||
### PWLSF#6 => Using Reasoning about Knowledge to Analyze Distributed Systems
|
||||
Speaker: [Peter Alvaro](https://twitter.com/palvaro)
|
||||
Date: [August 21, 2014](http://www.meetup.com/papers-we-love-too/events/168821902/)
|
||||
Links: [Paper](https://www.cs.cornell.edu/home/halpern/papers/UsingRAK.pdf) || [Video](https://www.youtube.com/watch?v=CxZrBwhXHdo) || [Slides](https://speakerdeck.com/paperswelove/pwlsf-number-6-equals-peter-alvaro-using-reasoning-about-knowledge-to-analyze-distributed-systems)
|
||||
|
||||
### PWLSF#7 => SWIM
|
||||
Speaker: [Armon Dadgar](https://twitter.com/armon)
|
||||
Date: [September 25, 2014](http://www.meetup.com/papers-we-love-too/events/176288712/)
|
||||
Links: [Paper](http://www.cs.cornell.edu/~asdas/research/dsn02-swim.pdf) || [Video](https://www.youtube.com/watch?v=aVYEY75qn3c) || [Slides](https://speakerdeck.com/paperswelove/pwlsf-number-7-equals-armon-dadgar-on-swim)
|
||||
|
||||
### PWLSF#8 => On the attraction between two perfectly conducting plates
|
||||
Speaker: [Kyle Kingsbury](https://twitter.com/aphyr)
|
||||
Date: [October 22, 2014](http://www.meetup.com/papers-we-love-too/events/187600122/)
|
||||
Links: [Paper](https://github.com/papers-we-love/papers-we-love/blob/master/physics/on-the-attraction-of-two-perfectly-conducting-plates.pdf?raw=true) || [Video]() || [Slides]()
|
||||
|
||||
### PWLSF#9 => Level Ancestor Simplified
|
||||
Speaker: [Leif Walsh](https://twitter.com/leifwalsh)
|
||||
Date: [November 13, 2014](http://www.meetup.com/papers-we-love-too/events/197577972/)
|
||||
Links: [Paper](https://github.com/papers-we-love/papers-we-love/blob/master/data_structures/level-ancestor-simplified.pdf) || [Video]() || [Slides]()
|
||||
|
||||
### PWLSF#10 => Managing Update Conflicts in Bayou
|
||||
Speaker: [Peter Bailis](http://twitter.com/pbailis)
|
||||
Date: [December 17, 2014](http://www.meetup.com/papers-we-love-too/events/197678922/)
|
||||
Links: [Paper](http://db.cs.berkeley.edu/cs286/papers/bayou-sosp1995.pdf) || [Video]() || [Slides]()
|
@ -1,6 +0,0 @@
|
||||
### San Francisco Papers We Love Meetups
|
||||
Our [Meetup Page](http://www.meetup.com/papers-we-love-too)
|
||||
|
||||
Here is the list of all meetups and links to their resources. Enjoy!
|
||||
* [2014 Meetups](2014_meetups.md)
|
||||
* 2015 - coming soon!
|
5
affective-computing/README.md
Normal file
5
affective-computing/README.md
Normal file
@ -0,0 +1,5 @@
|
||||
## Affective Computing
|
||||
|
||||
* :scroll: [Affective Computing](http://affect.media.mit.edu/pdfs/95.picard.pdf)
|
||||
|
||||
* :scroll: [Theories, Methods and Current Research on Emotions](https://irenelopatovska.files.wordpress.com/2012/10/lopatovska_arapakis_2011_theories.pdf)
|
Binary file not shown.
BIN
affective-computing/affective-computing.pdf
Normal file
BIN
affective-computing/affective-computing.pdf
Normal file
Binary file not shown.
@ -1,10 +1,15 @@
|
||||
## Artificial Intelligence
|
||||
|
||||
* [:scroll:](3-bayesian-network-inference-algorithm.pdf) [Analysis of Three Bayesian Network Inference Algorithms:Variable Elimination, Likelihood Weighting, and Gibbs Sampling](https://github.com/papers-we-love/papers-we-love/blob/master/artificial_intelligence/3-bayesian-network-inference-algorithm.pdf) by Rose F. Liu, Rusmin Soetjipto
|
||||
* :scroll: [Analysis of Three Bayesian Network Inference Algorithms: Variable Elimination, Likelihood Weighting, and Gibbs Sampling](3-bayesian-network-inference-algorithm.pdf) by Rose F. Liu, Rusmin Soetjipto
|
||||
|
||||
* :scroll: [Efficient Selectivity and Backup Operators in Monte-Carlo Tree Search](efficient-selectivity-and-backup-operators-in-monte-carlo-tree-search.pdf)
|
||||
|
||||
* [Computing Machinery and Intelligence](http://www.csee.umbc.edu/courses/471/papers/turing.pdf) by A.M. Turing
|
||||
|
||||
* [Judea Pearl](http://bayes.cs.ucla.edu/jp_home.html) folder - Papers by Judea Pearl, 2011 winner of the ACM Turing Award.
|
||||
* [:open_file_folder: Summary of Papers](judea_pearl/)
|
||||
* [:open_file_folder: Summary of Papers](judea_pearl/)
|
||||
|
||||
* [Mastering the Game of Go with Deep Neural Networks and Tree Search](http://airesearch.com/wp-content/uploads/2016/01/deepmind-mastering-go.pdf) by Silver et al.
|
||||
|
||||
* [A Universal Music Translation Network (2018)](https://arxiv.org/pdf/1805.07848.pdf) by Noam Mor, Lior Wolf, Adam Polyak & Yaniv Taigman
|
||||
> This paper proposes a method for translating music across musical instruments, genres, and styles. It is based on a multi-domain wavenet autoencoder, with a shared encoder and a disentangled latent space that is trained end-to-end on waveforms. Employing a diverse training dataset and large net capacity, the domain-independent encoder enables translation even from musical domains that were not seen during training. The method is unsupervised and does not rely on supervision in the form of matched samples between domains or musical transcriptions. This method is evaluated on NSynth, as well as on a dataset collected from professional musicians, and achieve convincing translations, even when translating from whistling, potentially enabling the creation of instrumental music by untrained humans.
|
@ -6,24 +6,18 @@
|
||||
> complex probability models, identified conditional independence
|
||||
> relationships as the key organizing principle for uncertain knowledge,
|
||||
> and described an efficient, distributed, exact inference algorithm.
|
||||
> -- <cite>[ACM Turing Award Short Annotated Bibliography][1]</cite>
|
||||
|
||||
[A theory of inferred causation](http://ftp.cs.ucla.edu/pub/stat_ser/r156-reprint.pdf) - with Thomas S. Verma.
|
||||
> Introduces minimal-model semantics as a basis for causal discovery,
|
||||
> and shows that causal directionality can be inferred from patterns
|
||||
> of correlations without resorting to temporal information.
|
||||
> -- <cite>[ACM Turing Award Short Annotated Bibliography][1]</cite>
|
||||
|
||||
[Causal diagrams for empirical research](http://ftp.cs.ucla.edu/pub/stat_ser/R218-B-L.pdf) - extended version linked.
|
||||
> Introduces the theory of causal diagrams and its associated do-calculus;
|
||||
> the first (and still the only) mathematical method to enable a
|
||||
> systematic removal of confounding bias in observations.
|
||||
> -- <cite>[ACM Turing Award Short Annotated Bibliography][1]</cite>
|
||||
|
||||
[The algorithmization of counterfactuals](http://ftp.cs.ucla.edu/pub/stat_ser/r360.pdf) -
|
||||
> Describes a computational model that explains how humans generate,
|
||||
> evaluate and distinguish counterfactual statements so swiftly and
|
||||
> consistently.
|
||||
> -- <cite>[ACM Turing Award Short Annotated Bibliography][1]</cite>
|
||||
|
||||
[1]: http://amturing.acm.org/bib/pearl_2658896.cfm
|
||||
|
@ -3,3 +3,17 @@
|
||||
* :scroll: [An ethnographic and technological study of breakbeats in Hardcore, Jungle, and Drum & Bass](an-ethnographic-and-technological-study-of-breakbeats.pdf) by Jason A. Hockman
|
||||
|
||||
* :scroll: [An Industrial-Strength Audio Search Algorithm](shazam-audio-search-algorithm.pdf) by Avery Li-Chun Wang
|
||||
|
||||
* [WaveNet: A Generative Model for Raw Audio](https://arxiv.org/pdf/1609.03499.pdf) by a team @ Google DeepMind, 2016
|
||||
* [Announcement and interactive examples](https://deepmind.com/blog/wavenet-generative-model-raw-audio/)
|
||||
* [[Python] Implementation with the Keras Neural Networks library](https://github.com/basveeling/wavenet)
|
||||
* [[Python] Implementation with the TensorFlow Machine Intelligence library](https://github.com/ibab/tensorflow-wavenet)
|
||||
|
||||
* :scroll: [Real time chord recognition for live performance](real-time-chord-detection.pdf) by Adam M. Stark, Mark D. Plumbley
|
||||
* [[C++] Implementation of real time chord detection](https://github.com/adamstark/Chord-Detector-and-Chromagram)
|
||||
|
||||
* :scroll: [ESSENTIA: An Audio Analysis Library for MusicInformation Retrieval](essentia.pdf) by Music Technology Group, Universitat Pompeu Fabra, Barcelona, Spain
|
||||
* [[C++] Essential open source library](https://github.com/MTG/essentia)
|
||||
|
||||
* :scroll: [MARSYAS: A framework for audio analysis](marsyas.pdf) by George Tzanetakis and Perry Cook
|
||||
* [[C++] Marsyas open source audio processing framework](https://github.com/marsyas/marsyas)
|
||||
|
BIN
audio_comp_sci/essentia.pdf
Normal file
BIN
audio_comp_sci/essentia.pdf
Normal file
Binary file not shown.
BIN
audio_comp_sci/marsyas.pdf
Normal file
BIN
audio_comp_sci/marsyas.pdf
Normal file
Binary file not shown.
BIN
audio_comp_sci/real-time-chord-detection.pdf
Normal file
BIN
audio_comp_sci/real-time-chord-detection.pdf
Normal file
Binary file not shown.
@ -5,9 +5,13 @@ Some resources that may assist in understanding papers in this section:
|
||||
|
||||
---------
|
||||
* [Molecular Computation of Solutions to Combinatorial Problems](http://www.cs.duke.edu/courses/cps296.4/spring04/papers/Adleman94.pdf)
|
||||
- An interesting and inspiring approach to solving the (NP-complete) Hamiltonian Graph problem.
|
||||
- An interesting and inspiring approach to solving the (NP-complete) Hamiltonian Graph problem.
|
||||
|
||||
* [The chemical basis of morphogenesis](http://www.dna.caltech.edu/courses/cs191/paperscs191/turing.pdf)
|
||||
* [The chemical basis of morphogenesis](http://www.dna.caltech.edu/courses/cs191/paperscs191/turing.pdf)
|
||||
- How we can generate patterns from reaction-diffusion models and how those models apply in real life situations: cells self-organisation and pattern creation.
|
||||
- Includes advance mathematical concepts, basic chemistry, basic biology.
|
||||
- By Alan Turing
|
||||
|
||||
* [A DNA-Based Archival Storage System](https://homes.cs.washington.edu/~luisceze/publications/dnastorage-asplos16.pdf)
|
||||
- DNA is a strong candidate for storing data stably for centuries. DNA also has a very high data/volume density (1 exabyte / mm³).
|
||||
- This paper describes an algorithm for storing binary data in the form of DNA that is optimized for biochemical reactions.
|
||||
|
@ -3,3 +3,5 @@
|
||||
* [:scroll:](a-constant-algorithm-for-implementing-the-lfu-cache-eviction-scheme.pdf) [An O(1) algorithm for implementing the LFU cache eviction scheme](https://github.com/papers-we-love/papers-we-love/blob/master/caching/a-constant-algorithm-for-implementing-the-lfu-cache-eviction-scheme.pdf) by Prof. Ketan Shah, Anirban Mitra, Dhruv Matani
|
||||
|
||||
* [:scroll:](2q-a-low-overhead-high-performance-buffer-management-replacement-algorithm.pdf) [2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm](http://www.vldb.org/conf/1994/P439.PDF) by Theodore Johnson and Dennis Shasha
|
||||
|
||||
* [:scroll:](a-program-optimization-for-automatic-database-result-caching.pdf)[A Program Optimization for Automatic Database Result Caching](http://adam.chlipala.net/papers/SqlcachePOPL17/SqlcachePOPL17.pdf) by Ziv Scully and Adam Chlipala
|
||||
|
Binary file not shown.
@ -1,3 +1,3 @@
|
||||
## Clustering Algorithms
|
||||
|
||||
[On the resemblance and containment of documents](http://gatekeeper.dec.com/ftp/pub/dec/SRC/publications/broder/positano-final-wpnums.pdf) (Andrei Z. Broder)
|
||||
[On the resemblance and containment of documents](https://www.cs.princeton.edu/courses/archive/spr05/cos598E/bib/broder97resemblance.pdf) (Andrei Z. Broder)
|
||||
|
@ -1,3 +1,14 @@
|
||||
#Combinatory Logic
|
||||
# Combinatory Logic
|
||||
|
||||
* [Flattening Combinators: Surviving Without Parentheses](http://www.westpoint.edu/eecs/SiteAssets/SitePages/Faculty%20Publication%20Documents/Okasaki/jfp03flat.pdf) by Chris Okasaki
|
||||
* [Flattening Combinators: Surviving Without Parentheses]
|
||||
by Chris Okasaki (2003) ([DOI])
|
||||
|
||||
* [Combinatorial Analysis and Computers]
|
||||
by Marshall Hall Jr. and Donald E. Knuth (1965)
|
||||
|
||||
[Flattening Combinators: Surviving Without Parentheses]:
|
||||
https://web.archive.org/web/20170828181221/http://www.westpoint.edu:80/eecs/SiteAssets/SitePages/Faculty%20Publication%20Documents/Okasaki/jfp03flat.pdf
|
||||
[DOI]:
|
||||
https://doi.org/10.1017/S0956796802004483
|
||||
[Combinatorial Analysis and Computers]:
|
||||
http://poncelet.math.nthu.edu.tw/disk5/js/computer/hall-knuth.pdf
|
||||
|
@ -1,9 +1,13 @@
|
||||
## Computer Science Fundamentals and History
|
||||
|
||||
* [Turing, On computable numbers, with an application to the Entscheidungsproblem](http://www.turingarchive.org/browse.php/B/12) by Alan Turing
|
||||
* [Mealy, A Method for Synthesizing Sequential Circuits] (http://www3.alcatel-lucent.com/bstj/vol34-1955/articles/bstj34-5-1045.pdf) by George H. Mealy
|
||||
* "Turing, On computable numbers, with an application to the Entscheidungsproblem" by Alan Turing
|
||||
* As a PDF: [Turing, On computable numbers, with an application to the Entscheidungsproblem](https://www.cs.virginia.edu/~robins/Turing_Paper_1936.pdf)
|
||||
* As a collection of single images: [Turing, On computable numbers, with an application to the Entscheidungsproblem](http://www.turingarchive.org/browse.php/B/12) by Alan Turing
|
||||
* [Mealy, A Method for Synthesizing Sequential Circuits](http://www3.alcatel-lucent.com/bstj/vol34-1955/articles/bstj34-5-1045.pdf) by George H. Mealy
|
||||
* :scroll: [Back to the Future - The Story of Squeak, A Practical Smalltalk Written in Itself](story-of-squeak-a-practical-smalltalk-written-in-itself.pdf) by Dan Ingalls, Ted Kaehler, John Maloney, Scott Wallace & Alan Kay
|
||||
* :scroll: [Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I](recursive-functions-of-symbolic-expressions-and-their-computation-by-machine-parti.pdf) by John McCarthy
|
||||
* :scroll: [An Axiomatic Basis for Computer Programming](axiomatic-basis-computer-programming.pdf) by C. A. R. HOARE
|
||||
* :scroll: [An Axiomatic Basis for Computer Programming](axiomatic-basis-computer-programming.pdf) by C. A. R. HOARE
|
||||
* [On the Computational Complexity of Algorithims](http://www.ams.org/journals/tran/1965-117-00/S0002-9947-1965-0170805-7/S0002-9947-1965-0170805-7.pdf) by J. HARTMANIS AND R. E. STEARNS
|
||||
* :scroll: [Hints for Computer System Design](hints-for-computer-system-design.pdf)
|
||||
* :scroll: [Hints for Computer System Design](hints-for-computer-system-design.pdf)
|
||||
* :scroll: [Early Lisp History: 1956-1959](early-lisp-history-1956-1959-herbert-stoyan-html-rendering.pdf) by Herbert Stoyan. This is a pdf rendering of the HTML page available at Archive.org.
|
||||
* :scroll: [Why Programming is a good medium for expressing poorly understood and sloppily-formulated ideas](http://web.media.mit.edu/~minsky/papers/Why%20programming%20is--.html) by Marvin Minsky
|
||||
|
Binary file not shown.
6
computational_creativity/README.md
Normal file
6
computational_creativity/README.md
Normal file
@ -0,0 +1,6 @@
|
||||
## Computational Creativity
|
||||
|
||||
* [:scroll:](mexica-a-computer-model-of-a-cognitive-account-of-creativing-writing.pdf) [MEXICA: a computer model of a cognitive account of creative writing.](https://www.researchgate.net/publication/220080099_MEXICA_A_computer_model_of_a_cognitive_account_of_creative_writing) by Rafael Perez Y Perez and Mike Sharples
|
||||
|
||||
> This 2001 paper is one of the classics in computational creativity. The Engagement-Reflection cycle that they use, alternating story generation and a set of reflection/revision passes, had a foundational impact on the very young field of narrative generation, the first of its kind to break away from standard theories of events and simulation, and instead look more at the cognitive side of storytelling to inform its approach. - @chrisamaphone
|
||||
|
Binary file not shown.
@ -1,13 +1,18 @@
|
||||
### Rendering
|
||||
|
||||
* [:scroll:](digital_video_stabilization_and_rolling_shutter_correction_using_gyroscopes.pdf) [Digital Video Stabilization and Rolling Shutter Correction using Gyroscopes](http://graphics.stanford.edu/papers/stabilization/karpenko_gyro.pdf)
|
||||
* :scroll: [Digital Video Stabilization and Rolling Shutter Correction using Gyroscopes](http://graphics.stanford.edu/papers/stabilization/karpenko_gyro.pdf)
|
||||
This is a really great paper that is both complex and straightforward. This paper "present a robust, real-time video stabilization and rolling shutter correction technique based on gyroscopes". I think this is a great paper because it makes a clever use of a commodity technology (smartphones' gyroscopes) to make a state-of-the-art improvement to a central components of phones: video cameras by removing the shakes and rolling shutter artifacts of a video in real-time.
|
||||
|
||||
* [An Improved Illumination Model for Shaded Display](https://www.cs.drexel.edu/~david/Classes/CS586/Papers/p343-whitted.pdf)
|
||||
|
||||
* [The Rendering Equation](http://www.cs.rpi.edu/~cutler/classes/advancedgraphics/S08/lectures/kajiya.pdf)
|
||||
* [GigaVoxels : Ray-Guided Streaming for Efficient and Detailed Voxel Rendering](http://maverick.inria.fr/Publications/2009/CNLE09/CNLE09.pdf) - [Web page](http://maverick.inria.fr/Publications/2009/CNLE09/) - [Project page](http://gigavoxels.imag.fr/) - [Video](https://www.youtube.com/watch?v=HScYuRhgEJw)
|
||||
|
||||
* [Continuous shading of curved surfaces](http://page.mi.fu-berlin.de/block/htw-lehre/wise2015_2016/bel_und_rend/skripte/gouraud1971.pdf) by Henri Gouraud (1971)
|
||||
|
||||
* [Illumination for computer generated pictures](http://www.cs.northwestern.edu/~ago820/cs395/Papers/Phong_1975.pdf) by Bui Tuong Phong (1975)
|
||||
|
||||
* [The Rendering Equation](http://www.cs.rpi.edu/~cutler/classes/advancedgraphics/S08/lectures/kajiya.pdf) by James T. Kajiya (1986)
|
||||
|
||||
### Surface reconstruction
|
||||
* [Poisson surface reconstruction](http://research.microsoft.com/en-us/um/people/hoppe/poissonrecon.pdf) - [Code](http://www.cs.jhu.edu/~misha/Code/PoissonRecon/Version5.71/)
|
||||
|
||||
@ -16,6 +21,9 @@ This is a really great paper that is both complex and straightforward. This pape
|
||||
### Object modeling
|
||||
* [3-Sweep: Extracting Editable Objects from a Single Photo](http://www.cs.tau.ac.il/~dcor/articles/2013/3-Sweep-Extracting-Editable-Objects.pdf) - [Video](https://www.youtube.com/watch?v=Oie1ZXWceqM)
|
||||
|
||||
### Photo editing
|
||||
* [Deep Photo Style Transfer](https://arxiv.org/pdf/1703.07511.pdf) (2017) - [Code](https://github.com/luanfujun/deep-photo-styletransfer) - A deep-learning approach to photographic style transfer (that is, taking the style of one photo and automatically applying it to another). The images in this paper are gorgeous.
|
||||
|
||||
### Lighting
|
||||
* [Light Propagation Volumes in CryEngine 3](http://www.crytek.com/download/Light_Propagation_Volumes.pdf)
|
||||
|
||||
@ -37,8 +45,8 @@ This is a really great paper that is both complex and straightforward. This pape
|
||||
> Of all the ways to manipulate a 3D mesh, push/ technique popularized by SketchUp is one of the most approachable and fun. PushPull++ is a recent paper that elaborates on the technique, cleaning up a lot of edge cases and unlocking new features, using wonderfully straightforward math. The potential for 3D modeling tools or procedural mesh generation APIs built on these simple ideas is very exciting.
|
||||
> The paper presents the technique and the tool that the authors built. I will focus on the technique, as s the part I loved more in this paper (quote by Ramsey Nasser).
|
||||
|
||||
|
||||
|
||||
### Image Processing
|
||||
* :scroll: [Imaging Vector Fields Using Line Integral Convolution](http://cs.brown.edu/courses/csci2370/2000/1999/cabral.pdf) by Brian Cabral and Leith Leedom
|
||||
|
||||
### Shape grammars
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
@ -13,3 +13,7 @@
|
||||
* [The Semantics of x86-CC Multiprocessor Machine Code](http://www.cl.cam.ac.uk/~pes20/weakmemory/popl09.pdf)
|
||||
|
||||
*Note: This contribution here is the focus on the rigorous semantics for x86 multiprocessor programs and an axiomatic definition of the memory model. Their definitions and proofs are backed by the [HOL](http://en.wikipedia.org/wiki/HOL_(proof_assistant))(Higher Order Logic) proof assistant.*
|
||||
|
||||
* :scroll: [Experience with Processes and Monitors in Mesa](https://people.eecs.berkeley.edu/~brewer/cs262/Mesa.pdf)
|
||||
|
||||
* [Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms](http://www.cs.rochester.edu/~scott/papers/1996_PODC_queues.pdf)
|
||||
|
@ -6,6 +6,8 @@
|
||||
* [New Directions in Cryptography (1976)](http://www-ee.stanford.edu/~hellman/publications/24.pdf)
|
||||
* [RSA Key Extraction via Low-Bandwidth Acoustic Cryptanalysis (2013)](http://www.cs.tau.ac.il/~tromer/papers/acoustic-20131218.pdf)
|
||||
* [The Moral Character of Cryptographic Work (2015)](http://web.cs.ucdavis.edu/~rogaway/papers/moral-fn.pdf)
|
||||
* [:scroll:](ntru-prime.pdf) [NTRU Prime (2016)](https://eprint.iacr.org/2016/461.pdf) (Daniel J. Bernstein, Chitchanok Chuengsatiansup, Tanja Lange, and Christine van Vredendaal)
|
||||
* [Key Reinstallation Attacks: Forcing Nonce Reuse in WPA2 (2017)](https://papers.mathyvanhoef.com/ccs2017.pdf) (Mathy Vanhoef, Frank Piessens)
|
||||
|
||||
## Related Works
|
||||
### [A Mathematical Theory of Cryptography (1945)](http://www.cs.bell-labs.com/who/dmr/pdfs/shannoncryptshrt.pdf) - Shannon
|
||||
|
BIN
cryptography/ntru-prime.pdf
Normal file
BIN
cryptography/ntru-prime.pdf
Normal file
Binary file not shown.
7
data_fusion/README.md
Normal file
7
data_fusion/README.md
Normal file
@ -0,0 +1,7 @@
|
||||
## Data Fusion
|
||||
|
||||
* [:scroll:](a-new-approach-to-linear-filtering-and-prediction-problems.pdf) [A New Approach to Linear Filtering and Prediction Problems](https://www.cs.unc.edu/~welch/kalman/media/pdf/Kalman1960.pdf) by R. E. Kalman
|
||||
|
||||
> The Kalman Filter is a prediction-correction algorithm named after Rudolf E. Kálmán (1930-2016), by which we calculate recursively a dynamical system state at time t_{k} using state at previous time u_{k-1} and new information b_{k} only. This technique is presented as a generalization of the least squares model for problems with varying mean and additive noise.
|
||||
|
||||
> The Kalman Filter was first applied to the problem of trajectory estimation for the NASA Apollo space program (in the 1960s) and incorporated in the Apollo space navigation computer. It is also used in the guidance and navigation systems of the NASA Space Shuttle and the attitude control and navigation systems of the International Space Station. In other words, it is mostly used for positioning and navigation systems, but it can be generalized to any time series under suitable conditions. —@eramirem
|
Binary file not shown.
@ -1,4 +1,8 @@
|
||||
# Data Replication
|
||||
|
||||
* :scroll: [A comprehensive study of
Convergent and Commutative Replicated Data Types](a-comprehensive-study-of-convergent-and-communative-replicated-data-types.pdf)
|
||||
* :scroll: [Immutability Changes Everything](http://cidrdb.org/cidr2015/Papers/CIDR15_Paper16.pdf)
|
||||
> An overview on the patterns in computing leveraging immutability.
|
||||
Nowadays, keeping immutable copies of data is almost inexpensive. One of the advantages of this fact is that it
|
||||
can alleviate the burden of coordinated accesses to the data in the different layers of the SW/HW stack.
|
||||
* :scroll: [A comprehensive study of Convergent and Commutative Replicated Data Types](a-comprehensive-study-of-convergent-and-communative-replicated-data-types.pdf)
|
||||
> Eventual consistency aims to ensure that replicas of some mutable shared object converge without foreground synchronisation. We study a principled approach: to base the design of shared data types on some simple formal conditions that are sufficient to guarantee even- tual consistency. We call these types Convergent or Commutative Replicated Data Types (CRDTs).
|
7
data_science/README.md
Normal file
7
data_science/README.md
Normal file
@ -0,0 +1,7 @@
|
||||
# Data Science
|
||||
|
||||
## Data Cleaning
|
||||
|
||||
* :scroll: [Tidy Data] by Hadley Wickham (2014)
|
||||
|
||||
[Tidy Data]: https://www.jstatsoft.org/article/view/v059i10
|
BIN
data_science/tidy_data.pdf
Normal file
BIN
data_science/tidy_data.pdf
Normal file
Binary file not shown.
@ -1,9 +1,10 @@
|
||||
# Data Structures
|
||||
|
||||
* [Dynamic Hash Tables](http://www.csd.uoc.gr/~hy460/pdf/Dynamic%20Hash%20Tables.pdf)
|
||||
* [Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms](http://www.research.ibm.com/people/m/michael/podc-1996.pdf)
|
||||
* [Simple, Fast, and Practical Non-Blocking and Blocking Concurrent Queue Algorithms](https://www.cs.rochester.edu/u/scott/papers/1996_PODC_queues.pdf)
|
||||
* [RRB-Trees: Efficient Immutable Vectors](http://infoscience.epfl.ch/record/169879/files/RMTrees.pdf)
|
||||
* [Cuckoo Hashing](http://www.it-c.dk/people/pagh/papers/cuckoo-jour.pdf)
|
||||
* [Fenwick Tree](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.14.8917&rep=rep1&type=pdf)
|
||||
* [Hopscotch Hashing](http://mcg.cs.tau.ac.il/papers/disc2008-hopscotch.pdf)
|
||||
|
||||
## Hosted Papers
|
||||
|
@ -42,9 +42,10 @@
|
||||
|
||||
* [Towards a Next Generation Data Center Architecture: Scalability and Commoditization](http://research.microsoft.com/pubs/79348/presto27-greenberg.pdf)
|
||||
|
||||
|
||||
## Hosted Papers
|
||||
|
||||
* :scroll: [A Solution to the Network Challenges of Data Recovery in Erasure-coded Distributed Storage Systems: A Study on the Facebook Warehouse Cluster](network-challenges-of-data-recovery-in-erasure-coded-distributed-storage-systems.pdf)
|
||||
|
||||
* :scroll: [Bigtable: A Distributed Storage System for Structured Data](bigtable-a-distributed-storage-system-for-structured-data.pdf)
|
||||
|
||||
* :scroll: [Database Metatheory: Asking Big Queries](database-metatheory--asking-the-big-queries.pdf)
|
||||
@ -55,14 +56,16 @@
|
||||
|
||||
* :scroll: [Freenet: A Distributed Anonymous Information Storage and Retrieval System](freenet-a-distributed-anonymous-information-and-retrieval-system.pdf)
|
||||
|
||||
* :scroll: [Megastore: Providing Scalable, Highly Available Storage for Interactive Services](megastore-providing-scalable-highly-available-storage-for-interactive-services.pdf)
|
||||
* :scroll: [The Google File System](the-google-file-system.pdf)
|
||||
|
||||
* :scroll: [A Solution to the Network Challenges of Data Recovery in Erasure-coded Distributed Storage Systems: A Study on the Facebook Warehouse Cluster](network-challenges-of-data-recovery-in-erasure-coded-distributed-storage-systems.pdf)
|
||||
* :scroll: [Megastore: Providing Scalable, Highly Available Storage for Interactive Services](megastore-providing-scalable-highly-available-storage-for-interactive-services.pdf)
|
||||
|
||||
* :scroll: [RADOS: A Scalable, Reliable Storage Service for Petabyte-scale Storage Clusters](rados-a-scalable-reliable-storage-service-for-petabyte-scale-storage-clusters.pdf)
|
||||
|
||||
* :scroll: [Spanner: Google’s Globally-Distributed Database](spanner-google's-globally-distributed-database.pdf)
|
||||
|
||||
* :scroll: [Spartan: A distributed array framework with smart tiling](spartan-a-distributed-array-framework-with-smart-tiling.pdf)
|
||||
|
||||
* :scroll: [Stasis: Flexible Transactional Storage](stasis-flexible-transactional-storage.pdf)
|
||||
|
||||
* :scroll: [TAO: Facebooks Distributed Data Store for the Social Graph'](tao-facebook-distributed-datastore.pdf)
|
||||
|
Binary file not shown.
BIN
datastores/the-google-file-system.pdf
Normal file
BIN
datastores/the-google-file-system.pdf
Normal file
Binary file not shown.
@ -1,6 +1,7 @@
|
||||
# Design
|
||||
* [No Silver Bullet — Essence and Accidents of Software Engineering](http://faculty.salisbury.edu/~xswang/Research/Papers/SERelated/no-silver-bullet.pdf)
|
||||
* [Traits: A Mechanism for Fine-Grained Reuse](http://scg.unibe.ch/archive/papers/Duca06bTOPLASTraits.pdf)
|
||||
* [THING-MODEL-VIEW-EDITOR an Example from a planningsystem](http://heim.ifi.uio.no/~trygver/1979/mvc-1/1979-05-MVC.pdf)
|
||||
|
||||
* :scroll: [Out of the Tar Pit](out-of-the-tar-pit.pdf)
|
||||
> We identify common causes of complexity and discuss general approaches which can be taken to eliminate them where they are accidental in nature.
|
||||
|
@ -1,3 +1,11 @@
|
||||
# Digital Currency
|
||||
|
||||
* :scroll: [Bitcoin](bitcoin.pdf)
* :scroll: [PeerCoin](peercoin.pdf)
* :scroll: [PrimeCoin](primecoin.pdf)
|
||||
## External Papers
|
||||
|
||||
* [Ethereum: a secure decentralized generalized transaction ledger](https://ethereum.github.io/yellowpaper/paper.pdf)
|
||||
|
||||
## Hosted Papers
|
||||
|
||||
* :scroll: [Bitcoin](bitcoin.pdf)
|
||||
* :scroll: [PeerCoin](peercoin.pdf)
|
||||
* :scroll: [PrimeCoin](primecoin.pdf)
|
||||
|
@ -4,11 +4,12 @@
|
||||
* Topics
|
||||
* [Datastores](#datastores)
|
||||
* [Physics](#physics)
|
||||
* [Testing, Verification, and Correctness](#testing-verification-and-correctness)
|
||||
|
||||
|
||||
## External Papers
|
||||
|
||||
* [:scroll:](a-note-on-distributed-computing.pdf) [A Note on Distributed Computing](http://www.eecs.harvard.edu/~waldo/Readings/waldo-94.pdf)
|
||||
* [:scroll:](a-note-on-distributed-computing.pdf) [A Note on Distributed Computing](http://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=5A960A7B16A7BB42A99D7B6EFC30FB25?doi=10.1.1.41.7628&rep=rep1&type=pdf)
|
||||
|
||||
* [A simple totally ordered broadcast protocol](http://diyhpl.us/~bryan/papers2/distributed/distributed-systems/zab.totally-ordered-broadcast-protocol.2008.pdf)
|
||||
|
||||
@ -16,7 +17,7 @@
|
||||
|
||||
* [Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications](http://pdos.csail.mit.edu/papers/chord:sigcomm01/chord_sigcomm.pdf)
|
||||
|
||||
* [Kafka: a Distributed Messaging System for Log Processing](http://research.microsoft.com/en-us/um/people/srikanth/netdb11/netdb11papers/netdb11-final12.pdf)
|
||||
* [Kafka: a Distributed Messaging System for Log Processing](http://notes.stephenholiday.com/Kafka.pdf)
|
||||
|
||||
* [Large-scale cluster management at Google with Borg](http://static.googleusercontent.com/media/research.google.com/en/us/pubs/archive/43438.pdf)
|
||||
|
||||
@ -30,7 +31,7 @@
|
||||
|
||||
* [Omega: flexible, scalable schedulers for large compute clusters](http://research.google.com/pubs/archive/41684.pdf)
|
||||
|
||||
* [Orleans: Distributed Virtual Actors for Programmability and Scalability] (http://research.microsoft.com/apps/pubs/default.aspx?id=210931)
|
||||
* [Orleans: Distributed Virtual Actors for Programmability and Scalability](http://research.microsoft.com/apps/pubs/default.aspx?id=210931)
|
||||
|
||||
* [Paxos Made Live - An Engineering Perspective](http://www.cs.utexas.edu/users/lorenzo/corsi/cs380d/papers/paper2-1.pdf)
|
||||
|
||||
@ -48,6 +49,8 @@
|
||||
|
||||
* [The Byzantine Generals Problem](http://www.andrew.cmu.edu/course/15-749/READINGS/required/resilience/lamport82.pdf)
|
||||
|
||||
* [Hashgraph Consensus: Fair, Fast, Byzantine Fault Tolerance](https://swirlds.com/downloads/SWIRLDS-TR-2016-01.pdf)
|
||||
|
||||
* [:scroll:](the-chubby-lock-service-for-loosely-coupled-distributed-systems.pdf) [The Chubby Lock Service for Loosely-Coupled Distributed Systems](http://static.googleusercontent.com/media/research.google.com/en/us/archive/chubby-osdi06.pdf)
|
||||
|
||||
* [:scroll:](join-calculus.pdf) [The Join Calculus: a Language for Distributed Mobile Programming](http://research.microsoft.com/en-us/um/people/fournet/papers/join-tutorial.pdf)
|
||||
@ -82,9 +85,9 @@
|
||||
|
||||
* :scroll: [Beehive: O(1) Lookup Performance for Power-Law Query Distributions in Peer-to-Peer Overlays](beehive-lookup-performance-for-power-law-query-distributions-in-peer-to-peer-overlays.pdf)
|
||||
|
||||
* :scroll: [Byzantine Chain Replication](bizantine-chain-replication.pdf)
|
||||
* :scroll: [Byzantine Chain Replication](byzantine-chain-replication.pdf)
|
||||
|
||||
* :scroll: [A Byzantine Fault Tolerant Distributed Commit Protocol](bizantine-fault-tolerant-distributed-commit-protocol.pdf)
|
||||
* :scroll: [A Byzantine Fault Tolerant Distributed Commit Protocol](byzantine-fault-tolerant-distributed-commit-protocol.pdf)
|
||||
|
||||
* :scroll: [Brewer’s Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services](brewers-conjecture.pdf)
|
||||
|
||||
@ -129,7 +132,7 @@ Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web](con
|
||||
|
||||
* :scroll: [Large-scale Incremental Processing Using Distributed Transactions and Notifications](large-scale-incremental-processing-using-distributed-transactions-and-notifications.pdf)
|
||||
|
||||
* :scroll: [Life beyond Distributed Transactions: an Apostate’s Opinion](life-beyoud-distributed-transactions-an-apostates-opinion.pdf)
|
||||
* :scroll: [Life beyond Distributed Transactions: an Apostate’s Opinion](life-beyond-distributed-transactions-an-apostates-opinion.pdf)
|
||||
|
||||
* :scroll: [MapReduce: Simplified Data Processing on Large Clusters](mapreduce-simplified-data-processing-on-large-clusters.pdf)
|
||||
|
||||
@ -153,7 +156,7 @@ Distributed Caching Protocols for Relieving Hot Spots on the World Wide Web](con
|
||||
|
||||
* :scroll: [Signal/Collect: Graph Algorithms for the (Semantic) Web](signal-%26-collect-graph-algorithms-for-the-\(semantic\)-web.pdf)
|
||||
|
||||
* :scroll: [Slution of a Problem in
|
||||
* :scroll: [Slution of a Problem in
|
||||
Concurrent Programming Control](solution-of-a-problem-in-concurrent-programming-control.pdf)
|
||||
|
||||
* :scroll: [Sparse Partitions](sparse-partitions.pdf)
|
||||
@ -179,6 +182,8 @@ Unconditional Sender and Recipient Untraceability](the-dining-cryptographers-pro
|
||||
|
||||
* :scroll: [ZooKeeper: Wait-free coordination for Internet-scale systems](zookeeper-wait-free-coordination-for-internet-scale-systems.pdf)
|
||||
|
||||
* :scroll: [Tiered Replication: A Cost-effective Alternative to
|
||||
Full Cluster Geo-replication](tiered-replication-a-cost-effective-alternative-to-full-cluster-geo-replication.pdf)
|
||||
|
||||
## Topics
|
||||
|
||||
@ -226,7 +231,6 @@ Unconditional Sender and Recipient Untraceability](the-dining-cryptographers-pro
|
||||
|
||||
* [Towards a Next Generation Data Center Architecture: Scalability and Commoditization](http://research.microsoft.com/pubs/79348/presto27-greenberg.pdf)
|
||||
|
||||
|
||||
* :scroll: [Bigtable: A Distributed Storage System for Structured Data](../datastores/bigtable-a-distributed-storage-system-for-structured-data.pdf)
|
||||
|
||||
* :scroll: [Database Metatheory: Asking Big Queries](../datastores/database-metatheory--asking-the-big-queries.pdf)
|
||||
@ -251,6 +255,7 @@ Unconditional Sender and Recipient Untraceability](the-dining-cryptographers-pro
|
||||
|
||||
* :scroll: [Warp: Multi-Key Transactions for Key-Value Stores](../datastores/warp-multi-key-transactions-for-key-value-stores.pdf)
|
||||
|
||||
* :scroll: [Spartan: A distributed array framework with smart tiling](../datastores/spartan-a-distributed-array-framework-with-smart-tiling.pdf)
|
||||
|
||||
### Physics
|
||||
|
||||
@ -258,4 +263,10 @@ Unconditional Sender and Recipient Untraceability](the-dining-cryptographers-pro
|
||||
|
||||
By solving the [asymmetries](http://en.wikipedia.org/wiki/Moving_magnet_and_conductor_problem) that arise in Maxwell’s equations, Einstein’s 1905 paper set the stage for current distributed systems work by demonstrating that there is no absolute frame of reference and by providing an upper bound on the speed of communication.
|
||||
|
||||
### <a name="testing-verification-and-correctness"></a>Testing, Verification, and Correctness
|
||||
|
||||
* :scroll: [Simple Testing Can Prevent Most Critical Failures:
|
||||
An Analysis of Production Failures in Distributed
|
||||
Data-Intensive Systems](https://www.usenix.org/system/files/conference/osdi14/osdi14-paper-yuan.pdf)
|
||||
|
||||
* :scroll: [IronFleet: Proving Practical Distributed Systems Correct](http://research.microsoft.com/pubs/255833/IronFleet-twocol.pdf)
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -4,4 +4,8 @@
|
||||
|
||||
* [Auctions and bidding: A guide for computer scientists (2011)](http://www.sci.brooklyn.cuny.edu/~parsons/projects/mech-design/publications/bluffers-final.pdf) by S. Parsons, J. Rodriguez-Aguilar, M. Klein
|
||||
|
||||
* [Optimal Bidding in Online Auctions (2001)] (http://www.mit.edu/~dbertsim/papers/Revenue%20Management/Optimal%20Bidding%20in%20Online%20Auctions.pdf) by Dimitris Bertsimas, Jerey Hawkinsy, Georgia Perakis
|
||||
* [Optimal Bidding in Online Auctions (2001)](http://www.mit.edu/~dbertsim/papers/Revenue%20Management/Optimal%20Bidding%20in%20Online%20Auctions.pdf) by Dimitris Bertsimas, Jerey Hawkinsy, Georgia Perakis
|
||||
|
||||
## Open Source
|
||||
|
||||
* [The Simple economics of Open Source (2000)](http://www.people.hbs.edu/jlerner/simple.pdf) by Josh Lerner and Jean Tirole
|
||||
|
@ -5,4 +5,4 @@ It can be used in the analysis of algorithms [(Wikipedia)](http://en.wikipedia.o
|
||||
|
||||
## Included Papers
|
||||
|
||||
* [:scroll:](a-theoreticians-guide-to-the-experimental-analysis-of-algorithms.pdf) [A Theoretician's Guide to the Experimental Analysis of Algorithms](http://davidsjohnson.net/papers/experguide.pdf) (David S. Johnson): An exceptionally well-written guide to correctly evaluating algorithms by experimental analysis. The techniques described in this paper do not only apply to theoreticians although the title might lead one to believe so. The examples used in this paper and specifically the method of listing straight-forward principles illustrated by pit-falls and pet peeves make for an excellent must-read for everyone intending to publish experimental algorithm results.
|
||||
* :scroll: [A Theoretician's Guide to the Experimental Analysis of Algorithms](a-theoreticians-guide-to-the-experimental-analysis-of-algorithms.pdf) (David S. Johnson): An exceptionally well-written guide to correctly evaluating algorithms by experimental analysis. The techniques described in this paper do not only apply to theoreticians although the title might lead one to believe so. The examples used in this paper and specifically the method of listing straight-forward principles illustrated by pit-falls and pet peeves make for an excellent must-read for everyone intending to publish experimental algorithm results.
|
||||
|
16
fault_protection/README.md
Normal file
16
fault_protection/README.md
Normal file
@ -0,0 +1,16 @@
|
||||
# Fault Protection
|
||||
|
||||
## External Papers
|
||||
|
||||
* [GN&C Fault Protection Fundamentals](https://trs.jpl.nasa.gov/bitstream/handle/2014/41696/08-0125.pdf)
|
||||
> As software becomes more and more integrated in our daily lives, we
|
||||
> need, more than ever, for the software we write to work reliably in a
|
||||
> wide range of conditions--even, and especially, in unexpected
|
||||
> conditions. This paper, written by Robert Rasmussen from the Jet
|
||||
> Propulsion Laboratory in 2008, documents and explains some fundamental
|
||||
> principles about designing fault tolerant systems as learned through
|
||||
> the hard-won experience of designing Guidance, Navigation, and Control
|
||||
> (GN&C) systems for spacecraft. This paper is rich in principles,
|
||||
> examples, and advice, and has a lot to offer to our industry
|
||||
> generally--even for those of us who don't actively work on software for
|
||||
> spaceships!
|
@ -4,7 +4,7 @@
|
||||
|
||||
* [Defining Gamification - A Service Marketing Perspective](http://www.rolandhubscher.org/courses/hf765/readings/p17-huotari.pdf)
|
||||
|
||||
* [Design Requirements for Technologies that Encourage Physical Activity](http://www.katherineeveritt.com/papers/p457-consolvo.pdf)
|
||||
* [Design Requirements for Technologies that Encourage Physical Activity](https://www.cs.helsinki.fi/u/thusu/opinnot/uschool/T-121.5500/p457-consolvo.pdf)
|
||||
|
||||
* [Exploring the Potential of Gamification Among Frail Elderly Persons](http://gamification-research.org/wp-content/uploads/2011/04/12-Gerling.pdf)
|
||||
|
||||
|
@ -1,4 +1,5 @@
|
||||
* [A Unified Theory of Garbage Collection](http://www.cs.virginia.edu/~cs415/reading/bacon-garbage.pdf)
|
||||
> An overview for programmers and language implementors for understanding different garbage collection algorithms.
|
||||
* [A LISP Garbage-Collector for Virtual-Memory Computer Systems](https://www.cs.purdue.edu/homes/hosking/690M/p611-fenichel.pdf)
|
||||
|
||||
* [Incremental Collection of Mature Objects](http://pdf.aminer.org/000/465/194/incremental_collection_of_mature_objects.pdf)
|
||||
|
@ -1,21 +1,21 @@
|
||||
## Gossip
|
||||
|
||||
If you only read one of these papers, start with the classic Demers, et al paper:
|
||||
* [Epidemic Algorithms for Replicated Database Maintenance] (http://bitsavers.informatik.uni-stuttgart.de/pdf/xerox/parc/techReports/CSL-89-1_Epidemic_Algorithms_for_Replicated_Database_Maintenance.pdf)
|
||||
* [Epidemic Algorithms for Replicated Database Maintenance](http://bitsavers.informatik.uni-stuttgart.de/pdf/xerox/parc/techReports/CSL-89-1_Epidemic_Algorithms_for_Replicated_Database_Maintenance.pdf)
|
||||
|
||||
# Peer sampling services
|
||||
Briefly, a peer sampling service is a system that maintains a restricted set (partial view) of the all machines participating in a gossip system.
|
||||
* [The Peer Sampling Service: Experimental Evaluation of Unstructured Gossip-Based Implementations](http://infoscience.epfl.ch/record/83409/files/neg--1184036295all.pdf)
|
||||
* [HyParView](http://gsd.di.uminho.pt/jop/pdfs/LPR07b.pdf)
|
||||
* [SWIM: Scalable Weakly-consistent Infection-style Process Group Membership Protocol](http://www.cs.cornell.edu/~asdas/research/dsn02-swim.pdf)
|
||||
* [HyParView: a membership protocol for reliable gossip-based broadcast](http://asc.di.fct.unl.pt/~jleitao/pdf/dsn07-leitao.pdf)
|
||||
* [SWIM: Scalable Weakly-consistent Infection-style Process Group Membership Protocol](http://www.cs.cornell.edu/info/projects/spinglass/public_pdfs/swim.pdf)
|
||||
|
||||
# Epidemic broadcast
|
||||
* [Large-Scale Newscast Computing on the Internet ](http://www.soc.napier.ac.uk/~benp/dream/dreampaper17.pdf)
|
||||
* [Bimodal Multicast](http://www.csl.mtu.edu/cs6461/www/Reading/Birman99.pdf)
|
||||
* [Efficient Reconciliation and Flow Control for Anti-Entropy Protocols](http://idning-paper.googlecode.com/svn/trunk/reference/ignore/Scuttlebutt_Efficient_reconciliation_and_flow_control_for_anti-entropy_protocols.pdf)
|
||||
* [Efficient Reconciliation and Flow Control for Anti-Entropy Protocols](http://www.cs.cornell.edu/home/rvr/papers/flowgossip.pdf)
|
||||
* [Epidemic Broadcast Trees](http://www.gsd.inesc-id.pt/~ler/reports/srds07.pdf)
|
||||
|
||||
# Failure Detectors
|
||||
* [A Gossip-Style Failure Detection Service](http://ecommons.cornell.edu/bitstream/1813/7341/2/98-1687.ps)
|
||||
* [The ϕ Accrual Failure Detector ](http://ddg.jaist.ac.jp/pub/HDY+04.pdf)
|
||||
* [A Gossip-Style Failure Detection Service](https://ecommons.cornell.edu/bitstream/handle/1813/7341/98-1687.pdf)
|
||||
* [The ϕ Accrual Failure Detector ](https://dspace.jaist.ac.jp/dspace/bitstream/10119/4784/1/IS-RR-2004-010.pdf)
|
||||
|
||||
|
@ -1,7 +0,0 @@
|
||||
# Haskell
|
||||
|
||||
* [A History of Haskell: Being Lazy With Class](http://research.microsoft.com/en-us/um/people/simonpj/papers/history-of-haskell/history.pdf) by Paul Hudak, John Hughes, Simon Peyton Jones
|
||||
* :scroll: [Tackling the Awkward Squad: monadic input/output, concurrency, exceptions, and foreign-language calls in Haskell](tackling-the-awkward-squad-monadic-input-output-concurrency-exceptions-and-foreign-language-calls-in-haskell.pdf) by Simon Peyton Jones
|
||||
* :scroll: [Making a Fast Curry: Push/Enter vs. Eval/Apply for Higher-order Languages](making-a-fast-curry-push-enter-versus-eval-apply-for-higher-order-languages.pdf) by Simon Marlow and Simon Peyton Jones. A classic... describes well the execution model GHC uses for Haskell, and catches the brilliant authors in a design pivot from original intuition to new conclusions based on empirical data.
|
||||
* :scroll: [A Poor Man's Concurrency Monad](a-poor-mans-concurrency-monad.pdf) by Koen Claessen. Paper describes how without adding any primitives to the language, you could define a concurrency monad transformer in Haskell.
|
||||
* :scroll: [Parallel Generational-Copying Garbage Collection with a Block-Structured Heap](../garbage_collection/parallel_generational_copying_garbage_collection_with_a_block_structured_heap.pdf). In Haskell, data immutability forces us to produce a lot of temporary data but also helps to collect this garbage rapidly. This paper explains how the Glasgow Haskell Compiler accomplishes this task in a simple, yet effective, manner with no programmer intervention.
|
@ -17,35 +17,34 @@ The included documents are
|
||||
significantly better results that popular existing models. This
|
||||
paper won a honorable mention at CIKM 2013.
|
||||
|
||||
* [:scroll:](pagerank.pdf) [Pagerank Algorithm](http://ilpubs.stanford.edu:8090/422/1/1999-66.pdf) - Lawrence Page, Sergey Brin, Rajeev Motwani and Terry Winograd
|
||||
|
||||
This paper introduces the PageRank algorithm, which forms the backbone of
|
||||
the present day google search engine. Pagerank operates by assessing the
|
||||
number of incoming and outgoing hyper links to a given web page and ranks the
|
||||
pages based on the link structure of a page. The authors also implemented
|
||||
* [:scroll:](the-pagerank-citation-ranking-bringing-order-to-the-web) [The PageRank Citation Ranking: Bringing Order to the Web](http://ilpubs.stanford.edu:8090/422/1/1999-66.pdf) - Lawrence Page, Sergey Brin, Rajeev Motwani and Terry Winograd
|
||||
|
||||
This paper introduces the PageRank algorithm, which forms the backbone of
|
||||
the present day google search engine. Pagerank operates by assessing the
|
||||
number of incoming and outgoing hyper links to a given web page and ranks the
|
||||
pages based on the link structure of a page. The authors also implemented
|
||||
PageRank on the backrub system (now called the Google Search
|
||||
Engine) in the [Anatomy of a Large-Scale Hypertextual Web Search Engine]
|
||||
Engine) in the [Anatomy of a Large-Scale Hypertextual Web Search Engine]
|
||||
http://infolab.stanford.edu/~backrub/google.html which assigned page ranks to
|
||||
every webpage in the world wide web. Google is currently the most commercially
|
||||
sucessful generic search engine in the world.
|
||||
sucessful generic search engine in the world.
|
||||
|
||||
* [:scroll:](ocapi-trec3.pdf) [Okapi System](http://trec.nist.gov/pubs/trec3/papers/city.ps.gz) - Stephen E. Robertson, Steve Walker, Susan Jones, Micheline Hancock-Beaulieu, and Mike Gatford
|
||||
* [:scroll:](okapi-at-trec3.pdf) [Okapi at TREC3](http://trec.nist.gov/pubs/trec3/papers/city.ps.gz) - Stephen E. Robertson, Steve Walker, Susan Jones, Micheline Hancock-Beaulieu, and Mike Gatford
|
||||
|
||||
This paper introduces the now famous Okapi information retrieval
|
||||
framework which introduces the BM25 ranking function for ranked
|
||||
framework which introduces the BM25 ranking function for ranked
|
||||
retrieval. It is one of the first implementations of the probabilistic
|
||||
retrieval frameworks in literature. BM25 is a bag of words retrieval
|
||||
retrieval frameworks in literature. BM25 is a bag of words retrieval
|
||||
function. The IDF(Inverse document frequency) term can be interpreted
|
||||
via information theory. If a query q appears in n(q) docs the probability
|
||||
of picking a doc randomly and it containing that term :p(q) = n(q) / D,
|
||||
where D is the number of documents. The information content based on
|
||||
of picking a doc randomly and it containing that term :p(q) = n(q) / D,
|
||||
where D is the number of documents. The information content based on
|
||||
shannon's noisy channel model is = -log(p(q)) = log (D / n(q)). Smoothing
|
||||
by adding a constant to both numberator and demoninator leads to IDF term
|
||||
used in BM25. BM25 has been shown to be one of the best probabilistic
|
||||
used in BM25. BM25 has been shown to be one of the best probabilistic
|
||||
weighting schemes. While the paper was in postscript form, the committer has
|
||||
changed the format to pdf as per guidelines of papers we love via ps2pdf.
|
||||
|
||||
* [:scroll:](hits.pdf) [Hits Algorithm](https://www.cs.cornell.edu/home/kleinber/auth.pdf) - Jon M. Kleinberg
|
||||
* [:scroll:](authoritative-sources-in-a-hyperlinked-environment.pdf) [Authoritative Sources in a Hyperlinked Environment](https://www.cs.cornell.edu/home/kleinber/auth.pdf) - Jon M. Kleinberg
|
||||
|
||||
This paper introduces the HITS algorithm, a link analysis algorithm that rates webpages. Unlike the more famous page rank algorithm, the hits algorithm makes a distinction between webpage behavior classifies them as hubs and autho rities. A page is authoratitative (in the sense the page has a large number of incoming links) or acts as a hub (a directory of sort, which can be measured by the number of outgoing link). The hits algorithm computes two scores for a page (authority and hub score) where the algorithm iteratively computes the hub score as sum of authority scores of outgoing links and authority scores as sum of hub scores of incoming links until a convergence is attained. These scores can then be used to rank documents. While this algorithm is famous in academia, its not very widely used in the industry (a variant of this algorithm was used by a company called Teoma which was acquired by AskJeeves)
|
||||
|
||||
This paper introduces the **HITS algorithm**, a link analysis algorithm that rates webpages. Unlike the more famous page rank algorithm, the hits algorithm makes a distinction between webpage behavior classifies them as hubs and authorities. A page is authoratitative (in the sense the page has a large number of incoming links) or acts as a hub (a directory of sort, which can be measured by the number of outgoing link). The hits algorithm computes two scores for a page (authority and hub score) where the algorithm iteratively computes the hub score as sum of authority scores of outgoing links and authority scores as sum of hub scores of incoming links until a convergence is attained. These scores can then be used to rank documents. While this algorithm is famous in academia, its not very widely used in the industry (a variant of this algorithm was used by a company called Teoma which was acquired by AskJeeves)
|
||||
|
@ -1,51 +0,0 @@
|
||||
## Information Retrieval
|
||||
|
||||
Information retrieval is the activity of obtaining information resources relevant to an information need from a collection of information resources. (Says Wikipedia).
|
||||
|
||||
The included documents are
|
||||
|
||||
* [:scroll:](graph_of_word_and_tw_idf.pdf) [Graph of Word and TW-IDF](http://www.lix.polytechnique.fr/~rousseau/papers/rousseau-cikm2013.pdf) - Francois Rousseau & Michalis Vazirgiannis
|
||||
|
||||
The traditional IR system stores term-specific statistics (typically
|
||||
a term's frequency in each document - which we call TF) in an index.
|
||||
Such a model ignores dependencies between terms and considers a
|
||||
document's terms to occur independently of each other (and is aptly
|
||||
called the bag-of-words model). In this paper the authors use a
|
||||
statistic that uses a graph representation of a document to encode
|
||||
dependencies between terms and replace the TF statistic with a new
|
||||
TW statistic based on the graph constructed and achieve
|
||||
significantly better results that popular existing models. This
|
||||
paper won a honorable mention at CIKM 2013.
|
||||
|
||||
* [:scroll:](pagerank.pdf) [Pagerank Algorithm](http://ilpubs.stanford.edu:8090/422/1/1999-66.pdf) - Lawrence Page, Sergey Brin, Rajeev Motwani and Terry Winograd
|
||||
|
||||
This paper introduces the PageRank algorithm, which forms the backbone of
|
||||
the present day google search engine. Pagerank operates by assessing the
|
||||
number of incoming and outgoing hyper links to a given web page and ranks the
|
||||
pages based on the link structure of a page. The authors also implemented
|
||||
PageRank on the backrub system (now called the Google Search
|
||||
Engine) in the [Anatomy of a Large-Scale Hypertextual Web Search Engine]
|
||||
http://infolab.stanford.edu/~backrub/google.html which assigned page ranks to
|
||||
every webpage in the world wide web. Google is currently the most commercially
|
||||
sucessful generic search engine in the world.
|
||||
|
||||
* [:scroll:](ocapi-trec3.pdf) [Okapi System](http://trec.nist.gov/pubs/trec3/papers/city.ps.gz) - Stephen E. Robertson, Steve Walker, Susan Jones, Micheline Hancock-Beaulieu, and Mike Gatford
|
||||
|
||||
This paper introduces the now famous Okapi information retrieval
|
||||
framework which introduces the BM25 ranking function for ranked
|
||||
retrieval. It is one of the first implementations of the probabilistic
|
||||
retrieval frameworks in literature. BM25 is a bag of words retrieval
|
||||
function. The IDF(Inverse document frequency) term can be interpreted
|
||||
via information theory. If a query q appears in n(q) docs the probability
|
||||
of picking a doc randomly and it containing that term :p(q) = n(q) / D,
|
||||
where D is the number of documents. The information content based on
|
||||
shannon's noisy channel model is = -log(p(q)) = log (D / n(q)). Smoothing
|
||||
by adding a constant to both numberator and demoninator leads to IDF term
|
||||
used in BM25. BM25 has been shown to be one of the best probabilistic
|
||||
weighting schemes. While the paper was in postscript form, the committer has
|
||||
changed the format to pdf as per guidelines of papers we love via ps2pdf.
|
||||
|
||||
* [:scroll:](hits.pdf) [Hits Algorithm](https://www.cs.cornell.edu/home/kleinber/auth.pdf) - Jon M. Kleinberg
|
||||
|
||||
This paper introduces the HITS algorithm, a link analysis algorithm that rates webpages. Unlike the more famous page rank algorithm, the hits algorithm makes a distinction between webpage behavior classifies them as hubs and autho rities. A page is authoratitative (in the sense the page has a large number of incoming links) or acts as a hub (a directory of sort, which can be measured by the number of outgoing link). The hits algorithm computes two scores for a page (authority and hub score) where the algorithm iteratively computes the hub score as sum of authority scores of outgoing links and authority scores as sum of hub scores of incoming links until a convergence is attained. These scores can then be used to rank documents. While this algorithm is famous in academia, its not very widely used in the industry (a variant of this algorithm was used by a company called Teoma which was acquired by AskJeeves)
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
* :scroll: [A Mathematical Theory of Communication](a-mathematical-theory-of-communication-1948.pdf)
|
||||
|
||||
* [Differential Privacy](http://www.msr-waypoint.com/pubs/64346/dwork.pdf)
|
||||
* [Differential Privacy](https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/dwork.pdf)
|
||||
- How do we quantify the exposure an individual faces from being
|
||||
included in a statistical dataset? How do we anonymize aggregated
|
||||
data in a way that has formal guarantees?
|
||||
|
16
languages/README.md
Normal file
16
languages/README.md
Normal file
@ -0,0 +1,16 @@
|
||||
# Programming Language Theory
|
||||
|
||||
Programming language theory (PLT) is a branch of computer science that deals with the design, implementation, analysis, characterization, and classification of programming languages and their individual features.
|
||||
|
||||
## Included Papers
|
||||
|
||||
* :scroll: [On the Expressive Power of Programming Languages](scp91-felleisen.ps.gz) [sciencedirect](https://www.sciencedirect.com/science/article/pii/016764239190036W)(Matthias Felleisen): "The literature on programming languages contains an abundance of informal
|
||||
claims on the relative expressive power of programming languages, but there
|
||||
is no framework for formalizing such statements nor for deriving interesting
|
||||
consequences. As a first step in this direction, we develop a formal notion
|
||||
of expressiveness and investigate its properties. To demonstrate the theory's
|
||||
closeness to published intuitions on expressiveness, we analyze the expressive
|
||||
power of several extensions of functional languages. Based on these results,
|
||||
we believe that our system correctly captures many of the informal ideas on
|
||||
expressiveness, and that it constitutes a good basis for further research in this
|
||||
direction. " (abstract)
|
@ -20,4 +20,4 @@ This is a cross-listing of papers related to Clojure, it's core, contrib and pop
|
||||
* QuickCheck
|
||||
* [QuickCheck: A Lightweight Tool for Random Testing of Haskell Programs](http://www.cs.tufts.edu/~nr/cs257/archive/john-hughes/quick.pdf)
|
||||
* [QuickCheck Testing for Fun and Profit](http://people.inf.elte.hu/center/fulltext.pdf)
|
||||
* Property-Based Testing, best explained in John Hughes own talk at [ClojureWest 2014](https://www.youtube.com/watch?v=zi0rHwfiX1Q&list=PLZdCLR02grLp__wRg5OTavVj4wefg69hM).
|
||||
* Property-Based Testing, best explained in John Hughes own talk [Testing the Hard Stuff and Staying Sane](https://www.youtube.com/watch?v=zi0rHwfiX1Q&list=PLZdCLR02grLp__wRg5OTavVj4wefg69hM).
|
6
languages/domain-specific-languages/README.md
Normal file
6
languages/domain-specific-languages/README.md
Normal file
@ -0,0 +1,6 @@
|
||||
[Programmatic and Direct Manipulation, Together at Last](http://arxiv.org/abs/1507.02988). Ravi
|
||||
Chugh, Brian Hempel, Mitchell Spradlin, and Jacob Albers. PLDI 2016.
|
||||
> Introduces the idea of "prodirect manipulation" for creating visual artifacts,
|
||||
> a hybrid of the direct manipulation technique used in WYSIWYG programs like
|
||||
> Photoshop and PowerPoint, and the programmatic manipulation used in languages
|
||||
> and libraries such as LaTeX and Processing.
|
10
languages/erlang/README.md
Normal file
10
languages/erlang/README.md
Normal file
@ -0,0 +1,10 @@
|
||||
# Erlang
|
||||
|
||||
* [Making reliable distributed systems in the presence of software errors](http://erlang.org/download/armstrong_thesis_2003.pdf)
|
||||
PhD thesis of Joe Armstrong, Erlang’s co-inventor, describing the origins of Erlang.
|
||||
|
||||
* [A History of Erlang](http://webcem01.cem.itesm.mx:8005/erlang/cd/downloads/hopl_erlang.pdf) by Joe Armstrong
|
||||
|
||||
* [Characterizing the Scalability of Erlang VM on Many-core Processors](http://www.diva-portal.org/smash/get/diva2:392243/FULLTEXT01.pdfOn) by Jianrong Zhang
|
||||
|
||||
* [On the Scalability of the Erlang Term Storage](http://winsh.me/papers/erlang_workshop_2013.pdf) by David Klaftenegger, Konstantinos Sagonas, Kjell Winblad
|
17
languages/haskell/README.md
Normal file
17
languages/haskell/README.md
Normal file
@ -0,0 +1,17 @@
|
||||
# Haskell
|
||||
|
||||
* [A History of Haskell: Being Lazy With Class](http://research.microsoft.com/en-us/um/people/simonpj/papers/history-of-haskell/history.pdf) by Paul Hudak, John Hughes, Simon Peyton Jones
|
||||
* :scroll: [Tackling the Awkward Squad: monadic input/output, concurrency, exceptions, and foreign-language calls in Haskell](tackling-the-awkward-squad-monadic-input-output-concurrency-exceptions-and-foreign-language-calls-in-haskell.pdf) by Simon Peyton Jones
|
||||
* :scroll: [Making a Fast Curry: Push/Enter vs. Eval/Apply for Higher-order Languages](making-a-fast-curry-push-enter-versus-eval-apply-for-higher-order-languages.pdf) by Simon Marlow and Simon Peyton Jones. A classic... describes well the execution model GHC uses for Haskell, and catches the brilliant authors in a design pivot from original intuition to new conclusions based on empirical data.
|
||||
* :scroll: [A Poor Man's Concurrency Monad](a-poor-mans-concurrency-monad.pdf) by Koen Claessen. Paper describes how without adding any primitives to the language, you could define a concurrency monad transformer in Haskell.
|
||||
* :scroll: [Parallel Generational-Copying Garbage Collection with a Block-Structured Heap](../garbage_collection/parallel_generational_copying_garbage_collection_with_a_block_structured_heap.pdf). In Haskell, data immutability forces us to produce a lot of temporary data but also helps to collect this garbage rapidly. This paper explains how the Glasgow Haskell Compiler accomplishes this task in a simple, yet effective, manner with no programmer intervention.
|
||||
* [Notions of Computation and Monads](https://ac.els-cdn.com/0890540191900524/1-s2.0-0890540191900524-main.pdf?_tid=45497e1c-b5c9-11e7-963f-00000aacb361&acdnat=1508526351_2f3bf288ce0f81ff89fb10ece92eeb9e) by Eugenio Moggi. One of the canonical references for Monads in the functional paradigm. It relates the semantics of computations to equivalences of programs for various notions of computations.
|
||||
* [The Essence of Functional Programming](https://page.mi.fu-berlin.de/scravy/realworldhaskell/materialien/the-essence-of-functional-programming.pdf) by Philip Wadler. This paper uses monads to structure functional programs in Haskell. A very good reference for understanding monads and more generally in the context of programming languages.
|
||||
* [Monad Transformers and Modular Interpreters](http://haskell.cs.yale.edu/wp-content/uploads/2011/02/POPL96-Modular-interpreters.pdf) by Sheng Liang, Paul Hudak and Mark Jones. Canonical paper on Monad Transformers: the canonical way in which to combine monads and the basis of the popular mtl Haskel library.
|
||||
* [Extensible Effects: An Alternative to Monad Transformers](http://okmij.org/ftp/Haskell/extensible/exteff.pdf) by Oleg Kiselyov, Amr Sabry and Cameron Swords. A popular position paper introducing algebraic effects as an alternative to Monad Transformers. Effects are modelled using type level Open Unions of Effect Sets (one for each effect) with the Free Monad interpretation of Algebraic Effects. Is the basis for the extensible effects library.
|
||||
* [Freer Monads, More Extensible Effects](http://okmij.org/ftp/Haskell/extensible/more.pdf) by Oleg Kiselyov and Hiromi Ishii. An extension of the extensible-effects library that removes the Functor constraint on the Free Monad Type.
|
||||
* [Data types a la carte](http://www.cs.ru.nl/~W.Swierstra/Publications/DataTypesALaCarte.pdf) by Wouter Swierstra. Popular paper on using smart constructors and injection operators in order to solve Wadler's expression problem. Also a canonical method of developing algebraic effects by using effect Functors, see Wu, Shrijvers and Hinze(below).
|
||||
* [Effect Handlers in Scope](http://www.cs.ox.ac.uk/people/nicolas.wu/papers/Scope.pdf) by Nicolas Wu, Tom Shrijvers and Ralf Hinze. Very interesting paper on developing algebraic effects, and handlers a la carte. Extends Swierstra's work by introducing higher order syntax to handle the interaction of effects (such as state and exceptions where errors backtrack the state).
|
||||
* [Fusion for Free: Efficient Algebraic Handlers](https://people.cs.kuleuven.be/~tom.schrijvers/Research/papers/mpc2015.pdf) by Nicolas Wu and Tom Shrijvers. Under the Interpretation of effectful computations as Free Monad abstract syntax trees and handlers as folds, this paper introduces Term Monads to folds in order to enable fold fusion. The handlers may then be combined into a single fold and inlined by GHC to provide performance that rivals, and in some cases, outperforms extensible effects and mtl libraries (proofs and tests included).
|
||||
* [Handlers In Action](http://homepages.inf.ed.ac.uk/slindley/papers/handlers.pdf) by Ohad Kammar, Sam Lindley and Nicolas Oury. A popular position paper and basis of a Haskell library to develop algebraic effects and handlers. The template Haskell library supports open handlers by using type families instead of co-product functors a la carte.
|
||||
* [Composing Fractals](http://web.cecs.pdx.edu/~mpj/pubs/composing-fractals.pdf) by Mark P. Jones. This paper describes a simple but flexible family of Haskell programs for drawing pictures of fractals such as Mandelbrot and Julia sets. Its main goal is to showcase the elegance of a compositional approach to program construction, and the benefits of a clean separation between different aspects of program behavior.
|
BIN
languages/scp91-felleisen.ps.gz
Normal file
BIN
languages/scp91-felleisen.ps.gz
Normal file
Binary file not shown.
@ -4,8 +4,8 @@
|
||||
|
||||
* [Top 10 algorithms in data mining](http://www.cs.uvm.edu/~icdm/algorithms/10Algorithms-08.pdf) - While it is difficult to identify the top 10, this paper contains 10 very important data mining/machine learning algorithms
|
||||
* [A Few Useful Things to Know about Machine Learning](http://homes.cs.washington.edu/~pedrod/papers/cacm12.pdf) - Just like the title says, it contains many useful tips and gotchas for machine learning
|
||||
* [Random Forests](http://oz.berkeley.edu/~breiman/randomforest2001.pdf) - The initial paper on random forests
|
||||
* [Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data](http://repository.upenn.edu/cgi/viewcontent.cgi?article=1162&context=cis_papers) - The paper introducing conditional random fields as a framework for building probablistic models.
|
||||
* [Random Forests](https://www.stat.berkeley.edu/~breiman/randomforest2001.pdf) - The initial paper on random forests
|
||||
* [Conditional Random Fields: Probabilistic Models for Segmenting and Labeling Sequence Data](http://repository.upenn.edu/cgi/viewcontent.cgi?article=1162&context=cis_papers) - The paper introducing conditional random fields as a framework for building probabilistic models.
|
||||
* [Support-Vector Networks](http://rd.springer.com/content/pdf/10.1007%2FBF00994018.pdf) - The initial paper on support-vector networks for classification.
|
||||
* [The Fast Johnson-Lindenstrauss Transforms](https://www.cs.princeton.edu/~chazelle/pubs/FJLT-sicomp09.pdf)
|
||||
|
||||
@ -13,7 +13,17 @@
|
||||
|
||||
*Ailon, Nir, and Bernard Chazelle. "The fast Johnson-Lindenstrauss transform and approximate nearest neighbors." SIAM Journal on Computing 39.1 (2009): 302-322. Available: https://www.cs.princeton.edu/~chazelle/pubs/FJLT-sicomp09.pdf*
|
||||
|
||||
* [Applications of Machine Learning to Location Data](ftp://ftp.cs.princeton.edu/techreports/2013/949.pdf) - Using machine learning to design and analyze novel algorithms that leverage location data.
|
||||
* [Applications of Machine Learning to Location Data](http://www.berkkapicioglu.com/wp-content/uploads/2013/11/thesis_final.pdf) - Using machine learning to design and analyze novel algorithms that leverage location data.
|
||||
|
||||
* ["Why Should I Trust You?" Explaining the Predictions of Any Classifier](http://www.kdd.org/kdd2016/papers/files/rfp0573-ribeiroA.pdf) - This paper introduces an explanation technique for any classifier in a interpretable manner.
|
||||
|
||||
* [Multiple Narrative Disentanglement: Unraveling *Infinite Jest*](http://dreammachin.es/p1-wallace.pdf) - uses an unsupervised approach to natural language processing to classify narrators in David Foster Wallace's 1,000-page novel.
|
||||
|
||||
* [ImageNet Classification with Deep Convolutional Neural Networks](http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf) - This paper introduces AlexNet, a neural network architecture which dramatically improved over the state-of-the-art in image classification algorithms and is widely regarded as a breakthrough moment for deep learning.
|
||||
|
||||
* [Interpretable machine learning: definitions, methods, and applications](https://arxiv.org/pdf/1901.04592.pdf) - This paper introduces the foundations of the rapidly emerging field of interpretable machine learning.
|
||||
|
||||
* [Distilling the Knowledge in a Neural Network](https://arxiv.org/pdf/1503.02531.pdf) - This seminal paper introduces a method to distill information from an ensemble of neural networks into a single model.
|
||||
|
||||
## Hosted Papers
|
||||
|
||||
|
5
mathematics/README.md
Normal file
5
mathematics/README.md
Normal file
@ -0,0 +1,5 @@
|
||||
## Mathematics
|
||||
|
||||
* [:scroll:](transcendence-of-pi.pdf) [The Transcendence of pi](https://github.com/papers-we-love/papers-we-love/blob/master/mathematics/transcendence-of-pi.pdf) by Steve Mayer
|
||||
|
||||
|
BIN
mathematics/transcendence-of-pi.pdf
Normal file
BIN
mathematics/transcendence-of-pi.pdf
Normal file
Binary file not shown.
@ -2,7 +2,7 @@
|
||||
|
||||
* [A Unified Theory of Garbage Collection](http://www.cs.virginia.edu/~cs415/reading/bacon-garbage.pdf)
|
||||
|
||||
* [Teaching Garbage Collection without Implementing Compilers or Interpreters](http://faculty.cs.byu.edu/~jay/static/cooper-sigcse2013.pdf)
|
||||
* [Teaching Garbage Collection without Implementing Compilers or Interpreters](https://cs.brown.edu/~sk/Publications/Papers/Published/cgkmf-teach-gc/paper.pdf)
|
||||
|
||||
* [Message Analysis Guided Allocation and Low Pause Incremental GC in a Concurrent Language](http://user.it.uu.se/~kostis/Papers/ismm04.pdf)
|
||||
|
||||
|
BIN
nautilus.db
Normal file
BIN
nautilus.db
Normal file
Binary file not shown.
@ -1,4 +1,7 @@
|
||||
## Networks
|
||||
|
||||
* [Bimodal Multicast](http://www.csl.mtu.edu/cs6461/www/Reading/Birman99.pdf)
|
||||
* [End-to-End Arguments in System Design](http://www.reed.com/dpr/locus/Papers/EndtoEnd.html)
|
||||
* [End-to-End Arguments in System Design](http://www.deepplum.com/dpr/locus/Papers/EndtoEnd.html)
|
||||
* [Can SPDY Really Make the Web Faster?](http://www.comp.lancs.ac.uk/~elkhatib//Docs/2014.06_Netw.pdf)
|
||||
* [Datacenter Traffic Control: Understanding Techniques and Trade-offs](https://osf.io/6qzxc/)
|
||||
* [B4: Experience with a Globally-Deployed Software Defined WAN](https://dl.acm.org/citation.cfm?id=2486019)
|
||||
|
9
non_blocking_algorithms/README.md
Normal file
9
non_blocking_algorithms/README.md
Normal file
@ -0,0 +1,9 @@
|
||||
# Non-Blocking Algorithmics
|
||||
|
||||
An non-blocking algorithm is an algorithm in which failure or suspension of any thread cannot cause failure or suspension of another thread; for some operations, these algorithms provide a useful alternative to traditional blocking implementations. A non-blocking algorithm is lock-free if there is guaranteed system-wide progress, and wait-free if there is also guaranteed per-thread progress.
|
||||
|
||||
## Included Papers
|
||||
|
||||
* [:scroll:](a-wait-free-stack.pdf) [A Wait-Free Stack (2015)](https://arxiv.org/abs/1510.00116) (Seep Goel, Pooja Aggarwal, Smruti R. Sarangi)
|
||||
* [:scroll:](a-wait-free-queue-as-fast-as-fetch-and-add.pdf) [A Wait-free Queue as Fast as Fetch-and-Add (2016)](http://chaoran.me/assets/pdf/wfq-ppopp16.pdf) (Chaoran Yang, John Mellor-Crummey)
|
||||
* [:scroll:](efficient-lock-free-b+trees.pdf) [Efficient Lock-free B+trees (2014)](http://orbit.dtu.dk/files/102419168/abstract_ELB_trees.pdf) (Lars Frydendal Bonnichsen, Sven Karlsson, Christian W. Probst)
|
Binary file not shown.
BIN
non_blocking_algorithms/a-wait-free-stack.pdf
Normal file
BIN
non_blocking_algorithms/a-wait-free-stack.pdf
Normal file
Binary file not shown.
BIN
non_blocking_algorithms/efficient-lock-free-b+trees.pdf
Normal file
BIN
non_blocking_algorithms/efficient-lock-free-b+trees.pdf
Normal file
Binary file not shown.
@ -1,13 +1,14 @@
|
||||
## Operating Systems
|
||||
|
||||
* [Xen and the Art of Virtualization](http://www.cl.cam.ac.uk/research/srg/netos/papers/2003-xensosp.pdf)
|
||||
* :scroll: [The UNIX Time-Sharing System](unix-time-sharing-system.pdf)
|
||||
|
||||
* [The operating system: should there be one?](http://plosworkshop.org/2013/preprint/kell.pdf)
|
||||
* [The operating system: should there be one?](https://www.cl.cam.ac.uk/~srk31/research/papers/kell13operating.pdf)
|
||||
|
||||
* [The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors](http://web.mit.edu/amdragon/www/pubs/commutativity-sosp13.pdf)
|
||||
* [The Scalable Commutativity Rule: Designing Scalable Software for Multicore Processors](https://people.csail.mit.edu/nickolai/papers/clements-sc.pdf)
|
||||
|
||||
* :scroll: [Live Migration of Virtual Machines](live-migration-of-virtual-machines.pdf)
|
||||
## Jails and containers
|
||||
|
||||
* :scroll: [Jails: Confining the omnipotent root.](https://us-east.manta.joyent.com/bcantrill/public/ppwl-cantrill-jails.pdf)
|
||||
|
||||
* :scroll: [Solaris Zones: Operating System Support for Consolidating Commercial Workloads](https://us-east.manta.joyent.com/bcantrill/public/ppwl-cantrill-zones.pdf)
|
||||
|
||||
|
BIN
operating_systems/therac.pdf
Normal file
BIN
operating_systems/therac.pdf
Normal file
Binary file not shown.
BIN
operating_systems/unix-time-sharing-system.pdf
Normal file
BIN
operating_systems/unix-time-sharing-system.pdf
Normal file
Binary file not shown.
6
organizational_simulation/README.md
Normal file
6
organizational_simulation/README.md
Normal file
@ -0,0 +1,6 @@
|
||||
## Organizational Simulation
|
||||
|
||||
* [:scroll:](common-ground-and-coordination-in-joint-activity.pdf) [Common Ground and Coordination in Joint Activity](http://jeffreymbradshaw.net/publications/Common_Ground_Single.pdf) by Klein, Feltovich, and Woods
|
||||
|
||||
> The paper is the result of what happens when people with backgrounds in mathematics, psychology, and artificial intelligence (Feltovich and Bradshaw) get together to ask questions about how teams operate alongside the originators of modern decision-making and cognitive systems engineering research (Klein and Woods). The concepts outlined in the paper have provided frames and directions in designing tools and environments where successful work requires multiple actors (whether they are people or software agents!) to succeed. This seminal paper takes a deep dive into not just people and teamwork, but what comprises the sometimes invisible activity of coordination, collaboration, cooperation, and the contracts and expectations entities have with each other along the way. The paper has had far-reaching influence in multiple domains: military intelligence, space transportation and aviation, and more recently: software engineering and operations on the web. Let me walk you through where this paper came from, what makes this paper critical to the future of software, and a hint about what I'm sure it means about the future. - @allspaw
|
||||
|
Binary file not shown.
@ -6,11 +6,13 @@
|
||||
From Patrick Thomson's [An introduction to Recursion Schemes](http://patrickthomson.ghost.io/an-introduction-to-recursion-schemes/):
|
||||
|
||||
> In 1991, Erik Meijer, Maarten Fokkinga, and Ross Paterson published their now-classic paper Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire. Though this paper isn’t widely known outside of the functional programming community, its contributions are astonishing: the authors use category theory to express a set of simple, composable combinators, called recursion schemes, that automate the process of traversing and recursing through nested data structures. Though recursion schemes predate Meijer et. al’s work, this paper brings the enormous abstractive power of category theory to bear on the subject of traversing data structures—it’s a magnificent example of how category-theoretical concepts can bring both rigor and simplicity to day-to-day programming tasks.
|
||||
|
||||
* :scroll: [Equal Rights for Functional Objects or,
The More Things Change, The More They Are the Same](equal-rights-for-functional-objects.pdf)
|
||||
* :scroll: [Optimal Purely Functional Priority Queues](optimal-purely-functional-priority-queues.pdf)
|
||||
* :scroll: [Why Functional Programming Matters](why-functional-programming-matters.pdf)
|
||||
|
||||
|
||||
* :scroll: [Equal Rights for Functional Objects or,
|
||||
The More Things Change, The More They Are the Same](equal-rights-for-functional-objects.pdf)
|
||||
* :scroll: [Optimal Purely Functional Priority Queues](optimal-purely-functional-priority-queues.pdf)
|
||||
* :scroll: [Why Functional Programming Matters](why-functional-programming-matters.pdf)
|
||||
* [:scroll:](purely-functional-data-structures.pdf) [Purely Functional Data Structures](https://www.cs.cmu.edu/~rwh/theses/okasaki.pdf)
|
||||
|
||||
|
||||
## Applicative Programming
|
||||
|
||||
@ -20,7 +22,7 @@
|
||||
|
||||
## Concatenative Programming
|
||||
|
||||
* [:scroll:](concatenative-programming-an-overlooked-paradigm.pdf) [Concatenative Programming: An Overlooked Paradigm in Functional Programming](https://github.com/dterei/Research-Papers/blob/master/To%20Read/CONCATENATIVE%20PROGRAMMING%0AAn%20Overlooked%20Paradigm%20in%20Functional%20Programming.pdf)
|
||||
* :scroll: [Concatenative Programming: An Overlooked Paradigm in Functional Programming](concatenative-programming-an-overlooked-paradigm.pdf)
|
||||
|
||||
## Imperative Programming - Functional Programming
|
||||
|
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user