squaresinger

joined 2 years ago
MODERATOR OF
[–] squaresinger@feddit.de 1 points 2 years ago (5 children)

You seem to have no arguments for your opinion, otherwise why would you have to resort to personal attacks?

These kinds of comments are usually the internet equivalent of a white flag.

[–] squaresinger@feddit.de 6 points 2 years ago (1 children)

Sorry, no condescension intended.

Your post read like one written by someone with very minimal knowledge about the subject, which might have been a misunderstanding on my part. So I tried to cover the basics before talking about the rest.

There is really no shame in asking questions about something where you don't have experience. There are far more topics I have no idea about than there are topics where I do have a deep understanding.

So to get on the same page, I'll summarize what I understood, please correct me if you mean something different.

  • You don't like ActivityPub, you want a new protocol
  • The system should make it easy to create new, small instances
  • The instances should share sessions with the other instances (=single sign on) based on trusting them
  • You prefer a centralized system?
  • You want the system to not use a single protocol (ActivityPub), but use multiple protocols?
  • ActivityPub based services have bad UX due to the complexity of the protocol

Is this correct?

We have a few contradictions here.

You cannot have a system where anyone can easily create servers and at the same time have shared sessions based on trust. These two requirements conflict with each other.

Either servers only work with servers they trust, and then you can't just create a new small server and interact with the network.

Or anyone can easily create a new small server, but then you can't do anything based on trust, since you never know if that server was created with malicious intent.

Regarding centralized/decentralized you have to differentiate between implementation and management.

All major social networks run distributed systems. If you want to serve billions of users, you need to run millions of servers. These servers are distributed around the globe to give fast access to users everywhere. Chances are pretty high that your ISP has a few racks of Facebook, Netflix, YouTube and Tiktok servers.

Their distributed system is orders of magnitude more complex than everything running ActivityPub combined.

But their system works, because they have tens of thousands of highly paid specialists to make them work.

ActivityPub based services on the other hand have almost no funding and manpower.

Mastodon is the best in this respect. They have 6 people who are actually working on the system.

Lemmy has two developers who earn close to minimum wages.

Kbin has a single guy developing it.

That's the real reason why the UX is crap.

If anything, ActivityPub and the services running on them are extremely underengineered and underdeveloped.

Btw, there is something rather close to what you seem to want: online forums with Google single sign on.

The forums are not interacting at all with other forums. No federation or anything at all. There are enough commercial solutions that work really well. And with Google Single Sign On you also don't have to register for each forum.

[–] squaresinger@feddit.de 3 points 2 years ago (4 children)

But not nearly the required amounts. We currently use about 6 million metric tons of helium per year.

