• 0 Posts
  • 137 Comments
Joined 10 months ago
cake
Cake day: September 10th, 2023

help-circle

  • The fun comes when there is no actual data model. All in all, I’d say being familiar with the data model is about 60% of my job. 35% is building queries and query scripts for people who need regular exports. 5% is running after other people’s fuckups.

    Strap in, because this is a ride.

    There is a raw database from a decade-and-a-half old app, which I get to access through a layer of views that does some joining, but not all, with absolutely no documentation on how the original database is structured or where things are pulled from or what anything refers to. No data dictionary, no list or map of key relations, some objects are mapped in two different views, no semantic naming of columns.

    If you want to want to query order part delegations by who they’re assigned to (Recipient in the app) you need to use the foreign key RefAssignmentUnit. The “Assignment” unit that did the delegation is just RefUnit. If you have orders that were created by a salesperson on behalf of a customer, OrderingPerson (also a foreign key, but not named Ref-) is the customer, while OrderingPerson2 is the salesperson that entered the order. Don’t confuse that with Creator, which for orders created through the web form is usually a technical user, unless the salesperson is one of the veterans that use the direct app in which case it’ll be the salesperson while OrderingPerson2 is null.

    Also, we have many-to-many relationships that are mapped through reference tables… whose columns are named object and reference for each and every one. Have fun trying to memorize which refers to which so you don’t need to look it up every damn time.

    Create my own views to clean this up? Nope, only the third party service providers for the app can do that, and they don’t wanna. Our internal app admin (singular) can use some awkward tool to generate those views, but there’s no reverse lookup to see what a given column refers to. Also, they have no concept for what actually constitutes a good model because they’re not really familiar with the database, just with the app.

    Get my own serverless DB to create views that query the original DB? No can do, you’d need to order a whole server and that’s pricy.
    Get a cloud DB? Sure, but it will be managed by the cloud team and if you want to have or edit custom views, you’ll get to create a project request. They’ll put it in the backlog and work it into some future sprint.

    Get literally any tool that allows me to efficiently create reusable data prep so I don’t have to copy & paste the base transformations needed for a given query every fucking time and if the source DB ever changes I need to update all my query scripts? If you can somehow squeeze the time to prepare a convincing pitch - a full Power Point presentation, of course - between all your tedious and redundant query preparation and script maintenance, find a management sponsor willing to hear you out and hopefully propose your request to their superiors. Best case: It becomes a whole project - alternatives will have to be considered first, implications, security, costs, and you’ll be the one having to assemble and present that information to management only to have some responsible person point out that it would actually be the remit of a different team… that also works in sprints, has a backlog and will give you no control over your prep.

    And obviously, the app provider doesn’t give us any advance notice of just what will change in the DB with the next update. We only learn that when a view breaks. The app admin can use the tool to refresh the affected views then, while I scramble to determine all the scripts that need to be updated and copy&paste the fix. If a user has been granted their own access to the database, odds are they’ll come crying to me when their modified versions of my queries break.

    There is a lot I like about my job, I acknowledge the difficulties of a historically grown system and service contracts, but the rigid and antiquated corporate culture can go take a long walk off a short pier.



  • I imagine the answer is “what’s the real world?”

    I’m being facetious. I don’t want to assume they all fit the stereotype of nerd that never leaves his room if he can help it.

    They can probably either mask their hatred well enough, or they’re in a place just as bigoted, which may have fostered their convictions in the first place. They go through their interactions with the real world seething with anger and bitterness, then seek relief in video games.

    At their heart, they’re no different from anyone else seeking to escape the unpleasant reality through some media - be that through building a peaceful farm, fighting powerful enemies, reading a gripping story or watching sports. They can’t actually fight the circumstances that cause their pain (or at least think so), so they flee instead.

    It’s reallly just the source of their pain that’s so much more toxic, which in turn leads to a toxic result that ends up poisoning their joy in life even more. Most likely, they’ve been fed that poison by someone exploiting their vulnerability and unhappiness by giving their aimless frustration a target, reassuring them that someone else is to blame for their misery. It didn’t lessen their misery, but at least it gave the question “why am I suffering?” a satisfying and concrete answer. “It’s not you. It’s not some random and unpredictable circumstance that you have no control over. It’s these people that you can do something about.”

    Except you can’t actually do anything about “these people”, but you can at least construct a fantasy of an ideal world without “these people”, where naturally you’re doing much better too. In the specific case of the toxic gamers, they’re looking to video games for manifestations of that world, for places they can immerse themselves in and be free from the troubles of the real world.

    If these games fail to sate that fantasy, to provide an environment they seek where they’re powerful and “safe” from all the things that make them upset, that rage is taken to the forums and echo chambers where they share their suffering with each other to ease and validate it. It’s one thing if there’s some niche indie game made by “these people” - they’re on the outskirts of the gaming world, you can easily ridicule or ignore them. It’s another thing when there’s a game placed front and center, getting all the attention and hype for a moment, and that game is full of things that hurt you.

    For a twisted comparison, imagine if a new game got all the hype and (positive) attention, despite being full of Nazis, presenting them as entirely normal or even good people. You’d (rightly) be upset too. The difference - aside from the subject - is that your upset lilely isn’t born from a stock of thoroughly curated hatred and anger. You’ll probably not muster the same rage as these people, because you don’t have it bottled up already.

    I say this because I’ve been a hateful person too once. Not as bad as some of these specimens, but bad enough to know the spiral and to guess how much unhappier I could have been, how much unhappier they must be. They’re victims turned abusers, and while that doesn’t excuse their behaviour, it may help us understand where it comes from and give us an idea of what to fight:

    Bigotry is born from misery seeking an outlet, fertilised by ignorance, nurtured by confirmation bias. The better our lives get, the less reason to look for someone to blame. The more we learn to think critically and question the lies we’re fed, the less that “someone” will be a convenient target keeping us in the spiral. The more we’re exposed to things that contradict our bias, the weaker it will get.

    The last bit is what broke me out of the loop, the second is what saw me crawl back up the spiral and unravel my convictions.

    Life’s still tough, but at least it has gotten a lot less hateful and miserable since I stopped feeding the hate and blaming others for my own deficiencies and started working on myself.





  • The first problem, as with many things AI, is nailing down just what you mean with AI.

    The second problem, as with many things Linux, is the question of shipping these things with the Desktop Environment / OS by default, given that not everybody wants or needs that and for those that don’t, it’s just useless bloat.

    The third problem, as with many things FOSS or AI, is transparency, here particularly training. Would I have to train the models myself? If yes: How would I acquire training data that has quantity, quality and transparent control of sources? If no: What control do I have over the source material the pre-trained model I get uses?

    The fourth problem is privacy. The tradeoff for a universal assistant is universal access, which requires universal trust. Even if it can only fetch information (read files, query the web), the automated web searches could expose private data to whatever search engine or websites it uses. Particularly in the wake of Recall, the idea of saying “Oh actually we want to do the same as Microsoft” would harm Linux adoption more than it would help.

    The fifth problem is control. The more control you hand to machines, the more control their developers will have. This isn’t just about trusting the machines at that point, it’s about trusting the developers. To build something the caliber of full AI assistants, you’d need a ridiculous amount of volunteer efforts, particularly due to the splintering that always comes with such projects and the friction that creates. Alternatively, you’d need corporate contributions, and they always come with an expectation of profit. Hence we’re back to trust: Do you trust a corporation big enough to make a difference to contribute to such an endeavour without amy avenue of abuse? I don’t.


    Linux has survived long enough despite not keeping up with every mainstream development. In fact, what drove me to Linux was precisely that it doesn’t do everything Microsoft does. The idea of volunteers (by and large unorganised) trying to match the sheer power of a megacorp (with a strict hierarchy for who calls the shots) in development power to produce such an assistant is ridiculous enough, but the suggestion that DEs should come with it already integrated? Hell no

    One useful applications of “AI” (machine learning) I could see: Evaluating logs to detect recurring errors and cross-referencing them with other logs to see if there are correlations, which might help with troubleshooting.
    That doesn’t need to be an integrated desktop assistant, it can just be a regular app.

    Really, that applies to every possible AI tool. Make it an app, if you care enough. People can install it for themselves if they want. But for the love of the Machine God, don’t let the hype blind you to the issues.





  • I’ve once had difficulties running some apps on Proton that used .NET features not supported by mono, which has been updated since then and is now working out of the box.

    I’m playing Trackmania on wine, I’ve played Elden Ring and Monster Hunter: World on Proton, so I’m wondering which issue you’re running into.

    Regardless, building precompiled Linux native binaries is a commendable goal. Others have mentioned Flatpak, which imo is a good and user-friendly way to handle that.



  • I actually think “it could happen to me” is probably the worst reason to care about something? or at least the most base.

    For sure. It is a very egoistic, but also universal and logical reason. “Bad things shouldn’t happen” would be a moral reason to care, but even if that’s not enough, “This might affect me” should make you wary.

    To think “This won’t affect me, hence I don’t give a damn” is both an egoistic mindset and an idiotic assumption.

    But yeah, when those voice gen scams started claiming to be panicked ransom demands from kidnapped relatives it was like… Jesus Christ who wouldn’t fall for that on a bad day?

    I hate everything about this. Voice Gen could be useful enough, but even if the idea of something imitating your voice wasn’t so universally creepy as to be a part of plenty of horror stories, a small percentage of humans being such massive assholes that turn every new tech into a new avenue of exploiting people ruin it.




  • How dare he zip past the congestion with a low-density vehicle instead of contributing to it, wasting fuel (whatever type) and making things worse for everyone like a proper, respectable, carbrained citizen?

    Almost as bad as subways, I tell you! Those bastards take a whole chunk of people past the traffic at once, the audacity 😤


    Sarcasm aside, I do think people need this angle pointed out to them: Low-density transport options for those where they make sense help those for whom it doesn’t. The more short-range traffic happens on bikes, in busses and (light) rail, the more space there will be on the streets.




  • Tinfoil Hat Time:

    Linux Gaming, while increasingly viable, isn’t currently a threat to MS. There are enough reasons people will stick with Windows. But Valve are doing a good job of showing that it’s possible, that Microsoft’s hold on PC gaming isn’t absolute and that an increasing number of games are playable on Linux too (with the right tools). Wine and co. have been around for a while, but they never enjoyed the spotlight of a major videogame platform investing time and manpower into developing a dedicated gaming compatibility engine.

    I don’t think MS would intentionally run it into the ground. They’d probably try to squeeze it for money, which might end up doing so anyway.

    I also don’t think they’re really worried about Linux gaming. But I also doubt they’d leave Proton untouched entirely. Whether they’d kneecap it, whether they’d enshittify it, whether they’d work on interfacing it with their proprietary stuff in an attempt to put it ahead of any competition and tip potential Linux Gaming developments in favour of using their engine to more easily target both platforms at once, I doubt they could resist doing something to squeeze money from it.

    Maybe the very idea that they’re challenging Microsoft’s supremacy is unpleasant to them. Maybe their analytics show enough of a trend to concern them. Maybe they just want to make sure they have a piece of the pie if it ever becomes worth something.

    Or maybe the whole thing is baseless bullshit made up for attention and site traffic.