Readit News logoReadit News
strus commented on Local-first software (2019)   inkandswitch.com/essay/lo... · Posted by u/gasull
GregorStocks · 2 months ago
I've always thought that this article overstates the promise of CRDTs with regard to conflict resolution. For toy cases like a TODO list, yes, you can define your operations such that a computer can automatically reconcile conflicts - e.g. you only support "add" and "mark as complete", and if something gets marked as complete twice, that's fine.

But once you get past toy examples, you start wanting to support operations like "edit", and there generally isn't a way to infer the user's intent there. Like, if my cookie recipe starts with 100g of sugar, and I modify it on my phone to use 200g of sugar, and I modify it on my desktop to use 150g of honey instead of 100g of sugar, there are a bunch of ways to reconcile that:

1. Stick with 200g of sugar, drop the 1.5x honey substitution.

2. Stick with 150g of honey, drop the 2x.

3. Merge them - 300g of honey.

4. Merge them - 150g of honey and 50g of sugar.

There's no way for any automated system to infer my intent there. So you've got to either:

1. Ask the user to resolve the conflict. This means you have to build out the whole "resolve this merge conflict for me" UI and the promise of "conflict-free" has not been fulfilled.

2. Arbitrarily choose an option and silently merge. This risks badly surprising the user and losing changes.

3. Arbitrarily choose an option, but expose the fact that you've auto-resolved a conflict and allow the user to manually re-resolve. This requires even more UI work than option 1.

4. Constrain your data model to only allow representing intents that can be deterministically resolved. In practice I think this is too severe of a constraint to allow building anything other than toy apps.

IMO #1 and #3 are the least-bad options, but I don't think they're consistent with the expectations you'd have for CRDTs after reading this article.

