Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/ms-jpq/vim.conf


https://github.com/ms-jpq/vim.conf

Last synced: about 1 month ago
JSON representation

Awesome Lists containing this project

README

        

# Synopsis

The challenges of extending a program with decades of legacy and huge ecosystem around said legacy.

The main theme is as follows:

- Ossification of ecosystem around program

- Ossification of user habits

- Preventing future ossification

- Retaining extensibility & interoperability

- Bad traditions

### Prexisting Ecosystem

Instead of being seen as a burden, view ossification of code as unoffical API.

Like a compiler, transform & pre-validate thirdparty code through into static bundles of JSON.

Result: Zero runtime cost & Zero runtime error from thirdparty sources.

### User Habits

Users want a faster horse, but a faster horse is not worth the pain of breaking changes.

Need significant & obvious value proposition.

### Perpetual Greenfield

Move fast without breaking things.

Zero implementation exposure. Implementation exposure leads to stagnation.

Putting users (UX) before developers (API).

### Interoperability

Communicate via existing Protocols (intentional or accidental), not implementations.

Protocols succeed when ossified, implementations fail.

Nvim & ecosystem is the platform, not your app.

Total inversion of control, impossible for thirdparty to import own code. Therefore prevention of being tied down

### Break these traditions

UNIX (worse is better) design push burden from system designer onto users.

This is OK for software, but wetware is many times slower.

Design must recognize human are slow, forgetful, and error prone.

## Misc

Other cool things that I want to talk more on, but cannot fit into 15 minutes.

- Data driven text processing.

- Task Scheduling