mathstodon.xyz is one of the many independent Mastodon servers you can use to participate in the fediverse.
A Mastodon instance for maths people. We have LaTeX rendering in the web interface!

Server stats:

2.7K
active users

#semaphore

1 post1 participant0 posts today

It's interesting to read this #Semaphore #OSS announcement (https://semaphore.io/blog/semaphore-is-going-open-source) in the context of commoditising the complement (https://gwern.net/complement).

The only conclusion I can reach is that GH Actions has successfully monopolised the #CI market, so Semaphore give up and give away the software - commoditise CI - and pivot to enterprise support, where the real money is.

Semaphore · Semaphore is Going Open Source in 30 days - SemaphoreSemaphore is open-sourcing its core CI/CD platform under Apache 2.0, empowering developers with flexibility, transparency, and innovation.

I finally eliminated the need for a dedicated #thread controlling the pam helper #process in #swad. 🥳

The building block that was still missing from #poser was a way to await some async I/O task performed on the main thread from a worker thread. So I added a class to allow exactly that. The naive implementation just signals the main thread to carry out the requested task and then waits on a #semaphore for completion, which of course blocks the worker thread.

Turns out we can actually do better, reaching similar functionality like e.g. #async / #await in C#: Release the worker thread to do other jobs while waiting. The key to this is user context switching support like offered by #POSIX-1.2001 #getcontext and friends. Unfortunately it was deprecated in POSIX-1.2008 without an obvious replacement (the docs basically say "use threads", which doesn't work for my scenario), but still lots of systems provide it, e.g. #FreeBSD, #NetBSD, #Linux (with #glibc) ...

The posercore lib now offers both implementations, prefering to use user context switching if available. It comes at a price: Every thread job now needs its private stack space (I allocated 64kiB there for now), and of course the switching takes some time as well, but that's very likely better than leaving a task idle waiting. And there's a restriction, resuming must still happen on the same thread that called the "await", so if this thread is currently busy, we have to wait a little bit longer. I still think it's a very nice solution. 😎

In any case, the code for the PAM credential checker module looks much cleaner now (the await "magic" happens on line 174):
github.com/Zirias/swad/blob/57

Continued thread

Nice, #threadpool overhaul done. Removed two locks (#mutex) and two condition variables, replaced by a single lock and a single #semaphore. 😎 Simplifies the overall structure a lot, and it's probably safe to assume slightly better performance in contended situations as well. And so far, #valgrind's helgrind tool doesn't find anything to complain about. 🙃

Looking at the screenshot, I should probably make #swad default to *two* threads per CPU and expose the setting in the configuration file. When some thread jobs are expected to block, having more threads than CPUs is probably better.

github.com/Zirias/poser/commit

Absolutely loving my Social Media life these days.
As I say to many, your mileage may differ. I think it all comes down to who you chose to engage with, and the topics you reply to.
We all have the choice to be on certain services and not on others. We should all abide and respect the choices others make in this regard.

My main Social Media area these days is the Fediverse, particularly through a GoToSocial ActivityPub instance named Polymaths.social. Wonderful software, instance, admin, and neighbours!
Since 2009 I was on a Mastodon instance named LinuxRocks.online. It started off really well with good chats on the local timeline. However, over the past year certain people and their followers came in, the local chats got strained, and quite painful at times, and I knew I needed to move on. I was friendly with the owner, and moderators, but the time had come.

To access Polymaths.social I use Phanpy on a browser, and Tusky on my Android Phone.
For browser access I did use Semaphore for a while. Very clean and effective, but Phanpy is like KDE vs Mate. To me this is a good thing. I do use Semaphore at times to check on Follow Requests and to currently "Delete and Redraft" as needed.

Telegram is a large part of my life. I use it to talk with many friends, including Arianna and my Sister Catriona, podcrawl and Linux groups, as well as my own Christian group.

I'm still on Facebook, and yes I question that daily.
For now I am there.
As I said at the start, this is my choice, and I am there for really good friends, family, and groups.

A few weeks ago I activated my Instagram account, which had been set up for no follows and privates, just so I could view content as needed.
I was getting so many requests from good friends if I was on there, and ok... "caved in", but my involvement is relatively minimal. Mostly posting my own photos and commenting on those of friends.

Well, that's my online life, and it is good.
Feel free to reply back with questions, and DM as needed.

#SocialMedia #Fediverse #GoToSocial #Mastodon #ActivityPub #Phanpy #Tusky #Semaphore #Telegram #Facebook #Instagram

Replied in thread

@sebsauvage #Semaphore (interface web, pas d'appli) fait un peu ça, de la récupération partielle avec un "trou" dans la timeline entre , par exemple, les derniers pouets de la veille et le "premier paquet" du matin.
Mais il n'y a pas l'affichage de la durée du trou, il faut regarder les dates de publication des messages...

I just set layout.css.backdrop-filter.enabled to false in about:config on #Firefox and suddenly, #Pinafore / #Semaphore profiles are snappy and fast instead of highly laggy and causing the CPU to heat up quickly and the fan to spin up.

Apparently, the implementation of filter effects in Firefox is extremely bad and unperformant (and needs constant redoing on scrolling and whatever).

Primer episodio de Accesibilidad con Tecnologías libres tras el cambio de instancia (relevante para el Podcasting 2.0)

Producido por @raivenra , tenemos las siguientes secciones:

· Odisea en el ciberespacio, con David Marzal @DavidMarzalC .
· Accesibilidad web, con Pablo Arias.
· Otros mundos, otras realidades, con Thais Pousada.
· Clases con Pascal, con David Pacios
· Érase una vez, con Enrique Varela @evarela .
· Diseño para todos, con Jonathan Chacón @jonathanchacon .

Enlaces, reproductor y más info en:
accesibilidadtl.gitlab.io/11

- Feed: accesibilidadtl.gitlab.io/feed

CC: @eva_m

#AccesibililidadTL #AccesibilidadConTecnolgiasLibres #a11y #ATL

#Phanpy #Semaphore #ElkZone #Mona #Pachli #Tusky #Tweescake #TWBlue
#BuscaApps #URA #Mapcesible #Joomla #TalentosInclusivos

Accesibilidad con Tecnologías Libres · Union Europea, Fediverso, Datos abiertos, Aplicaciones, Joomla, Talentos inclusivos
More from David Marzal

#semaphore is really delightful to use. the user interface is clean and accessible. one can really see that the developers really cared about accessibility; it even has two different modes for labelling toots/nots/articles. for once, I don't feel lost inside a bloated, inaccessible user interface, but at a place that was designed to be inviting, a place where I feel accepted and seen, a place that celebrates diversity.

too bad that semaphore is also unmaintained. does anycreatue know another maintained continuation of the #pinaphore project? Although I can program (in theory) I don't think I would be able to work on such a project myself :/

~moss