Cyno

joined 1 year ago
[–] Cyno 12 points 1 month ago* (last edited 1 month ago) (3 children)

I have a mastodon account, I still check it occasionally and I've tried making it work a year ago, being active on it and following either people or hashtags. I also tried other networks like bsky and cara, or mastodon through kbin integration. None of them really worked out.

I didn't have an issue with the technical side as much as with the community and its mentality. They all have this persecution complex where everyone is out to get them and destroy their way of living. They simultaneously claim it's better and more morally superior than twitter while also responding to any questions or feedback with "if you don't like it GTFO". Most of the posts I've seen on mastodon seemed masturbatory and/or talking about other social networks and why are they bad than why is mastodon actually good. In many ways it was more toxic and negative than my carefully curated twitter feed. There's also as much doom and gloom as on twitter, if not more, when it comes to politics (or at least, it's harder to hide it).

The content in general was bad and boring but I don't know if this is because of the type of people that are on it or just because the lack of algorithm means I will see any random person's ramblings next to the biggest breaking news that I'm actually interested in. There is a lack of innovation in this area and it makes discoverability and content curation terrible, I don't need an algorithm to read my mind but at the very least I wish it could separate trash from actual popular topics.

I found some interesting niches when it comes to FOSS developers and tech but I found next to no actual game devs, artists or content creators on it and even the usual "copy content from twitter" bots were unreliable and uncommon.

TL;DR Mastodon seems very very niche and is not currently viable as a general replacement for other social networks, and IMHO due to the community culture there it's never going to grow into anything else either.

[–] Cyno 3 points 1 month ago* (last edited 1 month ago) (2 children)

One more reason why Git-Fork is the GOAT - it does have separate subject and description fields. Don't lump all GUI tools in together and generalize

[–] Cyno 1 points 1 month ago

I was aware of some people trying to get it working on wine but last I checked it wasn't really going anywhere, there were some big blockers there, and I didn't know the developers were interested in it at all.

Fork and VS are probably the top 2 pieces of software I'm missing to fully migrate to linux so I'd be very happy if they developed an official port that works as well as it does on win.

[–] Cyno 1 points 1 month ago (2 children)

although they are experimenting with it)

Do you have a source for this maybe? This is very exciting news but I don't wanna get my hopes up if it's not true

[–] Cyno 1 points 1 month ago* (last edited 1 month ago) (1 children)

I guess I just don't trust myself (or the system) to keep stuff organized unless I do it meticulously myself from the start in a neat hierarchy. I'll try to use search more often since it does seem fast and sleek and see how it works out. The only annoying part about it is that it always defaults to my primary display for search even if im focused on the second monitor

Do you know of a good guide on how to use search better, like can I narrow so it only shows files and folders, or maybe match to a regex like *.js? it doesn't really find specific files when i search for them, is it supposed to work with other mounted drives as well?

gnome-shell-pano looks great but is it abandoned? It says my current (newest i assume) gnome shell version is not supported by the extension. Does it open the paste window where your mouse focus is (and on the correct monitor if you have more than one)? CH always opens it on the main display even if i'm focused on the secondary, its horrible...

I found I already have an installed gnome extension 'hot edge' that is supposed to do dock opening when hitting the edge, although i do have issues with it sometimes not triggering, it seems very focus sensitive but it's definitely better than nothing.

It's definitely an interesting experience and I don't want it to replicate windows, but i guess i need to come to terms with some design decisions that will feel unnatural after using windows for almost 20 years now.

[–] Cyno 1 points 1 month ago

VScodium

I tried this but it seems that VSCodium is missing many of the extensions that are available on VSCode, it has something to do with them using different extension registries?

In any case thanks for the advice but they don't seem to be completely equal in terms of features

[–] Cyno 2 points 1 month ago* (last edited 1 month ago)

It's been a while since I used ubuntu and popOS was only for a few days so maybe I was just mistaken, I remember it being somewhat comparable to a classic desktop at the time but it could have been that cosmic shell thing. And tbh until so far I thought cinnamon is gnome so it seems like I was just outright wrong about that one, thanks for clarifying

I'm definitely willing to try bazzite's gnome3 for a while, i just wasn't sure what's the default anymore and if it's bazzite doing something out of the norm or if the ubuntu based distros did.

[–] Cyno 2 points 1 month ago* (last edited 1 month ago) (3 children)

tl;dr KB+M and no touchpad here so that might have something to do with it, I prefer more compact and colorful UIs, and different behavior between LMB and RMB.

I'm not a big fan of the Nautilus file manager, all the rows seem too big and too padded. There is no compact mode and from what I've read changing the default file manager is a big no-no in linux since the OS depends on it (and I did try to install Dolphin just to compare but the theme was unusable with bazzite). I can't even pin other drives to the left navigation pane, only folders? The monochromatic theme is neat but just makes it more difficult to tell things apart, gimme some color please yellow folders.

