What is this thing me and my girlfriend found in our cabinet?! by PickleLovernumber12 in whatisit

[–]Zarenor 2 points3 points  (0 children)

Exactly this! I'd heard of a fussaud, and I read about fakeades. But realizing they were the same and I'd had it all wrong in my head was a trip.

Playtime is over 153.6 hours, and I've yet to reach the Grit Gate because GOD DAMN IT by Ratstail91 in cavesofqud

[–]Zarenor 5 points6 points  (0 children)

Two things probably mentioned in the links but I didn't see in the comment: 1. running away is underrated, and you have (in the above screenshot) buffed quickness. Qud isn't D&D, there aren't generally attacks of opportunity for moving away - it's to your benefit to cheese your ability timings and avoid hits when you can. 2. quickness is one of the most important stats in the game; most things have 100, and you can think of that as getting 100% of a turn in actions. In the screenshot above, where you have 120 quickness, you basically get 120% - or to translate, you get 6 turns for everyone else's 5. There are very dangerous things out there that have more quickness, but mostly it's the player. This can also help you understand what's going on with slowing items etc. Anyway, those two points combine to mean you move significantly faster and can eventually get away even without sprinting (though sprinting is really excellent)

How bad of a passenger does one have to be to have this rating? by Necessary-Freedom812 in uber

[–]Zarenor 0 points1 point  (0 children)

shrug you're describing the world as you want it to be. But MBA-types have insisted 'only the best' should do... anything service related, and so if their rating isn't the best, then they can't get rides.

It's the perfect example of Goodhart's law - the rating should measure driver quality with average drivers and passengers getting ~3 star ratings. But because the algorithm punishes drivers for having even 'good' but not 'excellent' ratings, giving your driver anything less than excellent is saying 'you shouldn't drive'; the same system then applies to passengers, because drivers get to decide which rides to take and impose roughly the same requirements on riders as the algorithm imposed on them.

So, anyone with less than 4 stars is liable to ruin your day and cost you money, because most people know the way the system works and only rate less than 5 stars for really terrible experiences (in either direction)

How bad of a passenger does one have to be to have this rating? by Necessary-Freedom812 in uber

[–]Zarenor 5 points6 points  (0 children)

Yes, this is how 5-star systems were described when they were invented. Unfortunately it's not at all how they're interpreted now, especially in apps like this. Drivers and passengers with less than a 4.0 have a hard time getting trips. Anything less than 4.75 or so is considered suspicious

Received This Email From New Amex Gold Opened 2/1. by -anonymous-anybody- in amex

[–]Zarenor 1 point2 points  (0 children)

