@bitbonk@mastodon.social avatar

bitbonk

@bitbonk@mastodon.social

addicted to #dotnet and open source, creator of @bot, admirer of the 80ies and 90ies

I am searchable via https://tootfinder.ch

This profile is from a federated server and may be incomplete. Browse more on the original instance.

ICooper, to dotnet
@ICooper@hachyderm.io avatar

Alright hive mind. A question around primary constructors. I just had an issue where the primary constructor took two values:

public class Foo(string bar, Dictionary<string, string> baz)

and then i tried to use them in a method body

public async Task DoStuff(){

var result = DoTheThing(bar);

var value = DoTheOtherThing(result, baz);

}

I created an instance, passed in valid values - but in DoStuff they were null?

What am I missing?

bitbonk,
@bitbonk@mastodon.social avatar
rra, to random
@rra@post.lurk.org avatar

Smartphone manufacturers have recently begun announcing they will support their newer models of phones with at least five years of software updates. They like you to believe they are taking responsibility by themselves at the benefit of us the consumer.

The reality is that the new EU guidelines are forcing them to do this if they want to stay on the European market:
https://repair.eu/news/new-eu-rules-smartphones-and-tablets-will-follow-new-ecodesign-requirements-by-june-2025/

via @jessika_richter

bitbonk,
@bitbonk@mastodon.social avatar

@rra @jessika_richter My iPhone is now more than 7 years old and still works perfectly and I still get (security) updates.

In the last few weeks I have encountered the first apps that require at least iOS 16, which is unfortunate, but not a big problem.

Jandev, to random
@Jandev@mastodon.cloud avatar
bitbonk,
@bitbonk@mastodon.social avatar

@Jandev I have been using this feature for a while in the . It actually is quite handy.

bitbonk,
@bitbonk@mastodon.social avatar

@Jandev I am really no terminal guy. But Warp kind of won me over.
I use the terminal more often now.

khalidabuhakmeh, to macos
@khalidabuhakmeh@mastodon.social avatar

Name a more iconic duo that’s now on ?

bitbonk,
@bitbonk@mastodon.social avatar

@fornever @KirillOsenkov Any chance dotPeek is joining them any time soon?

bitbonk,
@bitbonk@mastodon.social avatar

@fornever I see, right, a text edit control for code is always a complex thing.

What I used a lot for on Windows is for doubleclicking DLLs in Explorer or Total Commander to quickly look inside.

On Windows, the nuget package explorer was the default app for .nupkg and dotPeek for .dll files.
I really miss these features on

heiseonline, to random German

Zugegeben, nicht verrückt, aber ein Klassiker! 🫠

bitbonk,
@bitbonk@mastodon.social avatar

@heiseonline Genau! Wenn man für eine Erstanmeldung erst noch eine extra Anleitung erstellen muss hat man wohl etwas falsch gemacht.
Ein Klassiker!

shanselman, to random
@shanselman@hachyderm.io avatar

Learn C# 12! Great refresher or gentle intro for beginners https://m.youtube.com/playlist?list=PLdo4fOcmZ0oULFjxrOagaERVAMbmG20Xe&si=o-vhHp7Onau0UzlY

bitbonk,
@bitbonk@mastodon.social avatar

@shanselman @bot boost this, please

bradwilson, to dotnet
@bradwilson@mastodon.social avatar

There is an unfortunate side-effect of writing #Roslyn #Analyzers with respect to compatibility.

The @xunit analyzers target Microsoft.CodeAnalysis 4.2.0 because that's what in VS 2022 17.2, which is currently still in LTS support.

CodeAnalysis 4.2.0 doesn't support C# 12. There are analyzers that are broken because of this, when used with C# 12 language features, and we can't fix them unless we're willing to throw away compatibility with everything before VS 2022 17.8.

#dotnet #csharp

bitbonk,
@bitbonk@mastodon.social avatar

@meziantou @bradwilson @jasonmalinowski I suppose the same multitargeting solution also applies to source generators?

davidwengier, to random
@davidwengier@aus.social avatar

For a brief few minutes this evening there was a dragon fly inside our house. I'm not sure we've ever experienced that level of excitement at home before, not will ever again.

Unless a bird flies in I suppose.

bitbonk,
@bitbonk@mastodon.social avatar

@davidwengier Or a dragon.

zhenyi, to random
@zhenyi@mastodon.social avatar

I know some of you are not happy with the new changes in Vinegar 2.8.5. But I want you to know that these changes were made with your best interests in mind.

(Also, leaving a 1-star review after asking for a refund? 😭)

bitbonk,
@bitbonk@mastodon.social avatar

@zhenyi What are the changes in 2.8.5?