I know the no desktop decision is "since they always get cluttered anyways", but making me use a folder instead will just force me to use a cluttered folder instead, or more likely keep stuff in Downloads. At least with the desktop I can visually arrange it.

I miss the taskbar for switching apps. I do agree pressing the win/command button is neat and practical but sometimes I just want to switch to a different app on my second monitor using mouse only (or see notifications from it) without moving my keyboard hand.

Then it's the small things - I did install the clipboard manager gnome extension (because copyq doesn't work with wayland apparently) but it always opens it in a corner, not on my mouse location.

Systray - left and right mouse buttons do the same thing and doubleclicking does nothing? For example to open the steam window from it I always have to click it, go down to library and click again, this is the default behavior of RMB in other OSes and here it's the only behavior.

Minimizing something and then immediately alt-tabbing doesn't bring that window back up, some focus issue? Two monitors issue? Dunno but annoying.

[–] Cyno 3 points 1 month ago* (last edited 1 month ago) (1 children)

Is gnome 3 the one without a desktop? The only thing I can figure out with gnome-shell --version is that bazzite uses 46.4

There is a KDE variant of bazzite I might try but I dont know what can of worms is that going to open

[–] Cyno 2 points 1 month ago* (last edited 1 month ago) (1 children)

How will manually retyping git pull or checkout 30+ times a day, or using the terminal log instead of a nice GUI with VSCode integration, teach me to solve other complicated issues? I just don't really see the benefit of struggling for most of the time for something that might or might not happen later

[–] Cyno 7 points 1 month ago* (last edited 1 month ago) (3 children)

When you need more advanced stuff then GUIs tend to become more of a sticking point I find

What's stopping you just opening the terminal in those rare cases? For 99% of my daily needs I'm good with a good GUI

[–] Cyno 2 points 1 month ago (1 children)

I'll give it a try, thanks. Maybe I was just messing around with domains too much, could be that part is more strictly defined here compared to win

1
submitted 11 months ago* (last edited 11 months ago) by Cyno to c/csharp
 

Short explanation of the title: imagine you have a legacy mudball codebase in which most service methods are usually querying the database (through EF), modifying some data and then saving it in at the end of the method.

This code is hard to debug, impossible to write unit tests for and generally performs badly because developers often make unoptimized or redundant db hits in these methods.

What I've started doing is to often make all the data loads before the method call, put it in a generic cache class (it's mostly dictionaries internally), and then use that as a parameter or a member variable for the method - everything in the method then gets or saves the data to that cache, its not allowed to do db hits on its own anymore.

I can now also unit test this code as long as I manually fill the cache with test data beforehand. I just need to make sure that i actually preload everything in advance (which is not always possible) so I have it ready when I need it in the method.

Is this good practice? Is there a name for it, whether it's a pattern or an anti-pattern? I'm tempted to say that this is just a janky repository pattern but it seems different since it's more about how you time and cache data loads for that method individually, rather than overall implementation of data access across the app.

In either case, I'd like to learn either how to improve it, or how to replace it.

 

Was just wondering what's popular nowadays, maybe I find something new and better - what kind of tools are you using to access and manage databases?

I'm personally using Dbeaver a lot but honestly it feels increasingly more buggy and unreliable as time passes, every installation and update has had (unique) issues so far and there's little support. However the ease of use and some powerful, convenient, utilities in it make it preferable to others.

 

It is a common sentiment that managing dependencies is always a big issue in software development and the reason why so many apps come pre-bundled with all the requirements so it reliably works on every machine.

However, I don't actually understand why is that an issue and why people generally bash npm and the way it's done there. Isn't it the simplest and most practical solution to a problem - you have a file which defines which other libraries you need, which version, and then with one command you can install them and run the program?

Furthermore, those libraries and their specific versions can be stored elsewhere and shared across all apps on a system so you can easily reuse them instead of having to redownload for each program individually.

I must be missing something since if it were that easy, people would have solved it years ago and agreed on a standardized best way, so I'm wondering what is the actual issue and a cause of so many headaches.

 

I see this often with both new and old developers, they have one way of doing a thing and when presented with a new problem they will fall back to what they are used to even if it's not the optimal solution. It will probably work if you bruteforce it into your usual patterns but sometimes, a different approach is much easier to implement and maintain as long as you are willing to learn it, and more importantly - know it exists in the first place.

On a less abstract level, I guess my question is - how would I go around learning about different design patterns and approaches to problem solving if I don't know about their existence in the first place? Is it just a matter of proactive learning and I should know all of them in advance, as well as their uses?

Let's for example say I need to create a system for inserting a large amount of data from files into the db, or you need to create some service with many scheduled tasks, or an user authentication system. Before you sit down and start developing those the way you usually do, what kind of steps could you take to learn a potentially better way of doing it?

view more: ‹ prev next ›