







Programming languages shape the way their users think—which helps explain how tech startups work and why they are able to reinvent themselves.
Building personal tools by programming

The Mindful Design Toolkit – Mindful Design Toolkit
Get deep into the weeds with the Mindful Design Toolkit; an open source collection of workshops, templates, design files and documents.

Tinkered Thinking
Daily, snackable writings to spur changes in thinking.Building a blueprint for a better brain by tinkering with the code.
Its Time for a New Programming Language
Today, when compared to any other point in programming history, we find ourselves spoiled for choice when it comes to programming…

Tools for better thinking
Collection of thinking tools and frameworks to help you solve problems, make decisions and understand systems.
Andrej Karpathy: Software Is Changing (Again)
Andrej Karpathy: Software Is Changing (Again)
Where Did Software Go Wrong? | Jesse Li
Software is broken, but it's not because of NPM, startups, AI, or venture capitalists. A deep dive into how we think about and produce code, and how our software systems reflect the manic state of the modern world.

Identifying Barriers to Adoption for Rust through Online Discourse (PLATEAU 2018) - SPLASH 2018
For PLATEAU 2019, see the workshop webpage at http://plateau-workshop.org/. Programming languages exist to enable programmers to develop software effectively. But programmer efficiency depends on the usability of the languages and tools with which they develop software. The aim of this workshop is to discuss methods, metrics and techniques for evaluating the usability of languages and language tools. The supposed benefits of such languages and tools cover a large space, including making programs easier to read, write, and maintain; allowing programmers to write more flexible and powerful ...

The Next 7000 Programming Languages
Landin’s seminal paper “The next 700 programming languages” considered programming languages prior to 1966 and speculated on the next 700. Half-a-century on, we cast programming languages in a Darwinian ‘tree of life’ and explore languages, their features (genes) and language evolution from the viewpoint of ‘survival of the fittest’.

Forgotten Programming Ideas That Could Change Everything #shorts
Motivating Adult Learners by Introducing Programming Concepts with Scratch
Novice programmers usually fail to combine abstract concepts and knowledge into program design, even though they know the syntax and semantics of individual statement. Adult novice programmers with little computer background knowledge might face more ...

Mark Bernstein: NeoVictorian Computing
This page holds a variety of notes about the craft of software design by Tinderbox designer Mark Bernstein, originally written for a plenary lecture at OOPSLA. We are accustomed to viewing software as a means to an end, a mass-produced industrial tool that ought to be beneath our notice. We are told that software ought to be intuitive, invisible, and free. This is wrong.
Early Tools for Thought, Mark Bernstein @ Tools For Thought Rocks
A small matter of programming: perspectives on end user computing
A Small Matter of Programming asks why it has been so d…

Convivial design heuristics for software systems
The theme of this workshop is the proliferation of ideas about calling into question the cultural roots of our current programming languages, and the search for alternative paradigms with other cultural bases.