1168 bookmarks

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

2024-02-05

1113.

sustrik/tiles: Programmatic code generation

github.com/sustrik/tiles

Tiles is a simple Python module meant to help with code generation.
It provides a way to work with rectangular areas of text as atomic units.
This is particularly important if proper indentation of the generated code
is desired.

1111.

Don't Publish and Pray | <(^.^)> tsuki

tsk.bearblog.dev/dont-publish-and-pray

Don't publish a blog post, without any marketing, and expect people to magically discover it.

It doesn't work like that. I'm sorry.

At the very least, you can promote your blog to social media platforms like Reddit, Twitter or Hacker News.

1110.

Программа Preview

grishaev.me/preview

Гришаев рассказывает, какой Preview.app на маке крутой. Это всё правда, и фичи действительно крутые. Пользуюсь всеми, кроме импорта с Айфона и лупы. Да, даже подпись я так ставил!

1109.

Disdain for Profanity is a Luxury Belief

starbreaker.org/blog/disdain-profanity-luxury-belief/index.html

Matthew comments on an article that profanity is to be avoided. He thinks that it's not up to the article author to decide and that he will swear as before. I'll continue this thread and reply here.

I don't swear in Russian, like, at all. People usually don't notice this, but when they do, they are so surprised. Swearing is a norm with Russian youth, and I don't accept that. The only problem with not swearing is the discomfort when I want to quote somebody who said something I wouldn't say; I haven't found a solution yet. Some people find joy in trying to persuade me to say something “bad”.

I'm more tolerant in that regard in English, though. Perhaps it's because it's not my native language. I don't swear much though. You'd have to invest a lot of time to find an English text of mine where I said something profane. I myself wouldn't even bother.

P. S. Definitions of “profanity” vary. I have my own.

1108.

Introducing Pkl, a programming language for configuration :: Pkl Docs

pkl-lang.org/blog/introducing-pkl.html

Apple released a language for configs. It's well-designed, take a look. Has Go bindings. I would've considered it if I needed a config language.

1107.

Malleable Systems Collective

malleable.systems

The Malleable Systems Collective catalogs and experiments with malleable software and systems that reset the balance of power in computing

1106.

Safer Enums · npf.io

npf.io/2022/05/safer-enums

There’s no size difference between a string and a struct{ string } and it’s just as easy to read as a straight string. Because of the String() method, you can pass these values to %s etc in format strings and they’ll print out the name with no extra code or work.

2024-02-04

1105.

On Rigorous Error Handling

250bpm.com/blog:140
1104.

Better HTTP server routing in Go 1.22 - Eli Bendersky's website

eli.thegreenplace.net/2023/better-http-server-routing-in-go-122

The fish told me of this cool new feature. In short,

func main() {
  mux := http.NewServeMux()
  mux.HandleFunc("GET /path/", func(w http.ResponseWriter, r *http.Request) {
    fmt.Fprint(w, "got path\n")
  })

  mux.HandleFunc("/task/{id}/", func(w http.ResponseWriter, r *http.Request) {
    id := r.PathValue("id")
    fmt.Fprintf(w, "handling task with id=%v\n", id)
  })

  http.ListenAndServe("localhost:8090", mux)
}

Handy!

1103.

Такой же

grishaev.me/the-same

Гришаев решил корабль Тезея.

1102.

How Doom didn't kill the Amiga

www.datagubbe.se/afb

2024-02-03

1099.

Flancia Meet | Flancia

flancia.org/meet

Flancia Meet is a weekly video conference where we discuss our projects and goals, and occasionally work in public. Most participants are programmers.

I am here often. I helped to write this page.

1098.

Поделаем

podelaem.ru

Это приватный сервис для ведения задач, как рабочих, так и домашних. Данные хранятся в локальном хранилище браузера (localStorage).

Local first!

1097.

comic anhs – anhvn

anhvn.com
1096.

depp - No frills static page generator for Git repositories

git.8pit.net/depp

