Github, Git, Diff, etc.

I consider "github" to be a whole gamut of technologies based on "diff".

"Github" is a production version of "diff".  

Automated DRY

Github could use "diff" in a bigger way.  Instead of diff'ing lines of code, it should diff layers of design.  (Which might be blocks of code).

Our PLs[1]  are just glorified text editors.

A lot of what we think about and build into PLs is DRY.[2]  

RY[3] is what we want, but we waste brain power on DRY.

Machines could detect DRY for us.  And refactor the code/design/etc. for us automagically.

Github could include technology to figure out DRY.

Git-based Editors

Our editors could figure out repeated lumps of text and make a golden copy for us.

The editor could show repeated lumps of source in gray and automagically update the golden copy when we edit the gray parts.

[1] PL means Programming Language

[2] DRY means Don’t Repeat Yourself

[3] RY means Repeat Yourself