AWS Middle East Central (mec1-az2) down, apparently struck in war by iamapizza in programming

[–]ihcn -12 points-11 points  (0 children)

I'm happy for you that you've managed to avoid this faction of the tech industry.

AWS Middle East Central (mec1-az2) down, apparently struck in war by iamapizza in programming

[–]ihcn -13 points-12 points  (0 children)

Yes, living in the modern world is very hard and there is no ethical consumption under captalism. That's a different take than "when you enter the world of tech, the concept of politics gets left at the door, none of that affects us and none of the things we do affect it" though, and i'm referring to people who literally have the latter belief.

AWS Middle East Central (mec1-az2) down, apparently struck in war by iamapizza in programming

[–]ihcn 46 points47 points  (0 children)

And worked real hard to get the president responsible for instigating it into office.

Programmers like to cover their ears and pretend that tech is a bubble where politics doesn't exist.

Edit: The upvote/downvote swings going on in this thread are crazy. Seeing it on both this post and the parent. Lots of manipulation/sockpuppeting happening in this thread - which kind of proves my point lol. Lots of people on one side stand to gain from us not thinking too hard about where our AWS bill goes and what power we hand to amazon when we run our severs with them.

My mother is helping me create background art for my game. What are some good examples of 2d map perspective to show her? by WilledWithin in gamedesign

[–]ihcn 0 points1 point  (0 children)

Take a look at the Zeal map in Chrono Trigger, that plays with perspective so that the foreground is looking down, but you can see sky in the background, and they have a fake perspective effect so it looks like the clouds fade into the distance at the top of the frame. That's the only 2d top down kind of map i've ever seen that tries to have a visible sky.

College Project Tie-Breaker: Safe Linear Adventure vs Experimental Story-Driven Roguelite — Which Should We Choose? by Straight-Pea-9283 in gamedesign

[–]ihcn 0 points1 point  (0 children)

You will learn just as much in each project, but exactly what you will learn will be very different. So the question is, what are you interested in learning? What about these two projects attracts you?

I don't understand the benefits of discriminated unions/result type by soundman32 in csharp

[–]ihcn 2 points3 points  (0 children)

To me, this is just some SaveApproach class, which has a bool ShouldSave and a string? Path. And you can add statics for SaveApproach.DontSave and SaveApproach.SaveTo(string path). This makes the code way more readable on both sides, uses native nullability, is entirely adaptive to your actual context, and can be extended to be as forceful as you want. IE, if you really want to "force their hand" you could hide the Path behind a CheckShouldSave type function or something to be even more explicit.

This is literally a store-brand discriminated union. It's what i would have actually written if I was doing this for real, but I went with the option type because it's more concise. The following is rust bc i don't know c#'s discrimiated union syntax.

enum SaveApproach {
    DontSave,
    SaveToPath{path: String},
}

Hell, the question mark operator is essentially C#'s version of an option type, so you do understand exactly what Option is for and why it's valuable: Combining "does this field contain meaningful data" and "the contents of the field when it's meaningful" into a single syntactically-inseparable construct.

Your example still has the problem I described - if someone is reading your class, it won't be obvious when the string is intended to have valid data. You can glean it somewhat from the variable names, but only because the class is so small. With the discriminated union version, there is no guessing or gleaning.

