20 random bookmarks

Bookmarks and whatnot. Закладки и всякое.

2025-03-07

1801.

Exploring How Cache Memory Really Works

pikuma.com/blog/understanding-computer-cache

Even though we often hear terms like L1, L2, cache block size, etc., most programmers have a limited understanding of what cache really is. This is a beginner-friendly primer on how cache works.

2025-02-08

Reposted 1753.

iA Presenter

ia.net/presenter

Write it. Show it. Rock it. A fresh, fast and fun way to create and hold presentations.

2025-01-03

1697.

Choosing Software · Gwern.net

gwern.net/choosing-software

Maintained, extensible, comprehensible, popular, efficient, short config. Do not hoard.

2024-10-02

1535.

Sound UI

www.makeworld.space/garden/Computers/Sound UI.html

I think sound is a dramatically underutilized way to communicate with the user in modern software tools. Using sound for a notification is just annoying, but using other properties (pitch, timbre, length, etc) or producing varying drone sounds across time presents new ways to passively inform users of things. A classic example of this is fan sounds alerting users that their computer is under heavy load, and perhaps something is going wrong. As modern fans get quieter, computer programs should offer similar interfaces to provide all kinds of information.

2024-08-05

1419.

VK Teams Bot API

teams.vk.com/botapi/tutorial

Yet another dialect of Markdown here!

2024-03-31

1211.

buserror/libmui

github.com/buserror/libmui

Classic MacOS & GS/OS widget library for linux (and other?) - buserror/libmui

2024-03-21

1202.

Interning strings in Go

commaok.xyz/post/intern-strings

In Go, a string is a (possibly empty) immutable sequence of bytes. The critical word here for our purposes is immutable. Because byte slices are mutable, converting between string and []byte generally requires an alloc and copy, which is expensive.

What if such conversions were cached? That would make comparing strings so much faster!: two integer comparisons (len and ptr). This article explains how this approach could be implemented.

A library implementing this:

It looks pretty small and simple. Despite having only 81 stars, it is used by 67.4k GitHub packages. Transitive dependencies. Found it at work accidentally. OpenSource woes.

2024-03-11

1196.

Choose Boring Technology

boringtechnology.club

Innovation tokens and whatnot.

2023-12-07

962.

Laurence Tratt: How Often Should We Sharpen Our Tools?

tratt.net/laurie/blog/2023/how_often_should_we_sharpen_our_tools.html

In favor of endless configuration.

2023-11-23

908.

szymonkaliski/cartographist

github.com/szymonkaliski/cartographist

Cartographist is an ‘experimental web browser optimized for rabbit-holing’ notable for its paned user interface. It is written in Node JS. I haven't tried it out yet.

See also blog announcement. The development seems stalled.

2023-10-22

812.

Uiua

www.uiua.org

A stack-based array programming language

808.

Farkup

concatenative.org/wiki/view/Farkup

Seems to be descending from the Portland markup family.

2023-10-12

692.

Carbon Dating HTML @ marginalia.nu

www.marginalia.nu/log/66-carbon-dating

2023-07-25

511.

Hosting SQLite databases on Github Pages - (or IPFS or any static file hoster) - phiresky's blog

phiresky.github.io/blog/2021/hosting-sqlite-databases-on-github-pages

It is possible to host read-only SQLite databases on static file hosters. Might be useful in some cases.

2023-07-14

451.

Computers are an inherently oppressive technology

www.devever.net/~hl/ruthlessness

This may seem a strange heading for someone whose career is in computers, yet I feel that this article has been a lifetime in the making. It is the product of intuitive observations and things that have stood out to me, even as a child, who even then could sense the sinister side of the most banal of technologies.

2023-06-14

343.

Rust Module System Encourages Poor Practices (Comparing to Go) [Dmitry Frank]

dmitryfrank.com/articles/rust_module_system_encourages_bad_practices

Go Go!

2023-06-13

336.

Lonely

tsk.bearblog.dev/lonely

When you are publishing your blog posts, there's almost little to no feedback whatsoever: You don't get the engagement from the audience in the comments, or the nice sweet email. Your audience and "fans" are hidden behind analytics numbers. And then, there's you and your Markdown editor.

Yes indeed, next no to no feedback is a norm. Relatable, except for the Markdown editor.

2023-06-11

316.

nf/fourtette

github.com/nf/fourtette

2023-05-31

266.

Chris's Wiki :: blog/web/VeryOldIfModifiedSince

utcc.utoronto.ca/~cks/space/blog/web/VeryOldIfModifiedSince

This feed fetcher was sending an If-Modified-Since HTTP header, but it had a rather striking value of 'Wed, 01 Jan 1800 00:00:00 GMT'. Naturally this doesn't match any Last-Modified value my feed has ever provided, and it wouldn't help if I used a time based comparison since all syndication feeds in the world have been changed since 1800.

2023-03-19

98.

Ebitengine - A dead simple 2D game engine for Go

ebitengine.org

Ebiten (/ebíteɴ/) is an open source game library for the Go programming language. Ebiten's simple API allows you to quickly and easily develop 2D games that can be deployed across multiple platforms.