10 KB Club: With links to popular HN, Reddit, Lobsters threads for each website
10kbclub.com
10kbclub.com
I wrote about it:
Web design that focusses on text content is the best
https://blog.markjgsmith.com/2020/12/24/web-design-that-focu...
In the post I list what I think are some of the qualities that make a good text focussed website.
Yey for boring text focussed websites!
This comment sounds like an insinuation that someone or I have deceptively added my own website to this list. I apologize if that is not the case. However, let me clarify the criteria I used to select the websites. I initially took the list of websites already available from https://1mb.club/, https://512kb.club/, and https://250kb.club/, and then fed them to a script to select the websites that consume less than 10 KB compressed transfer size and that have received at least 100 upvotes on Hacker News.
Later I relaxed the rules to include upvotes on Reddit and Lobsters in the eligibility criteria. There is no self-promotion going on here. Doing so and especially insinuating that others are doing so would be taking this tiny project too seriously. Indeed there are many who rightfully argue that keeping a website under N KB (for arbitrarily chosen N) is not an interesting goal by itself. This is just a hobby project made for fun over a weekend because https://news.ycombinator.com/item?id=25176794.
Disclosure: My own website is on this list.
Shouldn’t it have 100? ;)
See https://10kbclub.com/#club-rules for the inclusion criteria. Also click on any row of the data table to see Hacker News, Reddit, and Lobsters discussion threads about the website along with how many upvotes the thread has received. If there are more websites like this, please suggest it for addition by creating a new issue at https://github.com/susam/10kbclub.
Homepages minus favicons/webmanifest-icons don't need to be over 5kb without images, IMO. Personally, I'd rather put profile pics in an "about" page.
There is a lot you can do with 1kb of gzip-compressed, minified CSS.
100mbapp.club
100mbram.club
VanillaJS.club
NoCSSFramework.club
And for physical stuff: AnalogElectronics.club
AllKnobsAndButtons.club
EasyOpenPackaging.club
DumbElectronics.club
NoPlastics.club
Repairable.club
Durable.club
Wordofmouth.club200.kb.club
Etc.
even in clothes, every major brand I looked at has at least some or all of it's material based from polyester.
I wish plastic was an expensive material because it really is incredible and there are thousands of different blends.
So make it 10000 bytes, then. That way it's easier to calculate how long it takes to transmit on the wire, since network speeds have always been 1000-based.
Edit: yes, I'm probably getting the pre-decimalization math wrong above, since I'm likely confusing pre-decimalization pence with post.
In 1971, a cheap paperback book was sold for two shillings and sixpence, which was said as 'two-and-six'. Decimalisation [0] was my first experience of price gouging, when the same paperbacks were suddenly repriced at 15p (~three shillings) instead of the 12.5p which was the decimal equivalent of their old price.
0: wikipedia.org/wiki/KB_(rapper)
From https://en.wikipedia.org/wiki/Kilobyte,
---------------------------------------------------------
Decimal || Binary
---------------------------------------------------------
Value | Metric || Value | IEC | JEDEC
---------------------------------------------------------
1000 | kB kilobyte || 1024 | KiB kibibyte | KB kilobyte
Also,"In the International System of Units (SI) the prefix kilo means 1000; therefore, one kilobyte is 1000 bytes. The unit symbol is kB."
"The binary meaning of the kilobyte for 1024 bytes typically uses the symbol KB, with an uppercase letter K."
"In December 1998, the IEC addressed such multiple usages and definitions by creating prefixes such as kibi, mebi, gibi, etc., to unambiguously denote powers of 1024. Thus the kibibyte, symbol KiB, represents 210 bytes = 1024 bytes."
On macOS Catalina 10.15.7:
$ head -c 92160 /dev/urandom > foo
$ ls -l foo
-rw-r--r-- 1 susam staff 92160 Dec 29 15:04 foo
$ ls -lh foo
-rw-r--r-- 1 susam staff 90K Dec 29 15:04 foo
On Debian GNU/Linux 10.6 (buster): $ head -c 92160 /dev/urandom > foo
$ ls -l foo
-rw-r--r-- 1 susam susam 92160 Dec 29 09:35 foo
$ ls -lh foo
-rw-r--r-- 1 susam susam 90K Dec 29 09:35 foo
$ ls -lh --si foo
-rw-r--r-- 1 susam susam 93k Dec 29 09:35 foo
$ sudo cp foo /var/www/html/foo
$ wget http://127.0.0.1/foo -O /dev/null
--2020-12-29 09:41:05-- http://127.0.0.1/foo
Connecting to 127.0.0.1:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 92160 (90K) [application/octet-stream]
Saving to: '/dev/null'
/dev/null 100%[===================>] 90.00K --.-KB/s in 0s
2020-12-29 09:41:05 (845 MB/s) - '/dev/null' saved [92160/92160]
This 90 kB (92 KiB) is also hosted temporarily at http://172.105.48.21/foo . When Firefox downloads it shows 90 KB in the Developer Tools > Network tab as well as in the download box [1]. However, after the file is downloaded, macOS Finder shows the file to be of 92 KB [2].Note that on OpenBSD "df" shows space in "blocks" by default, which pretty much nobody wants.
Hard drives are sold in real units for decades.
And floppies of "1.44MB" were always 1000 times 1024 times 1.44 bytes. Madness, eh?
Not digging into the actual load speed by ms or even the number of bytes loaded. Just using my human perception of loading times, I cannot see any difference between apple.com (I assume is one of the worst offenders, if not at the very least doesn’t make the 10KB club) and the sites listed in this site.
* images
* some custom font (just why...)
* and little bit too bloated stylesheet
At work we have one huge react app with multiple megs of JS bundle. I want to make text-only version or similar to teddit in size for a long time but management are not keen to allocate time for this...
It's more about the content of the image, the optimization can only do so much. If it's a pixel art or the palette is reduced to hell, then yeah, probably; otherwise I don't think you can display a 256x256 photo in 2KB.
This is a heavily optimised PNG favicon [0], which is only 192x192. But without trashing the palette, I can't really deduce it further, and it's already 2.7K. Niether pngcrush nor imageoptim can do much with it.
[0] https://shatterealm.netlify.app/android-chrome-192x192.png
And whilst the server might use state of the art compression... There's still no way a much larger image is going to fit in the proposed 1-2K limit.
If a site uses the loading=lazy attribute they won't even be loaded until they're on the screen.
Background images in in-line CSS can block rendering in some older browsers but that's really the url() bit that's blocking rather than the image.
In fact, I just started a resource limited chess program competition: https://rlc-chess.com