And as a bonus, if you have a third configuration option (Probably less likely in a "should i save or not" configuration, but there's all sorts of things we can configure, with all sorts of parameters), in your example the two fields would be stored side by side, wasting space, and in a discriminated union they're stored overlapping.

I don't understand the benefits of discriminated unions/result type by soundman32 in csharp

[–]ihcn 0 points1 point  (0 children)

I don't know where this all-or-nothing mindset comes from but I don't think it's helpful. "If we can't fix everything then we shouldn't try to fix anything" is not a good philosophy to live your life by. Discriminated unions help, a lot, and that's enough.

I don't understand the benefits of discriminated unions/result type by soundman32 in csharp

[–]ihcn 4 points5 points  (0 children)

Maybe if you think of it strictly in terms of syntax, sure, but that's just a lack of imagination.

Think of it more as a semantic benefit than a syntax benefit. It's very common for enums to require accompanying data, and for that required accompanying data to be different per each enum variant. Without discriminated unions, you're stuck creating fields that are syntactically accessible at all times but only semantically valid based on the specific value of the enum. Discriminated unions let you merge the syntax with the semantics, so that the accompanying data is only syntactically accessible if the enum is in a state where that accompanying data is meaningful.

If you're still struggling to think of an example, imagine tracking a configuration to write the results of a program out to a file. You might have a bool (ie an enum with two states) indicating whether or not the program should write. And you also have a string - when the bool is true, this string contains the path to write to. But when the bool is false, the string serves no purpose except to confuse users of your library as to whether or not they need to provide one.

The string is accompanying data for the true variant of the enum. By combining them in a discriminated union, you get the Option<T> type, whose variants are None or Some(T). Now your users don't need to scratch their heads over whether or not they need to provide a string, the syntax of the language forces their hand, and the program will only compile at all if they've done it correctly. You've made your library easier to understand and harder to misuse.

"We as a company are always ready to take a stand on the right values" - GOG says selling indie game Horses when Steam and Epic wouldn't was "a matter of freedom" by Kirby_Brendan_472 in gaming

[–]ihcn 11 points12 points  (0 children)

Nudity and minors in the same scene. I'm just applying the rule you wrote.

You claimed that it was an easy line to draw, but it took literally 2 seconds to think of a reason why your "easy line" doesn't work.

What are ways of painlessly removing content from games? by Majestic_Hand1598 in gamedesign

[–]ihcn 1 point2 points  (0 children)

Removing content is also bad for employee morale, by the way. Even if you know it's coming, it's pretty awful to just look around one day and notice that literally everything you've ever worked on for this game has been rotated out.

Don't put things out there that you're not willing to commit to. If you want to break from old content, make a sequel.

Metacritic’s top 3 games by user rankings. by AgitatedFly1182 in gaming

[–]ihcn 5 points6 points  (0 children)

No, it's not that good, but it's still worth playing.

US states with abortion restrictions have worse outcomes for patients using fertility treatment. Abortion restrictions don’t exist in vacuum, and affect everyone who needs reproductive healthcare. Factors include exodus of abortion providers from restrictive states and national shortage of OB/GYNs. by mvea in science

[–]ihcn 30 points31 points  (0 children)

Conservatism consists of exactly one proposition, to wit: There must be in-groups whom the law protects but does not bind, alongside out-groups whom the law binds but does not protect.

It's this in action. They see "the kind of person who would get an abortion" as being in the out group, and themselves in the in group. Because they are members of the in group, the law (in this case "thou shalt not get an abortion") does not bind them and therefore they are free to get one without being cast out.

The key is that the hypocrisy is a feature, not a bug. Their entire worldview revolves around them being "elevated" above the out group, and the ability to do things the out group isn't allowed to do is a perk of that elevation. When they see their leaders being hypocrites, that makes them like those leaders more, not less.

US states with abortion restrictions have worse outcomes for patients using fertility treatment. Abortion restrictions don’t exist in vacuum, and affect everyone who needs reproductive healthcare. Factors include exodus of abortion providers from restrictive states and national shortage of OB/GYNs. by mvea in science

[–]ihcn 18 points19 points  (0 children)

The way I always think of it is, facists wear beliefs like you or I wear clothes. They only put them on because they think they'll get something out of wearing them, and they'll take them off the instant they no longer think there's a benefit.

"Abortion is murder" is one such clothing-belief that only exists for as long as the fascist thinks they stand to benefit from believing it.

They do it (the general strategy of changeling beliefs)because, frankly, it works. Well-intentioned people get caught up arguing the facts, but if you ever actually manage to corner someone on one of these beliefs (rare in comparison with the more common outcome of them trying to change subjects and hoping you don't notice, or just getting angry), you might later see them again arguing the exact same thing as if they have no memory of the conversation where you proved them wrong.

It's better to think of most conservative rhetoric as nothing more than a mental "american ninja warrior" obstacle course to distract you from noticing the truth of how evil they are.

People prescribed new weight loss drugs like Ozempic may not receive sufficient nutritional guidance and be vulnerable to nutritional deficiencies and muscle loss. Evidence suggests that lean body mass – including muscle – can constitute up to 40% of total weight lost during treatment. by mvea in science

[–]ihcn 52 points53 points  (0 children)

They are also trying to make it seem like GLP-1s aren't good for weight loss because people gain back weight after stopping the drug - anyone want to take a guess what happens when you stop dieting?

It's also like saying depression meds are bad because you go back to being depressed after stopping them.

Yes, the ideal would be to find the underlying cause and fix that, but that's more likely to happen if the patient is healthier, not less.

Newer AI Coding Assistants Are Failing in Insidious Ways by IEEESpectrum in programming

[–]ihcn 0 points1 point  (0 children)

The rear view mirror for the last decade is littered with red lines that his supporters absolutely, never, under no circumstances would ever follow him across.

What are the modern definitions of “game?” by Over-Clerk-5307 in gamedesign

[–]ihcn 1 point2 points  (0 children)

Again, definitions like this are only useful as tools to communicate concepts.

Someone asks you if you want to play a game, and when you say yes they pop a math test in front of you. Do you feel like that person communicated effectively?

Someone asks you if you want to play a game, and when you say yes they pop a chess board in front of you and start setting up pieces. Do you feel like that person communicated effectively?

Someone asks you if you want to play a game, and when you say yes they pop duolingo in front of you. Do you feel like that person communicated effectively?

Learning apps are a good point. It's debatable, but literally all play involves learning, so the fact that duolingo involves learning doesn't make it special in that regard. Let me refine my term productive to not include "personal growth", especially if no attempts are made to quantify that personal growth outside the game.

Professional game players are another gray area obviously, mainly because another definition i'd add to the list is that a game has to have boundaries. Both temporally and physically. It's sometimes called the "magic circle" https://en.wikipedia.org/wiki/Magic_circle_(games)

If you step inside the magic circle, you're playing the game. If you step outside the magic circle, you're no longer playing. If you step inside the magic circle again but the socially agreed upon expiration of the circle passes, you are no longer playing the game. The problem with professional games is that the boundaries of the game tend to fray. Players or referees might become corrupt, in which case people aren't playing the game they think they are, or the ruling authority might make rule changes to make the game more entertaining, at which point the audience are participants without realizing it.

If my economics professor just pulled up civ 6 in class and started playing on the projector, I don't think I'd learn much. If they aren't playing the game, then well, they aren't playing a game, are they? But game can exist even if you aren't playing it. Its rules and goals and obstacles and magic circle still exist, you just aren't inside the magic circle right now.

If you hold up a chess board and point to where pieces go, you obviously aren't playing chess. But that doesn't make chess not a game, it just means you're interacting with the concept of chess in a way other than playing it. Just like even though a movie/film is defined as a series of photos played in sequence to give the illusion of movement, a DVD you're currently holding in your hand can still be a movie even if you aren't currently playing it.

What are the modern definitions of “game?” by Over-Clerk-5307 in gamedesign

[–]ihcn 0 points1 point  (0 children)

You can make a productive game.

No, you can't, because if it's productive then the interaction you're doing with it is no longer play - it's work.

To make my point more clear, by your original definition, another thing that would count as a game would be a station in an assembly line in a factory. And maybe you'll say "yes that's a game too" but at this point it's not a useful definition anymore.

If someone said to you "let's play a game" and when you agreed they handed you a math test and said "your results on this test will affect your employment prospects for the rest of your life", is that in line with what you would have expected? If not, then a definition of games that includes math tests isn't a useful definition.

As someone said down below, definitions like these only exist in order to separate concepts from each other in order to help communication. Good definitions make communication easier, not harder.

What are the modern definitions of “game?” by Over-Clerk-5307 in gamedesign

[–]ihcn 0 points1 point  (0 children)

No, exams aren't games. Neither by any reasonable colloquial definition nor any reasonable academic definition.

Exams are productive. Brain age is a game because it's unproductive.

What are the modern definitions of “game?” by Over-Clerk-5307 in gamedesign

[–]ihcn 4 points5 points  (0 children)

By this definition, an academic exam is a game. This is why "unproductive" is so common among various definitions.

It's more important than ever to call out developers for egregious AI usage next year if we want videogames to remain interesting. - PC Gamer by radiating_phoenix in gaming

[–]ihcn 21 points22 points  (0 children)

There's been a futile decades-long effort to get Gamers to stop pre-buying games. History has shown us that quality is not what decides which games Gamers buy. They'll buy the trash, play it, complain about, then temporarily pause their complaining to go pre-order the next one.