(FWIW, https://automerge.org/docs/reference/documents/conflicts/ is the relevant documentation for their Automerge library. It looks like they've chosen option 3.)

strus · 2 months ago
Arbitrarily choose an option, but expose the fact that you've auto-resolved a conflict and allow the user to manually re-resolve. This requires even more UI work than option 1.

This is what every "cloud file sharing" provider like Dropbox is doing. If there is a conflict, the version on the server is "the right one", and your locally conflicted file is copied on the side with some annotation in the file name.

strus commented on A mistake that killed Japan's software industry? (2023)   disruptingjapan.com/the-f... · Posted by u/ayoisaiah
doctorpangloss · 10 months ago
I don’t think anything about Japanese culture or generalizations like that tell you much about this.

Physical products: you are buying them for their software. That’s why you choose an iPhone over an Android phone. They’re all rectangles with screens.

When Sonos screwed up its app it was a crisis because: people pay for the software not the hardware.

Is this true about cars? EV design is converging. It will be. CarPlay controversy is a great example: people choose cars that support it.

Vanmoofs have a lot of hardware problems but the reason people bought them was software (like location tracking and e-Shifting).

So “well known when it comes to physical products,” that may be, but all products are software products.

“Software is eating the world” was all about like, replacing human labor or whatever, disruption. Marc Andreesen thinks he was saying something forward looking when it was all backward looking.

The story is differentiation and customer choices. Truly forward looking. But are Japanese firms incapable of that? Of course not.

Once there was a guy on here who said he had the brilliant idea of using a web browser to make an airplane UI. Listen brother, everybody knows how to write good software. It’s a business strategy not execution problem.

strus · 10 months ago
Software in Japanese cars is terrible from European point of view, yet people are buying them because of the hardware (reliable engines).
strus commented on Yabai – A tiling window manager for macOS   github.com/koekeishiya/ya... · Posted by u/CathalMullan
certifiedloud · 2 years ago
If you come from i3 you'll probably find Aerospace[1] to be more what you're after.

[1]https://github.com/nikitabobko/AeroSpace

strus · 2 years ago
This is great, thank you!

Dead Comment

strus commented on LARPing and Violent Extremism   leb.fbi.gov/articles/feat... · Posted by u/lolinder
H8crilA · 2 years ago
Luckily individual soldiers without heavy equipment (at least some artillery) are more or less useless in a proper military showdown. Has been the case at least since WW2.

ISIS was a good example, they were being quickly defeated by pretty much everyone involved in the Syrian conflict.

strus · 2 years ago
Few ambushes and you have the heavy equipment. That's how many Ukrainian volunteer groups armed themselves - on russian forces.
strus commented on Mounting your iPhone on your motorcycle can damage its camera (2022)   old.reddit.com/r/motorcyc... · Posted by u/behnamoh
ho_schi · 2 years ago
Please don’t mount any phone on your bicycle or motorcycle. Here is why:

    * The screen is not transflective (e.g. Garmin Edge, Nintendo Gameboy -> more  light is better)
    * The device isn’t made for heat or cold (Garmin allows -20 to + 60, an iPhone can only operate between 0 and +35 which is easily reached in sunlight at modest outside temperatures)
    * The battery will be quicker discharged and you want be reachable
    * It not hardened against forces, especially the glas display and (even worse) the Glas backside can and will break
    * It is a distraction (danger)
    * No mount built-in
In other words, the camera is your least problem. My recommendation for cyclists is therefore a Garmin, Wahoo or Karoo. But they are expensive? As smartphones are. Sadly I cannot recommend similar to motorcycles. Maybe some other?

PS: I cannot recommend any device from Apple for sport. The phones are too big and the Apple Watch cannot even broadcast the HR to an Apple TV. Yes! Lol! Apple is now incompatible to Apple!

Apple will allow you to connect sensors to their Watch/Phone in future (iOS17). Which is again bad because you’re not allowed to connect the Watch to a cycling computer (or Apple TV). Apple just wants your data, not providing a good device for sport or any outside activities. The complete industry outside of Apple is bidirectional compatible (you can connect anything to anything by ANT+ or BLE).

strus · 2 years ago
Most of these points would apply if you use phone in your car for navigation, and most of them are not a real issue (expect being a distraction maybe).

Screen is good enough to be used in a sunny day, phone will easily reach more than 35 degrees if you play a graphics-heavy game, so this is also not an issue, battery with a battery saver mode will easily last for a few hours even if you use Google Maps all the time, and with a good mount there is a zero chance you will drop your phone and break something.

strus commented on Tips for programmers to stay ahead of generative AI   spectrum.ieee.org/ai-prog... · Posted by u/mfiguiere
Kiro · 2 years ago
If it works it works and it definitely works for me. I've been using Copilot for about a year and I can't imagine coding without it again. I cannot recall any bugs slipping by because of it. If anything it makes me write less bugs, since it has no problem taking tedious edge cases into account.
strus · 2 years ago
> I've been using Copilot for about a year and I can't imagine coding without it again

I for example used Copilot for 2 months at work and wouldn't pay for it. Most suggestions where either useless or buggy. But I work in a huge C++ codebase, maybe that's hard for it as C++ is also hard for ChatGPT.

strus commented on Tips for programmers to stay ahead of generative AI   spectrum.ieee.org/ai-prog... · Posted by u/mfiguiere
strus · 2 years ago
If you worry about "staying ahead of generative AI" in it's current state, then I think you are not a good coder and you should learn more instead of worrying about that.

LLMs are only good in writing new code without surrounding context. They are pretty useless in legacy codebases and in codebases with a lot of internal solutions. I've used Copilot for 2 months at work and maybe 10% of suggestions were useful, and from that 10% maybe 10% did not contain bugs.

strus commented on Dutch rules will soon prevent schoolchildren from having a phone in classroom   nltimes.nl/2023/07/04/dut... · Posted by u/the-dude
dahwolf · 2 years ago
It's not dumb. The phone distracts from the goal, it's as simple as that.
strus · 2 years ago
> The phone distracts from the goa

So does life. I think we should lock the children in school from the beginning of the education period, without the access to the external, disctracting life. They can leave when they are 18.

strus commented on Dutch rules will soon prevent schoolchildren from having a phone in classroom   nltimes.nl/2023/07/04/dut... · Posted by u/the-dude
WheatMillington · 2 years ago
"Totalitarian policies" my man these are children in school. I am 100% confident from your reply that you are not a parent and have spent very little time around kids.
strus · 2 years ago
> these are children in schoo

Policies apply to secondary education, i.e. high school. You are an adult in higher grades of high school.

u/strus

KarmaCake day64November 7, 2020View Original