Development setup
Jul. 13th, 2022 11:35Over the course of my software engineer career I continue to do code related tasks most of my time, so development setup is an integral part of my work environment.
Even with my latest project, where I'm a "one-man army" of a data engineering unit and I oversee whole process and wear a variety of role hats, this is still true and setup efficiency affects me every day.
For different reasons, including my detestment of the JetBrains company as elitist group no different from Google themselves and also being a Russian company, few years ago I left their products completely, after being a legit paying user for quite some time. I could not say that I didn't like IDEA at the time, but everything has an end and IDEA had its own point of no return to me.
Since then I took more marginalized approach (which is more mainstream nowadays though) and base my setup on Neovim editor with relevant to a programming language of a moment set of plugins and configurations. One who's interested to see, feel free to roam through its configuration.
In short, my setup includes Neovim (usually latest build from master branch) with all LSP ecosystems wihin Neovim itself and from languages I use like Scala/Metals, Java/JDTLS, Rust/Rust-Analyzer, Python/Pyright and others.
Such an approach allows to unify editing experience while easily switching between very different programming ecosystems. And don't forget that it enables actual ergonomics in how you type and move your hands (so stuff like RSI is delayed).