hirotnk / learning-recources

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Personal Learning resources

Learning concepts

  • Argyris, C. (1991). Teaching smart people how to learn. Harvard business review, 69(3).

Programming Language

Erlang/Elixir

Programming language concepts

  • Johnsson T. (1985) Lambda lifting: Transforming programs to recursive equations
  • B.H. Liskov and J.M. Wing, Behavioral Subtyping Using Invariants and Constraints, CMU-CS-99-156, July 1999.

Programming language implementation

  • Adams, M. D., & Dybvig, R. K. (2008, September). Efficient nondestructive equality checking for trees and graphs. In Proceedings of the 13th ACM SIGPLAN international conference on Functional programming (pp. 179-188). (related: https://twitter.com/anohana/status/1429694845057060871)

Functional programming

  • HUET, G. É. R. A. R. D. (1997). The Zipper. Journal of Functional Programming, 7(5), 549–554. http://doi.org/10.1017/S0956796897002864
  • Hutton, G. (1999). A tutorial on the universality and expressiveness of fold. Journal of Functional Programming, 9(4), 355-372.
  • Peyton Jones, S. L. (1987). The implementation of functional programming languages (prentice-hall international series in computer science). Prentice-Hall, Inc..

Design

General

  • On the Criteria To Be Used in Decomposing Systems into Modules by D.L.Parnas, December 1972.
  • Petricek, T. (2017). Miscomputation in software: Learning to live with errors. The Art, Science, and Engineering of Programming, 1(2).
  • Schlichting, R. D., & Schneider, F. B. (1983). Fail-stop processors: An approach to designing fault-tolerant computing systems. ACM Transactions on Computer Systems (TOCS), 1(3), 222-238.
  • Erickson, J., Musuvathi, M., Burckhardt, S., & Olynyk, K. (2010, October). Effective Data-Race Detection for the Kernel. In OSDI (Vol. 10, No. 10, pp. 1-16).

Design patterns

Distributed Systems

Cloud Systems

Database

  • Yang, F., Tschetter, E., Léauté, X., Ray, N., Merlino, G., & Ganguli, D. (2014, June). Druid: A real-time analytical data store. In Proceedings of the 2014 ACM SIGMOD international conference on Management of data (pp. 157-168).
  • Nishtala, R., Fugal, H., Grimm, S., Kwiatkowski, M., Lee, H., Li, H. C., ... & Venkataramani, V. (2013). Scaling memcache at facebook. In 10th {USENIX} Symposium on Networked Systems Design and Implementation ({NSDI} 13) (pp. 385-398).
  • Bronson, N., Amsden, Z., Cabrera, G., Chakka, P., Dimov, P., Ding, H., ... & Venkataramani, V. (2013). {TAO}: Facebook’s distributed data store for the social graph. In 2013 {USENIX} Annual Technical Conference ({USENIX}{ATC} 13) (pp. 49-60).

Blogs

Books (Online)

Classes

CS

Math

Resources for Papers

Universities

Companies

CS fundamentals

Floating point number

Data Structures

HyperLogLog

  • Flajolet, P., Fusy, É., Gandouet, O., & Meunier, F. (2007, June). Hyperloglog: the analysis of a near-optimal cardinality estimation algorithm. In Discrete Mathematics and Theoretical Computer Science (pp. 137-156). Discrete Mathematics and Theoretical Computer Science.

About