Repository: tylertreat/CS-Literature-of-the-Day Branch: master Commit: 19848f754415 Files: 9 Total size: 31.6 KB Directory structure: gitextract_34d0ptpz/ ├── 2015/ │ ├── 01-january.md │ ├── 02-february.md │ ├── 03-march.md │ ├── 04-april.md │ ├── 05-may.md │ ├── 06-june.md │ ├── 07-july.md │ └── 08-august.md └── README.md ================================================ FILE CONTENTS ================================================ ================================================ FILE: 2015/01-january.md ================================================ | Date | Title | Category | Year | | ---------- |---------------| ----------|-------| | 01/18/2015 | [Scalable agreement: Toward ordering as a service](https://www.usenix.org/legacy/event/hotdep10/tech/full_papers/Kapritsos.pdf) | Distributed Systems | 2010 | 01/19/2015 | [No Silver Bullet—Essence and Accidents in Software Engineering](http://worrydream.com/refs/Brooks-NoSilverBullet.pdf) | Software Engineering | 1986 | 01/20/2015 | [Diets for Fat Sets](http://web.engr.oregonstate.edu/~erwig/papers/Diet_JFP98.pdf) | Data Structures | 1993 | 01/21/2015 | [Confluently Persistent Sets and Maps](http://arxiv.org/pdf/1301.3388v1.pdf) | Data Structures | 2013 | 01/22/2015 | [The Perils of Good Abstractions](http://www.addsimplicity.com/adding_simplicity_an_engi/2006/12/the_perils_of_g.html) | Software Engineering | 2006 | 01/23/2015 | [Persistent Data Structures](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-854j-advanced-algorithms-fall-2005/lecture-notes/persistent.pdf) | Data Structures | 2005 | 01/24/2015 | [Planar Point Location Using Persistent Search Trees](http://www.link.cs.cmu.edu/15859-f07/papers/point-location.pdf) | Data Structures | 1986 | 01/25/2015 | [Outwards from the Middle of the Maze](http://youtu.be/ggCffvKEJmQ) | Distributed Systems | 2014 | 01/26/2015 | [Immutability Changes Everything](http://www.cidrdb.org/cidr2015/Papers/CIDR15_Paper16.pdf) | Databases | 2015 | 01/27/2015 | [Fast Mergeable Integer Maps](http://ittc.ku.edu/~andygill/papers/IntMap98.pdf) | Data Structures | 1998 | 01/28/2015 | [Efficient Locking for Concurrent Operations on B-Trees](http://www.csd.uoc.gr/~hy460/pdf/p650-lehman.pdf) | Databases | 1981 | 01/29/2015 | [Concurrent Tries with Efficient Non-Blocking Snapshots](https://axel22.github.io/resources/docs/ctries-snapshot.pdf) ([slides](https://axel22.github.io/resources/docs/ctries-snapshots.pptx)) | Data Structures | 2012 | 01/30/2015 | [Stream Processing, Event Sourcing, Reactive, CEP... And Making Sense of It All](http://blog.confluent.io/2015/01/29/making-sense-of-stream-processing/) | Stream Processing | 2015 | 01/31/2015 | [SWIM: Scalable Weakly-consistent Infection-style Process Group Membership Protocol](http://www.cs.cornell.edu/~asdas/research/dsn02-swim.pdf) | Distributed Systems | 2002 ================================================ FILE: 2015/02-february.md ================================================ | Date | Title | Category | Year | | ---------- |---------------| ----------|-------| | 02/01/2015 | [Time, Clocks, and the Ordering of Events in a Distributed System](http://research.microsoft.com/en-us/um/people/lamport/pubs/time-clocks.pdf) | Distributed Systems | 1978 | 02/02/2015 | [Reducing File System Tail Latencies with Chopper](http://research.cs.wisc.edu/adsl/Publications/chopper-fast15.pdf) | File Systems | 2015 | 02/03/2015 | [Approximately Detecting Duplicates for Streaming Data using Stable Bloom Filters](http://webdocs.cs.ualberta.ca/~drafiei/papers/DupDet06Sigmod.pdf) | Data Structures | 2006 | 02/04/2015 | [The Log-Structured Merge-Tree (LSM-Tree)](http://paperhub.s3.amazonaws.com/18e91eb4db2114a06ea614f0384f2784.pdf) | Data Structures | 1996 | 02/05/2015 | [Coordination Avoidance in Database Systems](http://www.vldb.org/pvldb/vol8/p185-bailis.pdf) ([talk](https://www.youtube.com/watch?v=JVEwJyTIjcE)) ([slides](https://speakerdeck.com/pbailis/availability-consistency-and-horizontally-scalable-data-management-sf-bay-area-acm)) | Databases | 2014 | 02/06/2015 | [Building on Quicksand](http://arxiv.org/pdf/0909.1788v1.pdf) | Distributed Systems | 2009 | 02/07/2015 | [HyperLogLog: the analysis of a near-optimal cardinality estimation algorithm](http://algo.inria.fr/flajolet/Publications/FlFuGaMe07.pdf) | Algorithms | 2007 | 02/08/2015 | [Scalable Eventually Consistent Counters over Unreliable Networks](http://arxiv.org/pdf/1307.3207v1.pdf) | Distributed Systems | 2013 | 02/09/2015 | [On the resemblance and containment of documents](http://gatekeeper.dec.com/ftp/pub/dec/SRC/publications/broder/positano-final-wpnums.pdf) | Algorithms | 1997 | 02/10/2015 | [A Protocol for REST over ZeroMQ](http://hintjens.com/blog:86) | Software Engineering | 2015 | 02/11/2015 | [Orleans: Distributed Virtual Actors for Programmability and Scalability](http://research.microsoft.com/pubs/210931/Orleans-MSR-TR-2014-41.pdf) | Distributed Systems | 2014 | 02/12/2015 | [Timelines at Scale](http://www.infoq.com/presentations/Twitter-Timeline-Scalability) | Software Engineering | 2013 | 02/13/2015 | [Multiversion Concurrency Control—Theory and Algorithms](http://www.itu.dk/stud/speciale/bepjea/xwebtex/litt/multiversion-concurrency-control-theory-and-algorithm.pdf) | Databases | 1983 | 02/14/2015 | [Malamute](https://github.com/Malamute/malamute-core/blob/master/MALAMUTE.md) | Messaging | 2014 | 02/15/2015 | [The Unified Logging Infrastructure for Data Analytics at Twitter](http://vldb.org/pvldb/vol5/p1771_georgelee_vldb2012.pdf) | Data Analytics | 2012 | 02/16/2015 | [Lineage-driven Fault Injection](http://www.cs.berkeley.edu/~palvaro/molly.pdf) | Distributed Systems | 2015 | 02/17/2015 | [The essence of functional programming](http://www.eliza.ch/doc/wadler92essence_of_FP.pdf) | Functional Programming | 1992 | 02/18/2015 | [Raft Refloated: Do We Have Consensus?](http://www.cl.cam.ac.uk/~ms705/pub/papers/2015-osr-raft.pdf) | Distributed Systems | 2015 | 02/19/2015 | [Anti-Caching: A New Approach to Database Management System Architecture](http://www.vldb.org/pvldb/vol6/p1942-debrabant.pdf) | Databases | 2013 | 02/20/2015 | [Real time insights into LinkedIn's performance using Apache Samza](http://engineering.linkedin.com/samza/real-time-insights-linkedins-performance-using-apache-samza) | Stream Processing | 2014 | 02/21/2015 | [Log Structured Merge Trees](http://www.benstopford.com/2015/02/14/log-structured-merge-trees/) | Databases | 2015 | 02/22/2015 | [NATS - A new nervous system for distributed cloud platforms](http://www.slideshare.net/derekcollison/nats-a-new-nervous-system-for-distributed-cloud-platforms) | Messaging | 2015 | 02/23/2015 | [The Saddest Moment](http://research.microsoft.com/en-us/people/mickens/thesaddestmoment.pdf) | Distributed Systems | 2013 | 02/24/2015 | [Linearizability versus Serializability](http://www.bailis.org/blog/linearizability-versus-serializability/) | Databases | 2014 | 02/25/2015 | [Can HTTP/2 Replace MQTT?](http://timkellogg.me/blog/2015/02/20/can-http2-replace-mqtt/) | Messaging | 2015 | 02/26/2015 | [Life beyond Distributed Transactions: an Apostate’s Opinion](http://adrianmarriott.net/logosroot/papers/LifeBeyondTxns.pdf) | Distributed Systems | 2007 | 02/27/2015 | [Logic and Lattices for Distributed Programming](http://db.cs.berkeley.edu/papers/UCB-lattice-tr.pdf) | Distributed Systems | 2012 | 02/28/2015 | [A Simple Implementation Technique for Priority Search Queues](http://www.cs.ox.ac.uk/ralf.hinze/publications/ICFP01.pdf) | Algorithms | 2001 ================================================ FILE: 2015/03-march.md ================================================ | Date | Title | Category | Year | | ---------- |---------------| ----------|-------| | 03/01/2015 | [Fast Pattern Matching in Strings](http://www.cin.ufpe.br/~paguso/courses/if767/bib/KMP_1977.pdf) | Algorithms | 1977 | 03/02/2015 | [Week 7: Time, Clocks, and Ordering of Events in a Distributed System](http://swizec.com/blog/week-7-time-clocks-and-ordering-of-events-in-a-distributed-system/swizec/6444) | Distributed Systems | 2013 | 03/03/2015 | [Worst-Case Distributed Systems Design](http://www.bailis.org/blog/worst-case-distributed-systems-design/) | Distributed Systems | 2015 | 03/04/2015 | [All Internet Traffic is Written on Postcards](http://www.thoughtworks.com/insights/blog/all-internet-traffic-written-postcards) | Networking | 2015 | 03/05/2015 | [High-Performance Concurrency Control Mechanisms for Main-Memory Databases](http://arxiv.org/pdf/1201.0228v1.pdf) | Databases | 2012 | 03/06/2015 | [Distributed Hash Tables, Part I](http://www.linuxjournal.com/article/6797) | Distributed Systems | 2003 | 03/07/2015 | [Flow Analysis & Time-based Bloom Filters](https://www.igvita.com/2010/01/06/flow-analysis-time-based-bloom-filters/) | Stream Processing | 2010 | 03/08/2015 | [Event Sourcing at Global Scale](http://krasserm.github.io/2015/01/13/event-sourcing-at-global-scale/) | Distributed Systems | 2015 | 03/09/2015 | [Samza in LinkedIn: How LinkedIn Processes Billions of Events Everyday in Real-time](http://www.infoq.com/presentations/samza-linkedin-2014) | Stream Processing | 2014 | 03/10/2015 | [Cuckoo Filter: Practically Better Than Bloom](http://www.pdl.cmu.edu/PDL-FTP/FS/cuckoo-conext2014.pdf) | Data Structures | 2014 | 03/11/2015 | [A Scalable Content-Addressable Network](http://www.eecs.berkeley.edu/~sylvia/papers/cans.pdf) | Distributed Systems | 2001 | 03/12/2015 | [Disambiguating Databases](http://queue.acm.org/detail.cfm?id=2696453) | Databases | 2014 | 03/13/2015 | [Accountants Don't Use Erasers](http://blogs.msdn.com/b/pathelland/archive/2007/06/14/accountants-don-t-use-erasers.aspx) | Databases | 2007 | 03/14/2015 | [Interval Tree Clocks: A Logical Clock for Dynamic Systems](http://gsd.di.uminho.pt/members/cbm/ps/itc2008.pdf) | Distributed Systems | 2008 | 03/15/2015 | [Lessons Learned from Implementing Paxos](http://blog.willportnoy.com/2012/06/lessons-learned-from-paxos.html) | Distributed Systems | 2012 | 03/16/2015 | [Have Your Cake and Eat It Too -- Further Dispelling the Myths of the Lambda Architecture](http://www.infoq.com/presentations/millwheel) | Stream Processing | 2015 | 03/17/2015 | [Predecessor search for Big Data: x-fast tries, locality of reference and all that](http://www.borzov.ca/posts/xfast/) | Data Structures | 2015 | 03/18/2015 | [A Fast, Minimal Memory, Consistent Hash Algorithm](http://arxiv.org/pdf/1406.2294v1.pdf) | Algorithms | 2014 | 03/19/2015 | [Scale Failure](http://queue.acm.org/detail.cfm?id=2147781) | Software Engineering | 2012 | 03/20/2015 | [Memories, Guesses, and Apologies](http://blogs.msdn.com/b/pathelland/archive/2007/05/15/memories-guesses-and-apologies.aspx) | Distributed Systems | 2007 | 03/21/2015 | [Fast Bounded-Concurrency Hash Tables](http://backtrace.io/blog/blog/2015/03/13/workload-specialization/) | Data Structures | 2015 | 03/22/2015 | [Mature Optimization: An Introduction](http://carlos.bueno.org/optimization/) | Software Engineering | 2013 | 03/23/2015 | [Zab: High-performance broadcast for primary-backup systems](http://web.stanford.edu/class/cs347/reading/zab.pdf) | Distributed Systems | 2011 | 03/24/2015 | [Eventually Consistent - Revisited](http://www.allthingsdistributed.com/2008/12/eventually_consistent.html) | Distributed Systems | 2008 | 03/25/2015 | [On Optimistic Methods for Concurrency Control](http://www.cs.berkeley.edu/~rxin/db-papers/OCC-Optimistic-Concurrency-Control.pdf) | Databases | 1981 | 03/26/2015 | [The Google File System](http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/archive/gfs-sosp2003.pdf) | Distributed Systems | 2003 | 03/27/2015 | [Resilient Distributed Datasets: A Fault-Tolerant Abstraction for In-Memory Cluster Computing](http://www.cs.berkeley.edu/~rxin/db-papers/Spark.pdf) | Distributed Systems | 2012 | 03/28/2015 | [An Introduction to Lock-Free Programming](http://preshing.com/20120612/an-introduction-to-lock-free-programming/) | Concurrency | 2012 | 03/29/2015 | [Multicore and Distributed Systems: Sharing Ideas to Build A Scalable Database](https://youtu.be/Mbg1COjhsJU?list=PL9Jh2HsAWHxLco7V1SjU9hUzP53CBZOYO) | Databases | 2014 | 03/30/2015 | [Unreliable Failure Detectors for Reliable Distributed Systems](http://www.cs.utexas.edu/~lorenzo/corsi/cs380d/papers/p225-chandra.pdf) | Distributed Systems | 1996 | 03/31/2015 | [A View of Cloud Computing](http://www.cs.berkeley.edu/~rxin/db-papers/cloudcomputing.pdf) | Software Engineering | 2010 ================================================ FILE: 2015/04-april.md ================================================ | Date | Title | Category | Year | | ---------- |---------------| ----------|-------| | 04/01/2015 | [Approximate Frequency Counts over Data Streams](http://www.vldb.org/conf/2002/S10P03.pdf) | Stream Processing | 2002 | 04/02/2015 | [Dynamo: Amazon’s Highly Available Key-value Store ](http://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf) | Distributed Systems | 2007 | 04/03/2015 | [A New Solution of Dijkstra's Concurrent Programming Problem](http://research.microsoft.com/en-us/um/people/lamport/pubs/bakery.pdf) | Algorithms | 1974 | 04/04/2015 | [Out of the Tar Pit](http://shaffner.us/cs/papers/tarpit.pdf) | Software Engineering | 2006 | 04/05/2015 | [Sketch of the Day: Frugal Streaming](http://research.neustar.biz/2013/09/16/sketch-of-the-day-frugal-streaming/) | Stream Processing | 2013 | 04/06/2015 | [Be General and Don’t Give Up Consistency in Geo-Replicated Transactional Systems](http://hyflow.org/pubs/opodis14-alvin.pdf) | Distributed Systems | 2014 | 04/07/2015 | [Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications](http://www.cs.berkeley.edu/~rxin/db-papers/Chord-DHT.pdf) | Distributed Systems | 2001 | 04/08/2015 | [The Google File System](http://static.googleusercontent.com/media/research.google.com/en/us/archive/gfs-sosp2003.pdf) | File Systems | 2003 | 04/09/2015 | [References for Data Stream Algorithms](http://dimacs.rutgers.edu/~graham/pubs/papers/bristol.pdf) | Stream Processing | 2007 | 04/10/2015 | [Reliable Cron across the Planet](https://queue.acm.org/detail.cfm?id=2745840) | Distributed Systems | 2015 | 04/11/2015 | [Roughly Sorting: Sequential and Parallel Approach](http://ci.nii.ac.jp/naid/110002673489/en) | Algorithms | 1989 | 04/12/2015 | [MapReduce: Simplified Data Processing on Large Clusters](http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/archive/mapreduce-osdi04.pdf) | Distributed Systems | 2004 | 04/13/2015 | [Why Are Geospatial Databases So Hard To Build?](http://www.jandrewrogers.com/2015/03/02/geospatial-databases-are-hard/) | Databases | 2015 | 04/14/2015 | [High-speed message matching](http://zeromq.org/whitepapers:message-matching) | Algorithms | 2007 | 04/15/2015 | [PALM: Parallel Architecture-Friendly Latch-Free Modifications to B+ Trees on Many-Core Processors](http://cs.unc.edu/~sewall/palm.pdf) | Data Structures | 2011 | 04/16/2015 | [The Chubby lock service for loosely-coupled distributed systems](http://static.googleusercontent.com/media/research.google.com/en/us/archive/chubby-osdi06.pdf) | Distributed Systems | 2006 | 04/17/2015 | [Methods for Finding Frequent Items in Data Streams](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.187.9800&rep=rep1&type=pdf) | Stream Processing | 2010 | 04/18/2015 | [Highly Available Transactions: Virtues and Limitations](http://www.bailis.org/papers/hat-vldb2014.pdf) | Distributed Systems | 2013 | 04/19/2015 | [Optimising Subscriptions in nanomsg](http://250bpm.com/blog:19) | Data Structures | 2013 | 04/20/2015 | [Consistency Tradeoffs in Modern Distributed Database System Design](http://cs-www.cs.yale.edu/homes/dna/papers/abadi-pacelc.pdf) | Distributed Systems | 2012 | 04/21/2015 | [Stasis: Flexible Transactional Storage](http://www.cs.berkeley.edu/~brewer/sears-2006.pdf) | Databases | 2006 | 04/22/2015 | [An empirical perspective on causal consistency](http://dl.acm.org/ft_gateway.cfm?id=2745949&ftid=1564565&dwn=1&CFID=654404680&CFTOKEN=66137796) | Distributed Systems | 2015 | 04/23/2015 | [Probabilistic Reliable Dissemination in Large-Scale Systems](http://pages.saclay.inria.fr/laurent.massoulie/ieee_tpds.pdf) | Distributed Systems | 2003 | 04/24/2015 | [Fully Persistent Graphs – Which One To Choose?](http://web.engr.oregonstate.edu/~erwig/papers/PersistentGraphs_IFL97.pdf) | Data Structures | 1997 | 04/25/2015 | [HyParView: a membership protocol for reliable gossip-based broadcast](http://www.gsd.inesc-id.pt/~ler/reports/dsn07-leitao.pdf) | Distributed Systems | 2007 | 04/26/2015 | [Phase Reconciliation for Contended In-Memory Transactions](http://pdos.csail.mit.edu/~neha/phaser.pdf) | Databases | 2014 | 04/27/2015 | [Chain Replication for Supporting High Throughput and Availability](http://www.cs.cornell.edu/home/rvr/papers/osdi04.pdf) | Distributed Systems | 2004 | 04/28/2015 | [Medians and Beyond: New Aggregation Techniques for Sensor Networks](http://www.cs.virginia.edu/~son/cs851/papers/ucsb.sensys04.pdf) | Algorithms | 2004 | 04/29/2015 | [Extensible Distributed Coordination](http://dl.acm.org/citation.cfm?id=2741954&CFID=654404680&CFTOKEN=66137796) | Distributed Systems | 2015 | 04/30/2015 | [Object Storage on CRAQ](https://www.usenix.org/legacy/event/usenix09/tech/full_papers/terrace/terrace.pdf) | Distributed Systems | 2009 ================================================ FILE: 2015/05-may.md ================================================ | Date | Title | Category | Year | | ---------- |---------------| ----------|-------| | 05/01/2015 | [Finding Trojan Message Vulnerabilities in Distributed Systems](http://dslab.epfl.ch/pubs/Achilles.pdf) | Distributed Systems | 2014 | 05/02/2015 | [How to Design a Good API and Why it Matters](http://static.googleusercontent.com/media/research.google.com/en/us/pubs/archive/32713.pdf) ([talk](https://www.youtube.com/watch?v=aAb7hSCtvGw&feature=youtu.be)) | Software Engineering | 2006 | 05/03/2015 | [Exactly-once semantics in a replicated messaging system](http://ilpubs.stanford.edu:8090/483/1/2000-7.pdf) | Messaging | 2001 | 05/04/2015 | [Elements of Scale: Composing and Scaling Data Platforms](http://www.benstopford.com/2015/04/28/elements-of-scale-composing-and-scaling-data-platforms/) | Software Engineering | 2015 | 05/05/2015 | [The Pathologies of Big Data](https://queue.acm.org/detail.cfm?id=1563874) | Databases | 2009 | 05/06/2015 | [The network is reliable](https://aphyr.com/posts/288-the-network-is-reliable) | Distributed Systems | 2013 | 05/07/2015 | [A Practical Multi-Word Compare-and-Swap Operation](https://timharris.uk/papers/2002-disc.pdf) | Algorithms | 2002 | 05/08/2015 | [RPC and its Offspring: Convenient, Yet Fundamentally Flawed](http://www.infoq.com/presentations/vinoski-rpc-convenient-but-flawed) | Software Engineering | 2009 | 05/09/2015 | [HyperLogSandwich: A probabilistic data structure for frequency/k-occurrence cardinality estimation of multisets](https://github.com/chanian/hyperlogsandwich/wiki) | Data Structures | 2015 | 05/10/2015 | [Queues Are Databases](http://research.microsoft.com/pubs/69641/tr-95-56.pdf) | Messaging | 1995 | 05/11/2015 | [Databases suck for Messaging](http://www.rabbitmq.com/resources/RabbitMQ_Oxford_Geek_Night.pdf) | Messaging | 2009 | 05/12/2015 | [Lock-Free Data Structures. Exploring Queues](http://kukuruku.co/hub/cpp/lock-free-data-structures-exploring-queues) | Data Structures | 2015 | 05/13/2015 | [Taming uncertainty in distributed systems with help from the network](http://dl.acm.org/citation.cfm?id=2741976) | Distributed Systems | 2015 | 05/14/2015 | [Mythbusting modern hardware to gain "Mechanical Sympathy"](https://www.youtube.com/watch?v=MC1EKLQ2Wmg) | Hardware | 2013 | 05/15/2015 | [Upside Down Databases: Bridging the Operational and Analytic Worlds with Streams](http://www.benstopford.com/2015/04/07/upside-down-databases-bridging-the-operational-and-analytic-worlds-with-streams/) | Stream Processing | 2015 | 05/16/2015 | [Putting Consistency Back into Eventual Consistency](http://dl.acm.org/citation.cfm?id=2741972) | Distributed Systems | 2015 | 05/17/2015 | [CORFU: A Shared Log Design for Flash Clusters](http://research.microsoft.com/pubs/157204/corfumain-final.pdf) | Distributed Systems | 2012 | 05/18/2015 | [Bigtable: A Distributed Storage System for Structured Data](http://static.googleusercontent.com/media/research.google.com/en/us/archive/bigtable-osdi06.pdf) | Distributed Systems | 2006 | 05/19/2015 | [Orleans, Distributed Virtual Actors for Programming and Scalability Comparison](http://christophermeiklejohn.com/papers/2015/05/03/orleans.html) | Distributed Systems | 2015 | 05/20/2015 | [Degrees Of (Lock/Wait) Freedom](http://psy-lob-saw.blogspot.com/2015/05/degrees-of-lockwait-freedom.html) | Algorithms | 2015 | 05/21/2015 | [Version control, collaborative editing and undo](http://incidentalcomplexity.com/2015/04/22/version-control/) | Algorithms | 2015 | 05/22/2015 | [What is Garbage Collection?](https://plumbr.eu/blog/garbage-collection/what-is-garbage-collection) | Algorithms | 2015 | 05/23/2015 | [Musketeer: all for one, one for all in data processing systems](http://www.cl.cam.ac.uk/~icg27/pub/papers/2015-eurosys-musketeer.pdf) | Data Analytics | 2015 | 05/24/2015 | [On the use of Clocks to Enforce Consistency in the Cloud](http://sites.computer.org/debull/A15mar/p18.pdf) | Distributed Systems | 2015 | 05/25/2015 | [Scaling Concurrent Log-Structured Data Stores](http://labs.yahoo.com/publication/scaling-concurrent-log-structured-data-stores/) | Databases | 2015 | 05/26/2015 | [Convenience Over Correctness](http://steve.vinoski.net/pdf/IEEE-Convenience_Over_Correctness.pdf) | Distributed Systems | 2008 | 05/27/2015 | [An In-Memory Object Caching Framework with Adaptive Load Balancing](http://people.cs.vt.edu/yuec/docs/eurosys15-mbal.pdf) | Caching | 2015 | 05/28/2015 | [Defending Something Other Than RPC](http://steve.vinoski.net/blog/2008/05/24/defending-something-other-than-rpc/) | Distributed Systems | 2008 | 05/29/2015 | [The Byzantine Generals Problem](http://www.cs.cornell.edu/courses/cs614/2004sp/papers/lsp82.pdf) | Distributed Systems | 1982 | 05/30/2015 | [Optimistic Replication](http://pagesperso-systeme.lip6.fr/Marc.Shapiro/papers/Optimistic_Replication_Computing_Surveys_2005-03_cameraready.pdf) | Distributed Systems | 2005 | 05/31/2015 | [Harvest, Yield, and Scalable Tolerant Systems](http://radlab.cs.berkeley.edu/people/fox/static/pubs/pdf/c18.pdf) | Distributed Systems | 1999 ================================================ FILE: 2015/06-june.md ================================================ | Date | Title | Category | Year | | ---------- |---------------| ----------|-------| | 06/01/2015 | [Google systems guru explains why containers are the future of computing](https://medium.com/s-c-a-l-e/google-systems-guru-explains-why-containers-are-the-future-of-computing-87922af2cf95) | Distributed Systems | 2015 | 06/02/2015 | [CQRS](http://martinfowler.com/bliki/CQRS.html) | Design Patterns | 2011 | 06/03/2015 | [Sagas](http://www.cs.cornell.edu/andru/cs711/2002fa/reading/sagas.pdf) | Distributed Systems | 1987 | 06/04/2015 | [Containers and persistent data](http://lwn.net/Articles/646054/) | Distributed Systems | 2015 | 06/05/2015 | [Turing Lecture: The Computer Science of Concurrency: The Early Years](http://cacm.acm.org/magazines/2015/6/187316-turing-lecture-the-computer-science-of-concurrency/fulltext) | Algorithms | 2015 | 06/06/2015 | [Everything You Ever Wanted to Know About Message Latency](http://computernetworks5e.org/blogs/wp-content/uploads/2013/09/latency-supp1.pdf) | Networking | 2013 | 06/07/2015 | [Calvin: Fast Distributed Transactions for Partitioned Database Systems](http://cs-www.cs.yale.edu/homes/dna/papers/calvin-sigmod12.pdf) | Distributed Systems | 2012 | 06/08/2015 | [Epidemic Broadcast Trees](http://www.gsd.inesc-id.pt/~jleitao/pdf/srds07-leitao.pdf) | Distributed Systems | 2014 | 06/09/2015 | [Reusability Trap](http://250bpm.com/blog:49) | Software Engineering | 2015 | 06/10/2015 | [Locality-aware Partitioning in Parallel Database Systems](http://dl.acm.org/citation.cfm?id=2723718) | Databases | 2015 | 06/11/2015 | [Inside NGINX: How We Designed for Performance & Scale](http://nginx.com/blog/inside-nginx-how-we-designed-for-performance-scale/) | Web Servers | 2015 | 06/12/2015 | [Efficient Algorithms for Answering the m-Closest Keywords Query](http://rose.ntu.edu.sg/Publications/Documents/Guo%20Tao_Efficient%20Algorithms%20for%20Answering%20the%20m-Closest.pdf) | Algorithms | 2015 | 06/13/2015 | [Challenges to Adopting Stronger Consistency at Scale](https://www.usenix.org/system/files/conference/hotos15/hotos15-paper-ajoux.pdf) | Distributed Systems | 2015 | 06/14/2015 | [Minimizing Commit Latency of Transactions in Geo-Replicated Data Stores](http://dl.acm.org/citation.cfm?id=2723729&CFID=683382435&CFTOKEN=46542731) | Distributed Systems | 2015 | 06/15/2015 | [Feral Concurrency Control: An Empirical Investigation of Modern Application Integrity](http://www.bailis.org/papers/feral-sigmod2015.pdf) | Databases | 2015 | 06/16/2015 | [Life Beyond the Illusion of Present](http://de.slideshare.net/jboner/life-beyond-the-illusion-of-present) | Distributed Systems | 2015 | 06/17/2015 | [Synapse: A Microservices Architecture for Heterogeneous-Database Web Applications](http://viennot.com/synapse.pdf) | Distributed Systems | 2015 | 06/18/2015 | [Models and Issues in Data Stream Systems](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.106.9846&rep=rep1&type=pdf) | Stream Processing | 2002 | 06/19/2015 | [CAP: if all you have is a timeout, everything looks like a partition](http://blog.thislongrun.com/2015/05/CAP-theorem-partition-timeout-zookeeper.html) | Distributed Systems | 2015 | 06/20/2015 | [Doing the Impossible: Exactly-once Messaging Patterns in Kafka](http://ben.kirw.in/2014/11/28/kafka-patterns/) | Messaging | 2014 | 06/21/2015 | [Mutable Value Chains](https://joearms.github.io/2015/06/19/Mutable-Value_Chains.html) | Data Structures | 2015 | 06/22/2015 | [Visigoth Fault Tolerance](http://www.mpi-sws.org/~dcfp/files/dporto-vft-eurosys15.pdf) | Distributed Systems | 2015 | 06/23/2015 | [A simple totally ordered broadcast protocol](http://labs.yahoo.com/publication/a-simple-totally-ordered-broadcast-protocol/) | Distributed Systems | 2008 | 06/24/2015 | [You can learn a lot from a histogram](http://amistrongeryet.blogspot.com/2010/04/you-can-learn-lot-from-histogram.html) | Benchmarking | 2010 | 06/25/2015 | [Deconstructing the 'CAP theorem' for CM and DevOps](http://markburgess.org/blog_cap.html) | Distributed Systems | 2012 | 06/26/2015 | [Databases on SSDs, Initial Ideas on Tuning](http://www.dr-josiah.com/2010/08/databases-on-ssds-initial-ideas-on.html) | Databases | 2010 | 06/27/2015 | [When is "ACID" ACID? Rarely.](http://www.bailis.org/blog/when-is-acid-acid-rarely/) | Databases | 2013 | 06/28/2015 | [When slower is faster](http://arxiv.org/pdf/1506.06796v1.pdf) | Optimization | 2015 | 06/29/2015 | [Linearizability: A Correctness Condition for Concurrent Objects](http://cs.brown.edu/~mph/HerlihyW90/p463-herlihy.pdf) | Distributed Systems | 1990 | 06/30/2015 | [Cheap Paxos](http://research.microsoft.com/en-us/um/people/lamport/pubs/web-dsn-submission.pdf) | Distributed Systems | 2004 ================================================ FILE: 2015/07-july.md ================================================ | Date | Title | Category | Year | | ---------- |---------------| ----------|-------| | 07/01/2015 | [Clients are Jerks: aka How Halo 4 DoSed the Services at Launch & How We Survived](http://caitiem.com/2015/06/23/clients-are-jerks-aka-how-halo-4-dosed-the-services-at-launch-how-we-survived/) | Distributed Systems | 2015 | 07/02/2015 | [Distributed Streams Algorithms for Sliding Windows](http://home.engineering.iastate.edu/~snt/pubs/tocs04.pdf) | Stream Processing | 2004 | 07/07/2015 | [Guaranteeing Deadlines for Inter-Datacenter Transfers](http://sing.cse.ust.hk/~wei/papers/amoeba-eurosys2015.pdf) | Distributed Systems | 2015 | 07/08/2015 | [OLTP Through the Looking Glass, and What We Found There](http://hstore.cs.brown.edu/papers/hstore-lookingglass.pdf) | Databases | 2008 | 07/09/2015 | [Trash Day: Coordinating Garbage Collection in Distributed Systems](https://www.usenix.org/system/files/conference/hotos15/hotos15-paper-maas.pdf) | Distributed Systems | 2015 | 07/10/2015 | [Tiered Replication: A Cost-effective Alternative to Full Cluster Geo-replication](https://www.usenix.org/system/files/conference/atc15/atc15-paper-cidon.pdf) | Distributed Systems | 2015 | 07/11/2015 | [CAP and PACELC: Thinking More Clearly About Consistency](http://brooker.co.za/blog/2014/07/16/pacelc.html) | Distributed Systems | 2014 | 07/12/2015 | [RocksDB on Steroids, or Scaling Concurrent Log-Structured Key-Value Stores](http://yssrblog.tumblr.com/post/117085947023/rocksdb-on-steroids-or-scaling-concurrent) | Databases | 2015 | 07/13/2015 | [Service Level Disagreements](http://blog.b3k.us/2009/07/15/service-level-disagreements.html) | Software Engineering | 2009 | 07/14/2015 | [Fault Injection in Production](http://queue.acm.org/detail.cfm?id=2353017) | Software Engineering | 2012 | 07/15/2015 | [Testing a Distributed System](http://queue.acm.org/detail.cfm?id=2800697) | Distributed Systems | 2015 | 07/17/2015 | [At-Most-Once Message Delivery: A Case Study in Algorithm Verification](http://groups.csail.mit.edu/tds/papers/Lynch/concur92.pdf) | Messaging | 1992 | 07/18/2015 | [Notes on Distributed Systems for Young Bloods](http://www.somethingsimilar.com/2013/01/14/notes-on-distributed-systems-for-young-bloods/) | Distributed Systems | 2013 | 07/19/2015 | [Eventual Consistency Today: Limitations, Extensions, and Beyond](http://queue.acm.org/detail.cfm?id=2462076) | Databases | 2013 | 07/20/2015 | [Dapper, a Large-Scale Distributed Systems Tracing Infrastructure](http://static.googleusercontent.com/media/research.google.com/en/us/pubs/archive/36356.pdf) | Distributed Systems | 2010 | 07/21/2015 | [The Tail at Scale: Achieving Rapid Response Times in Large Online Services](https://www.youtube.com/watch?v=C_PxVdQmfpk) | Distributed Systems | 2013 | 07/22/2015 | [On Designing and Deploying Internet-Scale Services](http://mvdirona.com/jrh/talksAndPapers/JamesRH_Lisa.pdf) | Distributed Systems | 2007 | 07/24/2015 | [Reducing the Vulnerability Window in Distributed Transactional Protocols](https://www.info.ucl.ac.be/~pvr/papoc15-bravo-v3.pdf) | Distributed Systems | 2015 | 07/27/2015 | [F1: A Distributed SQL Database That Scales](http://static.googleusercontent.com/media/research.google.com/en/us/pubs/archive/41344.pdf) | Databases | 2013 | 07/28/2015 | [A Brief History of Scaling LinkedIn](http://engineering.linkedin.com/architecture/brief-history-scaling-linkedin) | Distributed Systems | 2015 | 07/29/2015 | [Thinking Clearly About Performance, Part 1](http://cacm.acm.org/magazines/2010/9/98033-thinking-clearly-about-performance-part-1/fulltext) | Software Engineering | 2010 | 07/30/2015 | [Thinking Clearly About Performance, Part 2](http://cacm.acm.org/magazines/2010/10/99486-thinking-clearly-about-performance-part-2/fulltext) | Software Engineering | 2010 | 07/31/2015 | [Toward Common Patterns for Distributed, Concurrent, Fault-Tolerant Code](http://rstutsman.github.io/papers/stutsman-dcft-hotos13.pdf) | Distributed Systems | 2013 ================================================ FILE: 2015/08-august.md ================================================ | Date | Title | Category | Year | | ---------- |---------------| ----------|-------| | 08/01/2015 | [Four easy reads to understand distributed systems issues](http://blog.separateconcerns.com/2015-07-07-four-easy-reads-distsys.html) | Distributed Systems | 2015 | 08/02/2015 | [The Deletable Bloom filter - A new member of the Bloom family](http://arxiv.org/pdf/1005.0352.pdf) | Data Structures | 2010 ================================================ FILE: README.md ================================================ # CS Literature of the Day I like computer science. That's why I'm [tweeting](https://twitter.com/search?f=realtime&q=%23CSLOTD&src=typd) a new piece of CS literature every day with the hashtag #CSLOTD. Some people don't like newfangled social media, so I'm maintaining a curated repository of the material here. ## What? Each day, I will tweet a link to an interesting piece of CS literature. I use "literature" to mean research paper, white paper, talk (yeah, I know a recording of a talk isn't "literature"—deal with it), slide deck, blog post, or really any thought-provoking content which is in the realm of computer science. Licensing and related legalese is confusing and boring. This repo doesn't host any material, it just provides links to them. If you find a broken link, file an issue or open a PR. ## Prior Art [Papers We Love](http://paperswelove.org/) is an awesome community with a collection of cool academic papers. Check them out. ## Contributing If you know of an interesting piece of CS literature which you think should be included, feel free to submit it by creating an issue. Just include the title, link to the material, category, and date of publication. ## Disclaimer I'm doing this because I'm enthusiastic about CS. I reserve the right to stop doing it at any time or miss days for whatever reason. I also tweet things that *I* think are interesting. If you don't find them interesting, that's your problem. As such, I reserve the right to reject submissions if I don't find them compelling enough to include. I have pretty low standards though. :)