sorted by: new top controversial old
[-] kevincox@lemmy.ml 5 points 3 weeks ago

I don't think it is that simple. I think that outline is about the "focus". So if I press enter it will activate that tab, if I press tab it will move the focus to the "Entire Screen" tab.

The UX issue is that there are two concepts of focus in this UI. There is "which tab is active" and "what UI element will pressing enter activate". These two are not sufficiently differentiated which leads to a confusing experience.

Or maybe there can just be no keyboard focus indicator by default, but that may be annoying for keyboard power users. But this is generally how it works on the web, you have to press tab once to move keyboard focus to the first interactive element.

[-] kevincox@lemmy.ml 16 points 3 weeks ago

The one that always gets me is GNOME's screen sharing portal.

a screenshot of the screen sharing dialog.

There is this outline around the "Application Window" tab which makes it seem selected. I use this UI multiple times a week and I need to pause for a sec every single time. I always think "I want to share a window", "oh it is already selected" then stare at the monitors for a while before I realize why I can't understand what I am looking at.

[-] kevincox@lemmy.ml 31 points 3 weeks ago

This is basically admitting that consumers don't actually value their subscription service for the cost. If users were buying used bikes and signing up for subscriptions Peloton would be thrilled, they would do everything that they could to encourage that like free trials. But it must be that most people who buy used bikes don't find the subscription worth it and cancel within a few months. Adding this fee both extracts more money and creates a sunk cost fallacy that will cause them to go longer before cancelling.

If the product sold itself they would just let people pay them subscriptions, its basically free money.

[-] kevincox@lemmy.ml 2 points 3 weeks ago

Vista sucked so bad. I got a nice new laptop and it was constant pain. One of the real breaking points was that it would refuse to let me modify or delete some files even as superuser. If I recall correctly they weren't even system files, maybe a separate partition or something.

I tried installing XP but there was some sort of driver issue with my CD drive. It would start installing fine, but then once it tried to reboot off of the HDD to finish the installation it couldn't find the installation CD to finish copying things, so the install just crashed half-way done.

I installed Ubuntu on a partition, dual booted for a while. After a few months I realized that I never even used the Windows partition anymore so I wiped it.

[-] kevincox@lemmy.ml 33 points 3 weeks ago

Likely what is happening is that the game is probing audio devices and triggering the mic on your headphones to get picked up. This switches them into the "headset" profile which has awful audio quality. I don't know why the UI isn't showing that, make sure you are checking while the game is running and the audio sounds bad.

If you want your headphone mic to work there is not much choice. There isn't a standard bluetooth profile with good audio and mic. If you never want to use your headphone mic you can probably configure some advanced settings in your audio manager (probably PulseAudio or PipeWire).

[-] kevincox@lemmy.ml 5 points 1 month ago

Also Canada, and I think in California.

[-] kevincox@lemmy.ml 12 points 1 month ago

Yeah, this is basically my line. If I intentionally subscribed I will be sure to unsubscribe properly once (maybe twice). But if it was unsolicited then it will be marked as spam.

[-] kevincox@lemmy.ml 8 points 1 month ago

Probably not. Google Ads explicitly allows mismatch between displayed domain and actual domain. This is literally a supported configuration with no tricks.

The link you sent gives me a "Redirect Notice" interstitial that mitigates this attack greatly.

[-] kevincox@lemmy.ml 141 points 1 month ago

Allowing showing different domains than the actual click target is wildly reckless and should be punishable.

"Oh but our poor advertisers want to use click tracking and it is too hard to set up on their main domain". Oh boo hoo, I'm sure if it is important to them they will figure it out.

[-] kevincox@lemmy.ml 9 points 1 month ago

everyone knows that writing assembly is a fool's errand

I think this is misrepresenting the advice. I would argue the following:

  1. Writing your whole program in assembly typically won't result in faster code than C or Rust. This is because well-written, readable, maintainable assembly will usually be slower than what a compiler produces. Even if you try to be fairly clever the compiler will almost always do a better job unless you are taking the time to carefully profile every line that you write.
  2. The compiler will evolve over time, your hand-written assembly will not. So even if your assembly is faster initially you will need to revisit it as hardware evolves.
  3. Obviously you will need different assembly for every instruction set.

I don't think anyone ever said "don't try to optimize small sections of code you won't beat the compiler". Of course you can beat the compiler. But it will require significant upfront and maintenance cost to beat the compiler over time. That cost isn't worth it for 99.9% of code. But when applied judiciously it can be used for improvements where it matters.

The conclusion should be start by writing everything in a high level language. Then optimize your algorithms and eliminate performance bugs. Then once you have eliminated the low-hanging fruit consider spending the time to profile and optimize your hottest code in assembly.

[-] kevincox@lemmy.ml 23 points 1 month ago

This is my dream. However I think my target market is smaller and less willing to pay (personal rather than business). However maintenance is low effort and I want the product for myself. So even if it doesn't make much or anything I think I will be happy to run it forever.

The ultimate dream would be to make enough to be able to employ someone else part time, so that there could be business continuity if I wasn't able to run it anymore.

view more: ‹ prev next ›

kevincox

joined 3 years ago
MODERATOR OF