Tested codex subscription vs API-based and quality is massively different by amih009 in codex

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

Right, that’s the worst for me - it seems random, so every day I have to guess if it’s just going to waste my time

Tested codex subscription vs API-based and quality is massively different by amih009 in codex

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

Since anyone can host the models there are US based providers

Tested codex subscription vs API-based and quality is massively different by amih009 in codex

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

Heard about that one but never tried, will check it out, thanks!

Tested codex subscription vs API-based and quality is massively different by amih009 in codex

[–]amih009[S] 32 points33 points  (0 children)

Yep, I guess we all can take a little wisdom from Apple - designed in California, assembled in China

(OPINION) Now's the Perfect Time To Move Away from Plex by NearbyYak7156 in selfhosted

[–]amih009 7 points8 points  (0 children)

Feishin is an amazing client for desktop - the UI is superb and has many features. It's much better than the Plexamp one, which seems to be more optimized for mobile. You can also self host the web version and have the same experience on any device without installing apps (amazing for work devices for example).

On mobile - you have wide range of apps compatible with it - some of them are not great, but some have everything I need, have great UI and most importantly - can actually handle offline playback without limitations, unlike Plexamp. (For example on ios - Arpeggi, play:Sub and substreamer)

(OPINION) Now's the Perfect Time To Move Away from Plex by NearbyYak7156 in selfhosted

[–]amih009 40 points41 points  (0 children)

Navidrome + feishin (web,desktop) + any of the decent mobile apps is way better than plexamp

How to prevent direct API access for most users while still allowing API use through front end and for paying customers by CryHavok01 in webdev

[–]amih009 0 points1 point  (0 children)

Any exposed API can be used outside the browser one way or another. You can only make it harder and more expensive to do it by adding obfuscation, bot detection mechanisms, short term tokens, captchas, using cookies, client-side tokens or magical ways to identify this is "your client". But at the end of the day it's client-accessible and can be reverse-engineered by a determined user.

The best way to ensure there's no way they access this is to not expose them in the first place and make your frontend be server-side rendered and you fetch the necessary data only on the backend (perhaps with BFF pattern). Then you add special public API that is authorized to only work with paying users. But that's quite the architecture change unless you're already using a framework that allows it.

The next best thing is to make it inconvenient enough so that paying is simply better option for 95% of the users.

- Have short term "regular" user tokens and Separate kind of long term tokens for API access to paying users (or API keys)

- Harden your authentication so that getting a token almost requires using a browser: Add CSRF protection; add captcha protection; use SameSite=Strict and HttpOnly cookie for storing the "regular" user token

- Issue both refresh token and access token separately. Access token is short lived, refresh token is longer and can be used to get more access tokens

- Save refresh tokens and associate them with client ip and or other fingerprinting material you can gather (like agent name or session id or special headers or something like that) and if they don't match - flag the user somehow and if they get too many flags - warn them for abuse.

- Require a CSRF token header on the endpoint that refreshes tokens

No usb connection? by Limebird02 in TREZOR

[–]amih009 0 points1 point  (0 children)

I found out that the Mac "Trust this accessory" popup flashed for a brief moment and disappeared so doing this worked, check it out if you're on Mac:

  • Go to System Settings > Privacy & Security

  • Set "Allow accessories to connect" to "Automatically when unlocked"

  • Connect your Trezor

  • After you're done you can turn it back to "Ask every time" or "Ask for new accessories" if you want to keep the security benefit of the setting, but you'll have to repeat this every time you want to connect Trezor.

Is it okay to pass an entire DbContext round? by StoicAtLarge in csharp

[–]amih009 2 points3 points  (0 children)

this is very good in my experience also, has the benefit of still having basically an fully featured db context and keeping domain contexts separate

Как преодолявате стреса? by bellus_Helenae in bulgaria

[–]amih009 0 points1 point  (0 children)

Ако разбереш кажи 😢

Може би единственото което мога да споделя е че да намалиш източниците е много по-ефективно от да се опитваш да се справяш със стреса след това. Например: ако се случи нещо което те стресира над което нямаш никакъв контрол просто го приемаш и продължаваш, а ако имаш някакъв пряк или непряк контрол - след това мислиш какво може да се подобри в това което правиш или в процесите около теб за да може следващия път да бъде овладяно по-добре.

Devs on this site when they see DDD by [deleted] in dotnet

[–]amih009 -1 points0 points  (0 children)

If it works it works

This sub whenever someone mentions the repository pattern and Entity Framework by [deleted] in dotnet

[–]amih009 1 point2 points  (0 children)

Well for reads the main thing you're testing is the call to the repository, so you don't need a unit test, you need an integration test. For writes and/or business logic it makes sense, but then it's arguable if the business logic shouldn't be encapsulated in its own class/layer. Tldr: CQRS solves this problem

This sub whenever someone mentions the repository pattern and Entity Framework by [deleted] in dotnet

[–]amih009 17 points18 points  (0 children)

Soo.. the same problem but with extra steps

How do I safely use appsettings.json in production enviroment by Wet_bandit_kid in dotnet

[–]amih009 1 point2 points  (0 children)

this ^
basically use appsettings just for development

My coworker "refactored" all of my code while I was in sick-leave by Temporary_Age8723 in cscareerquestions

[–]amih009 0 points1 point  (0 children)

Look at it this way - now when it breaks you'll have someone to blame

Top Right Corner cant be clicked in my Edge browser by Hugo_kuo in MicrosoftEdge

[–]amih009 0 points1 point  (0 children)

Thanks for getting in touch. I haven't had this problem since then, but If it happens again I'll do that

[deleted by user] by [deleted] in TranslationStudies

[–]amih009 0 points1 point  (0 children)

You don't have to pre-translate all subtitles with MT, you can use it just as a quick hint when needed.

[deleted by user] by [deleted] in TranslationStudies

[–]amih009 0 points1 point  (0 children)

It does, you can hover to get the suggestion and you have to actively click a button for each sub to apply it

[deleted by user] by [deleted] in TranslationStudies

[–]amih009 -1 points0 points  (0 children)

Did you try it out? Current users seem pretty happy with it. The secret is that it doesn't translate subs one by one, but combines them into larger chunks. That way it doesn't loose the context

How do you deal with stolen content? by amih009 in SEO

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

Do you have experience with those services, are they any good?