• 0 Posts
  • 16 Comments
Joined 1 year ago
cake
Cake day: August 15th, 2023

help-circle

  • Vlyn@lemmy.ziptoScience Memes@mander.xyzUse Zotero
    link
    fedilink
    English
    arrow-up
    13
    arrow-down
    1
    ·
    24 days ago

    Good joke, you’d have to double and triple check every single citation as LLMs love to hallucinate.

    I wouldn’t risk my title or expulsion because an LLM fucked up my work. Even one missed reference or a false citation could cost you plenty.




  • The problem isn’t keeping votes anonymous, that’s easy. The problem is bots/spam. You could just create a new instance and then upvote a post from another instance a thousand times. If the votes are anonymous for the other instance it’s tough to say if they are genuine users or just bots.

    That’s the main issue here, when votes are anonymous you could easily just spam votes with no way to trace it back. If it’s a rogue instance then fine, you can ban the whole instance. But imagine if lemmy.world starts using fake votes in the background towards other instances.


  • I really don’t see the issue there, you’re only outputting highly specific data to a website, not dumping half the database.

    Do you mean your typical CRUD structure? Like having a User object (AuthId, email, name, phone, …), the user has a Location (Country, zip, street, house number, …), possibly Roles or Permissions, related data and so on?

    SQL handles those like a breeze and doesn’t care at all about having to resolve the User object to half a dozen other tables (it’s just a 1…1 relation, on 1…n, but with a foreign key on the user id it’s all indexed anyway). You also don’t just grab all this data, join it and throw it to the website (or rather the enduser API), you map the data to objects again (JSON in the end).

    What does it matter there if you fetched the data from a NoSQL document or from a relational database?

    The only thing SQL is not good at is if you have constantly changing fields. Then JSON in SQL or NoSQL makes more sense as you work with documents. For example if you offer the option to create user forms and save form entries. The rigid structure of SQL wouldn’t work for a dynamic use-case like that.


  • I mean in my case it’s for an international company where customers use this structure and the depth can basically be limitless. So trying to find the topmost parent of a child or getting all children and their children anywhere inside this structure becomes a performance bottleneck.

    If you have a single level I really don’t understand the problem. SQL joins aren’t slow at all (as long as you don’t do anything stupid, or you start joining a table with a billion entries with another table with a billion entries without filtering it down to a smaller data subset).


  • If you only join on indexed columns and filter it down to a reasonable number of results it’s easily fast enough.

    For true hierarchical structures there’s tricks. Like using an extra Path table, which consists of AncestorId, DescendentId and NumLevel.

    If you have this structure:

    A -> B -> C

    Then you have:

    A, A, 0

    A, B, 1

    A, C, 2

    B, B, 0

    B, C, 1

    C, C, 0

    That way you can easily find out all children below a node without any joins in simple queries.




  • Well, there’s modern C++ and it looks reasonable, so you start to think: This isn’t so bad, I can work with that.

    Then you join a company and you find out: They do have modern C++ code, but also half a million lines of older code that’s not in the same style. So there’s 5 different ways to do things and just getting a simple string suddenly has you casting classes and calling functions you have no clue about. And there’s a ton of different ways to shoot your foot off without warning.

    After going to C# I haven’t looked back.


  • Vlyn@lemmy.ziptoMemes@lemmy.mlGaming Then vs Gaming Now
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    1 year ago

    Absolute bullshit, lol. Nowadays you can boot your PC, launch Steam and start into your game while 20+ years ago you were still looking for the damn CD.

    And don’t get me started with game updates, you had to do them MANUALLY. Go to the developer website, look at a download page, then you get offered updates: 1.0.1a, 1.0.1b, 1.0.2, 1.0.2b, 1.0.3, 1.1.0, 1.2.0, 1.2.1abc, …

    For smaller updates you had to install them in order, so you download 1.0.1a, install it, then download 1.0.1b, install it, then download… if you are lucky the bigger updates like 1.1.0 or 1.2.0 could be directly installed without any in-between steps.

    Oh and installing games? World of Warcraft had 4 CDs and if you bought it with Burning Crusade you had to use 8 CDs in total for installation! And the install took ages too.

    And during the installation you had to type in a cd key, which took longer than all your popups you’re describing together.

    I’ve been mostly playing on PC for the last 27 years, what we have today, even if some stuff is annoying, is 100 times better than how it was back then.




  • I had that issue with an Otterbox case. Bought it, it was bulky but protected the phone well. After 3 years the rubber tore near the charging port. They offer “lifetime” warranty (5 years). Well, wrote them for a replacement and they simply said nah, they don’t have that case any more for a phone this “old”. So they didn’t honor the warranty and just told me I’m out of luck.

    What the hell do I buy an expensive phone case for when they can’t even honor a 5 year warranty? That was the last Otterbox for me, Spigen was the choice I went with afterwards. Can’t go wrong with a 10 buck phone case, I don’t care if it breaks in a few years.

    When it comes to phones every manufacturer just gives you the finger if it’s 3+ years old it seems.


  • Back in the day this was even better:

    Original Galaxy S battery was getting weak? Order a new battery from Amazon for 13€. Battery arrives, pop the back of the phone off, pull battery out (just like that, no soldering), push new battery in. Push the back of the phone back on, done.

    New battery in and it had more mAh than the original one. Despite overclocking that phone it ran a day longer after the replacement.