I’m the administrator of kbin.life, a general purpose/tech orientated kbin instance.

  • 0 Posts
  • 118 Comments
Joined 1 year ago
cake
Cake day: June 29th, 2023

help-circle


  • When I was talking about memory, I was more thinking about how it is accessed. For example, exactly what actions are atomic, and what are not on a given architecture, these can cause unexpected interactions during multi-core work depending on byte alignment for example. Also considering how to make the most of your CPU cache. These kind of things.


  • I’d agree that there’s a lot more abstraction involved today. But, my main point isn’t that people should know everything. But knowing the base understanding of how perhaps even a basic microcontroller works would be helpful.

    Where I work, people often come to me with weird problems, and the way I solve them is usually based in low level understanding of what’s really happening when the code runs.


  • I’ve always found this weird. I think to be a good software developer it helps to know what’s happening under the hood when you take an action. It certainly helps when you want to optimize memory access for speed etc.

    I genuinely do know both sides of the coin. But I do know that the majority of my fellow developers at work most certainly have no clue about how computers work under the hood, or networking for example.

    I find it weird because, to be good at software development (and I don’t mean, following what the computer science methodology tells you, I mean having an idea of the best way to translate an idea into a logical solution that can be applied in any programming language, and most importantly how to optimize your solution, for example in terms of memory access etc) requires an understanding of the underlying systems. That if you write software that is sending or receiving network packets it certainly helps to understand how that works, at least to consider the best protocols to use.

    But, it is definitely true.


  • I’ve used IPv6 at home for over 20 years now. Initially via tunnels by hurricane electric and sixxs. But, around 10 years ago, my ISP enabled IPv6 and I’ve had it running alongside IPv4 since then.

    As soon as server providers offered IPv6 I’ve operated it (including DNS servers, serving the domains over IPv6).

    I run 3 NTP servers (one is stratum 1) in ntppool.org, and all three are also on ipv6.

    I don’t know what’s going on elsewhere in the world where they’re apparently making it very hard to gain accesss to ipv6.




  • I think this overall is a better idea. I’m going to say this because, I thought I’d look into rust today. So I installed it, setup vscode to work with it etc. And it’s all up and running. I thought I would port over a “fairly simple” C# project I wrote recently as a bit of a test.

    While I’ve generally had success (albeit with 30+ tabs open to solve questions I had about how to do certain things, and only making it about 20% into the task) I’m going to say that it’s different enough from C, C++ and C# (all of which I can work with) that I really don’t think it is fair to expect C developers that have day jobs and work on the kernel in their spare time to learn this. It’s fundamentally different in my opinion.

    Now, I don’t condone any bad attitude and pushing away of rust developers from the project. But there’s no way they’re going to want to do anything to help which involves learning a new language. It’s just not going to happen.

    Likewise, C is not a language most new developers are learning. So, I feel like over time there won’t be so much of an influx of new kernel developers and any Rust based kernel could find itself with more contributors over time and taking over as the de-facto kernel.

    In terms of Redox (not looked into it yet). So long as there’s a different team working on the userspace tools. I would say the main task should be getting a solid kernel with drivers for most popular hardware etc in place. The existing GNU tools will do until there’s a kernel that is able to compete with the C one. But that’s just my opinion.


  • Here’s what I think. Both opinions are correct.

    Rust is sufficiently different that you cannot expect C developers to learn rust to the level they have mastered C in order to be working at the kernel level. It’s not going to happen.

    I don’t really know too much about rust. Maybe one day I’ll actually mess around with it. But the one time I looked at a rust git repo I couldn’t even find where the code to do a thing was. It’s just different enough to be problematic that way.

    So I think probably, the best way IS to go the way linus did. Just go ahead and write a very basic working kernel in rust. If the project is popular it will gain momentum.

    Trying to slowly adapt parts of the kernel to rust and then complain when long term C developers don’t want to learn a new language in order to help isn’t going to make many friends on that team.


  • When you post in a thread you get an ID for that thread. When you post in a different thread you get a different id.

    That’s what I said. You don’t need any ID to federate the messages. If you reply to a comment the nesting is based on the comment/post ID and not the usernames.

    You couldn’t track a users posts after the fact, and I think that’s kinda the point.


  • Not so sure that’s true though. If you look at a 4chan threads in some boards, you can recognize the individual anonymous’ from the ID next to them.

    I suspect it’s using either a cookie, or the IP address to track a user and while not storing that info, generating an ID hash from perhaps a unique ID for the thread + their details.

    No reason you couldn’t federate using the same. But, even without that, each post and comment has a post ID and replies would be tracked that way. Just, you’d need to remember which replies were your own.

    The home instance could store for a thread some info about posts/comments from an IP or cookie too and highlight them. But that info wouldn’t be federated.

    I actually don’t think it’d be a problem, really. But, is this something missing from our lives? I’m not so sure.


  • I mean I could have used the GDPR (still a thing in the UK, at least for now). But didn’t see it as worth it. It really wouldn’t be worth the risk selling data that was deleted from a GDPR request.

    I don’t know that they’ll risk using the data from deleted posts/comments though anyway. Most comments and posts will be deleted for a reason (moderation, or otherwise mistakes) and as such, likely isn’t going to make the best training data really.

    It’s far easier to just sell the live data and be done with it.


  • I think there were historically interoperability issues, and there used to be (my version of mbin is quite old), and maybe still are issues federating dislikes (which stems from the way they were seen in kbin, which straddles both thread based and mastadonesque sides of the fediverse). But overall there’s aren’t the larger federation issues there used to be.

    Right now, the choice mainly comes down to the interface you prefer, and if you perhaps want a limited ability to work with mastadon type posts. Since you can follow mastadon users and see their posts within the mbin interface.




  • OK, one possibility I can think of. At some point, files may have been created where there is currently a mount point which is hiding folders that are still there, on the root partition.

    You can remount just the root partition elsewhere by doing something like

    mkdir /mnt/rootonly
    mount -o bind / /mnt/rootonly
    
    

    Then use du or similar to see if the numbers more closely resemble the values seen in df. I’m not sure if that graphical tool you used that views the filesystem can see those files hidden this way. So, it’s probably worth checking just to rule it out.

    Anyway, if you see bigger numbers in /mnt/rootonly, then check the mount points (like /mnt/rootonly/home and /mnt/rootonly/boot/efi). They should be empty, if not those are likely files/folders that are being hidden by the mounts.

    When finished you can unmount the bound folder with

    umount /mnt/rootonly

    Just an idea that might be worth checking.



  • I think we should qualify the question. I think I’d like to hear a reason for society as a whole to exist that is reasoned and has a firm basis in logic and has no emotive or circular reference.

    Because I cannot see the point of it (and I’ve been accused of being a pessimist, depressed and worse for expressing this opinion). So, I would really like to hear an actual reason for us all to be here.


  • Yeah, but they’re not. That’s the modern world. But also even if it was a web server there’s usually ways to advertise the IP for the app to connect to. I’ve seen other stuff do that. So getting an IP is easy. Once the app knows the IP and if you really want to allow connections from outside to your IOT devices (I wouldn’t) it could remember the IP and allow that.

    You really don’t need to give a fixed IP to everything. I think I’ve given 1 or 2 things fixed IPv6 IPs. Everything else is fine with what it assigns itself.