Sometimes, I receive questions which leave both me, and the person asking, bamboozled.

> Your website loads so quickly! What CDN do you use?

There is no CDN. It is just really small and simple, mostly text.

> Sure, but is that Cloudflare, or...?

None. It is a tiny website, just a few kilobytes per page, on a tiny server, at my home, connected to the Internet via my ISP, Andrews & Arnold.

> But are you / they in the cloud?

No. The webserver is in Newbury, in my garage.

> Neil, please can you pass my questions to your technical person? I don't think you understand, your website cannot be in your home. It must be in the cloud or have a CDN.

*Neil puts on glasses and false nose and moustache*

@neil Is that moustache from AWS or Azure?
@darkling @neil We regret to inform you that Google Stache will cease all operations in 3 weeks.
@neil damn that *is* just text! huh!
@neil Same for my tiny site on my solar-powered RPi...
@DamonHD @neil Ironically a cloud could take it offline! 😉
@derf @neil It would have to be a 10-day cloud!
@DamonHD @neil Sounds cool. Did you blog the setup? I’ve wanted to try a solar powered pi but get scared as soon as I get into the batteries etc.
On Setting Up a Raspberry Pi 3 Off-grid Server (2018)

RPi3B upgrade for more speed and space... #frugal #offGrid

@derf @neil Note that the RPi draws at most about 100Wh (0.1kWh) per day, and the effective usable capacity (down to 50% DoD) of the battery is ~1kWh, thus my handwavy 10-day claim above. Actually RPi draw is lower on winter days as I trim processing to fit generation, but empirically this capacity is enough.
@neil I think we should burn the modern web down and just start over at this point. 😄
@Razemix @neil Can we please also burn down javascript and html and replace them with markup ?

@etchedpixels

HTML itself isn't so bad and (when written properly/semantically) completely usable in a text-mode browser like lynx(1), It's mostly the JavaScript (and to a much lesser degree the CSS) that ruins it. Cookies (especially 3rd-party) were also a pretty bad idea.

@Razemix @neil

@gumnos @etchedpixels @Razemix @neil It's not even the js that ruins it. It's the model of engineering an application inside a js context in the browser that's essentially its own browser loading and presenting the publisher's content from a proprietary format they've chosen that involves all sorts of API requests to load, rather than serving a potentially interactive document, that ruins it.
@dalias @gumnos @etchedpixels @neil 100% agree. I like JS. I don't like several megabytes of JS on every goddamn page.

@etchedpixels @Razemix @neil that'd also mean we'd have to replace Mastodon with a old fashioned .php forum... but I guess I'm okay with that /s

(I think I'm gonna add an /s tag here before anyone takes this waaaay to literally. I don't want to stir any old php wounds)

@kwramm @etchedpixels @Razemix @neil Egh. Leave the API and let the client deal with it. Most clients do that anyway.
@rmq @etchedpixels @Razemix @neil if we'd need a dedicated client, we could just go back to usenet though

@kwramm @etchedpixels @Razemix @neil

The old web didn’t only use php, and nowadays even golang and rust have cgi packages.

The domain code was mostly written in the database so your cgi scripts didn’t have to be that large.

@etchedpixels @Razemix @neil hey bud what do think HTML stands for? any idea?

@purple @neil @Razemix I know what the M stands for, but it's like the 'D' in a lot of "democratic republic of" these days.

A clean markup language, or even a fairly light adhoc one like markdown would work rather more nicely.

@Razemix @neil How about we revitalise the web3 by making sites in IPFS?
@Razemix @neil
It is already smoking. Let's focus on making proper thing.
@neil put some cotton wool on top of the server and send them a photo asking if that is cloudy enough for them 😉
@neil In fact probably could also use that image for drawing a parallel to growing vegs/fruits/… in your garden.
@lanodan @neil didn't check but very likely this png image is wa larger than the original super mario game cartridge, which was 32 kilobytes..
@janvenetor @neil Yeah possible, like how readme files can be bigger than the demo on the demoscene side of things

