_mlxl
Given the product I’m curious is the performance of your landing page by design?
And Apple keep bolting stuff on to it (and the new stuff doesn't work - Canvas for SwiftUI previews for example).
It's slow, broken in numerous ways, depends on file formats that aren't used anywhere outside of Apple and completely undocumented. It is such a painful tool to use.
I'm not saying emacs shines as an audit trail - I am saying the processes by which you work can be incorporated within emacs very easily, in a way that is unmatched.
I can see why people tend to ignore questions around specificity of why they like emacs - the goalposts never stop moving.
1. Can you change where the command palette shows up in Sublime? In emacs (M-x is our Command Palette) I can not show it, I can show it as a full width pane that takes up 50% of the screen, or I could recreate the Sublime Text look and feel (top of the screen X width, Y height). This looks like a toy example but I'm trying to show that there is not a single part of emacs I don't have control over.
2. Okay how would you do the following in sublime;
Your company is getting into credit checking. As such you now are beholden to certain rules and regulations around the safety of your code, and now your product owners want an update every time CreditCheck.java is modified by someone. They want to be notified in a Slack channel and also by email. They don't care if the top 30 lines are changed, but anything after that is important.
In emacs, I would make a hook for CreditCheck.java that any time I saved the file, it would run through the changes, check if there is a diff from line 31 onwards, and if so send a slack notification and send-mail the diff to the product owners.
I would just open my settings.org file and add the emacs-lisp to do this and I wouldn't even need to restart to avail of it - I could just load-file and have it working. All within emacs. You could do this via a tangle of shell commands sure - but emacs lets you do it emacs-lisp with ease.
Programming in the real world is full of stupid like processes like this, and emacs makes it easy to accommodate them. (Not saying that you should accommodate them, but the real world can be messy)
I was in a weird place at the time and scapegoated emacs for my lack of productivity. Don't get me wrong it is possible to spend a lot of time fiddling with your config files for emacs.
I picked emacs up again after I quit my last job (quitting made me almost immediately a happier person). I decided to only use packages that would help me to write code, and EVIL mode. So lsp-mode (and the associated lsp-servers), flycheck for syntax highlighting, DAP for debugging & breakpointing code, magit for git and Projectile for project management.
I read the documentation thoroughly for each plugin to actually see what it was doing, and many times jumped directly into the source code of the plugin to see how it was moving under the hood. I started using org-mode to document my journey into each plugin and grew really fond of the ability to collapse points under headers and freely move the headers about in the file with a few keystrokes.
I loved that I could create my own IDE using emacs-lisp. I have a completely minimal interface with just the mode-line and the pane of text. No gaudy menus, no enormous always present side panel, no top bar. Just me and the text. When I start the program it loads an empty window. There are no distractions in emacs, and no incentive to ever add them. And if Stallman ever decided to sell out, I have a fork of the code at its current version which I could use forever.
I jump between backend and front end code in emacs and due to the hooks and mode setup, it always knows the right things to turn on to make it easier to work on that specific chunk of text.
Emacs is an alien technology. It has so much power I didn't know what to do with it at the start and that scared me. I dedicated a bit of my life to it, and now I am confident knowing that if I pick up a new language in the future I will be writing it in emacs.
I write code, so I thought emacs would be the learn-once-editor-of-a-lifetime but it was just always an exercise in frustation and wrestling bad defaults.
If your using it to write code, emacs is, by default, worse than $IDE because its not built for the write, debug, run cycle an IDE excels at.
I only mention this because a lot of programmers and hackers seem to hold it up as a hallowed piece of technology and I the elitism makes you want to try it so you can be up there amoung the gods.
Everytime I wanted to write code, I would have to cobble together little scripts to shoe horn in build steps and it was always more work than VSCode would make me do. I want to write code, not make my editor work in a sane way.
Org mode is oft touted as the 'killer app' - its entirely unportable. Android and iOS don't have clients that are useable by modern standards. You will hear "oh but you can install this plugin and then it will automate converting your todo list to HTML and it can then run that on a serv...". No thanks, I just want to sign in once, and everything to be synced.
It doesn't have the idea of syncing and its totally uncollaborative. I can't share it in any meaningful, interactable way.
The world has moved on, emacs is a relic of the old world and I finally feel fine in saying that.
If you put the commands:
set undofile
set undodir=~/.vim/undodir
You get infinite undo in your files.Now when you go into a file, delete or add some text and close your terminal down, the next time you enter vim you can (re|un)do previous operations.
Has saved my ass more times than I care to mention over my career!
Ask HN: How do you take notes?
I've been looking through my paper based notebooks recently and noticed that chop and change between note taking systems, and there is no structure to my notes.I was wondering if anyone could point me to structured note-taking systems or methods they use to bring some consistency to their note taking.
I hated math when I was in secondary-school, but loved computers so did a computer science course which was heavy-ish math in its final year.
Passed that course and now am in a pretty decent programming role, but I feel like my maths is just built on such a shaky foundation that I maybe could improve my programming and problem solving if I solidified the base.
Is there any one text book I could get which would teach me up to that level of Math?
I suspect no, because Math is so broad, but generally if I could get an entire pre-university schooling in Math I would be very happy.