It seems to me that the only way to reduce input lag is, then, to turn VSync off, then manually listen for the frame callback, and draw and commit when it arrives. So the cycle becomes wait-draw-commit-wait-draw-commit instead of draw-wait-commit-draw-wait-commit.

I'm digging into the interaction between compositors and clients a little, namely into how VSync and frame callbacks are handled by the different sides.

It looks like with VSync enabled, both XWayland and EGL let the application render, then wait for the frame callback right before committing the surface, which leads to up to 2 frames of input lag even with smart frame callback delivery (like in Weston) and with up to 3 frames of input lag with naive frame callback delivery.

good visualization of why Microsoft bought GitHub and started giving private repositories


I'm confused wrt. Variable Refresh Rate. Some people say it's only useful to workaround fullscreen games that don't care about timings. Others say hardware is broken because it flickers and correct VRR should be able to handle any refresh rate change.

I'm leaning towards completely ignoring VRR.

If there were a free and open source game which was an exact* clone of Minecraft beta 1.7.3 (circa 2011), with multiplayer support...

Would you play it?

I used to work on a piece of software something like this but dropped it due to lack of time. Now that I work on FOSS full time I have time to pick up an unserious project. I would rewrite it from scratch though, my old codebase has some serious systemic problems.

* Exact in terms of available blocks/items and their logic, compatible network protocol, texture pack compatibility, and supporting Minecraft beta 1.7.3 save files (aka Anvil saves); but not bug-for-bug compatible, not compabile with historical Java mods, and with improved performance; as well as very conservative inclusion of future features after compatibility is achieved

annotatesh will generate annotations for you shell scripts:

Right now only builtins and POSIX utilities are supported, function references are planned.

$ flatpak help
error: 'help' is not a flatpak command. Did you mean 'kill'?

Boy, that escalated quickly...

@bugaevc One of my favourite things about following along with Rust is how it gathers all the people who are deeply interested in zero cost abstractions and minimising allocs or locks. I'm not convinced anything I'll ever work on will really need it but efficiency is its own satisfaction.

Petition to remove the ability for JavaScript to manipulate scrolling from all web browsers

Travel to/from work should be paid time. In this case a lot of companies will start to love the remote working

I have HiDPI 4K screens on my laptop and at work. I've been using them for about 3 weeks. Yesterday I bought a regular 1920×1080 monitor to play VSRGs on, and man is the worse font rendering quality just striking my eyes now.

I wonder if two more months of this will be enough to make me consider getting a HiDPI screen for home use. I have a hard requirement on 144 Hz though and I'm not sure HiDPI 4K 144 Hz screens exist yet, I haven't looked into it.


js devs: *introduces bug in the transpiler that only triggers on windows on mondays*

@sir I did some tinkering yesterday on an implementation of this for Rust code. I doesn't work yet but I did set up the JSON generation and source parsing. The next step is to traverse the AST and generate the actual annotations.

at this point i bet youtube has like dedicated popup engineers

Debian 10 was released and it defaults to a GNOME Wayland session 🎉 🎉 🎉.

Kinda annoying thought that it packages a year old release of GNOME (3.30) that's not supported anymore :(

Show more
Mastodon for Tech Folks

This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either! We adhere to an adapted version of the TootCat Code of Conduct and have documented a list of blocked instances. Ash is the admin and is supported by Fuzzface, Brian!, and Daniel Glus as moderators. Hosting costs are largely covered by our generous supporters on Patreon – thanks for all the help!