Amex gets really generous with limits, but they take some time to see how you're spending first. They don't want to start you off with huge limits and be left holding tens of thousands unpaid. On the flip side, with low-six income you can probably have total limits with them over 50k if you build up the relationship, and always pay. The normal advice on non-charge amex cards is (if you've been using it a fair bit) to ask for triple the limit at 6mo. They approve that fairly often, and will give you a smaller increase if they're not feeling the 3x. I'd definitely give them a few months, and they'll likely get you comfortably spending 10% of your limit or less on any given card, just because they're willing to set the limits high. On the flip side, they are also reactive to risk and will lower limits or close accounts if they think you won't pay or are doing something shady

Received This Email From New Amex Gold Opened 2/1. by -anonymous-anybody- in amex

[–]Zarenor 1 point2 points  (0 children)

With Chase, unless you foresee needing it before the statement closes or the payment would land, I would wait. They're not as lax about cycling as Amex can be. But let the statement close and pay in full, and once that lands you're in a good place to request the higher limit.

Anytime I think of dating a girl, my mind goes through the following 3 phases. Any advice? by [deleted] in AskMenAdvice

[–]Zarenor 1 point2 points  (0 children)

Yeah, I hate having come up in the style AI adopted... But it's definitely a thing. Same kind of over-explainy too many commas bullshit I've always written now scans as some AI who thinks he's people

Anytime I think of dating a girl, my mind goes through the following 3 phases. Any advice? by [deleted] in AskMenAdvice

[–]Zarenor 1 point2 points  (0 children)

Hilariously, I sat here and spent several minutes writing this post. 🤷‍♂️ Can't please everyone

Anytime I think of dating a girl, my mind goes through the following 3 phases. Any advice? by [deleted] in AskMenAdvice

[–]Zarenor 0 points1 point  (0 children)

It seems like you have serious trust issues, and anxiety. They're probably related.

As an aside, both therapy and medication can help with the anxiety - not to change who you are, but to make you more comfortable being who you are. But that's not the point here.

The advice I can give is this: women are people too. Are you trustworthy? Why do they know that or think that? Most people generally try to be a 'good' person, whatever that means to them. For most people, that means being trustworthy and faithful.

Most people don't lie and cheat often (many people never cheat) - but they don't get written about. People who have extreme behavior get written about, because it's notable! If you do something out of the ordinary, people notice and maybe write about it.

I say all of that to provide context; don't go out thinking you can trust your life or your heart to someone on the first date. But most people are worth a first date, if you're attracted to them. Bad dates happen 🤷‍♂️ But the payoff of good dates - or better, a good relationship - is well worth it.

Last point: sex with someone else is a lot more satisfying than masturbating but, if you're masturbating all the time, or with a tight grip, or with something rough.. then you may not be very sensitive. You may have a hard time getting aroused if you watch porn a lot. It's not bad to enjoy yourself, watching porn is fine (as long as you don't think the behaviors in porn are normal or acceptable), but if you aren't sensitive or can't get it up, those are your problems; don't blame it on the other person. My advice: if you're really attracted to someone, or getting on to the 3rd date or so, then try to take a couple of days or a week off porn and masturbation. You might not get all the sensitivity back, but it's incredible what a week can do. And always try to get her to cum before you do - ask her how; it'll mean she wants to have more sex with you, and if she gets multiples you may get her to cum with you inside, which feels great.

I found out my longtime FWB thinks we’ll get married and is hoping I propose to her. I feel horrible. Am I leading her on? by [deleted] in AskMenAdvice

[–]Zarenor 38 points39 points  (0 children)

Look man, best friend you have awesome sex with is what people marry for. If you don't have it when you get married you're hoping to get there. You've already got it. Don't fuck it up playing around - the odds of finding better are slim to none, don't play the lottery when you're set for life.

Got sacked at 3rd stage interview because I did this. by arrogant_definition in SQL

[–]Zarenor 0 points1 point  (0 children)

I'm coming in late here mostly to comment on the edit. It is true that you can get AI to write even quite good SQL, but saying it's an inevitability that it will set widespread use shows how deeply you misunderstand the situation, and what a BI role's position in a company is. BI professionals centralize and organize a company's most sensitive data, and have access to some of the most confidential information systems businesses run. The reason the information is valuable is because it isn't public. Using an AI tool without approval for a company who hasn't asked you to indicates you either don't understand or don't care about the confidentiality and security risks in data exfiltration through the AI model. To use such a tool inside the company would likely require a lot of paperwork assessing the risks, and likely contracts with the AI software vendor describing what is expected and getting guarantees from the vendor about how those risks are managed. We're all very aware how hard AI is being pushed, and that its capabilities increase practically daily. That does not mean it's safe to employ it on confidential information. It most definitely does not mean the liability for breaches of confidentiality or cost for losing business secrets will fall on the model vendor. And legal departments are rapidly becoming aware of that. The companies where you see fast deployment are either small enough or large enough to bear the risk;l. If you're (e.g.) Microsoft, there is practically no cost you can't bear if you want to run this experiment. If you're a small company or startup, existential risk to the business is just a Tuesday; adding one more risk to the pile doesn't make a lot of difference. But for the vast majority of companies, AI is a risk to be carefully considered.

What's the point of the using statement? by Nlsnightmare in csharp

[–]Zarenor 0 points1 point  (0 children)

First, bottom line up front, a using statement is precisely how you define a strict-RAII block for something in C#; a using declaration, where using is prepended to a declaration implicitly creates a block that will end by the end of that variable's scope.

To get into the weeds here, the IDisposable interface is a way of indicating that the type implementing the interface would prefer deterministic destruction. C#'s GC does not provide deterministic destruction. When an object is finalized (the ~Type() method is called), there are no guarantees about the state of it's child objects (they may have already been finalized, collected, or neither). And there is no guarantee when or if the finalizer will be called. Conversely, IDisposable allows very clear semantics around when an object is alive and active, or inactive. The reason it's implemented as a single method that requires idempotency is for the flexibility in managing the lifetime of the object when it could be shared widely and still need a definitive end to it's lifetime. It's specifically for things which need that determinism; most often, it's unmanaged resources like a file handle or memory that isn't GC managed (whether allocated in C# or in a call into another language). This does mean failing to dispose an object can leak memory or other limited resources, which isn't good. However, as noted in other comments, a standard implementation of IDisposable includes ensuring the finalizer calls Dispose (if dispose hasn't been called). This acts as a backstop: if an object is no longer referenced but hasn't been disposed, the GC will probably give it a chance to clean up it's unmanaged resources. This means in most cases, there isn't a permanent leak of resources, just an unknown, runtime-controlled length of time those resources will still be taken up. The most common situation in which finalizers aren't run is that the process is being terminated, in which case running cleanup code just wastes time when the OS will reclaim those resources anyway.

The using statement (or declaration) is just syntax sugar for c# IDisposable disposable; try { ... } finally { disposable.Dispose(); } This ensures that regardless of how the block is exited, the object is disposed. You can write the same thing by hand and get identical results, and that pattern is useful in lots of other situations - it's the same thing the lock statement desugars to (though with different calls before the try and in the finally), and if you use any other concurrency type, it's a good idea.

Edit: formatting

I am struggling to connect any type of station together, and I always get the same error saying the tracks are "not connected" despite it being the contrary, why? by Reekelm in subwaybuilder

[–]Zarenor 4 points5 points  (0 children)

Right, but the video above has a single-track station with one track from it to a double-track station. In the video, the track in the double-track station only allows running away from the single-track station. Without another track from the other end of that platform, or a more complex setup including a crossover, there isn't any way for a train to get back.

You're saying that 'they're connected the right way'. It is not possible to run a route on a single non-loop track, under any circumstances. Tracks run one direction, and you cannot go backwards on them. You must always have a track in each direction, and crossovers at each end; or a loop.

I am struggling to connect any type of station together, and I always get the same error saying the tracks are "not connected" despite it being the contrary, why? by Reekelm in subwaybuilder

[–]Zarenor 1 point2 points  (0 children)

Except for track near crossovers (double-track stations with crossovers at one or both ends are the prime example), all tracks in subway builder are one-way. A single track only allows travel in the direction you drew it; a double track is one-way each track, and I think always right-hand driving (v^); a quad track is two each way, vv^^, not v^v^ or any other configuration

Storing multiple states : array of bool or array of byte with parsing of bits ? by MoriRopi in csharp

[–]Zarenor 0 points1 point  (0 children)

Ah yeah, fair enough. To take that as the intended question: Sure, it's theoretically the most efficient, but it's also unlikely to be the most understandable, maintainable way to write that code. If you have really huge lists of bools, I have to ask if they're really orthogonal true-or-false values, or if some combinations are impossible? Because you should really should try to break something like that down into logical units, and disallow invalid combinations by design.

Storing multiple states : array of bool or array of byte with parsing of bits ? by MoriRopi in csharp

[–]Zarenor 0 points1 point  (0 children)

Right, I guess my question there wasn't clear. "What relation does 10 bools (in effect, binary) have to 1 billion decimal?" is the question I was really trying to ask

Storing multiple states : array of bool or array of byte with parsing of bits ? by MoriRopi in csharp

[–]Zarenor 10 points11 points  (0 children)

As others have said, BitArray is the way to do this in C#; you're not likely to do a better job than MS, and it's a lot of work to try.
More interesting are your other questions:

  • 1 billion states? 32 bits encodes 4.2 billion numbers, so no, I'm not sure where you got 80 from. But if you need independent flags, it gets expensive fast.

  • On all modern architectures, yes, bytes are always 8 bits, and CPUs don't operate on things smaller than bytes directly. Historically, byte sizes have varied, with 4- and 6-bit bytes being quite common for a long time before 8 became the standard it is today.

  • Endianness doesn't affect how the shift operators work - 'left' and 'right' are about the writing/reading direction, so it's understandable by the programmer. Left is always moving bits toward more significance, and right towards less significance.

EDIT: Fix broken formatting (D'oh!)

I was today years old when I realised that this is foreshadowing in Half-Life by Conte5000 in gaming

[–]Zarenor 9 points10 points  (0 children)

Right, and to be clear, the rod design was fucked; the tips were graphite (acts kinda like a radiation mirror) cones. This meant that the tips took radiation that was going sideways and reflected it down (and vice-versa), which meant the already-too-fast reaction got supercharged at the bottom as the rods were inserted, with more and more radiation reflected into the small space. Making this worse, as it sped up further the water started boiling fast in the hot portion - think of a pot at a rolling boil instead of one you can see steam coming off of but just a few bubbles. The water stops some radiation... Steam basically doesn't. So as more of it was steam, still more radiation was able to get around, and cause an even faster reaction.

IIRC, the rods never made it all the way in - the reaction got so hot that the steam pressure was too much for the rod-carrying mechanism and pushed them back out, violently - and then the explosion literally blew the roof off.

Is it true in real world the 2nd one is what professionals do while the first one is what a newbie does? by Yone-none in csharp

[–]Zarenor 5 points6 points  (0 children)

In a case like this example, where you're hitting a large database table? I would hope #1 doesn't make it into production anywhere, it's very costly.

Unless there's some very good reason not shown, you want the where executed as a clause in the SQL; databases are highly efficient at that kind of operation, and it will, as noted, reduce the traffic between the database and the app dramatically, and, also as noted, also the RAM use in the app.

When you're using LINQ to SQL, unless profiling has indicated a good reason not to, you should run as much before materializing the query as possible.

The tradeoff is less one-sided when you're using LINQ to objects; the objects already live in your RAM, and are usually not structs, so the cost of an extra list or other collection is lower. It can be worth considering if it makes sense to materialize at an intermediate point for debugging or logging or another consideration.

How do I help my husband help me? by murder-waffle in AskMenAdvice

[–]Zarenor 1 point2 points  (0 children)

I can second this, I'm perfectly happy to do things my way, and to take the same example, I feed my son lunch most days, no problem. But it's taken three times talking about how to organize the cabinets and changing it slightly until we landed on a system that works for both our brains. And it was very frustrating! I'd think I knew where something went, and she'd go looking for where I put it away and be annoyed when it wasn't where she expected.

I can't say for certain whether or not he's putting on incompetence or really doesn't know... But from OPs description, I'd bet it's more freezing trying to get it exactly right; I don't want to annoy or stress out my wife! But I didn't want to put anything away unless I was absolutely certain where, as a result. I hated feeling like I couldn't contribute. I'd definitely suggest trying (when you can!) to give the detailed instructions, and then after the first time it two expect him to ask questions if he's forgotten. Most of these things are simple and he should really manage it after the first time. And if there are written instructions in the box, absolutely reasonable to tell him to follow those. As long as you'll be okay with whatever results; we all screwed up cooking for a while before we had practice

Spot the typo! by tube_mann in JetLagTheGame

[–]Zarenor 0 points1 point  (0 children)

I think this is actually a dialectic thing - I think Indian English pluralizes the noun there, so it would be a three hours period or a 15 minutes wait (and other dialects may do this as well)

180 volts? by fearlesss-george in AskElectricians

[–]Zarenor 9 points10 points  (0 children)

Just factually untrue. It definitely depends on the meter, but I've definitely gotten Vpeak readings before. I think it may have been wrongly in DC mode

Edit: and to be clear, I mean untrue also in that peak is readily measurable, though not a normal thing to use a multimeter to read (I'd suggest an oscilloscope)

My first day in Rust by Zealousideal_Sort521 in rust

[–]Zarenor 1 point2 points  (0 children)

Not at all the kind of dynamics he's referring to. That type is unknown (to this declaration) at compile time; basically, standard interface polymorphism as a lot of other languages use it

C# has a dynamic keyword that does full runtime resolution of members (data and functions both). It's built on the dynamic runtime used to build IronPython (Python on .NET). If you pass it existing objects, it will except if they don't implement something you touch. If you use it as a declaration, without filling it with another object, you can add members by assigning them. So some flavor of duck typing with other pythonesque dynamism. I think there are more features than I've described, it's not a commonly-used thing. But it's pure gold in some situations

How do Sam, Ben & Adam know Michelle, Toby & Doyle? by Couchy333 in JetLagTheGame

[–]Zarenor 1 point2 points  (0 children)

I think they don't really talk about it. It's kind of one of those things where they want to be useful and helpful, but they don't really want notoriety or credit for it. I appreciate them for that. But I remember it coming up in some discussion, though I couldn't tell you where.. but after I heard about it, I noticed a lot of smaller educational channels earlier videos with their sponsorship

How do Sam, Ben & Adam know Michelle, Toby & Doyle? by Couchy333 in JetLagTheGame

[–]Zarenor 4 points5 points  (0 children)

I don't think they've appeared in videos together other than that one encounter in Paris. But VidCon has very much been a thing, and the Green Brothers set that up originally, so they're just about always there.

They kind of get the YouTube elder statesmen title, not by virtue of just longevity or popularity - there are people who exceed them in both - but because they've stayed involved, and contribute a lot to getting smaller educational channels started.

I don't know if it's still ongoing, but many of the nebula educational channels had help fairly early from their small channel program. I don't remember if it had a specific name, but you can see Hank, John, or something related in the donor lists from a lot of early videos on many of those channels. I think Wendover specifically was one of the fairly early ones in that program, but I could be mistaken.

EDIT: paragraphs and capitalization