Omits, in no particular order: 1/ modernity (everything after A.D. 1000 more or less) is causing its own collapse; 2/ It’s the Jews; 3/ It’s the Communists; 4/ It’s really the Catholics or the British Empire or the Guelphs at fault; 5/ Nothing ever happens. There is no collapse and Everything’s Fine; 6/ It’s happened before. Here we go again; 7/ Trust the Plan.
H/T @dom [on Tunis]for theme song (I’d forgotten that one but Toto was very popular when I graduated high school back in 1979, and still so in 1982 when they cut this song)
Dugin Blesses the Rains Down in Africa
From discussion about an online forum, a Discord (heh), being destroyed by Trump Derangement Syndrome epidemic among marginally rational leftists… (after quoting Bohm as above)
There will be an edition of The Autodidact Newsletter proper, later this weekend, which will have announcements for upcoming ‘email correspondence courses’ in Academic Year 2025-2026, but here’s a quick edition of ‘Green Wizardry’ reviewing links of the Discord channel of that name, which is associated with Macrobius’ Saturnalia substack. One number will come out each week until we are caught up with the monthly digests!
I’ve been playing around with using standalone SVG files as a ‘replacement’ for HTML. It’s a bit primitive, but I thought I’d share some working samples to get anyone interested started.
– I want to go back to an easier web — the web exists to fetch static files. Pulling in lots of files — 100s? 1000s? to view a single page is a non-goal.
– I’m interested in graphics, data visualisation, and memes — that is how people learn now. We still need text though. And no, I don’t want to pull in a giant library like d3 just to draw simple plot.
– You should write your own damn code anyway. Libraries are for the birds. All scientists know this. Sure, there are exceptions. No one wants to write their own OS or re-write BLAS just to multiply matrices. But those few exceptions aside, you should know and love every line of code you use.
– SVG uses XLINK for hyperlinks. I know. XML is so aughties. SVG 1.1 is the current well suported standard. SVG 2 is ‘out there’ and getting moar like HTML5 and less like XHTML. festina lente.
– We still need to embed HTML though
– SVG has a DOM but it is not *your* DOM. Getting styles to play nicely between the HTML and SVG/XML world, or between DOMs, requires a lot of namespace majick. That’s what this thread is about….
So. Working samples:
[[ code at the link ]]
Largely taken from a book on SVG, but adding in how to do hyperlinks — ‘interactivity’ and programming are not features to toss as an afterthought in Chapter 18! They are the essence of the matter.
I’ve been playing around with using standalone SVG files as a ‘replacement’ for HTML. It’s a bit primitive, but I thought I’d share some working samples to get anyone interested started.
– I want to go back to an easier web — the web exists to fetch static files. Pulling in lots of files — 100s? 1000s? to view a single page is a non-goal.
– I’m interested in graphics, data visualisation, and memes — that is how people learn now. We still need text though. And no, I don’t want to pull in a giant library like d3 just to draw simple plot.
– You should write your own damn code anyway. Libraries are for the birds. All scientists know this. Sure, there are exceptions. No one wants to write their own OS or re-write BLAS just to multiply matrices. But those few exceptions aside, you should know and love every line of code you use.
– SVG uses XLINK for hyperlinks. I know. XML is so aughties. SVG 1.1 is the current well suported standard. SVG 2 is ‘out there’ and getting moar like HTML5 and less like XHTML. festina lente.
– We still need to embed HTML though
– SVG has a DOM but it is not *your* DOM. Getting styles to play nicely between the HTML and SVG/XML world, or between DOMs, requires a lot of namespace majick. That’s what this thread is about….
So. Working samples:
Code:
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
height="10cm" width="10cm">
<title>scripted svg</title>
<style type="text/css">
line {
stroke: purple;
}
svg {
margin: 1cm;
}
</style>
<script><![CDATA[
(function() {
var size=10;
var doc = document;
var svg = document.documentElement;
var svgNS = svg.namespaceURI;
if (!(svg.classList && svg.classList.contains("initialized")))draw();
function draw(){
var l1,l2;
for (var i=0; i<=size; i++){
l1 = doc.createElementNS(svgNS,"line");
l1.setAttribute("x1",i+"cm");
l1.setAttribute("x2",size+"cm");
l1.setAttribute("y2",i+"cm");
svg.appendChild(l1);
l2 = doc.createElementNS(svgNS,"line");
l2.setAttribute("y1",i+"cm");
l2.setAttribute("x2",i+"cm");
l2.setAttribute("y2",size+"cm");
svg.appendChild(l2);
}
if (svg.classList) svg.classList.add("initialized")
a1 = doc.createElementNS(svgNS,"a");
a1.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href","http://whigdev.com");
a1.setAttributeNS("http://www.w3.org/1999/xlink","xlink:title","Assisted Thinking");
//a1.textContent="clickme";
t1 = doc.createElementNS(svgNS,"text");
t1.setAttribute("x",10);
t1.setAttribute("y",10);
t1.textContent="clickme";
a1.appendChild(t1);
svg.appendChild(a1);
}
}
)();
]]></script>
</svg>
Largely taken from a book on SVG, but adding in how to do hyperlinks — ‘interactivity’ and programming are not features to toss as an afterthought in Chapter 18! They are the essence of the matter.
Let’s add some styled HTML:
Code:
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
height="10cm" width="10cm">
<title>scripted svg</title>
<style type="text/css">
line {
stroke: purple;
}
svg {
margin: 1cm;
}
</style>
<script><![CDATA[
(function() {
var size=10;
var doc = document;
var svg = document.documentElement;
var svgNS = svg.namespaceURI;
if (!(svg.classList && svg.classList.contains("initialized")))draw();
function draw(){
var l1,l2;
for (var i=0; i<=size; i++){
l1 = doc.createElementNS(svgNS,"line");
l1.setAttribute("x1",i+"cm");
l1.setAttribute("x2",size+"cm");
l1.setAttribute("y2",i+"cm");
svg.appendChild(l1);
l2 = doc.createElementNS(svgNS,"line");
l2.setAttribute("y1",i+"cm");
l2.setAttribute("x2",i+"cm");
l2.setAttribute("y2",size+"cm");
svg.appendChild(l2);
}
if (svg.classList) svg.classList.add("initialized")
a1 = doc.createElementNS(svgNS,"a");
a1.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href","http://whigdev.com");
a1.setAttributeNS("http://www.w3.org/1999/xlink","xlink:title","Assisted Thinking");
//a1.textContent="clickme";
t1 = doc.createElementNS(svgNS,"foreignObject");
t1.setAttribute("x",10);
t1.setAttribute("y",10);
i1 = doc.createElementNS("http://www.w3.org/1999/xhtml","xhtml:div");
i1.innerHTML="click <xhtml:span style=\"font-family:arial;font-weight:bold\">ME</xhtml:span>";
t1.setAttribute("width",100);
t1.setAttribute("height",100);
t1.appendChild(i1);
a1.appendChild(t1);
svg.appendChild(a1);
}
}
)();
]]></script>
</svg>
The catch is you need to use a foreignObject and XML (XHTML) namespaces.
Online sample at CTRLALTRIGHT: https://s3-us-west-2.amazonaws.com/ctrlaltright/add-html.svg [[ the link in the sample does traverse but goes to a non-functioning landing page — I’ll have to fix the sample. It proves you can make a diagram (meme) with a clickable link ]]
Notice: standalone SVG with hyperlinking is *all you need to build a web* — sure, it’s static assets, but JavaScript adds all the dynamism you need.
The sample is a standalone SVG file, with HTML, JavaScript, styling, and hyperlinks, that your browser can already render. Test it on a sail phone too.
It’s just a static file you could mail to someone as an attachment — no fetches from the web unless you want, and no silliness about .mhtml files or .zip files to distribute all the pieces you need to see and interact with the page.
You can hoast SVG on an HTML page, but you will need an < OBJECT> tag if it has interactive bits like JavaScript. Obviously, an IMG tag that had JavaScript would be a huge hole in the security model.
Part of Compartment on webdesign, kb:/STOOD. – graphics, dataviz, web typography, mathjax, LaTeX, unicode representation and encodings, SGML/HTML/XML processing [[ irrelevant comment about indexing and archiving this material ]]
Code:
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
height="10cm" width="10cm">
<title>scripted svg</title>
<style type="text/css">
line {
stroke: purple;
}
svg {
margin: 1cm;
}
</style>
<script><![CDATA[
(function() {
var size=10;
var doc = document;
var svg = document.documentElement;
var svgNS = svg.namespaceURI;
if (!(svg.classList && svg.classList.contains("initialized")))draw();
function draw(){
var l1,l2;
for (var i=0; i<=size; i++){
l1 = doc.createElementNS(svgNS,"line");
l1.setAttribute("x1",i+"cm");
l1.setAttribute("x2",size+"cm");
l1.setAttribute("y2",i+"cm");
svg.appendChild(l1);
l2 = doc.createElementNS(svgNS,"line");
l2.setAttribute("y1",i+"cm");
l2.setAttribute("x2",i+"cm");
l2.setAttribute("y2",size+"cm");
svg.appendChild(l2);
}
if (svg.classList) svg.classList.add("initialized")
a1 = doc.createElementNS(svgNS,"a");
a1.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href","http://whigdev.com");
a1.setAttributeNS("http://www.w3.org/1999/xlink","xlink:title","Assisted Thinking");
//a1.textContent="clickme";
t1 = doc.createElementNS(svgNS,"text");
t1.setAttribute("x",10);
t1.setAttribute("y",10);
t1.textContent="clickme";
a1.appendChild(t1);
svg.appendChild(a1);
}
}
)();
]]></script>
</svg>
The ‘compleat designer’ tools at the link are all MacOS centric. I respect the design that went into the Mac and its eco-system, but dayum they’re expensive. Maybe one day I’ll own one to play with.
[[ This is a poast about building a web out of clickable pictures that link to each other ]] Reprint of a Salo howto thread archived here: http://whigdev.com/white/index.php?threads/meme-laboratory-weaponised-memes.36/ via http://whigdev.com/forum/viewtopic.php?f=11&t=2641 and…
https://lod-cloud.net/ Xenforo won’t let me attach an SVG (too dangerous I guess and probably a wise precaution given the contents of this thread — but I’ll bet Ethereum lets me link it 😉 ) so you will need the link…
I should add that ‘memorising large parts of the Iliad’ was the bedrock of the national traditions of the Greek-speaking parts of the Empire right through the Byzantine period and beyond — Byzantine Education had two phases, paideia, which was taught even in rural towns in Anatolia to young boys (not sure about girls probably not), and invariable involved memorising Homer with *all* being the goal, though seldom achieved except by remarkable individuals.
The middle stage (before the equivalent of University) was paideusis enkyklios, a straight up ‘curriculum’ which word is the latinised form of ‘en-kyklo-paeidia’.
The last person known to have memorised the Psalms, the Gospels, *and* Homer was St Nikodemos of the Holy Mountain in the 18th century. Again, I’m not sure if that meant the Iliad (certainly), or also the Odyssey. The first two were a frequent accomplishment of monks in any era.
I don’t in fact know how Homer was ‘pronounced’ in this memory tradition, and I’m sure there had to be nuances to make it into poetry, just as there are nuances in how medieval Latin poetry works compared to classical. I don’t know what they are and I’m willing to bet they pronounced Homer as in Demotic.
The Singer of Tales tradition died hard in the Balkans and Hellas.
It’s basically a power inverter so it does what solar panels (PV) can do your roof only with an Li Ion battery, and you need the grid to charge it up. First world to next world buffering device. It is more or less a Tesla you can carry, without the transportation parts. In the above pic, you see one of two possible batteries charging. It takes about 90 min per battery to charge, one at a time. Then you can use the batteries for whatever the power is rated for.