bitbonk,
@bitbonk@mastodon.social avatar

@sxpert @zhenyi that’s a cool idea, is the a browser extension that automates this? „Send to VLC“ or something…

bitbonk,
@bitbonk@mastodon.social avatar

@sxpert @zhenyi Nice, and with DuckDuckGo video search you don’t even have to go to youtube.com to get the URL.

bitbonk,
@bitbonk@mastodon.social avatar

@zhenyi Have you considered to extend Vinegar so that it also applies when playing YouTube videos in the video search results of DuckDuckGo?

bitbonk,
@bitbonk@mastodon.social avatar

@zhenyi That would be super cool. With this, I think I‘d rarely had to go to youtube.com at all.

bitbonk,
@bitbonk@mastodon.social avatar

@zhenyi Oh right 🤯
I always thought it didn’t because this is how it looks in iOS.

I can’t click on the „picture in picture“ icon in the top left because it is obstructed the account overlay. Clicking on it brings me to YouTube.

bitbonk,
@bitbonk@mastodon.social avatar

@zhenyi maybe because I’m still on iOS 15 🤗

bitbonk,
@bitbonk@mastodon.social avatar

@zhenyi np, it works when I press play first

allennewton, to dotnet

Not every software application written in is a microservices architecture or cloud based. The hype machine for is so loud.

bitbonk,
@bitbonk@mastodon.social avatar

@Martindotnet @khalidabuhakmeh @chethusk @allennewton
Our ideal solution would be a database that ingests the OTel data that can be a simple cross-platform exe (like Postgres, Seq) and some visualization/viewer components that we can embed in our own desktop applications (@avaloniaui, WPF).

bitbonk,
@bitbonk@mastodon.social avatar

@Martindotnet @khalidabuhakmeh @chethusk @allennewton Does the collector have to be a separate process/service or can it be embedded into an existing .NET desktop application?

bitbonk,
@bitbonk@mastodon.social avatar

@Martindotnet @khalidabuhakmeh @chethusk @allennewton Why don’t I need a collector when I send the data of my app directly to honeycomb.io? Honeycomb is the collector?

bitbonk, (edited )
@bitbonk@mastodon.social avatar

@Martindotnet @davidwengier @chethusk @allennewton > I've been wanting to build a vscode extension that accepts otlp and has a dashboard for a long time.

When I saw the Aspire dashboard that was my immediate thought. This things should be the integrated right into the IDE of your choice.
I played with the idea to make a plugin that uses Aspire.Dashboard for this.
I could even steal from your work here: https://github.com/martinjt/aspire-app-extension

Gjoel, to CSharp
@Gjoel@mstdn.dk avatar

My relationship to extension methods is a bit ambivalent. You can make some nice helper methods on classes you don't otherwise have access to, but it comes at a cost of, IMO more opaque code. Which can be fine if the benefit is there.

I have noticed people, however, making extension methods and placing them right next to the class or interface being extended, which in my view is just obfuscation. The argument being, that this particular set of helper functions do not belong in the class, so instead we extend the class.

By extending the class, you alter the class. Something might belong in the class in the current context, but not others (say, in test) but if the extension methods are implemented in the same project and namespace as the class itself, then it's functionally the same as adding the methods directly to the class. Only more difficult to navigate.

#csharp

bitbonk,
@bitbonk@mastodon.social avatar

@Gjoel There is also the interesting sub-question of when to favor default interface methods over extension methods or vice versa:

https://softwareengineering.stackexchange.com/questions/442413/should-i-favor-default-interface-methods-over-extension-methods

bitbonk, (edited )
@bitbonk@mastodon.social avatar

@davidwengier @TimPurdum @Gjoel There is a subtle but significant difference in the polymorphic method resolution behavior in extension methods vs. DIM.

rafaelldi, to random
@rafaelldi@mastodon.social avatar

Let's try to experiment and create an Aspire plugin for

bitbonk,
@bitbonk@mastodon.social avatar

@rafaelldi Have you considered to integrate the aspire dashboard right into the IDE?

For reference:
https://mastodon.social/@bitbonk/111555964538921556

  • All
  • Subscribed
  • Moderated
  • Favorites
  • anitta
  • thenastyranch
  • rosin
  • GTA5RPClips
  • osvaldo12
  • love
  • Youngstown
  • slotface
  • khanakhh
  • everett
  • kavyap
  • mdbf
  • DreamBathrooms
  • ngwrru68w68
  • megavids
  • magazineikmin
  • InstantRegret
  • normalnudes
  • tacticalgear
  • cubers
  • ethstaker
  • modclub
  • cisconetworking
  • Durango
  • provamag3
  • tester
  • Leos
  • JUstTest
  • All magazines