Threads for aleph

  1. 11

    Since Python was mentioned but not polars: https://github.com/pola-rs/polars is a data frame library for Rust (it can be used as a Python lib as well) that is a welcome alternative to pandas. For processing, slicing, grouping etc. tabular data it provides an interesting expression-based interface that makes Rust a better fit for data processing and some data analysis tasks. It provides a number of cargo features that allows picking the functionality you need.

    1. 4

      I can second this, I’ve been doing a number of data slicing and aggregation tasks at home lately so I’ve taken to using polar-rs quite a bit. If you’re familiar with the apache arrow format and data model you should be able to grok polar-rs decently enough.

    1. 4

      So in order to make your site slightly more accessible to screen readers, you’ll make it completely inaccessible to browsers without JavaScript?

      1. 6

        i was born without javascript and life has been so hard for me

        1. 2

          Accessibility isn’t just about disorders.

          1. 7

            I think @river’s point is that it’s most important to accommodate limitations due to circumstances beyond the user’s control. And these are limitations that can prevent people from getting or keeping a job, pursuing an education, and doing other really important things. In all cases that I’m aware of, at least within the past 15 years or so, complete lack of JavaScript is a user choice, primarily made by very techy people who can easily reverse that choice when needed. The same is obviously not the case for blindness or other disabilities. Of course, excessive use of JavaScript hurts poor people, but that’s not what we’re talking about here.

            1. 1

              If using <details> made the site impossible to use for blind people, that would obviously be much more important, but here the complaint is that… the screen reader reads it slightly wrong? Is that even a fault of the website?

              1. 5

                Fair point. Personally, I wouldn’t demand, or even request, that web developers use JavaScript to work around this issue, which is probably a browser bug, particularly since it doesn’t actually block access to the site.

                On the other hand, if a web developer decides to use JavaScript to improve the experience of blind people, I wouldn’t hold it against them. IMO, making things easier for a group of people who, as @river pointed out, do have it more difficult due to circumstances beyond their control, is more important than not annoying the kind of nerd who chooses to disable JS.

                1. 1

                  Well, disabling JS is not always a choice. Some browsers, such as Lynx or NetSurf, don’t support it. But yeah, I generally agree.

                  1. 3

                    I suppose it’s possible that some people have no choice but to use Lynx or Netsurf because they’re stuck with a very old computer. But for the most part, it seems to me that these browsers are mostly used by tech-savvy people who can, and perhaps sometimes do, choose to use something else.

                    1. 3

                      I suppose it’s possible that some people have no choice but to use Lynx or Netsurf because they’re stuck with a very old computer. But for the most part, it seems to me that these browsers are mostly used by tech-savvy people who can, and perhaps sometimes do, choose to use something else.

                      And what percentage of those lynx users is tech-savvy blind people? Or blind people who are old and have no fucks left to give about chasing the latest tech? There are, for instance, blind people out there who still use NetTamer with DOS. DOS, in 2022. I’m totally on board with their choice to do that. Some of these folks aren’t particularly tech savvy either. They learned a thing and learned it well, and so that’s what they use.

                      1. 1

                        Many users who need a significant degree of privacy will also be excluded, as JavaScript is a major fingerprinting vector. Users of the Tor Browser are encouraged to stick to the “Safest” security level. That security level disables dangerous features such as:

                        • Just-in-time compilation
                        • JavaScript
                        • SVG
                        • MathML
                        • Graphite font rendering
                        • automatic media playback

                        Even if it were purely a choice in user hands, I’d still feel inclined to respect it. Of course, accommodating needs should come before accommodation of wants; that doesn’t mean we should ignore the latter.

                        Personally, I’d rather treat any features that disadvantage a marginalized group as a last-resort. I prefer selectively using <details> as it was intended—as a disclosure widget—and would rather come up with other creative alternatives to accordion patterns. Only when there’s no other option would I try a progressively-enhanced JS-enabled option. I’m actually a little ambivalent about <details> since I try to support alternative browser engines (beyond Blink, Gecko, and WebKit). Out of all the independent engines I’ve tried, the only one that supports <details> seems to be Servo.

                        JavaScript, CSS, and—where sensible—images are optional enhancements to pages. For “apps”, progressive enhancement still applies: something informative (e.g. a skeleton with an error message explaining why JS is required) should be shown and overridden with JS.

                        (POSSE from https://seirdy.one/notes/2022/06/27/user-choice-progressive-enhancement/)

          2. 2

            I mean not for not, but I’m fairly certain you can constrain what can be executed in your browser from the website.

            I’m certainly okay with a little more JS if it means folks without sight or poorer sight can use the sites more easily.

            1. 6

              I’m certainly okay with a little more JS if it means folks without sight or poorer sight can use the sites more easily.

              In my experience (the abuse of) JavaScript is what often leads to poor accessibility with screen readers. Like, why can I not upvote a story or comment on this site with either Firefox or Chromium? ISTR I can do it in Edge, but I don’t care enough to spin up a Windows VM and test my memory.

              We need a bigger HTML, maybe with a richer set of elements or something. But declarative over imperative!

              1. 2

                Like, why can I not upvote a story or comment on this site with either Firefox or Chromium?

                I use Firefox on desktop and have never had a problem voting or commenting here.

                We need a bigger HTML, maybe with a richer set of elements or something. But declarative over imperative!

                The fallback is always full-page reloads. If you want interactivity without that, you need a general-purpose programming language capable of capturing and expressing the logic you want; any attempt to make it fully declarative runs into a mess of similar-but-slightly-different one-off declaration types to handle all the variations on “send values from this element to that URL and update the page in this way based on what comes back”.

                1. 6

                  I use Firefox on desktop and have never had a problem voting or commenting here.

                  Yes, but do you use a screenreader? I do.

                  The fallback is always full-page reloads. If you want interactivity without that, you need a general-purpose programming language capable of capturing and expressing the logic you want;

                  Sure, but most web applications are not and do not need to be fully interactive. Like with this details tag we’re talking about here? It’s literally the R in CRUD and the kind of thing that could be dealt with by means of a “richer HTML”.

            2. 1

              On modern browsers, the <details> element functions builtin, without JS.

              In fact that’s the entire point of adding the element.

              1. 1

                Yes, and the article recommends against using <details>.

            1. 3

              Great post, very cool project.

              It’s crazy how ideas are just floating around.

              For the past few months I’ve been thinking about what I call “singe-server web apps” and “single-binary web apps”.

              What i’m interested in is simplifying the deployment of web apps on services like Linode or Digital Ocean by just uploading and running a single binary that contains everything needed including the DB and scheduled tasks. I was thinking about using Go with embedded HTML, CSS and images and SQLite as the DB. One could also use something like Litestream to make sure the DB is safe in the event of a major server failure, but that would require a “second server/binary”.

              I don’t really know what this is but the concept feels very appealing to me. Kinda reminds me of the PHP days where you just upload a script and just opened the browser. I know PHP still exists but it requires a web server and configuration to run. The idea of a single binary feels even more portable than PHP.

              Also https://redbean.dev/ is a very inspiring and interesting project.

              1. 2

                These exist. They are called unikernels and lots of people are using them.

                1. 1

                  What is the advantage over CGI?

                  1. 2

                    CGI would assume that you are in a multi-process environment. Most unikernels are single-process (many are multi-threaded though). CGI would also assume all the usual unix trappings such as users, interpreters, shells, etc.

                    The most obvious benefit is ease of use. There are no shells or interactivity with unikernels so when you deploy it - it’s either running or it’s not. While you can configure the server there isn’t ssh running where you pop in and do extra configure post-deploy.

                    Then there is security. CGI quite literally is the canonical “shelling out” mechanism. CGI and the languages that heavily used it in the 90s and mid aughts were fraught with numerous security issues because of this practice. You have to deal with all the input/output sanitization and lots of edge cases.

                    Then there is performance. CGI is woefully under performant since you have to spawn a new process for it and under more modern systems that use “big data” dealing with heaps in tens of gigabytes that becomes ridiculously bad.

                    Anyways, very few people actually use ‘cgi’ as it were today. For languages that need to rely on a front-end proxy like nginx (because they are single process, single thread - like ruby, python, node, etc.) they siphon incoming requests off the front-end (nginx) and push it to your app back-end (your actual application).

                    Unikernels work really well for languages that deal with threads like Go, Rust, Java, etc. They work well for scripting languages too but what I just described above the back-end becomes individual vms instead of worker processes. They basically force the end-user to fit their workloads to the appropriate instance type.

                    1. 1

                      The most obvious benefit is ease of use. There are no shells or interactivity with unikernels so when you deploy it - it’s either running or it’s not. While you can configure the server there isn’t ssh running where you pop in and do extra configure post-deploy.

                      Isn’t that anti ease-of-use? I like to be able to go in and dig around when something goes wrong.

                      1. 2

                        IMO this makes debugging significantly easier than deploying to a linux system. If I throw on my devops hat and start thinking about all the times pagerduty woke me up at 2am in the morning half the time is spent figuring what process is causing an issue. Something is opening up too many sockets too fast? Open up lsof to figure what process it is. I can’t ssh in because logfiles are overflowing the disk? Now I have to hunt down the cronjob that I didn’t know existed that didn’t have proper log rotation on. In unikernel land there really is only one process so you know which program is causing the issue. Instrument it, ship your logs out and you are going to solve the vast majority of issues quickly.

                        Also there are other cases where debugging is significantly easier. Since it’s a single process system you can literally clone the vm in production (say a live database), download the image and attach gdb to it and now you not only are going to find the root of the problem but you are going to do so in a way that is non-destructive and doesn’t touch prod.

                        As an aside the ease-of-use I was referring too was not pertaining to debugging (although that is insanely easy) but to deployment/administration as compared to the dumpster fire of k8s/“cloud native”. Unikernels shift all the administration responsibilities to the cloud of choice. So while you can configure networking/storage to your hearts content you don’t have to actually manage it. Most people don’t understand this point about unikernels - they think a k8s like tool is necessary to use them which is totally not true - this won’t make sense to most people until they actually go deploy them for the first time and then this clicks.

                        1. 1

                          I’d argue that’s a combination of A) familiarity, and B) linux OS having built out robust introspective/investigative tooling over decades.

                          A unikernel has the advantage that many of those investigative tools are for problems that no longer exist, and the disadvantage that it no longer has those tools baked-in for the problems that it does still have.

                          EG you don’t have du, but you also don’t have a local filesystem that can bring down the server when you accidentally fill it with logs/tempfiles.

                          1. 2

                            Most unikernels actually do work with filesystems as most applications that do anything want to talk to one. Databases, webservers, etc. Logging is dealt with mostly 2 ways: 1) You either don’t care and you just rely on what goes out the serial - which is stupid slow so not really a prod method or 2) You do care and you ship it out via syslog to something like elastic, papertrail, splunk, etc.

                            1. 1

                              EG you don’t have du, but you also don’t have a local filesystem that can bring down the server when you accidentally fill it with logs/tempfiles.

                              So how do you find out that your app e.g. crashes because some database key was NULL?

                              1. 2

                                You have logging and/or crash reporting and you do something useful with them. It’s your problem to do though, but that’s not really any different than deploying to a traditional stack.

                                1. 1

                                  OK, but where do the logs go? If they go to another server, which then stores them on a filesystem you’ve just kicked the can elsewhere.

                                  1. 1

                                    Last I checked kicking the can down the road is most of IT :)

                                    1. 1

                                      Sure, but you can’t argue that e.g. you don’t have a filesystem to manage.

                    2. 2

                      If you wanted to use rust (or see about statically linking in a sqlite VFS via cgo) you could see about using https://GitHub.com/backtrace-labs/verneuil for sqlite replication. Completely in-process and exposes both a rust and C interface. It works quite well for all my home use cases, like for example replicating my blogs sqlite db to a s3 blob store for easier rollbacks.

                    1. 1

                      The Ugly: The speakers are truly terrible. They sound like a potato inserted into the anus of a dying llama and that’s just awful. It’s so bad that I won’t watch my favorite Jupiter Broadcasting shows on YouTube on this device without headphones. Honestly the OEM (Clevo) should hide their head in shame on this one.

                      Yep. The Lemur Pro I’m typing this on has similarly atrocious speakers.

                      1. 1

                        Yeah they’re usable but not the greatest, they occasionally sound tinny but otherwise work in a pinch.

                        1. 1

                          One of the first things I do when I set up linux on a new laptop is disable the onboard sound. They should just stop shipping laptops with built-in speakers, they’re all pretty bad, and pluggable/bluetooth speakers or headphone will almost always be a better experience.

                          1. 1

                            My T450 had alright speakers, and my (work) MacBook Pro has good ones. The S76 speakers are bad even by the standard of laptop speakers.

                        1. 2

                          Packaging some new Prometheus exporters for my home setup for nix and probably working through more of my anime and movie backlog.

                          Maybe deep clean the house as well.

                          1. 1

                            which exporters are those? I currently only use the node-exporter for my servers.

                            1. 1

                              A deluge torrent client exporter, modifying my network exporters, followed by seeing about getting a custom build of jellyfin going with a Prometheus endpoint enabled for stats on my media library.

                            1. 3

                              It does, but different! It’s specifically called out in the README.

                            1. 7

                              I know enough of ddevault to understand why he went with IRC instead of Matrix. But I think it is the wrong choice. There’s a reason why sr.ht uses git instead of CVS (or RCS). Similarly IRC should be replaced with Matrix.

                              1. 12

                                I’m not sure Matrix is obviously better than IRC, especially not on a protocol level; it might have more features than IRC right now, but I think half of the point of the project was to try and fix that disparity (?)

                                We already have lots of Matrix clients that work pretty well; why should people not be allowed to work on IRC clients, too, especially since we don’t have as much development going on there?

                                1. 9

                                  I find that a very weird statement. If you’re talking about an org of a certain size you can say it makes sense they choose X over Y. But this is a very small org that provides a service to its paying customers, but most probably because they use IRC themselves. Nothing should be replaced if people are happy to use it.

                                  1. 6

                                    Matrix is still AFAIK, Not Great™ to operate because the server guzzles resources and lacks a lot of moderation features (which can be hard to implement due to the DAG).

                                    1. 2

                                      So on a resource front I think it definitely depends on the server implementation you use.

                                      I’ve moved to using the conduit home server implementation which is using 500MB RES in some high volume channels.

                                      I don’t have numbers on hand but dendrite and synapse both used gigs of RES mem iirc.

                                      Now admittedly compare that to an ircd which is no doubt much lower.

                                      As far as mod features yeah matrix can use more things in the spec, which probably will be hard to implement.

                                      1. 2

                                        FWIW I’m running Synapse with a ton of open channels across multiple homeservers and I’m not running into any resource issues on a VPS with 2 GB of RAM (previously 1, but it was running a bit tight) and some swap. I expect Dendrite, the new Go homeserver, to cut resource usage down significantly once it stabilizes.

                                        1. 1

                                          Synapse has improved a lot.

                                        2. 4

                                          I don’t think this is a relevant critique. I do, personally, think that Matrix is the better protocol and I use it myself, but sr.ht uses IRC themselves and is just offering a service to its paying customers to use IRC. If you find that valuable, you can pay for it or use it along with your existing sr.ht account, and if you don’t, you don’t need to. 🤷 . If they used XMPP instead, they could even offer similar XMPP services.

                                          1. 3

                                            Do you mind clarifying what parallels you’re drawing between CVS vs Git and IRC vs Matrix?

                                            1. 7

                                              CVS and IRC are hosted on a central server, Git and Matrix are distributed/federated.

                                              1. 10

                                                That makes sense; I’m not sure that alone is an argument that Matrix is an unqualified better choice than IRC though. Matrix is a very heavy ecosystem that has relatively few implementations, actually setting up a homeserver is an arduous process, the homeservers tend to be pretty resource intensive which presents scalability issues, especially for a more “independent” service which is not backed by a cloud monopolist with compute resources coming out the wazoo. IRC is not federated, but the relative ease in which IRC servers are spun up and their undemanding operational requirement smake it far more effectively decentralised as an ecosystem than Matrix.

                                                Matrix also seems not to fit a lot of the ‘ethos’ that sourcehut espouses; in-house developed software that’s for-purpose and aiming to be pragmatic in both terms of use and design, often using technologies and workflows that free software developers already regularly use. IRC fits into this category much neater than Matrix does. It also feels to me personally that the advantages of federation are not as pronounced in real-time (synchronous) chat as source control.

                                                1. 1

                                                  IRC is not federated

                                                  what do you mean by this? IRC networks consist of many interconnected servers run by different people

                                                  1. 3

                                                    IRC is a closed federation. Matrix/XMPP are open federations (that can be limited by allow/denylists or firewalls)

                                                    1. 1

                                                      IRC servers can have allow/denylists and firewalls too. What makes it closed and the others open?

                                                      1. 1

                                                        IRC servers must trust each other, so only trusted servers are allowed in the federation. Matrix, thanks to the state resolution protocol, can work without server administrators trusting each other. Much like email. Spam can still be a problem.

                                                        1. 1

                                                          So Matrix and SMTP servers are vulnerable to spam attacks if they allow untrusted servers, and IRC servers are vulnerable to more attacks like kills from malicious operators. So yes, IRC requires a higher level of cooperation between servers, but it’s a matter of degree.

                                                          1. 1

                                                            Federation between untrusted servers means spam cannot be solved on the server level. Matrix has some plans to solve spam with a reputation-based system.

                                                            1. 1

                                                              I don’t know what you mean by “on the server level.”

                                                    2. 1

                                                      IRC can be distributed through server-to-server connections, but IRC is not a federated protocol because these networks share a common view of users and channels for as long as they are connected, and there is no way to bridge communications with other networks at the level of the protocol itself.

                                                      Compare and contrast with XMPP and Matrix, where it’s perfectly possible to communicate with other on federated servers that have absolutely no relation to your homeserver, and there is clear delineation of the ownership of identities and rooms.

                                                      1. 2

                                                        I don’t see any substance to the idea that IRC servers can’t federate with eachother while XMPP/Matrix servers can. All federated protocols form networks which can become fragmented by mismatches between software and policies.

                                                        You also contrast “a common view of users and channels” with a “clear delineation of the ownership of identities and rooms.” This arises from a fundamental difference in what the protocols offer, namely that XMPP offers persistent identities while IRC does not, but that has no bearing on whether a protocol supports federation. For a non-federated contrast to IRC/XMPP/Matrix, see ICQ.

                                                  2. 3

                                                    A more obvious choice in that case might be XMPP. Or even SMTP (see delta chat)

                                                    1. 1

                                                      IRC is federated

                                                  3. 3

                                                    perhaps you could lay out why ddevault would disagree, considering that he is unable to respond here (due to a series of incidents that lobste.rs has decided to keep secret)

                                                  1. 6

                                                    The site isn’t listening on ports 22 or 514. They expect us to set our .plan files over HTTPS?

                                                    1. 5

                                                      Yes. Either via UI or curl.

                                                    1. 8

                                                      I’m still waiting for somebody to write a little CLI that does all these tests and prints out a report. Imagine how many thousands of hours it would save if that tool came installed by default on all systems.

                                                      $ is_it_up https://jvns.ca
                                                      ping: 80ms
                                                      DNS: resolving 1.2.3.4
                                                      system DNS: resolving 1.2.3.4
                                                      TLS: certificate valid for 23 more days
                                                      HTTPS: got 200 OK
                                                      
                                                      All good!
                                                      
                                                      1. 3

                                                        Bonus when an error happens, it prints out the command to replicate that exact test.

                                                        1. 2

                                                          Welp this should be fun to write.

                                                          1. 1

                                                            yes please! I’m to lazy and sidetracked with other things at the moment.

                                                      1. 31

                                                        I prefer to see this type of project that builds upon what it considers the good parts of systemd, instead of systemic refusal and dismissal that I’ve seen mostly.

                                                        1. 15

                                                          Same. Too often I see “critiques” of systemd that essentially boil down to personal antipathy against its creator.

                                                          1. 22

                                                            I think it makes sense to take in to account how a project is maintained. It’s not too dissimilar to how one might judge a company by the quality of their support department: will they really try to help you out if you have a problem, or will they just apathetically shrug it off and do nothing?

                                                            In the case of systemd, real problems have been caused by the way it’s maintained. It’s not very good IMO. Of course, some people go (way) to far in this with an almost visceral hate, but you can say that about anything: there are always some nutjobs that go way too far.

                                                            1. 3

                                                              Disclaimer: I have not paid close attention to how systemd has been run and what kind of communication has happened around it.

                                                              But based on observing software projects both open and closed, I’m willing to give the authors of any project (including systemd) the benefit of the doubt. It’s very probable that any offensive behaviour they might have is merely a reaction to suffering way too many hours of abuse from the users. Some people have an uncanny ability to crawl under the skin of other people just by writing things.

                                                              1. 6

                                                                There’s absolutely a feedback loop going on which doesn’t serve anyone’s interests. I don’t know “who started it” – I don’t think it’s a very interesting question at this point – but that doesn’t really change the outcome at the end of the day, nor does it really explain things like the casual dismissal of reasonable bug reports after incompatible changes and the like.

                                                                1. 4

                                                                  I think that statements like “casual dismissal” and “reasonable bug reports” require some kind of example.

                                                                2. 3

                                                                  tbf, Lennart Poettering, the person people are talking about here is a very controversial personality. He can come across as an absolutely terrible know-it-all. I don’t know if he is like this in private, but I have seen him hijacking a conference talk by someone else. He was in the audience and basically got himself a mic and challenged anything that was said. The person giving the talk did not back down, but it was really quite something to see. This was either at Fosdem or at a CCC event, I can’t remember. I think it was the latter. It was really intense and over the top to see. There are many articles and controversies around him, so I think it is fair that people take that into account, when they look at systemd.

                                                                  People are also salty because he basically broke their sound on linux so many years ago, when he made pulseaudio. ;-) Yes, that guy.

                                                                  Personally I think systemd is fine, what I don’t like about it is the eternal growth of it. I use unit files all the time, but I really don’t need a new dhcp client or ntp client or resolv.conf handler or whatever else they came up with.

                                                                  1. 4

                                                                    tbf, Lennart Poettering, the person people are talking about here is a very controversial personality.

                                                                    In my experience, most people who hate systemd also lionize and excuse “difficult” personalities like RMS, Linus pre-intervention, and Theo de Raadt.

                                                                    I think it’s fine to call out abrasive personalities. I also appreciate consistency in criticism.

                                                            2. 4

                                                              Why?

                                                              1. 7

                                                                At least because it’s statistically improbable that there are no good ideas in systemd.

                                                                1. 1

                                                                  Seems illogical to say projects that use parts of systemd are categorically better than those that don’t, considering that there are plenty of bad ideas in systemd, and they wouldn’t be there unless some people thought they were good.

                                                                  1. 2

                                                                    Seems illogical to say projects that use parts of systemd are categorically better than those that don’t

                                                                    Where did I say that though?

                                                                    1. 2

                                                                      I prefer to see this type of project that builds upon what it considers the good parts of systemd

                                                                      Obviously any project that builds on a part of system will consider that part to be good. So I read this as a categorical preference for projects that use parts of systemd.

                                                              2. 2

                                                                There have been other attempts at this. uselessd (which is now abandoned) and s6 (which still seems to be maintained)

                                                                1. 4

                                                                  I believe s6 is more styled after daemontools rather than systemd. I never looked at it too deeply, but that’s the impression I have from a quick overview, and also what the homepage says: “s6 is a process supervision suite, like its ancestor daemontools and its close cousin runit.”

                                                                  A number of key concepts are shared, but it’s not like systemd invented those.

                                                                  1. 1

                                                                    s6 I saw bunch of folks using s6 in docker, but afaik that’s one of most not user friendly software i’ve been used.

                                                              1. 1

                                                                Any thoughts on Exoscale vs Vultr vs others?

                                                                1. 2

                                                                  Exoscale is cheap and yet it’s perfect. The only drawback is they’re available only in Europe and I live in Québec so I have some unavoidable latency crossing the ocean.

                                                                  Vultr is quite good. I recently setup some BGP with them (https://www.vultr.com/features/bgp/) and while the support was reactive on a Friday evening (which I didn’t expect because I pay less than 10$/month) the work was far from perfect. Other than that I think they’re a pretty good deal.

                                                                  But I mostly picked both because they officially support OpenBSD. While OpenBSD works fine on KVM virtualization, I don’t want to deal with the support blaming the OS for something unrelated, just because they don’t officially support the OS.

                                                                  1. 3

                                                                    There’s no such thing as perfect until you try Hetzner Cloud.

                                                                    Trust me, never looking back.

                                                                    1. 1

                                                                      I assume for BGP you have ipv6 prefix? Curious what it was like getting one for yourself. As far as I’ve read it’s quite expensive and annoying to do it personally now.

                                                                      1. 1

                                                                        Yes my ASN is IPv6 only. I plan to write about that in my next article, but it may be a few weeks/months until I publish it!

                                                                        1. 1

                                                                          Good to know, I look forward to reading it!

                                                                  1. 25

                                                                    It needs to be said that the people behind Soapbox and Spinster are TERFs. Alex Gleason is a TERF, and if I need to I can pull up plenty more receipts, but I’d rather not link to their stuff.

                                                                    Now is a really bad time to be a trans person, their basic civil rights are under attack, it’s getting hard for them to use the bathroom (i.e. go outside) or get basic medical care in part because of people like this coordinating harassment campaigns. We really can’t support people who spend their time creating forums to attack trans people, and using or promoting their software is definitely part of that.

                                                                    1. 4

                                                                      That’s sad. I keep seeing Pieroma recommended as an alternative to the bloat and operational complexity of Mastodon but whenever I’ve looked the install documentation is just abysmal.

                                                                      This is such a tricky problem space. I initially had the thought that “Oh hey it’s FLOSS, somebody who wasn’t a hatemonger could fork a new project and inherit their work” but is it fruit from the tainted tree at that point?

                                                                      ¯_(ツ)_/¯

                                                                      1. 8

                                                                        How about Honk instead?

                                                                        Even lighter than Pleroma, and I do not know anything to the author’s detriment.

                                                                        EDIT: Also, someone could do a hard fork of Soapbox, and maybe that would be ok, but this is promoting the project itself, not a hard fork thereof.

                                                                        1. 4

                                                                          Looks neat but… No stars? That’s… Unfortunate. I don’t love the idea of not being able to say “Hey I really like your post!”.

                                                                          I mean, I get it, it removes the whole negative dopamine release loop but… Hrrm.

                                                                          It DOES look deliciously light and easy to set up!

                                                                          1. 4

                                                                            I don’t love the idea of not being able to say “Hey I really like your post!”.

                                                                            You can always say that directly, usually means a lot more than just a number.

                                                                            1. 4

                                                                              You know that’s a REALLY good point.

                                                                              Either you REALLY like the post, which warrants a comment, and might spur some good conversation which wouldn’t happen if you just starred and moved on.

                                                                              I DO think removing that quick dopamine hit from the “like” response could lead to consuming the content in a more thoughtful, meaingful way.

                                                                              I’ll add setting Honk up to my projects list :)

                                                                              1. 1

                                                                                Yeah it’s quite easy, if you use nixOS at all I have a module setup to configure/enable it.

                                                                                1. 1

                                                                                  I’d be interested in that module if you could upload it somewhere

                                                                                  1. 1

                                                                                    Yeah sure, let me go paste it to my GitHub.

                                                                        2. 1

                                                                          It’s configuration isn’t great. I have a Dockerfile that runs it and SoapBoxUI:

                                                                          https://github.com/sumdog/bee2/tree/master/dockerfiles/SoapBox

                                                                          Mastodon is easier to scale up with zero downtime releases (you can launch more web or sidekiq containers) but it’s a hog and not as robust at Pleroma. Pleroma has some better rules engines, but they’re more complex to configure. I hope with the SoapBox fork that Alex tries to do standard release containers and make the configuration easier. He’s done a lot of work.

                                                                      1. 1

                                                                        @palfrey So with nixops you can set default nix expressions to be evaluated on all machines.

                                                                        So there’s one part done, deciding what expressions go where out of a set of local nodes is an interesting problem however for nix.

                                                                        1. 1

                                                                          This is meta on meta - but do we have stats on how many users use the tags “positively” - by using them as a parameter in RSS feeds etc, and how many use them “negatively” - filtering out content based on tags?

                                                                          These 2 use cases are in tension.

                                                                          1. 5

                                                                            If you pull those stats, my use case is: manually visiting and reading through the listing of a tag, like: https://lobste.rs/t/emacs

                                                                            It’s very nice when you’ve:

                                                                            • forgot about something that has to do with X, “it might have been tagged X”
                                                                            • haven’t browsed lobste.rs in a while, and don’t want to miss anything about X

                                                                            I personally have not used tags negatively (“hide” does it for me). This is coming from someone that visits lobste.rs at least 5 times a day, unless on vacation.

                                                                            1. 3

                                                                              I’d echo this, most often my usage of tags is finding stuff related to a post or topic I liked.

                                                                            2. 2

                                                                              Somehow I’d completely forgotten we supported tags with rss. Thanks.

                                                                            1. 3

                                                                              The authors blog is full of algorithms fun.

                                                                              1. 1

                                                                                Wow you’re right, it’s a goldmine!

                                                                                1. 1

                                                                                  Yeah he does some really nice LISP work. :)

                                                                                1. 6

                                                                                  A nice piece, and what a lovely site!

                                                                                  I mean this entirely unironically. Some dude collecting info and memorabilia about an old company is what the internet was made for, damnit!

                                                                                  1. 3

                                                                                    Agreed! Here, here.

                                                                                  1. 6

                                                                                    My workstation is fairly standard.

                                                                                    One monitor hooked up to a kvm switch, the switch hooked up to my work/development laptop and to my gaming laptop.

                                                                                    Dev Laptop is a System76 Lempur Pro

                                                                                    Gaming Laptop is a System76 Oryx Pro

                                                                                    Both running PopOS 20.04LTS currently.

                                                                                    WM: i3

                                                                                    IRC Client: weechat

                                                                                    Shell: bash

                                                                                    Command Execuctor: rofi

                                                                                    Status bar: polybar

                                                                                    For password management I use password-store and the pass-clip extension to hook into rofi.

                                                                                    Keyboard: https://ibb.co/J3bz4zy

                                                                                    KVM Switch: https://ibb.co/gT91nJ0

                                                                                    Laptop Stand: https://ibb.co/dkWmbS7

                                                                                    ScreenShot: https://ibb.co/fqfm96k

                                                                                    1. 3

                                                                                      Ha! I have a Lemur Pro (lemp9) as my personal laptop and an Oryx Pro (oryp4) as my work machine!

                                                                                      1. 2

                                                                                        System76

                                                                                        Yay System76! I just bought a Thelio and am SUPER delighted with it. Both the hardware itself and the excellent pre and post sales support.

                                                                                        I also love what they’re doing with Pop!_OS - the tiling window manager Gnome extension is a nice touch, although some accessibility bugs may have me falling back to my usual choice of Plasma or Elementary.

                                                                                        1. 1

                                                                                          I’ve ordered myself a Tuxedo Pulse 15 (Tuxedo also works with a Clevo, or in this case Tongfang shell), can’t wait to get it and see what it looks like.

                                                                                          1. 1

                                                                                            Fantastic! I think this trend towards Linux supporting hardware vendors is a SUPER exciting development for broadening the accessibility of open source operating systems.

                                                                                            Now if only the non KDE desktops would get on the accessibility bandwagon, we’d be in good shape :)

                                                                                      1. 1

                                                                                        Exploring nodeJS as I write a small service at work. Nice to be able to do some programming again and this node stuff is fairly interesting.