• 0 Posts
  • 42 Comments
Joined 1Y ago
cake
Cake day: Sep 10, 2023

help-circle
rss

I do think that we should continue to encourage developers to create native builds when they can

Yes

My problem is calling people who want Linux native games misguided or wrong. I really don’t think that’s helpful.

I’d prefer games to be compatible natively too, so I definitely count myself among them. I think it’s an issue of visibility, the usual “loud and visible minority”. A thousand calm “I would prefer games were natively compatible” just don’t stick out as much as one aggressive “Fuck every company that doesn’t make their games natively compatible, and fuck you for supporting them by buying their game”.

I just don’t think Proton is the worst thing to happen to Linux Gaming because it allows developers to target alternative platforms without having to actually support them. This is where my personal impression of “misguided” (again, probably a loud minority) native game advocates comes from: Platform Inertia works because people stick with the platforms holding things they like, and the things on those platforms stay there because their prime audience is there. If the extra effort (=cost) of supporting Linux doesn’t match a sufficient uptake (=revenue), profit-controlled companies won’t do it (as they can’t justify it to their shareholders).

This isn’t just an issue with the evil corpos, but with the whole system itself. Screaming at consumers to change their habits won’t make much of a dent either there. Compelling people to change rarely has lasting results, if any. Better to invite them over and make the switch attractive enough to break that inertia. Only then can we meaningfully challenge the status quo.

It comes down to strategy accounting for ideological passion, an understanding of social and economic dynamics and patience. By and large, I think many understand this. Proton may not be what we want, but it’s an ally in achieving our goal. When we get to the point where it’s no longer “Underdog Linux against the near monopoly of Windows”, we can push harder (and honestly, I don’t think Valve would be terribly upset if Proton became obsolete and saved them resources).

We shouldn’t stop asking for native builds, so long as we do it mindfully and respectfully.


I maintain that Proton could be a gateway to open the Linux market and create a sufficient share of revenue that, if and when it is shutdown, it’s lucrative enough to make natively compatible games.

It’s a bit of a deadlock issue: Most Devs will only develop for Linux if they see there’s money to be made there and they can estimate it will be worth the effort. But we need games on Linux for that to happen.

Proton is a stop-gap solution to provide the latter and lower the barrier on both ends: I can play games on Linux and devs have an easier time shipping their games to a Linux audience. I hope long term, the major frameworks will feature defaults that allow devs to easily do so without relying on Steam, but until then, Proton is better than nothing.


“Nobody” probably isn’t literal here, but I imagine some manager scheduling a meeting where they want a report on the game’s performance and feedback during the beta. Some higher up is going to sit in for the first few minutes for the KPI summary.

The sweating analyst jokes about the heat in the room, the higher up dryly remarks that the AC seems to be working just fine. The presentation starts, the analyst grasping for some more weasel words and void sentences to stall with before finally switching to the second slide, captioned “Player count”. It’s a big, fat 0.

They stammer their way through half a sentence of trying to describe this zero, then fall silent, staring at their shoes. The game dev lead has a thousand yard stare. The product owner is trying to maintain composure.

The uncomfortable silence is finally broken by the manager, getting up to leave: “I think we’re done here.” There is an odd sense of foreboding, that “here” might not just mean the meeting. The analyst silently proceeds to the next slide, showing the current player count over time in a line chart.


Devs be applying like “Hi! I’d like to join your development team! My professional qualifications are that I’ve spent eight years working on a failed game!”

Of course, it won’t be the individual devs’ fault but I don’t have any difficulties imagining that some of them have a harder time finding new jobs than people who were let go after the launch of more popular games.


That’s what I do too - if it’s a meeting I care about, I make the effort to suggest a different time. Otherwise, just decline. My calendar is visible and up to date, use the fucking scheduling assistant to tell you when I have time ffs.


I’ve heard of Kotlin in the context of Android apps, but never actually used or learned it. I did one mobile app dev project with Java in Android Studio, but never had any formal classes on it either and just learned as I went (the result was shit, but we got a decent grade for being able to evaluate the difficulties and shortcomings and point out learnings).


