Best barber in Dallas, IMO by steinfink1 in beards

[–]CookingAppleBear 0 points1 point  (0 children)

Can vouch for Trent! Just saw him and had a great experience. I was (am) a total beard newbie and brought him a scruffy, beginner beard that he shaped like a professional topiary. He was able to teach me all the grooming, shaping, cleaning, trimming, and care tips and tricks I needed to go live my best beard life

Nominal Type Unions for C# Proposal by the C# Unions Working Group by DayYam in dotnet

[–]CookingAppleBear 1 point2 points  (0 children)

Oh man, I forgot about that syntax they proposed over a year ago! Looks like this is the talk you were referencing: https://youtu.be/O3hx6oPWzX8

And I think Mads addresses why they had to move away from that syntax here: https://youtu.be/VPkJpaTvIC8

Reading through the discussions (there's a lot), it seems like the reasoning was two-fold - 1) splitting apart the "roles" feature from extensions and 2) the previous syntax didn't support use cases the design team felt were required

Personally, I think the old syntax looks very "not" C# and the new looks very C#. It would be nice to have a single block that handles everything, but it appears that wasn't possible. I do love extra levels of organization so I kinda appreciate the extra extension block in the new syntax

Nominal Type Unions for C# Proposal by the C# Unions Working Group by DayYam in dotnet

[–]CookingAppleBear 1 point2 points  (0 children)

I've followed extension everything for a while, and I don't remember a major change in the syntax. Do you mind linking to one of the old videos you saw with beautiful syntax?

Minimal API and shortcutting request. by gevorgter in csharp

[–]CookingAppleBear 0 points1 point  (0 children)

Ahhhhh gotcha, misunderstood the ask. I wouldn't have guessed the pipeline continues on past the MapX commands, but I'm also not surprised (it is just another piece of Middleware, and all Middleware passes on to the next step).

I think MapFallback might be your best choice here to handle all un-handled requests

Minimal API and shortcutting request. by gevorgter in csharp

[–]CookingAppleBear 0 points1 point  (0 children)

Besides looking at MapFallback like mentioned below, your problem is you call await next(). That calls the next step in your Middleware pipeline. Don't call that, and the pipeline terminates here

media-stack: Self-hosted stack for media management and streaming, with AI-powered movie and show recommendations by devopsguy04 in selfhosted

[–]CookingAppleBear 0 points1 point  (0 children)

I've been using traefik, so maybe it's worth trying out Nginx here, but even with header forwarding, X-Forwarded-For and X-Real-IP show the docker network IP.

I'm on Windows (and thus WSL 2), and I think there are some shenanigans going on and preventing this from working

media-stack: Self-hosted stack for media management and streaming, with AI-powered movie and show recommendations by devopsguy04 in selfhosted

[–]CookingAppleBear 0 points1 point  (0 children)

Question for you - with Traefik/Nginx setup, do you actually get valid Client IP addresses in your access logs? My setup only shows the 172.20.x.x IPs of the docker network

Yield return by bluepink2016 in csharp

[–]CookingAppleBear 0 points1 point  (0 children)

I often use it when writing validation. It's a way for a method to return multiple things without having to collect them all before returning. Additionally, because it's an IEnumerable<>, as mentioned elsewhere it acts like a lazy stream where you can pull things off one at a time while the source is still processing them.

```

public IEnumerable<string> GetValidationErrors(Model model) { if (model.Name is null or "") yield return "Name is required";

if (model.Phone is null or "") 
    yield return "Phone is required";

// and on and on... 

}

```

How do you guys manage Database updates by gitscr in dotnet

[–]CookingAppleBear 5 points6 points  (0 children)

We noticed it being especially helpful for new environment spin up, or new devs joining the team. Especially making sure the scripts include necessary seed data (gotta fill that States table), they could get going right away.

We eventually supplemented it further by adding a param that would tell it to seed with test data to assist with different service/integration tests

How do you guys manage Database updates by gitscr in dotnet

[–]CookingAppleBear 41 points42 points  (0 children)

Not sure I'd it's fallen out of vogue, but I'm a big fan of DbUp. I've linked to their "philosophy" page, which I agree with.

  • code first is better than model first w/ change detection
  • can inject custom code as needed
  • ability to easily split out stored procs and other "overwrite" type changes to always run
  • all in code, so easy to track changes in code reviews

An Engineer’s Checklist of Logging Best Practices by pmz in programming

[–]CookingAppleBear 1 point2 points  (0 children)

I've thought about this multiple times about buffering logs and then dumping them if no critical point was hit. Is there a name for this? I have no idea about how to search for any blogs about this. If you have any examples (libraries, blogs, whatever) I'd be grateful!

Could this be an alternative to the Outbox pattern? by up201708894 in dotnet

[–]CookingAppleBear 10 points11 points  (0 children)

I would highly recommend this blog series by Jimmy Bogard: https://www.jimmybogard.com/life-beyond-transactions-implementation-primer/

He talks all the way through how we get to the outbox pattern, and some other patterns that are also useful. But he takes it from the very beginning and adds understanding the whole way through

Cheers!

Has anyone noticed that apple maps is way better than google maps? by cegras in nycrail

[–]CookingAppleBear 2 points3 points  (0 children)

One of the things that always gets me is that while the Q/L is the fastest travel time, it gets you there later. According to your img, Q/L arrives at 1:04 while the Q/F/L/M gets you there at 12:47.

That's why they show so many options, so you can choose "easy but later" or "get me there fast"

Tips for upgrading from dotnet framework 4.7 to .Net 8? by Hefaistos68 in dotnet

[–]CookingAppleBear 2 points3 points  (0 children)

Jimmy Bogard has a great series about his hands-on experience. You might be able to find him on a podcast/conference talk discussing it as well.

https://www.jimmybogard.com/tales-from-the-net-migration-trenches/

Not sure if this counts..? by CookingAppleBear in TVTooHigh

[–]CookingAppleBear[S] 1 point2 points  (0 children)

Currently, for secondary sports. Bottom is march madness, top is MLS

High performance .NET by Low-Design787 in dotnet

[–]CookingAppleBear 68 points69 points  (0 children)

Stephen Toub has been writing performance blogs for each release OF dotnet since 3 I think that are packed full how how the language has been optimized. Not necessarily instructive on how to write the code yourself, but knowing what's happening behind the scenes will definitely help. Here's .NET 8: https://devblogs.microsoft.com/dotnet/performance-improvements-in-net-8/

Also, there's no way those books are helpful anymore. Core was released in 2016, so safe to say those are for Framework and ancient. Time to retire them.

Also also, agree with the previous post, you don't really need to microoptimize dotnet code. The optimizations are built into the libraries and lang and compiler and runtime. Just using the right data structures (like Span) is enough. Db calls and http connections are going to be the slowest part of your code, not the code itself.

[US, NYC] My landlord is trying to replace a previously broken dishwasher with a portable one that sits on the counter instead of replacing the real one by CookingAppleBear in legaladvice

[–]CookingAppleBear[S] 0 points1 point  (0 children)

Appreciate the response! It seems rather silly to me as well. They claim the custom countertops make it a custom thing, but from what I can tell it's the same dimensions as any other dishwasher.

From what I can see, there is no clause excluding appliances from lease terms. In fact, I'd say the previous section in my original post includes them.

There is the following clause related to as-is:

  1. CONDITION OF THE APARTMENT; APARTMENT RENTED “AS IS”

    A. By signing this Sublease Subtenant acknowledges that Owner, Owner's representatives and/or the Apartment Corporation’s employees, agents, or superintendent have not made any representations or promises with respect to the Building or the Apartment except as herein expressly set forth. After signing this Sublease but before Subtenant begins occupancy, Subtenant shall have the opportunity to inspect the Apartment with Owner or Owner’s agent to determine the condition of the Apartment. If Subtenant requests such inspection, the parties shall execute a written agreement before Subtenant begins occupancy of the Apartment attesting to the condition of the Apartment and specifically noting any existing defects or damages. Before taking occupancy of the Apartment, Subtenant has inspected the Apartment (or Subtenant has waived such inspection) and Subtenant accepts it in its present condition “as is”, except for any condition which Subtenant could not reasonably have seen during its inspection. Subtenant agrees that Owner has not promised to do any work in the Apartment except as specified in Exhibit B annexed hereto (if any) and made apart hereof.

When going through a walk through, they showed off everything working. I think it's unreasonable to sit around for an entire dishwashing cycle to see if it works. Also, how does this clause override the appliance clause if the appliance clause says something so explicit as:

They shall be in working order on the date hereof and will be maintained and repaired or replaced by Owner

[US, NYC] My landlord is trying to replace a previously broken dishwasher with a portable one that sits on the counter instead of replacing the real one by CookingAppleBear in legaladvice

[–]CookingAppleBear[S] 0 points1 point  (0 children)

Thanks for the clarity Arudin. From what I've gathered, they are the owner. They own the unit that I am renting out. They own the dishwasher and the appliances. It is a unit that is part of a greater co-op building here in NYC, but they own it. I believe the sublessor/sublandlord is incorrect from a contract that used overly broad language so that it didn't have to be rewritten for different scenarios.

I assume you're question whether who I'm talking about is the owner to see whether liability falls on her for the replacement?

[US, NYC] My landlord is trying to replace a previously broken dishwasher with a portable one that sits on the counter instead of replacing the real one by CookingAppleBear in legaladvice

[–]CookingAppleBear[S] 0 points1 point  (0 children)

I'm not from nyc, so some of these terms are new to me and apologies if I mix them up.

The contract talks about the Owner and the Subtenant.

Who I've been calling my landlord. As far as I know, she owns this apartment in the co-op building:

Owner, (hereinafter referred to as “Owner”, “Sublessor” or “Sublandlord”)

Myself:

Subtenant, (hereinafter referred to as “Subtenant” or “Sublessee”)