Sep on Nostr: building a client that feels instant is mostly about not doing work. not re-reading ...
building a client that feels instant is mostly about not doing work. not re-reading what has not changed. not building what is off screen. not fetching what is already on disk. most of my performance work is deleting things. #plaza
numbers from #plaza's feed while scrolling hard: about a twentieth of a millisecond to work out what to draw. the frame budget is 8 milliseconds. there is a lot of room in there. here's the first demo ever:
{
"id":"000004c3e40d4b308e51d95dfde6a50bd7c0b68e8914ecad9b062ae520a7798e",
"pubkey":"3e294d2fd339bb16a5403a86e3664947dd408c4d87a0066524f8a573ae53ca8e",
"created_at":1784578580,
"kind":1,
"tags": [
[
"t",
"plaza"
],
[
"q",
"000006a22fc7016bf23f248c4ebbc5a5acd98eaa1bc886f52abfaeb6a6bafe5b",
"wss://relay.primal.net/",
"3e294d2fd339bb16a5403a86e3664947dd408c4d87a0066524f8a573ae53ca8e"
],
[
"nonce",
"53497",
"21"
]
],
"content":"building a client that feels instant is mostly about not doing work. not re-reading what has not changed. not building what is off screen. not fetching what is already on disk. most of my performance work is deleting things. #plaza\n\nnostr:nevent1qvzqqqqqqypzq03ff5haxwdmz6j5qw5xudnyj37agzxympaqqejjf799wwh98j5wqythwumn8ghj7un9d3shjtnswf5k6ctv9ehx2ap0qy88wumn8ghj7mn0wvhxcmmv9uqzqqqqq63zl3cpd0er7fyvf6autfdvmx825x7gsm6j40awk6nt4ljmsz2usr",
"sig":"f60e6aca2f3999c639645f0043eaa0975f496fa9c261ea94424813554647fa7e903828d5bca7363f1fcd04f002689db69f31d055d16ee0c92350297d1a68c68f"
}