If fusion plants ever become a commercially viable thing (and that's a big if), they will never be able to supply anything close to that.

[–] squaresinger@feddit.de 4 points 2 years ago

There's quite a large amount of the usage which could be labelled "for fun".

[–] squaresinger@feddit.de -1 points 2 years ago (7 children)

Murder is still murder, no matter if it's legalized.

And an execution is a premeditated murder in cold blood, even a systemic one. It's pretty much the worst kind of murder.

And yes, every kind of murder is problematic. Using gas chambers just gives it the correct appearance: state sponsored serial murder.

[–] squaresinger@feddit.de 0 points 2 years ago* (last edited 2 years ago) (4 children)

Mostly though through revolutions, wars or some other extreme crisis.

[–] squaresinger@feddit.de 7 points 2 years ago (2 children)

But we are consuming about 6 million tons per year (https://www.chemanalyst.com/industry-report/helium-gas-market-578).

The 3000 tons are just a drop in the water and it's pretty much impossible to get to all that.

[–] squaresinger@feddit.de 15 points 2 years ago (2 children)

Not in a way that could be scaled up to even cover the childrens birthday parties of a medium sized city.

[–] squaresinger@feddit.de 7 points 2 years ago (22 children)

So, a gas chamber? Back to 1938, are we?

[–] squaresinger@feddit.de 36 points 2 years ago (18 children)

One relevant part that I couldn't really find in the article is that helium is so light that it escapes Earth's atmosphere when released into the air.

So any helium that is released to the air is permanently gone.

There is also no known way to synthesize helium, and it also doesn't renew itself at all on Earth.

It's also the only substance we have to cool stuff really far down. That's why e.g. MRIs depend on it.

And we put this precious, finite and often life saving substance into kids' balloons to make them bobble nicely through the air.

[–] squaresinger@feddit.de 4 points 2 years ago (6 children)

The problem is that only people who came into power using the current system would have a chance to change the system. And why would anyone want to change the system that brought them to power?

[–] squaresinger@feddit.de 22 points 2 years ago* (last edited 2 years ago) (7 children)

E-mail. E-mail does support small servers.

Btw, I think you are mixing up a few topics here, so let's see what you actually want.

  • Protocols are what computers use to communicate with each other. No protocols means no interaction between different computers/servers. Without protocols, none of the things you ask for can be possible.
  • Federated services don't have single sign on. On the contrary, single sign on is a centralized service not a distributed one. To clarify that: I cannot log into lemmy.world with my feddit.de accout, same as I cannot log into hotmail with my gmail account. In both cases I log into my instance/provider and this allows me to communicate with people on other instances/providers. Federation is the process of sharing content between instances. SSO on the other hand is a centralized service that then communicates with other services to let you log into these other services. For example, I can log into my Google account and then use this to login to other sites. This only works because people trust Google. This would not work as a decentralized service with untrusted servers.
  • Duplication is used on federated services for a few reasons. First, it's a kind of caching mechanism distributing the load. If someone posts something on one instance, it's transferred only once to the other instances which then serve it to all their users. Without duplication, each individual view would have to be requested again from the original instance. The other advantage is that the admins of all the instances retain control over the content. If the other instance goes offline, users can still see "their" copy of the content. And if the other instance doesn't moderate their content, the mods/admins of your instance can do that themselves.

So as you see, these concepts aren't there just for fun, but for a purpose.

 

I was frustrated by the lack of decent phones with physical keyboards. The phones that are currently available are hard to buy, crap, expensive, are old, outdated, have bad software support and/or disappointing hardware.

So I decided to design and build one myself.

This is a Fairphone 4 with a DIY, open source keyboard attachment. It uses a spare Blackberry Q10 keyboard and a custom, self designed Arduino-compatible mainboard, which translates the keyboard matrix to regular USB HID.

This means, it works on any phone without the need of any software modification at all. If the phone can handle a USB keyboard, it can handle this one.

All that's necessary to make it compatible to any other phone is to adjust the case to fit that phone.

(And yes, that's XFCE running on Ubuntu in a chroot shell.)

 

Please excuse my sub-par JavaScript, I am a backend dev.

All you need to do is paste this into Tampermonkey and enter your username and your instance url (on two locations).

This is not showing other users' scores and it doesn't make your score visible to anyone else than yourself.

So no need for karma farming. This is just for fun.

// ==UserScript==
// @name         Lemmy score
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Shows your total post/comment score at the top right.
// @author       You
// @match        ENTER INSTANCE URL HERE (leave the asterisk after the URL)*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=feddit.de
// @grant        none
// @run-at       document-idle
// ==/UserScript==

(function() {
    'use strict';

    var USERNAME = "ENTER USERNAME HERE";
    var INSTANCE_URL = "ENTER INSTANCE URL HERE";

    var totalScore = 0;
    var currentPage = 1;

    function postResult() {
        var navbar = document.getElementsByClassName("collapse navbar-collapse")[0];
        console.log(navbar);
        var ul = document.createElement("ul");
        ul.className = "navbar-nav";
        ul.id = "karma-ul";
        var li = document.createElement("li");
        li.id = "karma-li";
        li.className = "nav-item";
        li.innerHTML = '<div id="karma-div">' + totalScore + '</div>'
        navbar.appendChild(ul);
        ul.appendChild(li);
    }
    function callPage() {
        var userRequest = new XMLHttpRequest();
        userRequest.onreadystatechange = function () {
            if (this.readyState == 4) {
                if (this.status == 200 ) {
                    var res = JSON.parse(this.responseText);
                    if (res.posts.length==0 && res.comments.length==0) {
                        postResult();
                    } else {
                        totalScore += res.posts.map(x => x.counts.score).reduce((partialSum, a) => partialSum + a, 0);
                        totalScore += res.comments.map(x => x.counts.score).reduce((partialSum, a) => partialSum + a, 0);
                        currentPage++;
                        callPage();
                    }
                }
            }
        }
        userRequest.open("GET", INSTANCE_URL + "/api/v3/user?username=" + USERNAME + "&limit=50&page=" + currentPage, true);
        userRequest.send();
    }

    setTimeout(callPage, 200);


    /*var xhttp = new XMLHttpRequest();
      xhttp.onreadystatechange = function() {
        if (this.readyState == 4) {
          if (this.status == 200 ) {
            var obj = JSON.parse(this.responseText);
            var simple = document.getElementById("simple");
            if (obj.response == 200) {
              simple.style = "color:green";
            }
            else {
              simple.style = "color:red";
            }
          }
        }
      };
      //make call to Google App Engine
      xhttp.open("GET", "https://simplewikiexists.appspot.com/?q=" + article, true);
      xhttp.send();*/
})();
 

Just save this as karma.py and run it with Python 3.6 or higher.

import requests
import math

INSTANCE_URL = "https://feddit.de"
TARGET_USER = "ENTER_YOUR_USERNAME_HERE"

LIMIT_PER_PAGE = 50

l = Lemmy(INSTANCE_URL)

res = requests.get(f"{INSTANCE_URL}/api/v3/user?username={TARGET_USER}&limit={LIMIT_PER_PAGE}").json()

totalPostScore = 0
totalCommentScore = 0
page = 1
while len(res["posts"])+len(res["comments"]) > 0:
	totalPostScore += sum([ x["counts"]["score"] for x in res["posts"] ])
	totalCommentScore += sum([ x["counts"]["score"] for x in res["comments"] ])
	
	page += 1
	res = requests.get(f"{INSTANCE_URL}/api/v3/user?username={TARGET_USER}&limit={LIMIT_PER_PAGE}&page={page}").json()

print("Post karma:    ", totalPostScore)
print("Comment karma: ", totalCommentScore)
print("Total karma:   ", totalPostScore+totalCommentScore)
 

I was unsatisfied with the lack of decent keyboard phones for a decent price on the market, so I made one myself.

It's all open source.

 

With all these new options springing up, I'm a little outdated. What's the best app to use right now?

 

Seit dem neuesten Jerboa-Update beschwert sich die App immer wenn ich Feddit.de aufrufe, dass der Server auf 0.17.4 ist, aber 0.18 mindestens notwendig ist. Wäre es möglich, Feddit.de upzudateen.

 

There are lots of articles about bad use cases of ChatGPT that Google already provided for decades.

Want to get bad medical advice for the weird pain in your belly? Google can tell you it's cancer, no problem.

Do you want to know how to make drugs without a lab? Google even gives you links to stores where you can buy the materials for it.

Want some racism/misogyny/other evil content? Google is your ever helpful friend and garbage dump.

What's the difference apart from ChatGPT's inability to link to existing sources?

Edit: Just to clear things up. This post is specifically not about the new use cases that come from AI. Sure, Google cannot make semi-non-functional mini programs automatically, and Google will not write a fake paper in whole for me. I am specifically talking about the "This will change the world" articles, that mirror stuff that Google can do exactly like ChatGPT can.

 

Related to the question about whether facial expressions are universal.

Are there words/verbal expressions/sounds that exist in every language and have the same meaning in every language?

(I'd also count words that are very similar.)

One example, that I believe is universal is M followed by a vowel followed by another M and optionally another vowel, meaning "Mother".

At least in any language I know, this seems to hold true (mom, Mama, mamma, Mami, ...).

Any other examples?

Edit: To clarify, I am not looking for very popular words that have been imported into most languages (like how almost everyone worldwide knows what Ketchup is), but about words that are "native" to humans. So if you pick someone from an uncontacted native tribe and tell them nothing, they would be able to understand/use that word/sound/verbal expression.

 

Say I want to link to community x on instance y.org. How do I post this so that someone from instance z.org will end up at z.com/c/x@y.org, but someone from a.org ends up on a.com/c/x@y.org?

 

Jerboa shows promise, but it feels like it's not quite there yet. There are still some important features missing (e.g. selecting the language for a post) and frequent bugs.

As a better alternative, you can also use a browser that allows you to install Progressive Web Apps on the phone (e.g. Firefox or Vivaldi).

Just open your Lemmy instance in the browser, press the menu button and then "install". This will then create a shortcut on your desktop which lets you launch the web UI of your Lemmy instance as if it was a native app on your phone.

For me this works much better than Jerboa.

I am using Vivaldi, and this allows me to e.g. control how I want to open a link. If I just click it, it opens in the same PWA window as Lemmy (useful if you follow internal links on Lemmy). If you long-press it, there is an option to "Open with Vivaldi", which then opens the link in the regular browser activity, which is useful for external links.

 
view more: ‹ prev next ›