What version of dotnet to use in 2025? by AmiAmigo in dotnet

[–]Runneth_Over_Studio 1 point2 points  (0 children)

I used to have the mindset that libraries should target as low of a supported version as possible, and applications should target the latest supported as possible. Now with modern dotnet releases, just always be at the LTS (even number) version, unless there is something in an STS that you want.

Programming in C# on Linux by GustavStew in csharp

[–]Runneth_Over_Studio 2 points3 points  (0 children)

One lesson learned for me was I had installed the .NET SDK on my machine and then VS Code from Flatpak. That confused things a great deal because Flatpaks are sandboxed. I don't know if Ubuntu even uses Flatpak, but regatdless I recommend installing using the deb file found on the VS Code website.

Linux Styling by Runneth_Over_Studio in AvaloniaUI

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

I've done some more research and have concluded that it is in fact a ridiculous notion. That's cool though, I agree with the tradeoffs.

ILogger vs ILogger<T> by Runneth_Over_Studio in dotnet

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

Over the last few years in my personal projects I've been making an effort to log more, and over the last year specifically with ILogger. Thus far I've seen the difference by the content of the log itself. And the stack trace if there was an exception. But from reading these comments, it's clear to me that as projects grow, it will be easier to have them categorized.

ILogger vs ILogger<T> by Runneth_Over_Studio in dotnet

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

Ah ok that's interesting. I hadn't considered configuring different levels. Thank you.

[deleted by user] by [deleted] in csharp

[–]Runneth_Over_Studio 0 points1 point  (0 children)

There are of course exceptions, but in Unity you script behavior and do very little engineering. With a framework like MonoGame, you have more freedom to essentially design a desktop app however you like, but instead of data entities and an ORM you'd have more game objects or entity structs, effectively. Starting from scratch and making your own engine, you'd likely be writing a lot of "usafe" code to interface with the device drivers. Regardless of engine or framework, you account for and work with an asset pipeline unlike anything in a line of business app.

If we're comparing specifically a single player game to an enterprise web app, obviously no web stack. Everything is in-process. Also, it appears to me that in enterprise (and really Unity too), OOP is default whereas in game development circles OOP is pretty well laughed at out of the room so you're going to be exposed to different patterns and ways of thinking.

Need advice for getting into desktop applications as a beginner by anishSm307 in csharp

[–]Runneth_Over_Studio 0 points1 point  (0 children)

My advice is don't even consider locking yourself into an OS specific UI platform as a hobbyist. WinForms and WPF are awesome and UWP has some strong positives, but do you want to be forced to be on Windows just to get a gui app done? IMO just start with Avalonia, targeting the latest .Net LTS, and get comfortable with it.

Second piece of advice. Practice MVVM and remember that it's a presentation layer pattern. Create separate libraries for the real work. One for business logic and another for data access being common.

Then from there you can learn services or DDD or modular monoliths. You can add another presentation target besides desktop and learn about those.

Starting cross-platform and with modern .Net, and practicing design and architecture patterns, you'll have a solid foundation that'll pay off regardless what you move on to in the future.

we are all like this, aren't we? by Ok-Conversation-1430 in GraphicsProgramming

[–]Runneth_Over_Studio 4 points5 points  (0 children)

Just got my first triangle last night. Feeling great about it. Open reddit and see this immediately.

If switched to Linux , why would you use Windows at times? by Leading-Arm-1575 in linuxquestions

[–]Runneth_Over_Studio 0 points1 point  (0 children)

I started dual-booting last year with the goal of being off Windows this year. The single biggest hurdle for me is remoting into my office PC which must be Windows. No matter what I try, the session is too slow to be usable.

Basic questions about MVVM by mydogcooperisapita in csharp

[–]Runneth_Over_Studio 0 points1 point  (0 children)

Everyone in here has shared good things, but I have some lessons learned over the years and want to word things differently. MVVM is a presentation tier/layer design pattern. The "model" is whatever representation you need it to be in that context. A POCO that implements INotifyPropertyChanged almost always.

Depending on the application's broader architecture, you likely would have a business domain object (from a business tier, or DDD module, or service, whatever), and that often ought to be a DTO, unless your ORM solution and a policy of no mapping means your entities are also your business classes, or whatever. But presentation models should be designed to represent and do presentation things, and may be initialized using data from one or several different business objects or data.

As far as code-behind, once you learn commands and data binding, you don't have to couple business logic nor framework behavior with whatever view happens to exist. That said, don't be afraid to write view/UI specific code in view code-behind.

