For keybinds / setup time, I'd recommend either Spacemacs or Doom emacs. Spacemacs especially is meant to be quite newcomer friendly, with things like windows telling you "you pressed this key, here are the other keys you can press to complete the keybind sequence, and here's what they will do".
As for full fledged IDEs, no, I don't think Emacs can pretend to replace those, but you can still make the Emacs experience comfier. Linting is pretty good on Emacs with things like flycheck (& flyspell for spelling in say comments or commit changelogs).
For kernel C development I have a simple flycheck module that compiles the edited file and inlines all warnings / errors as lints. I also have another one for checkpatch (extra script you're meant to run before sending your commits to the mailing list); as a result I never have to look at any other window than the one where there is code in it.
For Python, pylint is supported out of the box by flycheck. Auto-completion is supposed to be feasible, but I had some issues with it and gave up - never felt like I really needed for what I do in Python anyway.
Fast navigation can be done with the usual cscope / gtags. More recently, I've been converted to using ripgrep for most searches (https://stegosaurusdormant.com/emacs-ripgrep/) as it is crazy fast. You can also directly edit the matches and commit the changes, which serves as a project-wide "search and replace".
If you didn't already know there's a command you can run to `find` files and put them in a dired buffer, then from there you can run an interactive regexp search/replace on all marked files. On mobile so I don't have the command names and key bindings available, but it's some combination of dired and find.
As for full fledged IDEs, no, I don't think Emacs can pretend to replace those, but you can still make the Emacs experience comfier. Linting is pretty good on Emacs with things like flycheck (& flyspell for spelling in say comments or commit changelogs).
For kernel C development I have a simple flycheck module that compiles the edited file and inlines all warnings / errors as lints. I also have another one for checkpatch (extra script you're meant to run before sending your commits to the mailing list); as a result I never have to look at any other window than the one where there is code in it.
For Python, pylint is supported out of the box by flycheck. Auto-completion is supposed to be feasible, but I had some issues with it and gave up - never felt like I really needed for what I do in Python anyway.
Fast navigation can be done with the usual cscope / gtags. More recently, I've been converted to using ripgrep for most searches (https://stegosaurusdormant.com/emacs-ripgrep/) as it is crazy fast. You can also directly edit the matches and commit the changes, which serves as a project-wide "search and replace".