SSG for Git is something new for me.

1095.

Paperless-ngx

docs.paperless-ngx.com

Turn paper documents into a searchable digital database.

1094.

マリウス . A World without Passports

マリウス.com/a-world-without-passports

The author tells a brief history of passports: they are very recent. China got them since Han dynasty, West got them since First World War. What about Russia? I think it was Peter the First who introduced them? No? It's always Peter the First...

Anyway. Passports are used for surveillance, and with the ongoing digitalization, will be used even more. Everything is tracked with no real need for the citizens. Something like NFT could be used instead. The author talks about age verification and phone contracts. I thought of NFT for medicine: the doctor doesn't really need your name.

What will the world without identification look like? Dunno. I don't really want to lose the ability to get back my money in case I get scammed; how would that work without identification?

1093.

akavel's digital garden

akavel.com
1092.

MVC vs. OOP

www.yegor256.com/2016/12/13/mvc-vs-oop.html

MVC is a very popular architectural design pattern that goes absolutely against the spirit of object-oriented programming.

Teehee.

2024-02-02

1091.

HTTPRange-14 - Wikipedia

en.m.wikipedia.org/wiki/HTTPRange-14

A weird problem

1090.

Analog Nowhere

analognowhere.com

Comics about UNIX??

In not too distant future, in a universe not too dissimilar to ours, the world is barren. Vast sprawls of arid deserts and inhospitable jungles cover the face of the planet, while the majority of its denizens persist in gigantic walled-off Metacities, governed by the omni present gov-corporations. These cities are home to many beings living under the tyranical regimes of their watchful overlords. This is the age of technocrats, transhumanists and digisophers, all slaves to meticulously crafted closed hardware, deceptive software and cyber practices designed to enthrall all who wish to persist on this new frontier of the future.

1089.

archive.ph

archive.today

Archive.today is a time capsule for web pages! It takes a 'snapshot' of a webpage that will always be online even if the original page disappears. It saves a text and a graphical copy of the page for better accuracyand provides a short and reliable link to an unalterable record of any web page

1088.

Don’t prefill config files

www.makeworld.space/2024/02/no_prefill_config.html

The biggest design mistake I made with Amfora, my first community open source project, was autogenerating config files. On startup, the application looks for a config file, and creates one if it doesn’t exist, full of all the application defaults. At the time, I thought this was great, as it documents all the existing options, and makes them very visible to the user in case they want to change them. In the end, this decision created a lot of headaches and is not something I’d ever do again.

makeworld is right! I had the same problem in Mycorrhiza but didn't suffer great consequences because the configuration design didn't change much.

2024-02-01

1087.

I recently booted old (Freebsd 12) VM and was surprised how _much_ more performa... | Hacker News

news.ycombinator.com/item?id=39216976

A hackernews claims their internet experience is faster on FreeBSD due to a superior internet stack. Is it true!?

1086.

Post-Quantum Cryptography in January 2024

www.netmeister.org/blog/pqc-2024-01.html

It's 2024 - do you know where your post-quantum cryptography is?

Q-day is in 10 years max.

2024-01-31

1085.

2020-12-12 Computer Competency

alexschroeder.ch/view/2020-12-12_Computer_Competency

Few people know how to use computers.

1084.

Some activities are harder than others

alexschroeder.ch/view/2024-01-31-activities

Alex tells us that, for him, baking and cooking are easier than programming and soldering, because the errors there average out. As for me, this is completely inverse.

In programming, an error never fixes itself. You can observe it and fix it, you can write tests. You can run the program multiple times. It's you who fixes it, and you can understand how it's done. It's measurable!

Meanwhile, cooking is a nightmare. Burning something is routine for me. Is that too much or too little oil? For how long do I fry? What do I do with these spices? Do they really affect the taste? And to observe something, I can't rely on symbolic things like text. No, I have to look (is this color good? No idea!), smell (as if I know the difference) and taste (nothing more inaccurate).

