• 0 Posts
  • 16 Comments
Joined 3 years ago
cake
Cake day: June 20th, 2023

help-circle
  • Well, I started using Emacs because I was feeling limited by my Vim+Tmux-based workflow. Like you’ve heard from others, what convinced me was the consistency in interface, and the composability that enables.

    Everything is a text buffer. When the text is drawn to screen, it might be resized, colored, hidden, replaced with images, etc, but it’s all still just text. Because of that consistency of medium, all your interactions boil down to manipulations of that text.

    What’s important isn’t the verbatim text, but what the text represents. It could be code (symbol, function, library, in any language, literately), prose (word, sentence, paragraph, or whole book), a file or directory, a button, a list, a foldable outline, a process, a container, a game tile, a typo, a secret, a git object, a pull request, the string you’re looking for, a definition, a chat message, an RSS feed/item, a web page, etc…

    Each of those has a mode (or modes) that makes interacting with those objects in a semantically meaningful way both efficient and composable (to varying degrees).

    That’s why Emacs devotees try to do everything in Emacs. Leaving Emacs means leaving that consistency and semantic expressiveness behind. In a CLI shell, yes everything is text, but it’s comparatively raw. The best you can do is define variables and color it. TUIs bridge the semantic-meaning gap, but aren’t composable with each other. (Same with GUIs, but because of administering remote systems I avoided them when possible.) You can’t add functionality to htop without recompiling the whole thing. You can’t pipe ncdu’s results to rsync. Emacs is a live Lisp machine. You can redefine (or advise) any function on a whim, without restarting.

    That’s not even getting into how everything you do to improve interacting with text improves your experience with all those text-encoded objects. Completions can be filtered and ranked by different algorithms, lines can be “narrowed” to, it has an interactive regex builder, you can autofill with simple, intelligent predictions (like, what’s under your cursor, or a prefix-matching word up-buffer), you can deeply integrate LLMs, reflow and pretty print, follow externally-edited files, transparently access remote resources…

    I don’t know. Obviously it’s not for everyone, but using Emacs makes me feel liberated; in control of my software. I love it.

    Thanks for giving me a soapbox and the opportunity to put my thoughts together.





  • On the topic of build times, it took me too long to learn that nixos-rebuild supports remote build workers and targets.

    For example, if I am editing on my laptop, want to build on my desktop, and apply the build to my file server, then I’d run…

    me@laptop$ nixos-rebuild test \
    --flake ~/wherever-it-lives \
    --build-host desktop \
    --target-host file-server \
    --use-remote-sudo
    

    The host names should match the name of the nixosConfiguration output from your flake. If they don’t I think you can specify like, --target-host .#some-machine

    Remote sudo avoids having to SSH as root.

    Bonus tip: Having Tailscale on every machine makes this work reliably from anywhere, network speed as the limit.







  • Thank you for calling that out. I’m well aware, but appreciate your cautioning.

    I’ve seen hallucinations from LLMs at home and at work (where I’ve literally had them transcribe dates like this). They’re still absolutely worth it for their ability to handle unstructured data and the speed of iteration you get – whether they “understand” the task or not.

    I know to check my (its) work when it matters, and I can add guard rails and selectively make parts of the process more robust later if need be.



  • Thank you for calling this aspect out. I’m surprised so many people are overlooking it. I protest YouTube for the same reasons, but I’ve got one more to add.

    When they merged Google Music into YouTube, the service became worse. I’d often have music streaming throughout the day over my speakers, but that broke after the merge.

    Anytime I watched a video on my phone that had Content ID-recognized music in it (even in the background), they would cut the stream to my speakers because I am only allowed one stream with any music in it at all.

    This isn’t the behavior when you use the ad supported service. Only the paid.

    Not to mention all the proper features of Google Music that didn’t carry forward.


  • Byter@lemmy.onetoTechnology@lemmy.world•Google Fiber goes big with 20-gig plan
    link
    fedilink
    English
    arrow-up
    34
    arrow-down
    2
    ·
    3 years ago

    If you’re struggling to think of a use-case, consider the internet-based services that are commonplace now that weren’t created until infrastructure advanced to the point they were possible, if not “obvious” in retrospect.

    • multimedia websites
    • real-time gaming
    • buffered audio – and later video – streaming
    • real-time video calling (now even wirelessly, like Star Trek!)
    • nearly every office worker suddenly working remotely at the same time

    My personal hope is that abundant, bidirectional bandwidth and IPv6 adoption, along with cheap SBC appliances and free software like Nextcloud, will usher in an era where the average Joe can feel comfortable self-hosting their family’s digital content, knowing they can access it from anywhere in the world and that it’s safely backed up at each member’s home server.


  • I’m also a UBI layperson, but this is my understanding:

    Basic incomes don’t need to match or exceed the cost of living to provide some of their purported benefits. One of those benefits is replacing difficult to administer welfare services (of which there are some discussions in this thread). In that way the $2700 per person per year can be more efficiently allocated (towards an ideal national gross prosperity) by the individual.

    This might solve issues like the infamous “welfare cliff” that have arisen from difficulties in administration.