• 14 Posts
  • 486 Comments
Joined 2 年前
cake
Cake day: 2023年9月7日

help-circle



  • I was having issues with Librewolf on a work computer a few weeks ago, so I decided to try Firefox to see if it was LW’s security settings.

    Holy shit, what a fucking trainwreck Firefox has become! It’s so bad that I can’t honestly recommend anyone use it anymore. The first time I started it, I saw all kinds of ads and trashy “news” articles that had no relevance to me whatsoever. Plus I had to reinstall all my extensions because they weren’t signed and there’s no way to disable that requirement. I was so horrified and offended, I just dumped it immediately and tried Chrome instead. What difference is there at this point?

    It’s just insulting at this point. I understand that they trying to find new revenue sources, and things are still better today than they were with Mitchell Baker as CEO, but it’s still horrific how poorly Mozilla is being run. I’m so grateful we still have usable forks from the amazing people running projects like Librewolf. Without them, the web would just be flat out unusable.



  • This has been very obvious to a lot of people since mobile devices were originally invented. The notion that you are sold a product that you “own” but is still 100% controlled by the vendor - anyone who thought about it for more than a second knew that it would eventually come to this. Of course, nobody gave even that tiny amount of thought about it. Or they were too naïve to think that a corporation could ever be evil.

    I miss the times when spyware was considered uncoool. Mobile devices are the undoubtedly the worst invention of the information age. (And social media is probably the second worst.)


  • I enjoy it. It’s a relaxing, peaceful game. I just wish there were more objectives. The idea of just exploring and finding things doesn’t appeal to me all that much. The game has a lot of potential for combat, both in the spaceship and as a FPS, but both of these areas feel like they could be expanded a bit. Overall, I just wish that there were more combat-focused missions after completing the main storyline.

    But it’s still pretty good and I enjoy it when I want to relax.



  • I wrote a program that scanned object files (compiled from a large C++ project) to see how they were interdependent. It was pretty useful for detecting cycles in the shared libraries that we were compiling from them, but the biggest benefit was it enabled me to very easily rewrite the build system from scratch.

    It was surprisingly simple - most ELF parsers can read a file and dump the symbol tables in them. (In this context, a symbol means a defined function, so if a C/C++ source file has int main() in it, the corresponding .o file will have a main symbol in it.) They also include information about which symbols are defined in the .o file, as well as which symbols it depends on which are undefined. This allows you to figure out a dependency graph, which you can easily visualize using graphviz or use to autogenerate build files for CMake or any other build system you may wish to use.

    In my case, I wrote this kind of program twice in two separate jobs. Both of them had a very janky build system using custom Makefiles. I used this program to rewrite the build systems in CMake. The graphviz dependency graphs are also just generally helpful to have as project documentation. CMake can do this natively, by the way - here’s the documentation for it: https://cmake.org/cmake/help/latest/manual/cmake.1.html#cmdoption-cmake-graphviz



  • The founding fathers couldn’t fathom the utter deplorable evil that Trump and his crew of crazy conservatives became, but neither did we.

    On the contrary, they designed the constitution with exactly the kind of person like Trump in mind. They just finished fighting a revolution against a king from across the ocean and wanted be as sure as they could that their government did not function the same way. The reason they failed is because they thought Americans would be much more civically engaged than they actually are. And also because the legislative branch is terribly designed.

    And don’t forget that the world of the 1700s was a much darker place than it is today. There were monarchies and brutal regimes all over the place and in very recent memory from earlier centuries as well which probably gave them all kinds of inspiration of what they wanted to prevent.


  • Yeah, I’ve seen a lot of those videos where they do things like {} + [], but why would anyone care what JS does in that case? Unless you’re a shit-ass programmer, you’re never going to be running code like that.

    By this same logic, memory safety issues in C/C++ aren’t a problem either, right? Just don’t corrupt memory or dereference null pointers. Only “a shit-ass programmer” would write code that does something like that.

    Real code has complexity. Variables are written to and read from all sorts of places and if you have to audit several functions deep to make sure that every variable won’t be set to some special value like that, then that’s a liability of the language that you will always have to work around carefully.


  • namingthingsiseasytoGaming@lemmy.worldDon't make me choose!
    link
    fedilink
    English
    arrow-up
    8
    ·
    1 个月前

    It’s a very interesting question. In terms of which game I’d rather play, it’s SMW. But in terms of technical achievement, SMB3 is unquestionably better (in my opinion of course).

    SMB1 was a watershed moment for gaming - perhaps the biggest that there ever was. SMB3 was a revolutionary improvement on top of that. In light of that, SMW almost feels like a bland port. This isn’t to say it’s bad by any means, but in terms of the impact that it had on gaming as a whole, it’s not very significant and just feels like an iterative improvement.

    SMW is still a great game! And if I could only play one for the rest of my life, I would choose it over SMB3. But in terms of historical impact on gaming, I would say that SMB1, Mario64 and SMB3 were more revolutionary.

    Yoshi’s Island is my favorite however.




  • I don’t even know where to start to make vim or neovim do all that. If it can’t do that seamlessly and just as well, vimlike editors will never be a replacement for a proper IDE. It’s fast, capable single file and small scope editor for me.

    If you’re interested in learning how to do it, I found this guide extremely helpful for getting started. it’s in both blog and video format, and it shows how to install Lazy (a package manager for vim), and which plugins to install to get LSP working (which is what would provide all the hotkeys that you were mentioning above).

    It’s definitely not a task for the faint of heart, but I found it very rewarding once I figured out how to work with the plugin systems because it’s so powerful and easy to customize. I found it helpful to just watch the video a few times to see everything working, then slowly started building up my own configuration (which was a bit more minimal than the linked guide I provided - I only installed about 30-40% of the plugins he listed on that page).

    Another alternative is Lazyvim, which provides an out-of-the-box configuration experience for you. It installs a lot of plugins and most things should work out of the box with very little configuration. It is a massive beast though, but still pretty good for a first start.


  • I completely agree. For basic things, it is very good. But for productivity, it leaves a lot to be desired, because they (the developers) simply cannot accept that different people work in different ways and they refuse to accommodate that… I prefer environments that can be adapted to my workflows - I don’t want an environment that forces me to adapt to it. And it doesn’t help that extensions tend to break on upgrades.


  • Interesting, I was not aware of libdecor. Sorry to hear that it degraded your experience - it really sucks when things like that happen. For what it’s worth, I have seen some interesting themes which could be a reasonable solution to that problem - basically, they made the titlebar very thin or completely missing, except in the area where the window buttons were located, which were enlarged. Not sure which window manager they were made for though - I think it was either xfwm or openbox.

    But in any case, this is the problem with CSD - it doesn’t really have a complete, holistic vision. It’s great that they’re trying to be innovative, but then they very quickly run into problems like the one described by the Factorio developer above. So now they’re in a very awkward position that simply cannot meet everyone’s needs.

    And yet, we never had this problem before they went on their quixotic CSD journey - that’s why many people think it was a really bad idea.



  • I don’t understand what change has to do with it. The problem is, lots of people have used it, tried it, criticized it, and been ignored. It has nothing to do with change.

    Change is fine, as long as the new version is better than the old one. Look at how KDE evolved. Sure, there were a lot of people that didn’t like the 3 -> 4 transition (not me personally, I loved KDE4), but very few people lament what KDE has become today and it certainly is very different from what it was during the 3.x days.

    Personally, yes, I and a lot of other users have read why GNOME does not implement SSDs, and frankly their reasoning is not very convincing, but I don’t think it matters that much. The fact is, users don’t care why it’s not implemented - if they don’t like it, they’re just going to criticize the project and that’s just why GNOME is so widely hated.

    Trust me, I don’t want to hate GNOME - I wish I could just make my life easy and use it as a sane default. But if it’s not good, then I can’t do that - and by “good”, I mean how I define a good desktop, not whatever creative definition they dreamed up.