I'm happy when something can be cooked with a timer. 15 min for buckwheat? I'm in. I'm more happy when the time is short. 4 min for this thin kind of spaghetti? Already boiling water!

I mean, even boiling water is not simple. My parents told me to wait until the correct bubbles appear. I'm waiting for the scary ones. Also, salt is supposed to make it boil faster. How much salt do I add?

And I didn't even talk about plants, which Alex also considers easy. They're not 😭

1083.

Well-known Secrets of AmigaDOS

www.datagubbe.se/adosmyst

Cute.

2024-01-30

1082.

The 4-letter-word word that makes my blood boil

dev.to/marcuscreo/the-4-letter-word-word-that-makes-my-blood-boil

“JUST” It's one of the worst four-letter words I know.

Автора бесит слово «просто». Меня тоже! Я вот стараюсь его искоренить из себя. Непросто это всё!!

2024-01-29

Reposted 1080.

Portable EPUBs

willcrichton.net/notes/portable-epubs#epub-content/EPUB/index.xhtml$

A proposal for the next generation of portable documents.

Reposted 1079.

Вложенность

grishaev.me/nesting-01

Беру любой JSON и вижу, как его можно упростить, убрав лишнюю вложенность. Вдвойне обидно, что на эту вложенность кто-то тратил время, а она не нужна!

Reposted 1078.

C Preprocessor tricks, tips, and idioms

github.com/pfultz2/Cloak/wiki/C-Preprocessor-tricks,-tips,-and-idioms

2024-01-26

1076.

I discovered a tiny frog that lives its whole life inside one plant

www.theguardian.com/environment/2024/jan/25/tiny-frog-lives-whole-life-inside-one-plant-brazilian-mountain-aoe

Everyone told me there is no water on top of this Brazilian mountain, there won’t be any frogs. Now I’ve dedicated my life to preserving this incredible species

2024-01-23

Reposted 1075.

Mapping or Visualizing The #Fediverse and #Mastodon

www.mguhlin.org/2022/11/mapping-or-visualizing-fediverse-and.html
1074.

paperwm/PaperWM

github.com/paperwm/PaperWM

PaperWM is a Gnome Shell extension which provides scrollable tiling of windows and per monitor workspaces. It's inspired by paper notebooks and tiling window managers.

1073.

YaLTeR/niri: A scrollable-tiling Wayland compositor.

github.com/YaLTeR/niri

Windows are arranged in columns on an infinite strip going to the right.
Opening a new window never causes existing windows to resize.

Every monitor has its own separate window strip.
Windows can never "overflow" onto an adjacent monitor.

Since windows go left-to-right horizontally, workspaces are arranged vertically.
Every monitor has an independent set of workspaces, and there's always one empty workspace present all the way down.

All these scrolling WM:s sound so fun! I want to try one one day.

2024-01-21

1072.

SocialHub

socialhub.activitypub.rocks

Where ActivityPub developers coordinate their efforts to make the Fediverse a great space for cooperation

A forum for the fedidevs. What's funny is this notice it shows on my outdated Safari:

Unfortunately, your browser is unsupported. Please switch to a supported browser to view rich content, log in and reply.

This sentence contains to a funky website that recommends some browsers. Links2 is not there for some reason.

I should join the forum though, as I'm a proud fedidev now!

1071.

Barcoding bees - The Apiarist

theapiarist.org/barcoding-bees

Scientist labeled a colony of bees with QR codes and observed what happened. Turned out, information flow in the colony is pretty effective, it's not just random. Also I learned of trophallaxis.

2024-01-20

1070.

Magic numbers in C

250bpm.com/blog:43

Replacing all magic numbers with variables/constants is not always good. Think.

1069.

Finish your stuff

250bpm.com/blog:50

If there is one principle that should be added to the UNIX philosophy, it is:

"Finish your project."

Let me list my finished projects.

  • Uh...

I can't even say Mycorrhiza is finished despite it being in maintenance mode!

1068.

Federation is the Future for an Open Web