Having toyed with video game reverse engineering, I definitely feel like I ought to learn a bit more. I understand mov, pointers and registers, and I think there was some inc and add in the code I read to try to figure out base pointers and pointer paths (using Cheat Engine), but I think knowing some more would serve me well there.


I attended two different Bachelor’s courses, one with a very technical (2016-2018) and one with a more high level focus (2018-2023). The first did have a class where we learned how to go from logic gates to a full ALU as well as some actual EE classes, but I didn’t go far enough or memorise the list of classes to remember whether Assembly would have become a thing. We learned programming with first Processing, then C and C++.

The second had C as an elective course, and that was as technical and low-level as it ever got.


What language is your pseudocode example modeled after? It vaguely reminds me of some iOs App code I helped debug (Swift?) but I never really learned the language so much as eyeballed it with educated guesses, and even with the few things I double checked it has been a few years, so I have no clue what is or isn’t legal syntax anymore.


Retraining people to use new tools on a corporate scale is an immense endeavour, probably a huge cost given the dip in productivity, and that’s assuming there is an equivalent Linux tool in the first place.

For some people, learning new stuff isn’t as easy, and they just don’t have the investment to do so when all they want is to go about their day. The expectation that people shouldn’t be so reluctant to learn something new ignores the inflexibility that long-established habits bring in some demographics.

Conversely, while that demographic is locked into using Windows by virtue of the cost-benefit function to learning something new just too… not be using Windows anymore? is just unfavourable, others will have to cater to them.

Technology is advancing way faster these days, and it’s unfair to demand that everyone keep up with it. Hence, while recommending Linux is a good thing, being an elitist about it (as the people my previous commend alluded to tend to be) is unproductive.


They could come to lemmy!

…where people will definitely give helpful answers and not just dunk on them for not using Linux before diving into an extended argument about distros, sudo and run0


I did a sting writing tests for a team that previously had none. Fun times, the things that were uncovered that day…


How solid is the unit test coverage? What about regression tests? If you get new bugs creeping in all the time, your bug-catchers aren’t doing their job



That’s an awful idea and you are an awful person for suggesting it.

…and I am an awful person for considering the idea


Thank you. Funny enough, just today I chatted with a colleague that mentioned one of the tools was technically available to us, but actually not approved for use. Ordering it wouldn’t be an issue, but getting it signed off would be quite the chore.


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.



Taken literally, that implies you do care.

(To mitigate the pedantry: Given it’s a rather dispassionate response in the context of a provocation, it is probably a very weak “care” though. Just because it’s nonzero doesn’t mean it’s significant.)


Last I heard, there were some issues about who owns the IP and copyrights? I’m not overly familiar, but legal jungle combined with corporate politics may be scary enough to navigate that Miyazaki would rather be careful around making explicit statements


I think of them frequently. They have my thoughts and prayers.

Not my help, of course. They should have to work for their success just as hard as the rest of us. But I hope that they’ll be able to carve out a living with their labour!

If you struggle with reading etween the lines

The implication is that they should be stripped of their capital and the power it gives them. I hope they’ll turn out decent, hard-working people (because good people are worth more than vindication), but even if they aren’t, them being able to live on little work implies a world where we don’t have to worry about slaving away for survival. That’s worth hoping for.


Survivor Bias - you only see the ones that “survive”, which may lead you to underestimate just how many tried and failed and vanished from attention.


A chunk of their target audience aren’t really gamers so much as FIFA players. They don’t buy a lot of games, so they don’t mind splurging on the newest and most up to date installment of their favourite soccer sim once per year.


A boomerang is a clip that plays and rewinds in a loop, like it’s flying to the end of the clip and returning like a boomerang.

I don’t even use Instagram myself, why do I know this


I think the issue is that it’s not also millenial-universal. If only some millenials know it, the rest of us is left out.

I can still operate the iPod though, so I don’t need to know who it is to look for and select.


If you’re looking for good code, you missed the point of my comment 😄

If I was looking for an enumeration of valid inputs, I’d make it a selection box rather than a text field that’s supposed to contain a number and give the selections reasonable names. If I want an integral quantity, I’d use a number input field.

If I have no control over the frontend, that means I’m writing a backend in JS for a bullshit frontend, and no amount of good coding practice is going to salvage this mess.