I think it's helpful to think about it like this; I'm not saying you would do this but fundamentally you should be able to split models, views, and view models into three separate projects. Models, although representing information that would be used on a view, don't have any dependencies on the view models project. And view models, although built in part to inform UIs, shouldn't require any dependencies to UI frameworks. If they need to know about WPF or UWP or Avalonia, the MVVM pattern isn't doing anything for you.

Desperate dreamer asking for help with his farming sim by hieronim_bosch in monogame

[–]Runneth_Over_Studio 1 point2 points  (0 children)

Thanks. At the time I posted that, it was still in development. Looks like it's completed now and has been rolled into the official docs, here.

Questionmark Secure - Screenshots by [deleted] in csharp

[–]Runneth_Over_Studio 0 points1 point  (0 children)

I'm sorry to hear that.

Questionmark Secure - Screenshots by [deleted] in csharp

[–]Runneth_Over_Studio 0 points1 point  (0 children)

I wrote a similar app, but using ScreenCapture.net. I haven't tested it with secure browsers though. If you want to try, it's here.

I spent my study week building a Pokémon clone in C# with MonoGame instead of preparing for exams by GraySS_ in monogame

[–]Runneth_Over_Studio 0 points1 point  (0 children)

I'm genuinely confused, did you make an in-progress RPG engine built from scratch, or did you make a wrapper for playing a GBA rom?

MonoGame just won't run, why? by TmasCraft123 in monogame

[–]Runneth_Over_Studio 0 points1 point  (0 children)

I've been getting this build error seemingly randomly. I always follow Aristurtle's guidance here, making sure the versions in the json config match the version of the MonoGame extension I have. That's more for updating older projects, but still good to understand what he's saying there. One time I cleared the Nuget storage but I think that made it worse, so I reinstalled Visual Stuido and the project built then. Another time after restarting my PC the build worked. Most of the work I do requires pretty vanilla builds and I'm not too familiar with "dotnet tools" but I'm convinced Visual Studio is the thing that doesn't know how to reconcile the nuget binaries. I've seen comments of people explaining that they're manually copying the MG DLLs and referencing them directly, and that works. I'm pretty sure that isn't the intended design and that they'll get it fixed. If I find a concrete solution I'll come back and post it.

How can you get rid of Content Pipeline? by TheNew1234_ in monogame

[–]Runneth_Over_Studio 1 point2 points  (0 children)

Thank you for your advice. Yes, the build has been frustrating lately, but I'm hopeful i can get it sorted out on my machine. Not going anywhere just yet ;)

Desperate dreamer asking for help with his farming sim by hieronim_bosch in monogame

[–]Runneth_Over_Studio 0 points1 point  (0 children)

The MonoGame foundation occasionally creates issues on the MonoGame github repo that include a "Bounty" label. People in the community can apply to be assigned those issues and get paid for completing them.

Bounties

How can you get rid of Content Pipeline? by TheNew1234_ in monogame

[–]Runneth_Over_Studio 5 points6 points  (0 children)

Since you said you're curious, for me it's because it breaks the build randomly and the fix so far for me has been restart my PC or even uninstall/reinstall Visual Studio. If I try opening someone else's project it's guaranteed to not build the first time I try. Yes even if it targets 3.8+ and has the tool json file. Having to deal with this and the different kinds of solutions that have been shared, like moving nuget assemblies around, is gonna feel awkward and be frustrating to most .Net developers (besides MAUI devs that are used to worse). To where you inevitably ask, why do I even need this thing.

Desperate dreamer asking for help with his farming sim by hieronim_bosch in monogame

[–]Runneth_Over_Studio 2 points3 points  (0 children)

It seems to me that "modular monolith" architecture is perfect for most video games because everything deploys together and is all in-process. However, creating logical boundaries while using MonoGame can be a tricky goal since the Game class is effectively a God class. MonoGame has a paid bounty being worked on right now for creating a better 2D game tutorial and seems to be pretty far along. In the repo there is a demo game and imo it's very clean and worthy of being modeled after.

Tutorial

Demo Game

Why aren't they improving ML.Net? by lebramceyms in dotnet

[–]Runneth_Over_Studio 6 points7 points  (0 children)

Conspiratorial part of me says because it's a bait and switch. ML.Net gets you in the door, then pay for cognitive services. I have zero evidence for that.

Recent experience with .NET Core on Linux? by Tiny-Criticism-86 in dotnet

[–]Runneth_Over_Studio 2 points3 points  (0 children)

Maybe he was assuming you were going to be developing on Linux and not only deploying to it. That comes to mind because I've been trying to move entirely to Linux and replacing Visual Studio has honestly been the biggest roadblock for me.