zmhanham

joined 1 year ago
[–] zmhanham 1 points 1 year ago

Any thoughts on going from a more in depth, or involved config to a more simple one? I'm somewhere in between, I use vanilla emacs but my config file is pretty large. Most of the largeness comes from an entirely custom set of keybindings. I'm wondering if I should switch to something like xah fly keys instead and just learn new commands/bindings as i go instead of making new ones as I go.

[–] zmhanham 2 points 1 year ago

I stopped using solarized light theme in favor of just using modus operandi bc of contrast. Will have to check this out.

[–] zmhanham 1 points 1 year ago (1 children)

I guess it defeats the point of self hosting. But a common theme is that email self hosting is extremely difficult. Many things to take into account. I'd say go for it and maybe you'll learn a lot in the process. But if you give up on self hosting it, but still want yiue own mail server on your own domain, then I'd say use infomaniak.

[–] zmhanham 1 points 1 year ago

It's less about "sucks" and "not sucks" but the point I think is important is that IDEs are generally a closed system. You can't modify them very much, if at all, to fit your needs. If the IDE out of the box is a good fit for your needs then by all means use it! But if there comes a time that you need to do something that isn't supported by the IDE you either need to drop to the command line or attempt to hack together some solution in whatever limited extension language/API they support. Or hope that an extension already exists.

Vim, emacs, and other programmable editors make it easy for you to do that one specific thing you need to do. And there is very likely already a package/plugin that someone made for it. But if there isn't, it's so much easier to modify a programmable editor than a closed IDE.

So really it just comes down to what do you need from your editor? Now if you're someone like me, I need to try to perfect the way I program. Always trying to find the most efficient way to do some common operation. But if that's not you that's totally ok (and honestly I envy you lol)

[–] zmhanham 1 points 1 year ago

I think you should give (mostly) everything a fair try. At least anything that's "different" than what you're used to. As a programmer, you should always be striving to improve your workflow. The ideal workflow is different for everyone. The standard text editing experience with a mouse / using control arrow keys etc to navigate is fine and familiar. But you should really at least experiment with modal editing like vim or kakoune. Beyond just the way you type text, the way you interact with the editor (and by extension the project you're working on as a whole) is important to consider too. Make files are a great way to simplify those complex commands you run, but there may be a way to achieve those actions in the editor you're using. Compilation, testing, and running code is just one thing. But what about something like git? Magit on emacs is an example of an extremely well thought out integration of git into an editor. Autocompletion is a whole other story, but you can get that in mostly any kind of editor with LSP integration.

Anyways the point I'm trying to make is that you should never be stagnant in how you program (editor) and what you program (language, paradigm, domain, etc).

Only time you should be stagnant is once you've at least considered the other options and you know what works for you. :)

[–] zmhanham 1 points 1 year ago (3 children)

Infomaniak has pretty nice free email server options that you can link your domain to. They are a Switzerland based company which is known for having the best privacy laws around.

[–] zmhanham 8 points 1 year ago

already wiped my account :D

[–] zmhanham 1 points 1 year ago

I had an idea to make a package that would essentially read the current state of all emacs buffers (files only) and open VS code with that state. Maybe you could have a VS code extension that does the same to emacs. Combine the two for one system that keeps them in sync?

[–] zmhanham 1 points 1 year ago

It's always a learning opportunity regardless! Could be a great portfolio project as well. If you're worried about reinventing the wheel: Google every step of the way to find if a well supported package already exists for what you're trying to do. Read code of other popular packages that implement that feature you need and "steal" it from them. Maybe your lisp won't be very idiomatic but that can always be fixed and you have to learn that through experience anyways.