I’m also blessedly far away from WebDev now. I work in Data Analytics and if I ever have to do any of this for a living, something has gone very wrong.

Converting texts into numbers or dates still haunts me though - fuck text inputs for numbers and dates.


Some Sekiro, some X3: Terran Conflict. Taking on a whole squadron of enemies with a single (albeit powerful) ship to calmly dispatch them one by one is just the perfect mix of cozy and power fantasy for me to wind down between the more fast-paced sections of “Let’s chop you down as fast as possible because the longer the fight drags on the more mistakes I’ll make”.


But what if I don’t want strict comparison? What if my frontend contains a text field for a numeric input and I wanna manually check against each possible valid input value if (input_val == 1) {...} else if (input_val == 2) {...} else if... without having to convert it first or check that it’s actually a number or fix my frontend?

(I’m sure there are valid use cases for non-strict comparison, I just can’t think of one right now)


Recognising an issue vs diagnosing it vs. figuring out a treatment. You can notice chest pains and shortness of breath, perhaps make an educated guess that it could be a heart attack, but it’s going to take an expert to diagnose whether that’s actually the case and what course of action to take.


I once held a temp position in QA. I found a nasty, but obscure error that wouldn’t have popped up until way down the line (and also wrote and submitted a fix). The original developer was annoyed, but the team lead was pretty happy to see me do exactly what I was brought on for: Abusing the app in all the ways I could imagine a user not on the actual dev team doing.

So yeah, great job tester, great job developer, now we wait for the user to try actually sleeping in it and finding it terribly uncomfortable in the long run, or exerting lateral force instead of the vertical one it was designed for.


Albrecht has owned it for most of its existence. The first TJ was opened '67, Albrecht owned the chain since '79, so out of itd 56 years, 48 have been in possession of himself or his family.


The name ALDI literally stood for “Albrecht’s Discount”. It was part of their concept from the start. We can bicker about quality, but if you don’t have the luxury of choice, their prices are generally good here in Germany too.


More specifically, by the heirs of Theo Albrecht, one of the two brothers that founded the two Aldi companies.


For me, it’d also need a Linux compatibility layer on par with (or exceeding that of) Steam. On paper, I’m not a fan of Valve’s exclusive hold on that market, but in practice nothing has come close for me so far (that I know of, at least).

I tried Lutris and Wine, but I had difficulties getting stuff to run, and the fixes required patience and some level of technical understanding (of Wine, specifically, not just Linux in general). They just don’t have the same (comparatively simple) convenience of “check ProtonDB before you buy it, download game, run it, and usually it’ll work fine”.

The more advanced fixes usually involve nothing more than a few well-documented steps like copy/pasting a launch command, selecting something in a dropdown or downloading and extracting a file into some directory. It’s not a universal “It Just Works”, but I feel like it’s been getting better and better, and that’s just a headstart any competitor would have to work really hard to catch up with.


I saw a streamer do that once with a character they absolutely despised. Save, kill, reload, kill, reload, kill, reload a couple times until they finally had it out of their system.


Whether or not the gun was loaded, the person wielding it sure was, and it’s much easier to say “Call the cops on him” if you’re not worried about whether that guy might be rich and vindictive enough to ruin your life over it.

No matter whether Musk would have actually had any way of doing so, the fear of the possibility alone can be enough to cow you into compliance.


Had a 1st level rep call me once about a ticket I’d submitted (apparently they’re required to initiate contact at least once?), say “Right, I see your ticket notes here, does the issue persist? Alright, I’ll escalate it to the 2nd level, have a nice day!” and I’m pretty sure I’ve never heard any rep so cheerful.


That is reasonable. Short comments are easier to digest and quicker to write.

Unfortunately, I am not a particularly reasonable person.


I always treat Wikipedia as a first stop for a general overview under the caveat that not all information may be accurate or complete. From there, I typically use google to look up more info on specific events and such, or sometimes check the referenced sources if they’re available.


Consider this reply a test. Supposedly /u/Paradoxvoid@aussie.zone should work, and @Paradoxvoid@aussie.zone should also offer autocomplete, but Voyager at least doesn’t seem to offer it.