beza1e1.tuxen.de/federation_future.html

P2P technology is doomed on mobile [because of small batteries]. For a democratic web, we need to work on federation.

The author thought so in 2016. 8 years later I'm developing for the federated web, cool. I like how they mention Diaspora, which is history now.

1067.

Slide design for graphically-challenged people

beza1e1.tuxen.de/slide_design_programmers.html

If you feel unsure about colors, then do not use colors. Black on white is enough. Syntax highlighting might be an exception, but even there black on white is ok.

1066.

Hard Things in Computer Science: Naming things

250bpm.com/blog:110

Martin came up with the idea of using something like the roots from semitic languages for naming things. I thought of the same before I read this article, but it's good to have it written down by somebody.

1064.

Topic Challenge: The Social Lives of Bees - Björn Wärmedal

warmedal.se/~bjorn/posts/2021-10-06-topic-challenge-the-social-lives-of-bees.html

bees

1062.

OpenSearch description format | MDN

developer.mozilla.org/en-US/docs/Web/OpenSearch

The OpenSearch description format can be used to describe the web interface of a search engine. This allows a website to describe a search engine for itself, so that a browser or other client application can use that search engine. OpenSearch is supported by (at least) Firefox, Edge, Safari, and Chrome. (See Reference Material for links to other browsers' documentation.)

Flancian recommended me this tech. I might want to implement it for Betula, maybe. Gotta investigate.

2024-01-19

1061.

vore

git.j3s.sh/vore

a simple, multi-tenant feed reader

Reposted 1060.

martinvonz/jj: A Git-compatible VCS that is both simple and powerful

github.com/martinvonz/jj

While not as rigorous as systems like Darcs and Pijul (which are based on a formalized theory of patches

1059.

A small ActivityPub debugging server on Glitch

tinysubversions.com/notes/activitypub-tool

An ActivityPub debugging instance? Gotta take a look, probably.

2024-01-18

1058.

ThinkWiki

www.thinkwiki.org/wiki/ThinkWiki

A wiki on Thinkpads and Linux.

1057.

OLD COMPUTER RESCUE - X201

www.triapul.cz/automa/old-computer-rescue-x201

Another thinkpad post for my collection.

1056.

TubeArchivist

www.tubearchivist.com

Archive whole YouTube channels.

2024-01-16

1055.

RapidAPI for Mac – The most advanced API tool for Mac

paw.cloud

RapidAPI for Mac is a full-featured HTTP client that lets you test and describe the APIs you build or consume. It has a beautiful native macOS interface to compose requests, inspect server responses, generate client code and export API definitions.

Grishka recommended me this for HTTP probing. It helped me!

1053.

ФФФ

bureau.ru/about/fff
1052.

Where we stand regarding the climate

alexschroeder.ch/view/2024-01-14-climate

2024-01-13

1049.

LibriVox | free public domain audiobooks

librivox.org

Libre audio books. Recommended by Flancian.

1047.

Lobsters interview with Ted Unangst | Lobsters

lobste.rs/s/ppopah/lobsters_interview_with_ted_unangst

Written before the Fedi times.

1045.

OPenn: LJS 51 Collection of alphabets and encoded correspondence

openn.library.upenn.edu/Data/0001/html/ljs51.html

Collection of encrypted correspondence between the compiler and various correspondents, in approximately 150 alphabets, accompanied by transcriptions of the letters in Arabic. The compiler cites Shihāb al-Dīn al-Jindī al-ʻAlāʼī, Burhān al-Dīn al-Qudsī, and Taqī al-Dīn Muḥammad ibn Jaʻfar al-Ḥusaynī as authorities for some of the alphabets. The manuscript is incomplete, lacking its beginning and end. Occasional marginal notes. Some worm damage in margins.

Via https://t.me/linguopunk/549

Арабская книга 14 века с собственным тайным алфавитом для тайных записей

1 2 3 5 7 8 9 10 11 12 13 14 15 16 17 18 19