Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/iamwilhelm/awesome-thinking-tools

List of links for awesome thinking tools
https://github.com/iamwilhelm/awesome-thinking-tools

List: awesome-thinking-tools

Last synced: about 1 month ago
JSON representation

List of links for awesome thinking tools

Awesome Lists containing this project

README

        

# Awesome Thinking Tools [![Awesome](https://awesome.re/badge.svg)](https://awesome.re)

> A curated list of thinking tools

-

## Bicycle of the Mind

### What does a tool for thinking look like?

- [As We May Think](https://www.theatlantic.com/magazine/archive/1945/07/as-we-may-think/303881/) by Vannevar Bush
- [Man-computer Symbiosis](https://groups.csail.mit.edu/medg/people/psz/Licklider.html) by J.C.R. Licklider
- [Augmenting Human Intellect](http://dougengelbart.org/content/view/138) by Douglas Engelbert
- [Mother of All Demos [video]](https://www.youtube.com/watch?v=qI8r8D46JOY&list=PL76DBC8D6718B8FD3&index=8) by Douglas Engelbert
- [A Few Words on Douglas Engelbert](http://worrydream.com/Engelbart/) by Bret Victor
- [Machines to Think With [Chap 7]](http://www.rheingold.com/texts/tft/07.html#Chap07) by Howard Reingold
- [Personal Dynamic Media](www.newmediareader.com/book_samples/nmr-26-kay.pdf) by Alan Kay and Adele Goldberg
- [Thought as Technology](http://cognitivemedium.com/tat/index.html) by Michael Neilsen
- [Magic Paper](http://cognitivemedium.com/magic_paper/index.html) by Michael Neilsen
- [Using Artificial Intelligence to Augment Human Intelligence](https://distill.pub/2017/aia/) by Michael Nielsen
- [Toward an exploratory medium for mathematics](http://cognitivemedium.com/emm/emm.html) by Michael Nielsen
- [Against the Current](https://observablehq.com/@jashkenas/against-the-current-what-we-learned-from-eve-transcript) by Chris Granger
- [Coding is Not the New Literacy](https://www.chris-granger.com/2015/01/26/coding-is-not-the-new-literacy/) by Chris Granger
- [Eve: tackling a giant with a change in perspective [video]](https://www.youtube.com/watch?v=a_o-ZzgpiK8) by Chris Granger
- [Inventing on Principle](https://www.youtube.com/watch?v=PUv66718DII) by Bret Victor
- [Media for Thinking the Unthinkable](https://www.youtube.com/watch?v=oUaOucZRlmE) by Bret Victor
- [Kill Math](http://worrydream.com/KillMath/) by Bret Victor
- [How can we develop transformative tools for thought?](https://numinous.productions/ttft/) by Andy Matuschak and Michael Neilsen
- [Intuition Pumps [video]](https://www.youtube.com/watch?v=4Q_mY54hjM0) by Daniel Dennett
- [Putting Turing to Work [video]](https://www.heidelberg-laureate-forum.org/video/lecture-putting-turing-to-work.html) by Alan Kay

### What is Programming?

- [Three Tribes of Programming](https://josephg.com/blog/3-tribes/) by Joseph Gentle
- [Programming as Theory Building](http://pages.cs.wisc.edu/~remzi/Naur.pdf) by Peter Naur
- [On the Expressive Power of Programming Languages](https://www.youtube.com/watch?v=43XaZEn2aLc) by Shriram Krishnamurthi
- [Systems not Programs](https://shalabh.com/programmable-systems/systems-not-programs.html) by Shalabh Chaturvedi

### Why is programming so hard?

- [No Silver Bullet](http://worrydream.com/refs/Brooks-NoSilverBullet.pdf) by Fred Brooks
- [Summary](https://blog.acolyer.org/2016/09/06/no-silver-bullet-essence-and-accident-in-software-engineering/) by Adrian Colyer
- [Out of the Tar Pit](http://curtclifton.net/papers/MoseleyMarks06a.pdf) by Ben Moseley and Peter Marks
- [Summary](https://blog.acolyer.org/2015/03/20/out-of-the-tar-pit/) by Adrian Colyer
- [Learnable Programming](http://worrydream.com/LearnableProgramming/) by Bret Victor
- [Law of Leaky Abstractions](https://www.joelonsoftware.com/2002/11/11/the-law-of-leaky-abstractions/) by Joel Spolsky
- [Up and Down the Ladder of Abstraction](http://worrydream.com/LadderOfAbstraction/) by Bret Victor
- [Yes You should Understand Backprop](https://medium.com/@karpathy/yes-you-should-understand-backprop-e2f06eab496b#.lbzzq2acs) by Andrej Karpathy
- [Tangible Functional Programming [video]](https://www.youtube.com/watch?v=faJ8N0giqzw) by Conal Elliot
- [We don't really know how to compute](https://www.infoq.com/presentations/We-Really-Dont-Know-How-To-Compute/) by Gary Sussman
- [The faster you unlearn Object-Orientated Programming the better for you](https://dpc.pw/the-faster-you-unlearn-oop-the-better-for-you-and-your-software)
- [The Power to Create Chaos](https://hal.archives-ouvertes.fr/hal-02071770/document) by Konrad Hinsen
- [The problem with programming and how to fix it](https://alarmingdevelopment.org/?p=1173) by Jonathan Edwards
- [Compression, Complexity and Software System Design](https://theartofmachinery.com/2017/06/25/compression_complexity_and_software.html) by Simon Arneaud

### Future of Programming

- [Future of Software](https://pchiusano.github.io/2013-05-22/future-of-software.html) By Paul Chiusano
- [Constraint Logic Propagation Conflict Spreadsheets](https://www.youtube.com/watch?v=voG5-15aDu4) By William Taysom
- [Future of Programming](https://www.youtube.com/watch?v=8pTEmbeENF4) by Bret Victor
- [B-thread programming](https://medium.com/@lmatteis/b-threads-programming-in-a-way-that-allows-for-easier-changes-5d95b9fb6928) by Luca Metteis

### What's wrong with notebooks?

- [I don't like notebooks [video]](https://www.youtube.com/watch?v=7jiPeIFXb6U) [slides](https://docs.google.com/presentation/d/1n2RlMdmv1p25Xy5thJUhkKGvjtV-dkAIsUXP-AL4ffI/preview#slide=id.g362da58057_0_664) by Joel Grus
- [The First Notebook Wars](https://yihui.name/en/2018/09/notebook-war/) by Yihui Xie

### What's wrong with Infra?

- [I see what you mean](https://www.youtube.com/watch?v=R2Aa4PivG0g) by Peter Alvaro
- [Serverless: slower and more expensive](http://einaregilsson.com/serverless-15-percent-slower-and-eight-times-more-expensive/)

## History

- [Xerox Star User Interface [video] Part 1](https://www.youtube.com/watch?v=Cn4vC80Pv6Q) [Part 2](https://www.youtube.com/watch?v=ODZBL80JPqw)

### Languages

- Datalog
- [pyDatalog](https://sites.google.com/site/pydatalog/home) - (Python) Datalog implementation in Python
- [Soufflé](https://souffle-lang.github.io/) - (C) Logic programming for Static analysis
- [nlDatalog](https://github.com/harc/nl-datalog) - HARC implementation of Datalog
- [Eve](https://witheve.com) - Rethinking programming
- [0.2 Reference](http://docs-next.witheve.com/v0.2/)
- [0.3 Reference](http://docs-next.witheve.com/v0.3/)
- [Eve Series Part I: How Eve unifies your entire programming stack](https://hackernoon.com/how-eve-unifies-your-entire-programming-stack-900ca80c58a7)
- [Eve Series Part II: When Logic Programming Meets CQRS](https://hackernoon.com/when-logic-programming-meets-cqrs-1137ab2a5f86)
- [Eve Series Part III: Throwing off our scope chains](https://hackernoon.com/throwing-off-our-scope-chains-7567beb2d0b6)
- [Eve Series Part Iv: Smalltalk and protein programming](https://hackernoon.com/smalltalk-and-protein-programming-4da245ac93e2)
- [Eve Series Part V: The rock-solid foundation for Eve's big vision](https://hackernoon.com/the-rock-solid-foundation-for-eves-big-vision-225b80b91e11)
- [Eve Series Part VI: Why Eve will be perfect for real-time apps](https://hackernoon.com/why-eve-will-be-perfect-for-realtime-apps-92b965b80ad)
- [After Eve](http://scattered-thoughts.net/blog/2016/01/17/after-eve/) - Jamie Branson
- [Eve Concerns](https://news.ycombinator.com/item?id=10995235#10996541) -
- [Precept](https://github.com/CoNarrative/precept) - A declarative programming framework
- [Ceu Lang](http://ceu-lang.org/) - Structured Synchronous Reactive Programming
- [Dyna](http://www.cs.jhu.edu/%7Enwf/datalog20-paper.pdf) - extending Datalog for modern AI
- [Imp: sets and funs](https://scattered-thoughts.net/writing/imp-sets-and-funs/) - an emacs-y live self-modifying environment for working with structured data across multiple devices
- [denotional semantics](https://scattered-thoughts.net/writing/imp-denotational-semantics/)
- [Alloy](https://github.com/AlloyTools/org.alloytools.alloy) - Formal methods for verifying code execution
- [TreeNotation](https://treenotation.org/) - A notation for writing code with two dimensions
- [FAQ](http://faq.treenotation.org/)
- [TreeBase](https://jtree.treenotation.org/treeBase/)
- [Bel](http://paulgraham.com/bel.html) - Lisp variant going hard on formalism
- [Guide](https://sep.yimg.com/ty/cdn/paulgraham/bellanguage.txt?t=1570888282&)
- [Source](https://sep.yimg.com/ty/cdn/paulgraham/bel.bel?t=1570888282&)
- [LogLisp](https://pdfs.semanticscholar.org/13d4/0039004d397ade1b6151945eab371b98ec7c.pdf) - Attempt to merge functional (lisp) with relational (prolog)
- [Userland](https://hisham.hm/userland/) - Spreadsheet-like Terminal
- Bloom
- [Bud](https://github.com/bloom-lang/bud) - Bloom prototype in Ruby
- [Dex](https://github.com/google-research/dex-lang) - Research language for array processing in the Haskell/ML family

## Applications

- [MakerPad](https://www.makerpad.co/)
- [Notion](https://www.notion.so/) - All in one workspace to write, plan, collaborate, and get organized.
- [MintData](https://mintdata.com)
- [Hyperfiddle](http://www.hyperfiddle.net/:quick-start)
- [CRUD UI definition](https://gist.github.com/dustingetz/654e502340070280ab9744723a8ae250)

### Notebooks

- [Jupyter](https://jupyter.org/)
- [Observable](https://observablehq.com/)
- [Streamlit](https://streamlit.io/)
- [Grid Studio](https://github.com/ricklamers/gridstudio)
- [Announcement](https://hackernoon.com/introducing-grid-studio-a-spreadsheet-app-with-python-to-make-data-science-easier-tdup38f7)
- [Hyperfiddle](http://www.hyperfiddle.net/:quick-start)
- [Polynote](https://polynote.org/) - Notebook to leverage Scala
- [Annoucement](https://medium.com/netflix-techblog/open-sourcing-polynote-an-ide-inspired-polyglot-notebook-7f929d3f447)
- [Swish](https://swish.swi-prolog.org/) - Notebook for Prolog

### SpreadSheets

- [Excel](#section) - Microsoft's Popular Spreadsheet
- [Mesh Spreadsheet](http://mesh-spreadsheet.com/)

## Projects

- [Dynamicland](https://dynamicland.org/) - The building is the computer
- [Hivemind](https://gitlab.com/cmontella/hivemind) - By Corey Montella, taking some of the lessons he learned from Eve
- [SIEUFERD: A Visual Query System](https://www.youtube.com/watch?v=W6xmqcb8hFQ)
- Beaker and Dat
- [How Dat Works](https://datprotocol.github.io/how-dat-works/)
- Apparatus
- [Apparatus: A Hybrid Graphics Editor](https://www.youtube.com/watch?v=i3Xack9ufYk) by Toby Schachman
- Project Mentat [deprecated]
- [Introducing Project Mentat, a flexible embedded knowledge store](https://medium.com/project-tofino/introducing-datomish-a-flexible-embedded-knowledge-store-1d7976bff344)
- [Mentat Github](https://github.com/mozilla/mentat)
- [HN Discussion](https://news.ycombinator.com/item?id=13568559)
- [Aquameta](https://github.com/aquametalabs/aquameta) - Entire web stack implemented in Postgres
- **Need to do Curate** Of the projects circulating around this community I see
\- Kayia/Kaya [@David Broderick](https://futureofcoding.slack.com/team/UJCHWTMH6) [@David](https://futureofcoding.slack.com/team/U8A87T2NQ)
\- Hilltop [@Dan Swirsky](https://futureofcoding.slack.com/team/UEP7RL0HX)
\- Infusion [@Bosmon](https://futureofcoding.slack.com/team/UEH6T3RJB)
\- Maraca [@jon](https://futureofcoding.slack.com/team/UJDQKSSJ0)
\- Mech [@Corey](https://futureofcoding.slack.com/team/UCGR73CAY)
That may be similar to Eve and Onex in this regard. Perhaps the authors could

## Technologies

- Timely Dataflow
- [Timely Dataflow Tutorial](https://timelydataflow.github.io/timely-dataflow/)
- Differential Dataflow
- [Differential Dataflow Tutorial](https://timelydataflow.github.io/differential-dataflow/)
- [Six graph algorithms in differential dataflow](https://www.youtube.com/watch?time_continue=1&v=iW1GNY_S6xc)
- [Frank McSherry's Blog](https://github.com/frankmcsherry/blog)
- [Differential Datalog](https://github.com/vmware/differential-datalog) by Vmware
- [Datafrog](https://github.com/frankmcsherry/datafrog) by Frank McSherry

## People

- [Michael Nielsen](http://michaelnielsen.org)
- [Andy Matuschak](https://andymatuschak.org/)

## Reading lists

- [Functional, Reactive, and Distributed Systems Bibliography](https://gist.github.com/brendanzab/a6073e73f751a6ca9750f960a92f2afe)
- [Computer Utopias](http://chrisnovello.com/teaching/risd/computer-utopias/) by Chris Novello at RISD
- [Readings in Distributed Systems](http://christophermeiklejohn.com/distributed/systems/2013/07/12/readings-in-distributed-systems.html) by Christopher Meiklejohn
- [Spreadsheet of list of current projects](https://github.com/markdewing/next_steps_in_programming/blob/master/programming_by_transformations.md) <- Triage

## Contribute

Contributions welcome! Read the [contribution guidelines](contributing.md) first.

## License

[![CC0](https://mirrors.creativecommons.org/presskit/buttons/88x31/svg/cc-zero.svg)](https://creativecommons.org/publicdomain/zero/1.0)

To the extent possible under law, Wil Chung has waived all copyright and
related or neighboring rights to this work.