On this day in 1983, Stanislav Petrov saved the world.
NewPipe is an open-source streaming client for Android that lets you watch/download from YT without ads. Recently they also added support for PeerTube, Bandcamp and more. I can now stream my favourite albums from Bandcamp without dealing with a browser.
I use this to listen to music without wasting bandwidth on video streams and battery on keeping the screen on.
Wow, SICP really has a bit of everything in it!
Functional programming, OOP, reactive programming, building DSLs, concurrency, building an interpreter...
I'm really liking it. Seeing every concept together like this, implemented from the ground up, it's liberating. The book frees you from the constraints of the language you are working with, and gives you the tools to build anything you want.
Happy to see GNOME Console in GNOME 43 support the system colour scheme.
Now if it gets light and dark theme support at some point, I believe I’ll be switching back to it (the hard-coded light theme is way to garish for my eyes currently).
Also, if anyone here’s working on that, read my post on Lipstick on a Pig as it might give you some ideas: https://ar.al/2022/08/17/lipstick-on-a-pig/
Oooohh, someone made GTK4 bindings for common lisp. Imagine this, combined with a reactive library and a declarative macro to build the UI. ♥️
I usually hate on Windows. But I really like the features on the latest update.
- system wide live captions
- tabs in Windows Explorer
- effects over the webcam and microphone (like background blur, audio noise filtering, ...), system wide
- focus mode (kinda like a nicely integrated pomodoro timer)
- various other stuff
"This program celebrates the close connection between obfuscation and conciseness, by implementing the most concise language known, Binary Lambda Calculus (BLC)."
You know, when you literally have to work with multiple type systems (gobject, Rust types, ...), using macros is the only way to make a language capable of working nicely with both systems.
I'm getting more convinced that using a lisp is the only way out.
Carp is one of the few lisps without a GC and with great C interop. This means creating a wrapper to the GTK libraries should be pretty straight forward, expect for the generation of Carp types.
But considering that the people behind the rust bindings have already created the infrastructure necessary to generate Rust types, generating Carp types should be even easier, considering that Carp let's you create macros easily.
I'm again looking at the language Carp, a lisp with type inference and a borrow checker.
But, in both situation there's a common problem. Making macros is hard.
That was surprisingly easy. CssProvider expose parsing errors https://docs.gtk.org/gtk4/class.CssProvider.html
I simply convert them to LSP diagnostics and re-use the logic I implemented to inline LSP diagnostics in GtkSourceView.
This approach works well with out-of-process preview too, as diagnostics are obviously serializable.
A Complete Beginner's Guide to Electric Vehicles - Technology Connections: https://invidious.kavin.rocks/watch?v=Iyp_X3mwE1w (YouTube via Invidious)
I think it is vital to understand this technology!
I see so so many people have their imaginations stunted by EV's existance, not understanding how capable they are.
We need to advocate:
1) Switching to electric cars is entirely feasable as-is for almost everyone.
2) While they fill a need, other options like trains should be favored!
MSWasm (https://arxiv.org/abs/2208.13583) offers the tantalising dream of memory safety for unsafe code... Yes, there's perf overhead, but the approach can benefit from CHERI-like hardware techniques in the future.
I like FOSS and programming. I play the drums
Linux geeks doing what Linux geeks do...