It's no different from learning vim. Just stick with it until the shortcuts become cognitively automatic.
It also helps to learn upfront the idiosyncratic terms and concepts like buffers, windows, frames, yanking, killing, etc.
Most of these terms map one-to-one to more familiar nomenclature like copy, paste, etc.
Buffers is a concept a bit more unique and integral to emacs. It's easier to understand in practice than in reading.
Most importantly though, emacs is a lisp machine, and exposes the highest level of granularity, and enables the finest level of customization for the user.
Emacs is incredibly powerful with ai agents. Because everything is a function, and emacs is introspectable down to its atoms - agents can write, review, execute, and evaluate the results in a closed loop. The evaluation part is usually what's missing from most agent-driven workflows. Either you (the person) needs to do a live evaluation or the ai agent derives a primitive evaluation using what's available (eg, screenshots, looking at html/css output to form a visual representation).
In emacs, everything is available, everything is a primitive function, everything can be inspected, the documentation (ie, contextual food for agents) is built-in, and emacs itself can be piloted entirely through function calls. This means that agents can fully control an emacs instance and run that closed loop (write, test, evaluate, repeat) with almost complete information - which makes the [given prompt] : [results conforming to spec] relationship much tighter than in most environments.
Cancelled. Anthropic can get bent if it wants to market itself as the ethical AI choice and at the same time lies in bed with those openly pushing for a surveillance state.
In my case, the ethical AI theatre fell apart as soon as I read about their first military contracts, specifically with the US government.
Their ethos is boiled down to ”we’ll do everything to stop AI from killing us all! However, on the path to AI world domination, we don’t mind helping with killing people here and there :)”
I canceled when they first labeled as a supply chain risk. Switched to codex and neverlooked back. This company will be more evil then Google at the end.
OpenAI had the the same restrictions. Also required you to verify via Persona. I complained and at some point the restrictions were removed. Not sure if because of my complaining or if someone in our org actually verified.
I've started experimenting with claude to run end-to-end tests for an emacs package I'm developing. It's incredible.
The way it works:
1. You start emacs in daemon (server) mode.
2. You prompt claude to instantiate an emacs client and write/run tests.
That's it.
Claude will then "pilot" an emacs instance where you can visibly see it running tests. Since almost everything is a first-class function in emacs, and emacs enables almost complete introspection, claude can debug the code in the execution environment. You can also just look at the piloted emacs instance and prompt the agent on what's wrong in the running application state.
This is much more thorough then just having claude write unit tests because many of the issues you might encounter are visual/gui things - which, again, because emacs allows so much introspection, can be examined by looking at the current application state.
Isn't this just a Bambu marketing point? I have a Prusa MK4S and a Centauri Carbon - they both print without any fuss and can be operated without any deep technical understanding.
Im not sure what problems people are even envisioning having. I got a diy Anet8 that was badly assembled by somebody else years ago that they gave to me for free. I tightened up some fittings and strapped down some loose wires and it still just works. If newer and supposedly better printers were more difficult I would consider them junk, in operation they aren't that complicated of machines. The most complicated thing I gotta do is usually change the print temp up or down 5 degrees for different company filaments.
I'm not sure what went wrong exactly, but a common issue people run into with lofts is caused by the fact that FreeCAD tries to match vertices to vertices. If you use the split edge tool on your square to create 8 edges out of the existing 4 (maintaining the same square shape), it should loft smoothly to the octagon.
If the loft appears twisted it only means you need to change the order in which you created the geometry. FC in addition to matching vertex to vertex will also match them in the order they were created. This allows you to purposely create twisted shapes, but sometimes can happen inadvertently also.
You can see that the square base is connected to the octagonal tower using alternating trapezoids and triangles; FreeCAD doesn't seem capable of doing that using the GUI (but I'm no expert and would love to be proved wrong).
Yes that would have worked, I will try that next time. The last image is more or less what the Python code produced, but being able to do it in the GUI would be nice.
It also helps to learn upfront the idiosyncratic terms and concepts like buffers, windows, frames, yanking, killing, etc.
Most of these terms map one-to-one to more familiar nomenclature like copy, paste, etc.
Buffers is a concept a bit more unique and integral to emacs. It's easier to understand in practice than in reading.
Most importantly though, emacs is a lisp machine, and exposes the highest level of granularity, and enables the finest level of customization for the user.