Some ideas I thought of that I enjoyed thinking about and writing down.
Reading code that uses awful names is painful. We could improve the code we write by collecting peer contributed and voted names.
A web based framework codebase that everyone shares the same codebase for. Allows optimisations by people to benefit everyone simultaneously.
Applications advertise that they can be searched. When you activate the system wide search, a subquery is made for each application. So on Android, a search for an application that is not installed will create a query onto the Play store amongst a web search with the browser.
A langauge with search built-in: any use of an undefined symbol causes a lookup request to a server that monitors library packages for exports. When a symbol is found, it is downloaded for the system for use as library code.
See importless lang for a proof of concept with Python
A deep lever into desktop applications that is powered by a web forum.
Billing for users of bandwidth from services like AWS. So open source projects could create high data transfer services.
Not all layers of a GUI need to re-drawn during a layout change. This idea is to visually map physical regions on the screen to code blocks. If there's no change to the code of these blocks, the divider doesn't need to be re-rendered.
Write HTML with a flat data structure to avoid nested editing.
See https://github.com/samsquire/flat-html
Place data in different boxes.
Flow control
literate programming story introduce test case all together
Things written as communication protocols are easier to program and reason about. Concurrency too (see go and occam pi) Turn the GUI into a communication problem.
Permutations and validity.