Archive for September, 2013

Public copyright license readability metrics

Sunday, September 22nd, 2013

Promised boring topic blog post in form of README snapshot.

The README with tables removed has a Flesch Readability Ease score of 48.5, slightly worse than the average license text. I did not try to write intelligibly, though I should. The topic may have subconsciously restrained parenthetical discursiveness.


Automated readability metrics for public copyright licenses. Give style a list of plain license texts, generate HTML table containing metrics.

In Debian, style is available in the diction package.

License texts are referenced from the SPDX licenses list. Other license curiosities are included in licenses-other.

sh license-readability-html-table.sh licenses-spdx/*.txt licenses-other/*.txt

Background

Part of one of the goals of the Creative Commons (CC) licenses version 4.0 effort is to make the licenses "readily understood". One way to test that is with automated readability metrics, on which CC licenses version 3.0 score poorly (previous versions scored much better). I checked an early version 4.0 draft, and scored much better, more or less back to version 2.5 scores, quite an accomplishment given it is a more sophisticated license in many ways. I did not check again until the near-final 4th draft was published. Its score is not as good as early drafts, probably to be expected as details were settled, but still a big improvement over 3.0. I intended to blog the early 4.0 draft improvement at that time but didn’t get around to it.

In the meantime I’d peeked at the readability metrics for various free/open source software licenses, in part to see if copyleft-next scored better than comparable licenses (probably, though comparability is problematic). With the CC 4.0 licenses nearly final, I started a blog post about readability of various licenses, and ended up with this README and associated files.

See Caveats and Output below for readability metrics for about 228 licenses. There probably will not be any big surprises awaiting anyone familiar with the usual relatively popular licenses. A small selection of licenses not in the SPDX licenses list (including CC 4.0 drafts and copyleft-next versions) are at the end.

Next

Drafters understandably try hardest to "get the legal details right". But if "licenses are the constitutions of software communities"12, even a little bit (I think a casual reading of that quote makes licenses far more central than they are, or implies impoverished communities, but will take its repetition as an indicator of licenses’ social importance), perhaps yet more effort ought be put into making licenses more understandable.

  • There is probably a large literature on readability and understandability of contracts, legislation, regulation, and other legal texts, which ought be digested for lessons for the public copyright licensing community. Apparently many jurisdictions have "plain language" requirements for contracts. Some U.S. states require insurance forms to have a minimum Flesch Reading Ease score. Is this an indicator that readability metrics are useless, or should free/libre/open/software/knowledge communities be embarrassed that they have failed to self-regulate to this level?
  • Cloze testing and subjective evaluation (both requiring humans) and natural language processing/machine learning based metrics are suggested by a readability tools site in addition to simple automated readability metrics. The site, by Michael Curtotti, is presumably discussed in his forthcoming paper The Right to Access Implies a Right to Know: An Open Online Research Platform for Assessing the Readability of Law. Could some of these tools be useful for evaluating licenses? Barriers would include lack of interest needed to pay for human testing, and a relatively small corpus of license texts. Hopefully the source code for this platform will be made available.
  • Attempts to increase readability and understandability outside of changing the words in a license text could be evaluated, including summaries, FAQs, choosers, and typography and other design elements around web publication of the license text itself.
  • There are many additional obscure licenses intended for "content", "data", "government", and "hardware designs" not included in the SPDX license list that could be analyzed.
  • Non-English license texts could be analyzed with language-appropriate metrics. In addition to the few CECILL licenses included in the SPDX licenses list, targets could include the many official language versions of EUPL versions, unofficial translations of GPL versions, License Art Libre, various public sector-focused licenses, and hundreds of CC license "jurisdiction ports".
  • To what extent is understanding of licenses social, gained via hearsay, not based on reading license texts at all? If social learning currently predominates, does this indicate that license readability and understandability are unimportant? Or that their lack constitutes an obscurantist barrier to participation by people not socially connected to existing communities, and increase other risks, such as non-compliance through ignorance, and being ignored by policymakers?
  • Would it be valuable to use readability metrics to test other texts important to free/libre/open communities, e.g., documentation, codes of conduct, contributor agreements?

Caveats

General, with respect to the metrics:

  • Metric explanations are available in the style man page. All are problematic.
  • Lower numbers indicate better readability for all metrics except Flesch.
  • None of the metrics incorporate text length, so correlations with character count ought indicate that longer texts tend to use more or less readable language. But 3 of the metrics positively correlate readability with longer texts, and 4 negatively, which might indicate no overall correlation (taking the numbers at face value, with no further validation).
  • Not sure why Coleman-Liau’s correlations with other metrics are much weaker than among others; at a glance the formula is measuring the same types of things.
  • Arbitrarily choosing to focus on Flesch, as it seems widely used, and its more is better makes for an easier combination with text length, "Chars/(Flesch>=1)", to indicate how painful reading an entire license might be.
  • Flesch can be negative, so a minimum value of 1 is used for the pain calculation. This is arbitrary too.

The following tables are calculated in scratch.ods.

Readability metric correlations: nothing really surprising, no gross errors?
Kincaid ARI Coleman-Liau Fog Lix SMOG Flesch Chars/(Flesch>=1)
Characters 0.12 -0.10 -0.27 0.13 -0.15 0.25 -0.25 0.96
Kincaid 0.89 0.04 0.99 0.81 0.90 -0.91 0.32
ARI 0.30 0.89 0.97 0.70 -0.67 0.10
Coleman-Liau 0.07 0.41 0.11 -0.09 -0.20
Fog 0.82 0.93 -0.90 0.33
Lix 0.63 -0.59 0.04
SMOG -0.95 0.43
Flesch -0.43
Aggregate metrics: compare your favorite license to the masses and outliers.
Characters Kincaid ARI Coleman-Liau Fog Lix SMOG Flesch Chars/(Flesch>=1)
average 8318.7 12.8 16.0 14.5 16.1 59.1 13.4 50.7 177
median 7321.5 12.6 15.4 14.4 15.9 57.9 13.2 50.4 160
stdev 6864.8 2.9 3.5 1.4 3.1 7.4 1.8 11.1 152
min 209 4.5 8.2 10.3 7.0 42.5 7.6 -25.8 2
max 36285 37.0 45.7 18.0 40.3 116.8 24.9 83.3 806

With respect to particular licenses:

  • The CECILL licenses, except 1.1, are in French. These readability metrics may not be tuned for French, though the results do not look weird.
  • The CC by-nc-sa-4.0-drafts are drafts. Every other license analyzed is "released".
  • GPL-[version]-with-[exception name]-exception are not complete licenses, should be appended to the relevant GPL-[version]. However, standalone (as provided by the SPDX licenses list) provides an idea of how readable each exception is.
  • LGPL-3.0[+] incorporates GPL-3.0 by reference, so it is not directly comparable to GPL-with-exceptions above, nor with other licenses.
  • Some licenses (most notably [A]GPL and FDL) have a preamble or addendum which explain the license’s purpose and how to use the license. This makes such a license longer, but arguably increases understandability in a way not captured by an automated readability metric.
  • The only license with a negative Flesch score is the Historic Permission Notice and Disclaimer (HPND), which is deprecated. It deserves the score, basically being a template with many optional and fill-in parts.
  • The longest and also most "painful" to read license, the Adaptive Public License (APL), is also basically a template with options and fill-in parts.
  • The shortest and also least "painful" to read license, the Fair License might require too much imagination about what "usage" means to actually be easily understandable.

Output

SHA1 License Characters Kincaid ARI Coleman-Liau Fog Lix SMOG Flesch Chars/(Flesch>=1)
f53aa44a98a67f79d79bb061a39ac0694c017d88 AAL 2347 14.7 20.8 16.1 17.9 69.6 13.7 49.4 47
b26853ef3e258172c7bc9e7a69e9582d651c0269 AFL-1.1 3827 11.1 15.9 15.3 15.1 59.6 12.8 59.7 64
54f83bc9e70424af32e5a133c47e76698086369c AFL-1.2 4059 13.7 15.8 15.2 18.3 58.8 15.4 41.1 98
735e1f8b4613292d7d80e51e5a586e34ac852a74 AFL-2.0 7105 12.8 14.4 14.7 17.0 56.5 14.6 44.1 161
fedb7d79211a6e58a65b46985f47fa834b00ee6f AFL-2.1 7103 12.8 14.4 14.8 17.0 56.4 14.6 44.0 161
5b400f7a1518b5e43a913085fa338e3df1e9e241 AFL-3.0 8314 13.8 15.6 14.4 17.8 58.2 15.0 42.2 197
ecf6b4a3803b9706a0c38d30b0d07b0c624001ed AGPL-1.0 12578 19.0 23.4 12.5 21.9 71.9 14.8 38.0 331
c34c24e89e6c26506a4aa9535425afe6af4ab700 AGPL-3.0 27208 14.4 16.8 13.4 17.5 59.1 14.2 44.8 607
2b6ca3805481833fddead9c45f92fe4c81d4017d Aladdin 9270 13.6 16.9 13.2 17.0 60.1 13.5 51.6 179
295765ae399d1a9ced2bc4e1fb096e83e529cbfa ANTLR-PD 792 10.3 11.4 12.3 13.8 43.6 12.3 58.4 13
acc3577130a1e528970142d1e5180f554b7fdad9 Apache-1.0 2021 10.7 15.8 16.2 13.9 55.5 12.0 60.0 33
81d8a4169126e0af11b4d51449b6c420880c6d40 Apache-1.1 2017 11.0 16.5 17.9 14.0 60.0 12.3 55.7 36
8ffe2c5c25b85e52f42fcde68c2cf6a88b7abd69 Apache-2.0 8310 16.8 19.8 15.1 20.7 64.6 16.6 33.6 247
4f97e77af1aac9f8ef6500cd2a08915741c37f2c APL-1.0 36285 14.2 17.7 14.8 18.1 62.4 14.9 45.0 806
158031d76c5611507e81870b0a649461eb74be7f APSL-1.0 15302 12.5 15.2 13.7 15.7 55.9 13.1 51.9 294
e444feb210ce2096e565fb0613f98d04f2d97f91 APSL-1.1 15735 13.1 16.0 13.8 16.2 57.1 13.4 50.2 313
a19d874fcde9c037e40cd41916697ac5aac2e220 APSL-1.2 15603 13.1 16.1 13.9 16.2 57.6 13.4 50.0 312
b64068ced2da810cdadd07ac9053c192271e0a56 APSL-2.0 15945 12.4 15.4 14.0 15.4 56.0 12.8 52.2 305
c11ec559ebca765ba8f8d16634e288cdc75dff81 Artistic-1.0-cl8 3689 11.7 13.8 13.9 14.0 55.0 12.1 51.8 71
bcd8b4d1a1af706aaa1337811786a9dc6673c822 Artistic-1.0-Perl 4308 12.6 14.8 13.6 15.0 57.1 12.6 49.9 86
17c9069548d063de8fefb58b995be99c1d08bd45 Artistic-1.0 3421 11.6 13.7 14.0 13.8 54.8 12.0 52.2 65
8e42910d467b06d6af9a008678122dc61a245fcc Artistic-2.0 6949 13.1 16.1 14.5 15.4 60.7 12.8 48.3 143
d82c8eb2abc453fbd4a56aca46b22fe9fdad780d BitTorrent-1.0 19085 20.9 25.7 14.2 24.3 79.0 17.2 27.7 688
d183df8131a7114052fc3c3de647dca5fbdcb79a BitTorrent-1.1 22188 12.3 14.4 14.3 15.5 56.9 13.3 48.9 453
f45386af24b0d36976c96eac8baf5d205bed1570 BSD-2-Clause-FreeBSD 1240 11.5 18.5 16.5 15.2 66.3 12.1 62.9 19
a61e0646333b20301525695918aae3656344f611 BSD-2-Clause-NetBSD 1137 10.2 17.3 16.4 14.1 61.6 11.4 68.2 16
0fa6c43e2345f4768176f63ad24e469b832a40ac BSD-2-Clause 1046 12.3 20.3 16.5 16.1 68.0 11.9 63.8 16
cab0ab541f4f5f1ecf493b9259617df33dcbfa3d BSD-3-Clause-Clear 1372 11.5 18.1 15.9 14.9 64.8 11.8 63.3 21
54f1eeb17a7341ea0a0261a59bc5170b23137eb9 BSD-3-Clause 1200 12.5 20.0 16.3 16.0 68.2 12.0 61.5 19
f579ecea35ef059d706b32108097a960990b777d BSD-4-Clause 1325 11.9 18.0 17.0 15.5 65.1 12.8 57.0 23
837b0df8f4d995591d45c939cf567d6db8ba03d8 BSD-4-Clause-UC 1448 11.9 17.9 17.3 15.9 65.3 13.4 55.7 25
388fa291da4bd074a17d7b33334696eb71bf5ff8 BSL-1.0 1084 21.8 29.1 14.5 25.3 87.3 15.8 33.0 32
0302aaced8d1dbe1916fa0281c6a717069fda16f CATOSL-1.1 15220 15.6 18.9 15.3 19.3 65.0 15.7 38.1 399
74286ae0dfea38c489437bf659b209737945145c CC0-1.0 5116 16.2 19.5 15.0 19.5 66.3 15.6 36.8 139
c766cc6d5e63277e46a3d83c6254e3528082587b CC-BY-1.0 8867 12.6 15.5 14.1 16.4 57.8 13.8 51.3 172
bf23729bec8ffd0de4d319fb33395c595c5c762b CC-BY-2.0 9781 12.1 14.9 14.3 16.1 56.7 13.7 51.9 188
024bb6d37d0a17624cf532bd14fbd42e15c5a963 CC-BY-2.5 9867 11.9 14.7 14.2 15.8 56.3 13.6 52.6 187
20dc61b94cfe1f4ba5814b340095b4c3fa23e801 CC-BY-3.0 14956 16.1 19.4 14.1 20.4 66.1 16.2 40.0 373
e0c4b13ec5f9b5702d2e8b88d98b803e07d65cf8 CC-BY-NC-1.0 9313 13.2 16.2 14.3 17.0 59.3 14.1 49.3 188
970421995789d2e8189bb12071ab838a3fcf2a1a CC-BY-NC-2.0 10635 13.1 16.1 14.6 17.2 59.5 14.4 48.1 221
08773bb9bc13959c6f00fd49fcc081d69bda2744 CC-BY-NC-2.5 10721 12.9 15.8 14.5 16.9 59.0 14.2 48.9 219
9639556280637272ace081949f2a95f9153c0461 CC-BY-NC-3.0 15732 16.5 19.9 14.1 20.8 67.2 16.4 38.7 406
9ab2a3818e6ccefbc6ffdd48df7ecaec25e32e41 CC-BY-NC-ND-1.0 8729 12.7 15.8 14.4 16.4 58.6 13.8 51.0 171
966c97357e3b529e9c8bb8166fbb871c5bc31211 CC-BY-NC-ND-2.0 10074 13.0 16.1 14.7 17.0 59.7 14.3 48.8 206
c659a0e3a5ee8eba94aec903abdef85af353f11f CC-BY-NC-ND-2.5 10176 12.8 15.9 14.6 16.8 59.2 14.2 49.3 206
ad4d3e6d1fb6f89bbd28a44e263a89430b575dfa CC-BY-NC-ND-3.0 14356 16.3 19.7 14.1 20.5 66.8 16.2 39.7 361
39b2ef67be9e5b4e743e5269a31ad1691515eede CC-BY-NC-SA-1.0 10228 13.3 16.3 14.2 17.0 59.7 14.2 48.4 211
5800ac2d32e35ace035cdcae693423cd9ff5bb6f CC-BY-NC-SA-2.0 11927 13.3 16.2 14.7 17.1 60.0 14.4 47.0 253
e5f44c2df6b1391d1ddb6efb2db6f90670e4ae67 CC-BY-NC-SA-2.5 12013 13.1 16.0 14.6 16.9 59.6 14.2 47.7 251
a63b7e81e7b9e30df5d253aed1d2991af47992df CC-BY-NC-SA-3.0 17134 16.4 19.7 14.2 20.6 67.0 16.3 38.8 441
e4851120f7e75e55b82a2c007ed98ffc962f5fa9 CC-BY-ND-1.0 8280 12.3 15.5 14.3 16.1 57.9 13.6 52.4 158
f1aa9011714f0f91005b4c9eb839bdb2b4760bad CC-BY-ND-2.0 9228 11.9 14.9 14.5 15.8 56.9 13.5 52.7 175
5f665a8d7ac1b8fbf6b9af6fa5d53cecb05a1bd3 CC-BY-ND-2.5 9330 11.8 14.7 14.4 15.6 56.5 13.4 53.2 175
3fb39a1e46419e83c99e4c9b6731268cbd1591cd CC-BY-ND-3.0 13591 15.8 19.2 14.1 20.0 65.6 15.9 41.2 329
dda55573a1a3a80d294b1bb9e1eeb3a6c722968c CC-BY-SA-1.0 9779 13.1 16.1 14.2 16.8 59.1 14.0 49.5 197
9cceb80d865e52462983a441904ef037cf3a4576 CC-BY-SA-2.0 11044 12.5 15.3 14.4 16.2 57.9 13.8 50.2 220
662ca9fce7fed61439fcbc27ca0d6db0885718d9 CC-BY-SA-2.5 11130 12.3 15.0 14.4 16.0 57.5 13.6 50.9 218
4a5bb64814336fb26a9e5d36f22896ce4d66f5e0 CC-BY-SA-3.0 17013 16.4 19.8 14.1 20.5 67.2 16.2 38.9 437
238de92eb09c2e33e4e5fb438fe578fe5179276b CDDL-1.0 12605 11.6 13.9 14.9 14.7 55.1 12.9 50.4 250
8c7adc36e1b6f20e0cfa5fc40cefe6a427fb2cb6 CDDL-1.1 13407 12.0 14.4 15.0 15.1 56.0 13.2 49.5 270
46ebe8c487ec3e321842ed1325d98d757f965e14 CECILL-1.0 14796 11.9 12.3 11.1 15.5 51.1 13.3 53.4 277
052845a59dca83a104558addc1fdfb2cff82d328 CECILL-1.1 15874 12.0 14.1 14.3 15.4 54.3 13.4 49.9 318
c8ddd94454934cb1869ef96bddc93ff44039c591 CECILL-2.0 15163 13.2 14.0 11.1 17.0 55.0 14.1 49.9 303
04e73e027c1f47dbf743cb013480bbc974e3a8c3 CECILL-B 15337 13.4 14.2 11.3 17.1 55.5 14.2 49.2 311
1308e5090e66dcba2e594950dc4a8021551fa540 CECILL-C 15646 13.9 14.7 11.0 17.7 56.2 14.5 48.0 325
10ae2b5540f376c8cac9ccedc38ddc3435207efa ClArtistic 4511 12.5 14.8 14.0 14.8 57.3 12.6 49.6 90
cebccd48cf2bad04b29e863c564d8fd1c1f5ee15 CNRI-Python-GPL-Compatible 3172 13.0 17.8 15.6 16.2 62.1 13.1 52.7 60
18756dcb45d9598b5281368a7d35cd5e9a88306b CNRI-Python 2699 12.0 16.4 14.0 15.1 59.0 12.1 59.0 45
4bb47f04bcd1c7afb44ceb13c3bd2f62b9e0af6e Condor-1.1 4855 12.3 16.1 16.0 14.8 59.8 12.6 50.5 96
a4ece6afe1e4e92ba5985bba6f1ce76d2ee24dbb CPAL-1.0 22039 12.7 14.7 14.4 16.2 56.2 13.9 47.0 468
433089094810035bd296b27931ff68464676ed5b CPL-1.0 9273 14.8 18.1 16.6 18.3 63.6 15.3 37.7 245
251beebfa122c0c58abf32bb8224e1b9ebb6db59 CPOL-1.02 9216 10.7 13.1 13.1 14.0 49.9 12.1 59.5 154
a529e9bff1eb4f976a9bf1eb3ef8054e52967a91 CUA-OPL-1.0 18086 12.1 14.3 14.3 15.3 55.0 13.3 49.6 364
0a5785a9fe34a8f779ee79f8333ee766d5c0676e D-FSL-1.0 12123 11.4 14.0 17.2 13.9 49.2 12.5 45.1 268
04ed6736b16995b2bbd3fd7b4fb1cb6efa44b6a6 ECL-1.0 1949 15.2 18.9 15.6 19.4 67.7 15.8 40.2 48
2a3706dec618b5198ba177691bbf30d97becc7a8 ECL-2.0 8955 17.0 20.0 15.2 20.9 65.4 16.8 32.5 275
8d7c74721fac21d583f9bffafb5747ad6994f695 eCos-2.0 1148 11.0 12.7 11.2 14.0 49.4 11.7 60.7 18
7b8021b0d18d9fd4f5ac7bac3a5584c9fb4d5966 EFL-1.0 521 6.6 13.1 14.9 9.6 58.0 7.9 83.3 6
530270003ac19b54a548e13b08108c1abf166a09 EFL-2.0 630 6.3 11.5 14.4 8.7 56.6 7.6 81.0 7
a3ce248131ee7e9eca19460ddd1c7858350aed9e Entessa 1827 9.8 15.1 17.0 12.8 59.5 11.4 61.2 29
11fadbd49466127930da08f01fea6c803dc8c462 EPL-1.0 9028 14.6 17.9 16.6 18.1 63.4 15.2 38.5 234
5a46ff9626e703387228d6de1d695ce9d8d47931 ErlPL-1.1 11028 11.9 14.1 14.2 15.2 54.6 13.1 50.5 218
9098acfa2c2b7780da7d3644faa81df5a44a0536 EUDatagrid 2605 14.0 19.8 18.0 17.6 69.3 14.5 45.0 57
4654cbafc6474f59de1234a11eb6462a02aaffe6 EUPL-1.0 9821 12.6 13.8 13.5 16.4 54.1 14.1 46.5 211
2aeeba8e44c78afd0b9064a43a277158cb018227 EUPL-1.1 10047 12.6 13.8 13.7 16.4 54.3 14.1 46.3 216
5c18b40cb5bbd57b858a2e2827fc89d66e202894 Fair 209 4.5 8.2 15.0 7.0 42.5 7.7 80.4 2
bded6d45d800403709fa630a58c0f1d68e3365e7 Frameworx-1.0 7536 17.4 22.0 16.3 21.5 72.4 17.0 33.4 225
f3a7b9a82d2cecb0edcf57d7d8aa0e37f6fcde66 FTL 4580 10.2 12.4 13.8 13.2 53.1 11.8 57.9 79
579a1d52e08b7a09429df7f7651dd3ef747727c7 GFDL-1.1 14318 12.5 14.4 13.5 15.4 56.1 13.1 49.9 286
eb670eaf7269bf3cb8990a52b05618e5dbd963b6 GFDL-1.2 16124 12.3 14.2 13.6 15.4 55.7 13.2 50.1 321
394dbacde4c26a5f58c9823e25ef6e937eba75a3 GFDL-1.3 18147 12.6 14.6 13.5 15.8 56.1 13.4 49.3 368
21d887b87b4297c5b6eea0c300b77ee8b3f8337d GPL-1.0 9288 12.2 14.9 12.2 15.1 54.6 12.1 57.4 161
21d887b87b4297c5b6eea0c300b77ee8b3f8337d GPL-1.0+ 9288 12.2 14.9 12.2 15.1 54.6 12.1 57.4 161
0473f7b5cf37740d7170f29232a0bd088d0b16f0 GPL-2.0 13664 13.3 16.2 12.5 16.2 57.0 12.7 52.9 258
80c08b24ac7e98376c0c387a1890a283e9c5ffe0 GPL-2.0+ 13664 13.3 16.2 12.5 16.2 57.0 12.7 52.9 258
3a9262b9d066ce5d41feb871b1f786336a20628b GPL-2.0-with-autoconf-exception 1313 12.0 13.8 12.9 14.7 53.5 12.5 52.8 24
86084a36e75fb92c36082dd61ac812495446f6d8 GPL-2.0-with-bison-exception 561 18.3 20.7 12.7 21.0 64.5 15.6 32.7 17
be15f8fcc097be4db1cfef6f469108b4364db84e GPL-2.0-with-classpath-exception 785 13.2 14.9 12.7 16.7 55.4 14.0 48.4 16
3cddc56f4cb24809cabd4af80ce3d3bda97152f8 GPL-2.0-with-font-exception 492 12.5 13.3 10.3 16.9 51.2 14.0 55.2 8
22ece69587f935f0bf61df00cec4b2c4f73163f7 GPL-2.0-with-GCC-exception 283 24.7 30.3 15.1 29.0 87.3 20.3 14.2 19
d4ec7d0b46077b89870c66cb829457041cd03e8d GPL-3.0 27588 13.7 16.0 13.3 16.8 57.5 13.8 47.2 584
d4ec7d0b46077b89870c66cb829457041cd03e8d GPL-3.0+ 27588 13.7 16.0 13.3 16.8 57.5 13.8 47.2 584
a0ac5d9bc70d97d2f2068f87779aa9fe35368dd8 GPL-3.0-with-autoconf-exception 1460 10.3 12.0 14.1 13.5 51.5 12.2 55.5 26
3d7d507c4df41892664f128b810daf0131e0b817 GPL-3.0-with-GCC-exception 2716 13.4 15.1 15.2 16.3 58.5 14.0 40.6 66
36f65f578919826062bffcca2557317294953ad3 gSOAP-1.3b 15881 10.6 14.1 14.3 13.8 55.2 11.9 59.5 266
5f20c1e3037bc2aba7780b6e69a0a10004811a5a HPND 458 37.0 45.7 17.5 40.3 116.8 24.9 -25.8 458
80de1c399f7117b9c56a196048df93b8c41d8e4f IBM-pibs 623 12.4 14.5 13.6 15.4 53.8 13.1 50.8 12
f854fffe51b32ca7b7dfa93662444aec6cb96f49 IJG 3294 9.0 10.3 13.2 12.1 46.1 11.2 61.1 53
375a8db2e5dafcdccfd8b45da15b7e74d9332353 Imlib2 1632 13.9 18.6 14.4 17.1 64.5 13.2 52.2 31
df867beac70889c3e7c68ae5ff5f377ed50118b7 Intel 1508 8.4 13.7 15.5 12.1 53.4 10.7 71.0 21
a9772a55cbe512cb612ecbb89cd65a6b19ee6bf8 IPA 7214 13.9 17.2 14.7 17.6 66.6 14.6 46.2 156
9a1ce5b388ac0523419987d4a75006e099850126 IPL-1.0 8989 13.5 16.4 16.7 17.1 60.6 14.7 40.6 221
18f98daf7abe3959a3a7a0642ec6106f55c4a54d ISC 663 8.9 15.6 14.2 11.9 59.8 8.5 77.6 8
95d1a9940f507660b5cd6afb4f91363d07c59933 JSON 894 13.9 20.0 13.6 17.2 68.8 11.8 59.0 15
1fec28a7b0a64d83a5922274069b90804012ca6f LGPL-2.0 19661 13.1 15.5 12.4 16.0 56.6 12.8 52.2 376
1fec28a7b0a64d83a5922274069b90804012ca6f LGPL-2.0+ 19661 13.1 15.5 12.4 16.0 56.6 12.8 52.2 376
46dee26f31cce329fa13eacb74f8ac5e52723380 LGPL-2.1 20570 13.2 15.6 12.5 15.9 56.8 12.7 51.8 397
46dee26f31cce329fa13eacb74f8ac5e52723380 LGPL-2.1+ 20570 13.2 15.6 12.5 15.9 56.8 12.7 51.8 397
c902338383ea4324b02c8fa7fc6054bf100b2c06 LGPL-3.0 5887 13.1 14.9 12.7 15.7 56.8 13.0 49.5 118
c902338383ea4324b02c8fa7fc6054bf100b2c06 LGPL-3.0+ 5887 13.1 14.9 12.7 15.7 56.8 13.0 49.5 118
07041306373f72b71a8d4ecf55f268d47ab70404 Libpng 2854 9.8 12.2 14.2 13.2 49.3 11.9 59.1 48
0659190facd4ce63eb62a5cfcb64c85685b9b879 LPL-1.02 9329 13.5 16.5 16.8 17.2 60.7 14.7 40.3 231
c49cfb2721bfaa5a3aec5108c56582ba981f120f LPL-1.0 9358 13.6 16.5 16.6 17.2 61.1 14.7 40.4 231
2063306474e511b6f156a1d6be84002c05e78833 LPPL-1.0 6647 12.8 14.1 13.4 15.5 53.7 13.2 46.3 143
a97c5a459de398311c98f4ac9226fa8f8302eccc LPPL-1.1 10684 14.4 16.1 13.4 17.6 59.0 14.5 42.2 253
3be04fe75fae2be93de36fe7dfd6c1b9dbd282c9 LPPL-1.2 10749 14.5 16.2 13.4 17.6 59.1 14.5 42.0 255
2c40ed15717ba7ffcf1f93fa2d6f31b5d930237f LPPL-1.3a 13966 13.2 15.2 12.9 16.6 55.0 13.8 49.4 282
6820ac06cce2932140b6f0f3e7e4579021d81623 LPPL-1.3c 14405 13.2 15.2 12.8 16.7 55.1 13.9 49.3 292
025f38a752cdd6f4ffd5847c8eb6af0265f62b9a MirOS 1680 16.3 18.5 11.1 19.2 62.9 14.1 44.0 38
d25ad2c65dde58aeacd9ad6ef9faff476bcbf19e MIT 866 16.8 23.8 14.2 20.1 77.8 12.9 50.2 17
47cd2bb52728ba7fe49c302ce2fcf9f07a69031c Motosoto 16170 12.9 15.4 14.4 16.0 58.8 13.5 48.0 336
ae49332ade14c453c46e44548bdb35e5a6457890 MPL-1.0 13965 11.2 13.5 14.0 14.4 53.6 12.6 54.4 256
90c670fbb524656b8196aa2065bf3bb1d3e8ced5 MPL-1.1 18213 13.0 15.4 14.4 16.2 57.3 13.8 46.9 388
78fe0ed5d283fd1df26be9b4afe8a82124624180 MPL-2.0-no-copyleft-exception 11766 14.7 16.9 14.5 17.9 60.5 14.9 40.1 293
78fe0ed5d283fd1df26be9b4afe8a82124624180 MPL-2.0 11766 14.7 16.9 14.5 17.9 60.5 14.9 40.1 293
d0f1fedc0533327331d9c9d9c2a9ef4326306212 MS-PL 2104 12.3 13.8 15.1 14.8 54.5 13.1 44.7 47
c510da2adf4c570a4401348a0051b41484b6e151 MS-RL 2415 12.3 14.0 14.6 14.8 53.9 12.9 46.8 51
4f02ff8d7e1f78728913bcadb7735afd5aadac0b Multics 1528 14.6 17.7 18.0 19.3 66.3 16.2 33.1 46
6c88b19d555e1a1828ccfc82627d53efafebe5fe NASA-1.3 11113 9.6 12.4 16.2 13.1 53.3 12.0 55.6 199
583435eee5df415ff8d2af1d5db5e47b1bb10a0c Naumen 1577 9.8 15.0 15.5 13.3 55.8 11.5 65.1 24
1910aad3d5cef18f02d842b379bf1a37bcd9316a NBPL-1.0 3879 11.6 13.7 14.0 13.9 54.9 12.1 52.2 74
fb6606a9d8eddaa82be2e51e534ee0e466755265 NCSA 1363 14.4 19.7 15.8 18.2 66.8 14.5 48.0 28
203f45fe393cee8c20a2c6354d815d8f1ce8965a NGPL 3666 10.7 12.7 12.4 13.4 50.2 11.5 59.7 61
bcfa1513b1b3fe4c06d832e4e1a98b694b936b9e Nokia 16605 12.5 15.3 14.8 15.7 57.7 13.4 49.0 338
8932181884589205d2a999827cb7da821a0cad53 NOSL 18392 12.1 14.2 14.2 15.3 55.1 13.2 49.9 368
31e0d4850f7e5bf3f5f48f3302f75cc09f326680 NPL-1.0 16286 11.4 13.7 14.1 14.5 54.2 12.7 53.5 304
3019e515abc1d4c8e82a09fe574d01875ab05ab1 NPL-1.1 21636 13.0 15.5 14.3 16.1 57.9 13.6 47.4 456
db3b003197b39a73df2fab3c2505fbb99dd92e70 NPOSL-3.0 9502 13.7 15.5 14.6 17.6 58.9 14.9 41.9 226
d8864d8d46c52460ee2a2d05572de9cdefa121ce NTP 584 18.9 22.4 17.6 21.1 72.2 16.8 20.9 27
1a5cc6614a1ac2cde709527063adc051aaef5b59 OCLC-2.0 8679 10.8 13.7 14.9 14.1 54.4 12.5 54.8 158
5d5071c43c31f56f9a48750d7015c34883ebbc8a ODbL-1.0 19659 12.5 13.4 13.7 16.6 54.2 14.3 45.6 431
eefe55ea67004f87ce035c998f593f7014fd14a0 OFL-1.0 3018 13.2 17.3 14.0 16.1 60.8 12.6 53.5 56
8042b321424aa7ad59076ed53910f3ba8cfdc444 OFL-1.1 3227 12.6 16.3 14.0 15.4 58.9 12.5 54.0 59
47409e4b3d9391bc1717b55788d67308b3645161 OGTSL 3724 11.3 13.6 14.0 14.2 54.0 12.4 53.6 69
1809980eae5c6027f604dcc623479fdcf111dfdf OLDAP-1.1 3854 11.2 13.3 14.0 13.5 54.1 11.9 53.3 72
00d6a7524efe17277039661ea99957e4da93edce OLDAP-1.2 3858 11.3 13.3 14.0 13.6 54.2 11.9 53.0 72
04904f47ddad228383ac8e19316ae560f2cc9139 OLDAP-1.3 4187 11.8 13.9 14.1 14.1 55.5 12.2 51.4 81
64859bfbec0602a1d98de6823e667157aed72996 OLDAP-1.4 4252 11.7 13.8 14.1 14.0 55.3 12.1 51.8 82
cda18d60730759abf0ec90725d458b10e2b9e36c OLDAP-2.0.1 1604 9.7 15.9 17.1 13.3 62.8 11.6 65.0 24
39905c3bae9b696f91b3387252efee9661c46744 OLDAP-2.0 1607 9.7 15.9 17.1 13.3 62.8 11.6 65.1 24
3bf504932fc78f4c32786c65393c048b055cd88e OLDAP-2.1 1800 9.2 14.7 16.6 12.7 59.9 11.3 65.8 27
17608c92f8eca35786067eba1c42a28291ce96de OLDAP-2.2.1 1816 9.2 14.7 16.3 12.9 59.3 11.4 66.1 27
e19ccd84c7378a721a1689eee6e8d155d58fe52a OLDAP-2.2.2 1836 9.4 14.9 16.6 13.4 60.4 11.9 64.6 28
8d6770bb082eadd17d814495c2fcf8d24bd49b07 OLDAP-2.2 1804 9.1 14.6 16.3 12.7 59.1 11.3 66.5 27
5aaf8041616d468dcf2f8adc15d8ee8047e643d7 OLDAP-2.3 1834 9.4 14.9 16.5 13.4 60.4 11.9 64.6 28
70fc08e656d3e4ce80cc6118414fa379e5cff63c OLDAP-2.4 1726 9.8 14.9 16.5 13.9 60.4 12.3 62.5 27
3bbe28af43f6d59244ee3d60894e73718cca4656 OLDAP-2.5 1758 9.8 14.8 16.0 13.8 59.8 12.2 63.3 27
ebf1ba925ef83d6a1158ad0204a8e8707f30324b OLDAP-2.6 1712 10.2 15.4 16.2 14.3 61.2 12.5 62.3 27
18a7008a9e4f4ce6651236427cb165bbbb32dc96 OLDAP-2.7 1792 10.0 15.1 16.0 14.0 60.4 12.3 62.6 28
daee80ea2d9c79b8f36319e17f8eb72c58114879 OLDAP-2.8 1790 10.0 15.0 16.0 13.9 60.1 12.2 62.8 28
f63158eb54c637627c609bb57833cc27093840b0 OpenSSL 4175 10.7 15.6 15.7 14.0 60.7 12.0 60.5 69
d87f38eee3178884ac7922ee2bc7af85a5cb620f OPL-1.0 15610 12.0 14.2 14.2 15.2 54.8 13.1 50.4 309
9fbd6c8b270f7383bb99df0191ac919e9f1e0f50 OSL-1.0 7078 11.7 15.0 14.8 15.3 57.6 13.2 53.4 132
9e3b5bd8803fe6518c1df58c90a2f27279285383 OSL-2.0 7853 13.2 14.9 14.4 17.3 57.3 14.7 43.8 179
86b22069d64687af5e2e791dbf3cdfe212117a0a OSL-2.1 7851 13.0 14.7 14.5 17.2 56.9 14.7 44.1 178
ff5e10e2563c74f29a3aec4a23ff29f45c0c3f88 OSL-3.0 8307 13.7 15.6 14.4 17.6 58.2 14.9 42.4 195
2d059b9dbb826799e0616f01fe336defd7915cc9 PDDL-1.0 12455 11.7 13.0 13.6 15.6 49.4 13.6 50.3 247
1816b5611a38aa92e72c19872d0aeaba2de6e7b4 PHP-3.01 2280 8.6 12.5 13.6 11.5 49.9 10.1 70.4 32
6204ef6d604c3124f574ee2b0c05b5c2c2ce4d4e PHP-3.0 2271 8.6 12.4 13.6 11.5 49.7 10.1 70.6 32
ffd7ec6573f5a0046e4091c3ccb6c8562e620c76 PostgreSQL 978 16.9 26.7 16.9 20.3 84.3 12.5 52.6 18
8e52b19d8b7af858f8d65a795d600a0c29bcc488 Python-2.0 7483 12.8 18.1 14.9 15.9 63.3 12.4 56.4 132
cfe6913b8af9e08dc0476896e2825bd3c2e3bd60 QPL-1.0 3529 12.9 14.9 15.3 15.5 56.6 13.4 43.8 80
fe5002688af6e08772e9c5e87035a24cf7d65057 RHeCos-1.1 16857 12.0 14.8 13.7 15.3 55.9 12.9 54.3 310
b18f7b4788d54f876001eb744e6e9ef7b6a90229 RPL-1.1 27119 12.6 15.8 15.0 15.9 59.2 13.5 49.7 545
3ff0d1b2011ba1792e59c614696ceb0eafda65c9 RPL-1.5 25393 12.3 15.4 15.0 15.7 58.4 13.4 50.0 507
eed9143202e3cc9e40c8ea2a5522cab69ab875cb RPSL-1.0 23768 14.0 16.9 14.4 17.2 60.3 14.2 45.3 524
6142a28306a98801d75eda3b10be6e689c6c1b3d RSCPL 16273 11.6 14.0 14.2 14.9 53.1 13.0 52.9 307
4c00bf0a49428c5572a2651fcee55dda86d160de Ruby 1913 19.6 23.4 13.6 22.8 71.0 16.5 30.4 62
b349e32616df129a43f4915f15bc7363efbd5736 SAX-PD 1730 11.8 13.0 12.0 14.6 49.8 12.4 54.2 31
59b7423f8583f65c5ed6c5789e4bb50d1c9eb48d SGI-B-1.0 10452 10.3 12.9 14.7 13.8 53.6 12.3 56.6 184
3c865d4d01abb6e12e87a55ab4a6f32ec6f26e11 SGI-B-1.1 11272 10.9 13.5 14.6 14.2 55.0 12.5 54.9 205
482c60ab189d8a097558134505f00d37ad167089 SGI-B-2.0 1155 9.7 13.9 14.3 12.8 57.1 10.9 65.6 17
2d913cb49e14d68db24e248412cc346c486a134b SimPL-2.0 1982 10.8 12.9 11.3 14.3 47.2 11.9 62.5 31
00b6083c2e6d5f10eade11a8e7a81b019e777e6d SISSL-1.2 9715 10.9 12.9 13.9 14.2 51.9 12.6 54.4 178
58d422e2fb51a3d64d6773e65e7bec3d33334a13 SISSL 11086 11.3 13.9 13.8 14.8 54.2 12.8 55.4 200
a1ebd9c1e79d08c3d342a2e6b49f1fa9fdb59e9e Sleepycat 4034 11.6 17.8 16.0 15.2 63.4 12.3 61.3 65
29fcf0e1356a3625ad0e4ced9f282cc31e2fcb87 SMLNJ 923 20.8 25.3 15.4 24.3 76.3 18.0 23.6 39
d93e3210aeffc64d43ee7e47e108cf8a7d5f6d44 SPL-1.0 17878 11.9 14.0 14.3 15.2 54.4 13.2 50.0 357
088641c6a445bf1cb01a4b0b060a6d7731401b83 SugarCRM-1.1.3 19078 11.9 14.0 14.3 15.0 54.5 13.1 50.3 379
ff007ce11f3ff7964f1a5b04202c4e95b5c82c85 Unlicense 926 10.8 15.1 12.9 14.0 56.1 11.0 66.2 13
51fcabf2b2216f7a32d58e4bac53ef10cd7c4305 VSL-1.0 1675 10.7 16.5 17.3 13.2 60.5 11.3 59.5 28
321fc468cdbdd00cb1a3fef7e9f2b53c49cb95fd W3C 2182 13.1 17.2 15.2 16.3 62.4 13.4 50.1 43
9a81c35d5a8bd3c02e017d1f6a05af59c2e4fb6e Watcom-1.0 16562 13.1 16.3 13.9 16.3 57.8 13.4 50.6 327
ceffa174420c734f28329d45a2782584cb693192 WTFPL 341 9.3 12.5 11.0 13.2 53.0 10.7 73.2 4
aac0a17c95873a6983c546bf8a1b8d5574b4517d WXwindows 1862 13.1 16.2 12.8 15.3 58.7 11.7 53.5 34
f6cdf05df7acdde7587a632d418465e3547fe498 X11 1075 14.9 20.0 13.2 18.4 68.4 13.2 52.8 20
56f041b77f41fa7e2353b711ec2e116467a48015 XFree86-1.1 1913 14.4 19.9 15.2 17.7 66.3 13.6 51.0 37
7815253be63682b2ab88623d3eb2748c6a099a1d Xnet 1000 11.5 16.2 13.1 15.0 61.0 11.5 64.5 15
2ebb89d44df1431221b9050fe35c359c4e6a2e46 YPL-1.0 6882 10.5 13.2 14.1 13.7 52.3 12.1 58.0 118
fbc04592ee3c671408fcc39eae398613b26be187 YPL-1.1 6882 10.7 13.4 14.1 13.9 52.6 12.1 57.6 119
fc3ed4984f4376db6672f9c568bdf03af2eedcc4 Zimbra-1.3 7216 15.0 19.0 14.0 18.3 63.7 14.2 46.2 156
79918b0a3364753d0d509682df8cfb8082e252d9 Zlib 657 10.0 11.7 14.0 13.0 50.9 11.8 56.5 11
fe67fb158e684e2bbea78602f736c4254384c1ea ZPL-1.1 2339 11.1 15.3 16.9 14.9 58.1 13.1 53.0 44
83cb704b06d68aba270f52d8f79c77711a925949 ZPL-2.0 1811 10.2 14.8 15.1 13.8 56.0 11.9 62.8 28
f54d181214c88437a4105d6674209cf742e568be ZPL-2.1 1676 11.4 16.7 15.4 14.7 62.4 12.1 60.4 27
8b36c30ed0510d9ca9c69a2ef826b9fd52992474 by-nc-sa-4.0d1 12465 13.0 15.0 14.9 16.3 57.4 14.0 43.9 283
4a87c7af5cde7729e2e456ee0e8958f8632e3005 by-nc-sa-4.0d2 11583 13.1 14.8 14.2 16.8 56.2 14.4 44.7 259
bb6f239f7b39343d62440bff00de24da2b3d256f by-nc-sa-4.0d3 14422 14.1 15.8 15.1 18.2 61.0 15.4 38.6 373
cf5629ae38a745f4f9eca429f7b26af2e71eb109 by-nc-sa-4.0d4 14635 13.8 15.6 15.5 17.8 60.2 15.2 38.6 379
6accdf75f661b6c431ddc69c98509009c859cd28 copyleft-next-0.1.0 7050 11.6 13.2 14.9 14.7 53.5 13.0 47.8 147
bdd57168874256bf2ce405a0095044c72e0f7894 copyleft-next-0.1.1 6940 11.5 13.1 14.9 14.5 53.2 12.9 48.2 143
4f7cbaf808b3597ac01252a3ce8f79b750114208 copyleft-next-0.2.0 7311 14.2 16.5 14.6 17.5 59.3 14.6 41.7 175
2a8b5cf0173ac66861d9bc30cbc834674a7cb072 copyleft-next-0.2.1 7332 14.2 16.6 14.7 17.6 59.9 14.7 41.5 176
c5808e5f27b516498eda66cd03e8f073e224e1e6 copyleft-next-0.3.0 7653 13.6 15.9 14.6 16.9 58.3 14.3 43.7 175
adb5c8b02580ff23f959a9a4a36f9d53a24cef38 FAL-1.3 6641 9.8 11.4 12.6 12.8 47.1 11.4 61.0 108
98064c6b9d40c4e43206c5343daae933155bd63a OGL-UK-1.0 4577 15.2 17.9 15.4 19.8 62.5 16.3 37.2 123
c7539d2f3a5edb8fd71e4714db0aa36e87ece9e8 OGL-UK-2.0 4555 14.4 17.0 15.4 18.7 60.7 15.7 39.6 115
02fa56fef253718abfd8756f43b322f250a515f5 TAPR-OHL-1.0 10481 13.3 15.9 14.2 15.9 55.9 13.2 47.4 221

License

Original files in this project are disjunctively licensed under all licenses in the SPDX licenses list 1.19 (215) and those included in licenses-other (13). Take your pick of any or all.

License texts purport to be under various terms; see each individual license text.

Abolish Foreignness

Saturday, September 21st, 2013

Searching for background info for a forthcoming post on a boring topic that should be forgotten, I found the research of Michael Curtotti, and was tickled to find he also has papers on human rights and freedom of movement, and runs a website called abolishforeignness.org.

I’ve only read the oldest (2002) paper so far, Barriers to International Freedom of Movement: A Lacuna in International Human Rights Law?, and recommend it. The gap is real, and huge. A large proportion of humanity is excluded from escaping poverty and oppression. Curtotti quotes a book on my to-read list, Closed Borders: The Contemporary Assault on Freedom of Movement:

The late nineteenth and early twentieth centuries represent the closest approximation to an open world in modern times. … With immigration restrictions at a minimum, real freedom of international movement was a fact. The right of personal self-determination was reasonably secure for residents of Europe and the Americas, if not for other peoples ruled by them. Passports, which had fallen into disuse in much of the West, were required only in the Ottoman Empire, Russia, Romania, Bulgaria and Bosnia/Herzegovina.

Why were borders then closed? In part Curtotti writes:

The growing influence on public policy of racist ideologies seeking to promote racially segregated national communities – including by excluding all regarded as incompatible with the prevailing racially defined national character.

All the more ironic:

We may note also further explicit and implicit reservation of state freedom in regard of freedom of movement and citizenship. The International Covenant on the Elimination of All Forms of Racial Discrimination provides that the Convention does not prohibit discrimination between citizens and non-citizens. Further matters of citizenship, nationalisation or naturalisation remain at the free discretion of the state (subject to the requirement of non-discrimination between non-citizens) (art 1.2, 1.3). This is of course an extraordinary provision in such a Convention. It suggests that a state has virtually no obligations of “non-discrimination” to persons outside the legal and geographical boundaries of the state – notwithstanding the correlation between race and nationality, the fact that historically many states have racially discriminated to influence their ethnic composition and that the very idea of the nation-state is strongly linked to the idea of race and ethnicity. The explicit inclusion of such exemptions of course merely serves to underline that the drafters were well aware of the correlation between race and citizenship. Discrimination against foreigners is given international legal sanction by this Convention.

Curtotti concludes noting the tension between state prerogative and the universality of human rights, and that discussion, then recognition of freedom of movement as a fundamental human right, rather than an glaring exception, can be the beginning of a very long process of rights implementation.

I hope to soon read and review the rest of Curtotti’s papers, and everything on abolishforeignness.org. As noted a few months ago, I also want to read and review all of openborders.info. It appears these two group sites come from different perspectives: Open Borders, libertarian/negative rights/economics; Abolish Foreignness, progressive/positive rights/humanitarian. That’s good: all sorts of arguments are needed to abolish the monster of international apartheid.

Speaking of which, I am mildly tickled to see that the authors of the Manifesto for the Abolition of International Apartheid use the CC0 public domain dedication.

“We’ve found that lots of messages from googlegroups.com are spam”

Monday, September 16th, 2013

gmail screenshot with googlegroups.com are spam explanation

Take this as an indication that running a large mailing list hosting service, and keeping it relatively free of spam, is very hard. Google Groups is unlikely to be shut down anytime soon, but maybe all messages and groups will be migrated to Google+ posts and communities, respectively. Lots of people would hate that, but Google controls the identifiers (this is probably most immediately pertinent), transitioning ownership or stewardship of services is hard, and the software isn’t free (but, at least non-software copyright may not be much of a practical obstacle; has anyone ever been threatened or actually prevented from mirroring mailing list archives?). The world would move on.

Two other amusing but less indicative of anything about the service screenshots of Gmail, from 2009.

show quoted text

signature cascade

If you want FLOSS alternatives to GMail and Google Groups, commercial ones include MyKolab and OnlineGroups respectively. Both are expensive; a post explaining why MyKolab is. If you’re politically aligned, Riseup provides mail and lists (their NSA statement; I’m surprised I haven’t seen the string alternastructure until now). Mailman 3⸮ And if you want everything to move to social-networky-but-free platforms, not much has changed since 3 months ago.

The absolute transformation of everything that we ever thought about music that no one ever talks about

Monday, September 9th, 2013

I vaguely recall in 1997 when David Bowie issued celebrity bonds, recently chronicled at a fan blog. I didn’t see them as a big deal: celebrity artists already had front-loaded payment via contract with record or other media companies, and their catalogs trade-able via ownership by the same, mostly public, companies. I suspect that despite the gimmick of individual celebrity bonds not taking off, an even larger proportion of such artists’ careers are effectively securitized these days, as their contracts with public companies are broader in scope (360 deals, covering live performance and everything else, in addition to recording sales and licensing). Am I wrong?

I recall more clearly a 2002 Bowie quote mentioned by the fan blog:

The absolute transformation of everything that we ever thought about music will take place within 10 years, and nothing is going to be able to stop it. I see absolutely no point in pretending that it’s not going to happen. I’m fully confident that copyright, for instance, will no longer exist in 10 years, and authorship and intellectual property is in for such a bashing…Music itself is going to become like running water or electricity. So it’s like, just take advantage of these last few years because none of this is ever going to happen again.

A lot of ambiguity and contradiction can be read into that quote, but “I’m fully confident that copyright, for instance, will no longer exist in 10 years” taken alone is unambiguous, and turned out to be totally wrong. I didn’t think Bowie’s prediction was sound in 2002. Had I written down a prediction in 2002, it probably would’ve involved muddling along, with only minor differences from my prediction of last year. But I may not have expected essentially no change at all, in any direction.

In hindsight, this is unsurprising: the free/open/[semi]commons has offered zero product (noting that the product is marketing and distribution, not cultural works) competition to proprietary popular culture, and near zero policy competition, excepting last minute rearguard actions. Both “sides” have stayed well within their comfort zones, far from changing copyright (utilitarian works, digital delivery of locked-down entertainment). What trend I can make out does not look good: innovation is happening faster on the locked-down delivery side, in part because that side has less of a problem with a vision of info regulation constrained to the domain of copyright, and it doesn’t have an informal side which largely serves as a marketing and price discrimination mechanism for its opposite.

_

It was and is sad that the first thing to come to mind regarding the “absolute transformation of everything that we ever thought about music” is with regard to copyrestriction rents rather than changes in what one hears due to culture and technology (eg new genres and instruments), admitting there is an interplay, especially among industry and culture.

One idle speculation about this interplay I’ve made for many years, but don’t recall writing about: to what extent has copyrestriction, through encouraging the creation of new works with exclusive rents, made culture less shared — not only in the sense that all cannot access and use the culture around them — but also in the sense of being more fragmented across subcultures, and especially across generations? At the same time, copyrestriction probably encourages mass spectacle, which is anti-fragmentary, though distasteful to me.

But I’m fairly confident that however we muddle through the future of info regulation — even in the unlikely event of copyrestriction dystopia or abolition (perhaps dystopia from the perspective of copyright advocates; I would love to see a dystopian future story from that perspective) — the sounds enjoyed by many will both be very different from those enjoyed today, but also not at all a transformation of everything we ever thought about music.

Metadata is technical debt

Monday, September 9th, 2013

Rob Kaye of MusicBrainz writes about their RDFa dilemma. My summary of the short post and comments:

  • Someone paid to have RDFa added to MusicBrainz pages a few years ago.
  • The code adding RDFa is brittle, hasn’t been maintained through MusicBrainz schema changes, thus is now broken.
  • There are no known consumers the RDFa in MusicBrainz pages.
  • Unless someone volunteers to fix and maintain the RDFa, “we’re ready to remove the broken code from our pages in an effort to remove technical debt that has accumulated over the past few years.”
  • A few people want RDFa in MusicBrainz pages maintained because “Very long term I think this is a sensible way forward – the web site as its own API” and compatibility with other semantic web initiatives.
  • Some people tentatively volunteer to help.

Kaye’s post is a model for how to remove features — inform the relevant community, ask if anyone cares and is willing to maintain the feature in question. This could be applied in a commercial context, eg asking customers if they’re willing to pay to maintain a feature or to keep a service alive. It is somewhat odd that transaction costs are high enough/coordination poor enough that such is not as commonplace as feature removal and service shutdown.

I’ve long liked the notion of the web site as its own API, to the extent of feeling a strong dislike for many RPC APIs for web applications, and like RDFa, but mostly I think most metadata implementation is premature, and as with choosing a metadata format, it is best to just ignore it till there’s an unambiguous and immediate gain to be had from implementation.

People pitching metadata as a solution, public or private good, are frighteningly like SEO pushers, except usually not evil. The likeness is that the benefits are vague, confusing, apparently require experts to discern and implement, and almost everyone would be better off wholly ignoring the pitchers/pushers.

I apologize for doing a bit of pitching over the years, wasting people’s time, making whatever I was actually trying to sell more difficult, lowering my intelligence (had I woken up on the other side of the bed some day, I’d have been pitching another layer of snakeoil) and adding technical debt to the world.

Mitigating all this: there’s often no clear separation of “data” and “metadata”. It’s all data of course..

Perhaps people who prefix with “meta” are another class deserving a punch in the face. Note that Kaye’s post does not include the string “meta”; I’m just exploiting the appearance of “technical debt” and “RDFa” in the same text here!

The _ that no one ever talks about?

Monday, September 9th, 2013

Instead, try one of these relatively non-preposterous, honest statements:

  • I wish more people talked about _, but I think they don’t because they are stupid or evil or trapped in stupid or evil systems.
  • _ is relatively obscure, but I want to tell you it is important, or at least convince you that I’m cool because I know of it.
  • I just discovered how the world works, namely _, and I bet nobody else has ever, by golly!
  • I searched and find no evidence that anyone has said _ exactly, but it’s a relatively trivial variation on other things.