@lanodan @neil @janvenetor The image is 10 kB ^^

It would actually be kind of sad if a clean PNG screenshot were larger than the whole game, since PNG should be pretty good at eliminating redundancy the same way the original game does!

I think this meme probably originally happened with degraded images (stuff like JPEG artifacts compressed as PNG again) which adds a bunch of hard to compress noise.

(Also, the game is technically 40KiB, 32K code + 8K graphics)

@lina @neil @janvenetor Nah, look at it in a good image viewer, there's no jpeg artifacts (like jpeg can't do monochrome background like that).

And I'd kind of doubt PNG encoders are that clever, more likely that you could gain space by having the relevant parts of the sprite sheet in PNG + compact vector format (SVG isn't, more like flash).

Although trying to make it smaller: Passing it to pngcrush I get 7957 bytes instead of 10432.

Edited it a bit in LibreSprite as the red line joining the circles used anti-aliasing and so transparency (luckily circles don't), that encodes it to 8399 bytes.
And then passing that to pngcrush I get 6924 bytes, nearly 50% less but still pretty big.
(Interestingly making the red line+circles with the light-wood color of the ?-item box ends up at 6930 bytes)

> I just put up a megabyte high resolution photo as a login page background, on explicit customer request, and cried a bit :/ they are considering a background video :/

Urgh, I hate background videos, they always take so much time to load and sometimes it means actually important stuff loads afterwards if it's on the same CDN.
super mario bush cloud edited.out.png
@lina @janvenetor @neil Oooh switched LibreSprite color mode to Indexed (No Dithering) which is probably somewhat lossy as otherwise pngcrush would have changed the color-mode, got 5673 bytes out, pngcrush'ed it and got a much more reasonable 4698 bytes.
super mario bush cloud edited.out.png

@lanodan @neil @janvenetor Right, that's what I would expect! PNG isn't smart enough to do literal sprite/tile mapping but zlib compression is still pretty good at eliminating the duplication, and does a better job within tiles themselves which makes up for it in other ways.

What I meant is the original "this screenshot of SMB is larger than SMB" meme (it's a thing) probably used a really degraded screenshot, which is not the case here.

@janvenetor @lanodan @neil it's just 10KiB PNG ;)

@alesroubicek @lanodan @neil so only one third of the mario game, and five times the working RAM memory of the console.

I just put up a megabyte high resolution photo as a login page background, on explicit customer request, and cried a bit :/ they are considering a background video :/

@janvenetor @lanodan @neil So you can load 92kB WASM implementation of NES emulator plus the game cartridge and be way more cool than the background video in a lot less download size :)
@lanodan @neil @dalias Fun thing I noticed recently in F-Zero (SNES)... Mute City and White Land have the same city background, just with different palettes :D. It took me _years_ to notice :'D...
Musique - In The Bush (Prelude Records 1978)

YouTube
@lanodan @neil there's no bush, it's just someone else's garden

Cold-war spies already knew that.

Come to think of it, bush data storage using cuneiform technology probably dates back to the early bronze age.

@lanodan @neil

@lanodan @neil may I suggest a better alt than the filename ?

This would make you post accessible to everyone.

Picture of the first Mario game on the NES. There are two screens. On the first we see a green bush on the ground. On the second one, there is a white cloud in the sky. Both sprites are the same, only their color palette changed.

#alt4You

@neil quick. Invent a pretend CDN domain that will only sign up customers with web sites that are extremely efficient, and it doesn't actually exist, it just looks as if it does, but the data is served directly from garages.
The CDN's bandwidth usage would be tiny, because it's PAY NO ATTENTION TO THE MAN BEHIND THE CURTAIN.
@zymurgic @neil 640KB of JS should be enough for anyone.
@zymurgic @neil Garage Delivery Network 😁