Tooling & ideas for fixing up code

There’s a lot of code online, or maybe at your job; that’s been poorly maintained, fallen out-of-date with newer libraries and/or compilers, and may not even be operating as desired currently. This is an attempt to highlight what I’ve found over the past 2-3 years to help myself with sorting this stuff out; and have recommended to others separately. Side note: when introducing to code, try adding any of these as a commit, separate to any code changes; this creates a good fallback point if any bugfixes don’t work out right.

Other / Multi#

  • SonarLint: this works with C#, JS, and a few other languages for best practices in said coding.
  • Git (git-scm.com): if you’re not using something else already (eyes Perforce warily), get up to speed on this. Key commands: git pull; git push; git rebase -i (HEAD~# or commit ID); git cherry-pick (commit ID)
  • Check your IDE for any plugins that support the below suggestions; they may also have built-in formatting tools.

C##

Assuming use of Visual Studio, but other IDEs should support nugets of these.

JavaScript#

Assuming use of VS Code and/or NodeJS, but your environment may vary.

Libraries that might help#

  • all-of-just: this is a compendium of a single-function library, that assorted folks use for JS tasks; requires ES2015+.
  • already: use this to replace most of the Bluebird library and be able to call native Promises.
  • Supercharge: complete replacement of the fs/fs-extra libraries; some care needed to make use of.

Bash & Batch#

Python#

C++#