aboutsummaryrefslogtreecommitdiff
path: root/documentation/research
diff options
context:
space:
mode:
authorEduardo Julian2019-05-19 10:38:09 -0400
committerEduardo Julian2019-05-19 10:38:09 -0400
commit46ed1ed24d6c9366264dbca3f108d1ecc3042c94 (patch)
treeab52d41f81269019208d3fede769df94860ad722 /documentation/research
parent77ca0d2049d54e17b0133818dd1667d8c7f4e221 (diff)
Moved my research notes from Trello to the repo:
+ Debugging + Distributed programming + Web frameworks + Native compilation
Diffstat (limited to 'documentation/research')
-rw-r--r--documentation/research/back-end/native.md130
-rw-r--r--documentation/research/database.md1
-rw-r--r--documentation/research/debugging.md74
-rw-r--r--documentation/research/distributed_programming.md82
-rw-r--r--documentation/research/operating_system.md1
-rw-r--r--documentation/research/web_framework.md132
6 files changed, 420 insertions, 0 deletions
diff --git a/documentation/research/back-end/native.md b/documentation/research/back-end/native.md
new file mode 100644
index 000000000..53a87edaa
--- /dev/null
+++ b/documentation/research/back-end/native.md
@@ -0,0 +1,130 @@
+# Call stack
+
+1. http://stffrdhrn.github.io/software/embedded/openrisc/2018/06/08/gcc_stack_frames.html
+1. https://yurichev.com/blog/reg_alloc/
+
+# Memory Management
+
+1. https://uridiumauthor.blogspot.com/2018/06/memory-management.html
+1. https://github.com/mtrebi/memory-allocators
+1. http://www.newlisp.org/MemoryManagement.html
+1. http://gee.cs.oswego.edu/dl/html/malloc.html
+1. https://shipilev.net/blog/2014/jmm-pragmatics/
+1. https://floooh.github.io/2018/06/17/handles-vs-pointers.html
+1. https://www.codemag.com/Article/1807051/Introducing-.NET-Core-2.1-Flagship-Types-Span-T-and-Memory-T
+1. https://stefansf.de/post/pointers-are-more-abstract-than-you-might-expect/
+1. http://www.memorymanagement.org/
+1. [Pseudomonarchia jemallocum: The false kingdom of jemalloc, or On exploiting the jemalloc memory manager](http://phrack.com/issues/68/10.html#article)
+1. https://gankro.github.io/blah/rust-layouts-and-abis/
+1. https://paul.bone.id.au/2018/10/19/gc-falsehoods/
+1. [Safe Programming with Pointers through Stateful Views](https://www.cs.bu.edu/~hwxi/academic/papers/padl05.pdf)
+
+# Unicode
+
+1. http://manishearth.github.io/blog/2017/01/14/stop-ascribing-meaning-to-unicode-code-points/
+1. https://garbagecollected.org/2013/03/15/reverse-strings-like-a-pro/
+1. http://reedbeta.com/blog/programmers-intro-to-unicode/
+1. https://mathiasbynens.be/notes/javascript-unicode
+1. http://www.daemonology.net/blog/2008-06-05-faster-utf8-strlen.html
+1. https://haxe.org/blog/unicode/
+1. http://justinblank.com/notebooks/stringrepresentationsandstringapis.html
+
+# Shell
+
+1. https://github.com/dylanaraps/pure-bash-bible
+
+# Platforms
+
+1. https://github.com/neutralinojs/neutralinojs
+
+# Concurrency
+
+1. https://github.com/hnes/libaco
+
+# Numeric operation
+
+1. https://github.com/ridiculousfish/libdivide
+1. https://lemire.me/blog/2019/02/08/faster-remainders-when-the-divisor-is-a-constant-beating-compilers-and-libdivide/
+
+# Optimization
+
+1. http://ssw.jku.at/General/Staff/Leopoldseder/manlang2018-fast_path_unrolling_authorpreprint.pdf
+
+# Foreign function interface (FFI)
+
+1. https://github.com/swig/swig
+1. http://www.swig.org/
+1. http://www.swig.org/Doc2.0/Go.html
+1. https://begriffs.com/posts/2019-01-19-inside-c-standard-lib.html
+1. https://www.amazon.com/Standard-C-Library-P-J-Plauger/dp/0131315099
+
+# Graal
+
+1. https://www.newtv.co.th/video/video.php?v=topKYJgv6qA
+
+# Reference
+
+1. [C Is Not a Low-level Language: Your computer is not a fast PDP-11.](https://queue.acm.org/detail.cfm?id=3212479)
+1. http://www.ffconsultancy.com/ocaml/hlvm/
+1. https://nullprogram.com/blog/2018/05/27/
+1. https://github.com/dyu/ffi-overhead
+1. https://ivorylang.org/ivory-introduction.html
+1. http://blog.llvm.org/2018/03/dragonffi-ffijit-for-c-language-using.html
+1. https://internals.rust-lang.org/t/refactoring-std-for-ultimate-portability/4301
+1. https://blog.plan99.net/kotlin-native-310ffac94af2
+1. https://blog.jetbrains.com/kotlin/2017/12/kotlinnative-v0-5-released-calling-kotlin-from-swift-and-c-llvm-5-and-more/
+1. https://readytalk.github.io/avian/
+1. https://medium.com/@octskyward/kotlin-native-310ffac94af2#.xbcxqlm1w
+1. https://www.infoq.com/presentations/clojure-scheme
+1. https://github.com/ollef/sixten
+1. https://software.intel.com/sites/landingpage/IntrinsicsGuide/
+1. https://llvllatrix.wordpress.com/2016/12/31/system-calls-for-developers/
+1. http://www.cipht.net/2017/10/03/are-jump-tables-always-fastest.html
+1. https://github.com/libuv/libuv
+1. https://www.threadingbuildingblocks.org/
+1. https://cafbit.com/post/tokio_internals/
+1. https://medium.com/@unmeshvjoshi/how-java-thread-maps-to-os-thread-e280a9fb2e06
+1. http://pixielang.org/
+1. https://github.com/pixie-lang/pixie
+1. https://github.com/rust-lang/rust
+1. http://ziglang.org/#
+1. http://www.mpfr.org/
+1. http://www.mpfr.org/algorithms.pdf
+1. http://wilsonminesco.com/16bitMathTables/
+1. https://oded.ninja/2017/05/01/floating-point/
+1. [What Every Computer Scientist Should Know About Floating-Point Arithmetic](http://www.lsi.upc.edu/~robert/teaching/master/material/p5-goldberg.pdf)
+1. http://blog.veitheller.de/Fixed_Point_Division.html
+1. http://libdivide.com/
+1. [Modern Computer Arithmetic](https://members.loria.fr/PZimmermann/mca/mca-cup-0.5.9.pdf)
+1. [Division by Invariant Integers using Multiplication](https://gmplib.org/~tege/divcnst-pldi94.pdf)
+1. https://lion137.blogspot.com/2019/02/borneo-language-102.html
+1. https://www.youtube.com/watch?v=N0JTvyCxiv8
+1. http://robert.ocallahan.org/2017/02/what-rust-can-do-that-other-languages.html
+1. https://github.com/graalvm/truffleruby/blob/master/doc/user/svm.md
+1. http://bellard.org/libbf/
+1. http://paulcavallaro.com/blog/hashed-and-hierarchical-timing-wheels/
+1. http://speleotrove.com/decimal/
+1. https://lemire.me/blog/2017/11/16/fast-exact-integer-divisions-using-floating-point-operations/
+1. http://eli.thegreenplace.net/2013/07/09/library-order-in-static-linking
+1. [Skip the FFI!](http://llvm.org/devmtg/2014-10/Slides/Skip%20the%20FFI.pdf)
+1. http://www.infoworld.com/article/3187370/application-development/kotlin-compiles-directly-to-native-code-via-llvm.html
+1. https://blog.jetbrains.com/kotlin/2017/04/kotlinnative-tech-preview-kotlin-without-a-vm/
+1. https://github.com/bugvm/bugvm
+1. https://github.com/rampantpixels/rpmalloc
+1. https://www.cs.umd.edu/class/sum2003/cmsc311/Notes/Data/endian.html
+1. http://web.stanford.edu/group/sequoia/
+1. https://hackernoon.com/experimenting-with-small-buffer-optimization-for-c-lambdas-d5b703fb47e4
+1. https://www.microsoft.com/en-us/research/wp-content/uploads/2017/03/kedia2017mem.pdf
+1. https://github.com/tomhrr/dale
+1. [Fast String Searching](https://pdfs.semanticscholar.org/d991/2ea262986794e29e3f15e5f8930d42f2ced4.pdf)
+1. https://github.com/apple/swift/blob/master/docs/StringManifesto.md
+1. http://home.pipeline.com/~hbaker1/CheneyMTA.html
+1. [Position: Lightweight static resources 0Sexy types for embedded and systems programming](https://pdfs.semanticscholar.org/2368/ccf8c62ab981e2426cd698ba2229f3eca311.pdf?_ga=2.228359389.1990612643.1507689838-1658669397.1507689838)
+1. http://homes.soic.indiana.edu/ccshan/tfp2007/talk.pdf
+1. http://www.catb.org/esr/structure-packing/
+1. [Ahead Of Time (AOT) Internals](https://www.youtube.com/watch?v=n5DCg6M2MDM)
+1. [Polyglot Native: Java, Scala, Kotlin, & JVM languages](https://www.youtube.com/watch?v=5BMHIeMXTqA)
+1. https://ziviani.net/2017/functions-in-assembly
+1. https://ziviani.net/2017/functions-in-assembly-ii
+1. [Hashed and Hierarchical Timing Wheels: Data Structures for the Efficient Implementation of a Timer Facility](http://www.cs.columbia.edu/~nahum/w6998/papers/sosp87-timing-wheels.pdf)
+
diff --git a/documentation/research/database.md b/documentation/research/database.md
index a13ec496b..7826c3a53 100644
--- a/documentation/research/database.md
+++ b/documentation/research/database.md
@@ -52,6 +52,7 @@
1. https://www.ristret.com/s/gnd4yr/brief_history_log_structured_merge_trees
1. [Getting The Most Out Of Your PostgreSQL Indexes](https://pgdash.io/blog/postgres-indexes.html?p)
1. http://databasearchitects.blogspot.com/2019/05/why-use-learning-when-you-can-fit.html
+1. https://priyankvex.wordpress.com/2019/05/19/a-tale-on-concatenated-indexes-master-roshi-and-gokus-fireside-chat/
# Relational Algebra
diff --git a/documentation/research/debugging.md b/documentation/research/debugging.md
new file mode 100644
index 000000000..bd2074543
--- /dev/null
+++ b/documentation/research/debugging.md
@@ -0,0 +1,74 @@
+# Tool
+
+1. https://developer.mozilla.org/en-US/docs/Mozilla/Projects/WebReplay
+1. https://umaar.github.io/performance-debugging-devtools-2018/#/
+1. https://microsoft.github.io/debug-adapter-protocol/
+1. http://plasma-umass.org/BLeak/
+1. https://clinicjs.org/
+1. http://pev.sourceforge.net/
+
+# Tracing
+
+1. ["Understanding Microservices with Distributed Tracing" by Lita Cho](https://www.youtube.com/watch?v=URCLeycMrhU)
+
+# Reference
+
+1. https://en.wikipedia.org/wiki/Jinx_Debugger
+1. http://www.mattzeunert.com/2017/12/07/better-types-of-debuggers.html
+1. https://www.youtube.com/watch?v=ipDhvd1NsmE
+1. http://georgejahad.com/clojure/cdt.html
+1. http://endlessparentheses.com/cider-debug-a-visual-interactive-debugger-for-clojure.html
+1. https://github.com/razum2um/clj-debugger
+1. https://stories.jotform.com/how-to-become-a-good-debugger-9324543fea33#.1ctzqfyly
+1. https://www.microsoft.com/en-us/research/publication/time-travel-debugging-javascriptnode-js/
+1. http://valgrind.org/
+1. http://fitzgeraldnick.com/2015/06/19/source-maps-are-insufficient.html
+1. http://stefan-marr.de/downloads/draft-marr-et-al-concurrency-agnostic-protocol-for-debugging.pdf
+1. https://tip.golang.org/doc/diagnostics.html
+1. https://github.com/solo-io/squash
+1. http://www.michaelburge.us/2017/09/27/delta-debugging-in-haskell.html
+1. https://undo.io/
+1. [Clojure Compilation, Backwards - Nicola Mometto](https://www.youtube.com/watch?v=2SGFeegEt9E)
+1. https://zorbash.com/post/debugging-elixir-applications/
+1. [Compose :: Melbourne 2017 - Ronen Narkis - Re-ops, a Functional Live-Infrastructure as Code](https://www.youtube.com/watch?v=iopuirQuK-s)
+1. [Compose :: Melbourne 2017 - Jurriaan Hage - Domain-Specific Type Error Diagnosis in GHC](https://www.youtube.com/watch?v=GbCfmnTmQDc)
+1. https://raygun.com/javascript-debugging-tips
+1. https://github.com/bpiel/sayid
+1. [Algorithmic Program Debugging](http://cpsc.yale.edu/sites/default/files/files/tr237.pdf)
+1. [Effect-Driven QuickChecking of Compilers](http://janmidtgaard.dk/papers/Midtgaard-al%3AICFP17-full.pdf)
+1. https://www.youtube.com/watch?v=_KrZzaShDew
+1. [NodeJS uses the Chome debugger protocol:](https://developer.chrome.com/devtools/docs/debugger-protocol)
+1. http://www.dwarfstd.org/
+1. https://docs.oracle.com/javase/7/docs/technotes/guides/jpda/jdwp-spec.html
+1. [Coarse Hierarchical Delta Debugging](http://www.inf.u-szeged.hu/~akiss/pub/pdf/hodovan2017coarsehdd.pdf)
+1. [Improving live debugging of concurrent threads through thread histories](http://scg.unibe.ch/scgbib?query=Lesk17a&display=abstract)
+1. [The JVM is Not Observable Enough (and What To Do About It)](https://www.cs.kent.ac.uk/people/staff/srk21//papers/kell12jvm-preprint.pdf)
+1. http://nikhilism.com/post/2019/retrieving-function-arguments-while-unwinding-the-stack/
+1. https://backtrace.io/blog/engineering/compile-once-debug-twice-picking-a-compiler-for-debuggability-1of3/
+1. https://singaporedatacompany.com/blog/more-developers-more-problems
+1. https://github.com/gruns/icecream
+1. https://lemire.me/blog/2016/06/21/i-do-not-use-a-debugger/
+1. https://the.agilesql.club/2019/05/how-to-load-test-a-sql-database/?u=h
+
+# Benchmark
+
+1. https://github.com/smarr/ReBench
+
+# Performance
+
+1. ["Software Performance: A Shape Not a Number" by Kay Ousterhout](https://www.youtube.com/watch?v=f7HCeE377-0)
+1. ["A Practical Look at Performance Theory" by Kavya Joshi](https://www.youtube.com/watch?v=bEYY3M0d-w8)
+1. https://nsirap.com/posts/001-web-porformance-api/
+
+# Profiling
+
+1. https://www.opsian.com/blog/what-is-continuous-profiling/
+
+# Time-travelling
+
+1. [Travelling through time with WinDbg at a system level](https://www.youtube.com/watch?v=mB9LIztjSKg)
+
+# Monitoring
+
+1. https://www.erlang-solutions.com/blog/introducing-telemetry.html
+
diff --git a/documentation/research/distributed_programming.md b/documentation/research/distributed_programming.md
new file mode 100644
index 000000000..afaa77c2b
--- /dev/null
+++ b/documentation/research/distributed_programming.md
@@ -0,0 +1,82 @@
+# Reference
+
+1. http://www.the-paper-trail.org/post/2014-08-09-distributed-systems-theory-for-the-distributed-systems-engineer/
+1. https://courses.engr.illinois.edu/cs525/sp2018/index.html
+1. https://arxiv.org/abs/1701.07615
+1. http://proto.actor/
+1. https://blog.acolyer.org/2015/10/15/ironfleet-proving-practical-distributed-systems-correc/
+1. http://pythonsweetness.tumblr.com/post/165366346547/mitogen-an-infrastructure-code-baseline-that
+1. https://github.com/heathermiller/dist-prog-book
+1. https://lasp-lang.readme.io/
+1. https://speakerdeck.com/cmeiklejohn/practical-evaluation-of-the-lasp-programming-model-at-scale
+1. http://bloom-lang.net/
+1. https://www.oreilly.com/ideas/scaling-a-startup-with-a-21st-century-language
+1. https://github.com/grailbio/reflow
+1. https://github.com/reactors-io/reactors
+1. http://funcool.github.io/urania/latest/
+1. https://raft.github.io/
+1. https://github.com/ashwin153/caustic
+1. http://prl.ccs.neu.edu/blog/2017/10/22/monotonicity-types-towards-a-type-system-for-eventual-consistency/
+1. http://www.swirlds.com/
+1. [Whip: Higher-Order Contracts for Modern Services](https://people.seas.harvard.edu/~chong/pubs/icfp17-whip.pdf &&& https://www.youtube.com/watch?v=phHrSC6pkXU)
+1. https://channel9.msdn.com/Shows/On-NET/Orleans-onNET
+1. [A Meta-EDSL for Distributed Web Applications](https://www.youtube.com/watch?v=Xzv6CfyXUdM)
+1. https://en.wikipedia.org/wiki/Petriscript
+1. [Fallacies of Distributed Computing Explained](http://www.rgoarchitects.com/Files/fallacies.pdf)
+1. https://abhishek-tiwari.com/friends-dont-let-friends-build-data-pipelines/
+1. [Differential Synchronization](https://neil.fraser.name/writing/sync/)
+1. https://medium.com/@mycoralhealth/why-blockchains-dont-suck-and-the-perils-of-distributed-databases-1a522cc7cfe1
+1. [The Remote Monad](http://www.ittc.ku.edu/research/thesis/documents/justin_dawson_thesis.pdf)
+1. https://blog.acolyer.org/2017/08/17/on-the-design-of-distributed-programming-models/
+1. https://twitter.com/ifesdjeen/status/1024775959961128961
+1. https://sekniqi.com/blog/a-distributed-systems-primer-for-non-experts.html
+1. [numpywren: serverless linear algebra](https://arxiv.org/abs/1810.09679)
+1. https://hackernoon.com/a-thorough-introduction-to-distributed-systems-3b91562c9b3c
+1. ["Towards Language Support for Distributed Systems" by Heather Miller](https://www.youtube.com/watch?v=IeBbiQZYmuY)
+1. http://jepsen.io/
+1. [Think Local: Reducing Coordination and Improving Performance when Designing around Distributed State](https://vimeo.com/304106598)
+1. [Introducing AMBROSIA: a new platform for reliable distributed applications without all the hassle](https://cloudblogs.microsoft.com/opensource/2018/12/13/introducing-ambrosia-new-platform-distributed-applications/)
+1. https://distributedobjectprotocol.org/
+1. https://medium.com/bitfinex/introducing-svc-js-a-framework-for-grenache-7119f2d7769e
+1. http://dbmsmusings.blogspot.com/2019/01/its-time-to-move-on-from-two-phase.html
+
+# Rate limiting
+
+1. https://blog.ably.io/how-adopting-a-distributed-rate-limiting-helps-scale-your-platform-1afdf3944b5a
+
+# Programming language
+
+1. http://radicle.xyz/
+1. [Lambda World 2018 - Introduction to the Unison programming language - Rúnar Bjarnason](https://www.youtube.com/watch?v=rp_Eild1aq8)
+1. https://www.infoq.com/presentations/language-design-process
+
+# Two-phase commit
+
+1. https://shekhargulati.com/2018/09/05/two-phase-commit-protocol/
+
+# Linearizability
+
+1. https://ristret.com/s/uqin9q/mild_generalization_linearizability
+1. https://en.wikipedia.org/wiki/Vector_clock
+
+# Exemplar
+
+1. http://meshbird.com/
+
+# Logical clock
+
+1. [Why Logical Clocks are Easy: Sometimes all you need is the right language.](https://queue.acm.org/detail.cfm?id=2917756)
+
+# Consensus protocol
+
+1. https://medium.com/s/story/lets-take-a-crack-at-understanding-distributed-consensus-dad23d0dc95
+1. [Spectrum: A Framework for Adapting Consensus Protocols](https://arxiv.org/abs/1902.05873)
+
+# Locality
+
+1. [Think Local: Reducing Coordination and Improving Performance when Designing around Distributed State](https://vimeo.com/304106598)
+
+# Distributed transaction
+
+1. [Life beyond Distributed Transactions: an Apostate’s Opinion](http://adrianmarriott.net/logosroot/papers/LifeBeyondTxns.pdf)
+
diff --git a/documentation/research/operating_system.md b/documentation/research/operating_system.md
index bc7ecaf05..4fadac98c 100644
--- a/documentation/research/operating_system.md
+++ b/documentation/research/operating_system.md
@@ -232,6 +232,7 @@
1. [Memory Systems and Memory-Centric Computing Systems](http://people.inf.ethz.ch/omutlu/acaces2018.html)
1. https://en.wikipedia.org/wiki/Page_replacement_algorithm
+1. [Compress Objects, Not Cache Lines:An Object-Based Compressed Memory Hierarchy](https://people.csail.mit.edu/poantsai/papers/2019.zippads.asplos.pdf)
# Hardware
diff --git a/documentation/research/web_framework.md b/documentation/research/web_framework.md
new file mode 100644
index 000000000..ffb98b88b
--- /dev/null
+++ b/documentation/research/web_framework.md
@@ -0,0 +1,132 @@
+# Reference
+
+1. http://joneisen.me/talk-frelp-ui/#/
+1. http://meiosis.js.org/
+1. https://medium.com/samsung-internet-dev/disappearing-frameworks-ed921f411c38
+1. https://jasonhpriestley.com/flows
+1. https://hackernoon.com/creating-a-new-programming-language-that-will-allow-anyone-to-make-software-7a8c73238dc2
+1. https://github.com/gmrchk/swup
+1. https://www.brucelawson.co.uk/2018/the-practical-value-of-semantic-html/
+1. https://chanind.github.io/rails/2019/03/28/why-i-miss-rails.html
+1. https://dockyard.com/blog/2018/12/12/phoenix-liveview-interactive-real-time-apps-no-need-to-write-javascript
+
+# Exemplar
+
+1. https://www.http4k.org/blog/meet_http4k/
+1. Django
+1. Ruby On Rails
+1. http://sailsjs.com/
+1. http://www.cerebraljs.com/
+1. http://www.christianalfoni.com/articles/2016_09_11_The-case-for-function-tree
+1. https://www.infernojs.org/
+1. https://cycle.js.org/
+1. https://github.com/alixander/Stanchion
+1. http://jooby.org/
+1. https://github.com/Day8/re-frame
+1. https://reagent-project.github.io/
+1. https://fulcrologic.github.io/fulcro/
+1. https://www.siliconpublishing.com/blog/introducing-lotusjs
+1. https://github.com/giapnguyen74/gstate
+1. https://robots.thoughtbot.com/lucky-an-experimental-new-web-framework-by-thoughtbot
+1. https://github.com/vuejs/vue
+1. https://github.com/omcljs/om
+1. http://fulcro.fulcrologic.com/index.html
+1. https://github.com/vibora-io/vibora
+1. https://david-peter.de/articles/flare/
+1. https://medium.com/@tirthbodawala/introducing-pawjs-a-pluggable-framework-caeef166409f
+1. https://github.com/reclarejs/reclare
+1. https://eng.uber.com/fusionjs/
+1. https://reactjs.org/docs/hooks-intro.html
+1. https://medium.freecodecamp.org/the-virtual-dom-is-slow-meet-the-memoized-dom-bb19f546cc52
+1. http://kweb.io/
+1. https://medium.com/dailyjs/redux-without-reducers-reduxless-69afe76d9eeb
+1. https://eugenkiss.github.io/7guis/
+1. https://yogalayout.com/
+1. http://www.expressionsofchange.org/reification-of-interaction/
+1. https://www.infoq.com/articles/no-more-mvc-frameworks
+1. https://github.com/eugenkiss/7guis/wiki
+1. https://unmanner.github.io/imaskjs/
+1. http://www.cssreflex.com/css-frameworks/
+1. https://layerjs.org/
+1. https://enactjs.com/
+1. https://frankchimero.com/writing/everything-easy-is-hard-again/
+1. https://medium.com/@eugenkiss/challenges-in-gui-programming-65d360466e3f
+1. https://www.slideshare.net/lmatteis/are-statecharts-the-next-big-ui-paradigm
+1. https://guide.elm-lang.org/architecture/
+1. https://skillsmatter.com/skillscasts/8717-arachne-building-a-framework-in-clojure#video
+1. https://github.com/arachne-framework
+1. https://github.com/duct-framework/duct
+1. http://redux.js.org/
+1. https://hackernoon.com/transmission-tx-a-flux-alternative-fe0630eed2a3
+1. https://medium.com/groupon-eng/grox-the-art-of-the-state-b5223f48d696
+1. https://hackage.haskell.org/package/MFlow
+1. https://www.schoolofhaskell.com/school/to-infinity-and-beyond/pick-of-the-week/MFlowDSL
+1. https://medium.com/gitconnected/react-component-patterns-ab1f09be2c82?ref=hn
+1. https://www.lucidchart.com/techblog/2017/11/08/5-usage-ideas-for-angular-pipes/
+1. [David Khourshid - Infinitely Better UIs with Finite Automata](https://www.youtube.com/watch?v=VU1NKX6Qkxc)
+1. https://www.silvestarbistrovic.from.hr/articles/classily-js-toggling-classes-more-classily/
+1. https://www.sitepoint.com/functional-programming-choo/
+1. https://m.alphasights.com/css-evolution-from-css-sass-bem-css-modules-to-styled-components-d4c1da3a659b#.ksank5elf
+1. https://www.bassi.io/articles/2017/01/11/constraints-editing/
+1. https://github.com/threepointone/glamor
+1. http://ijzerenhein.github.io/autolayout.js/
+1. https://github.com/CodeRocketCo/enhanced-rails-architecture
+1. https://github.com/graphcool/graphcool
+1. https://www.sitepen.com/blog/2017/08/17/state-of-modern-component-styling/
+1. https://blog.logrocket.com/advanced-vue-js-concepts-mixins-custom-directives-filters-transitions-and-state-management-ca6955905156
+1. https://underscore.io/blog/posts/2017/01/24/finch-functional-web-development.html
+1. https://www.sitepoint.com/eqcss-a-javascript-plugin-to-write-element-queries/
+1. https://github.com/cognitect-labs/vase
+1. http://donejs.com/
+1. https://github.com/stdlib/lib
+1. https://www.hashicorp.com/blog/replacing-queues-with-nomad-dispatch.html
+1. https://github.com/darkleaf/router
+1. https://gist.github.com/tomhodgins/da7d8aa89d34b69e5c4120980e3945ef
+
+# Architecture
+
+1. https://jew.ski/raj/
+1. https://github.com/redux-saga/redux-saga
+
+# Platforms
+
+1. https://www.producthunt.com/posts/mason
+
+# State-management
+
+1. https://github.com/isocroft/Radixx
+
+# Styling
+
+1. https://github.com/diegohaz/reuse
+1. https://wiki.csswg.org/ideas/mistakes
+1. https://developer.mozilla.org/en-US/docs/Web/CSS/Layout_cookbook
+1. http://www.tipue.com/blog/css-sticky/
+1. https://modalzmodalzmodalz.com/
+1. https://medium.com/@elad/new-css-logical-properties-bc6945311ce7
+1. https://css-tricks.com/browserlist-good-idea/
+1. http://tabulator.info/
+1. https://css-tricks.com/creating-non-rectangular-headers/
+1. https://github.com/callum-hart/immutable-styles
+1. https://developers.google.com/web/updates/2019/02/constructable-stylesheets
+1. https://nosir.github.io/cleave.js/
+1. https://blogs.igalia.com/mrego/2019/01/11/an-introduction-to-css-containment/
+1. https://medium.com/@devdevcharlie/things-nobody-ever-taught-me-about-css-5d16be8d5d0e
+1. https://medium.freecodecamp.org/the-css-handbook-a-handy-guide-to-css-for-developers-b56695917d11
+1. https://css-tricks.com/look-ma-no-media-queries-responsive-layouts-using-css-grid/
+
+# Design system
+
+1. https://ant.design/
+
+# Rendering
+
+1. https://github.com/Famous/engine
+1. https://redom.js.org/
+1. https://svelte.dev/blog/virtual-dom-is-pure-overhead
+
+# Database query
+
+1. http://slick.lightbend.com/docs/
+1. https://books.underscore.io/essential-slick/essential-slick-3.html
+