Skip to content

Instantly share code, notes, and snippets.

@kasajian
Last active October 27, 2022 19:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save kasajian/adbb566e0b33ab3d0dc3b48c29cbce96 to your computer and use it in GitHub Desktop.
Save kasajian/adbb566e0b33ab3d0dc3b48c29cbce96 to your computer and use it in GitHub Desktop.
What I look for in an IDE

What I look for in an IDE

As someone who experiments with different programming languages and environments, the following are the requirements I look for in IDE integration, whether for Visual Studio Code, or another IDE.

Minimum

  1. "Run" command that runs a sample piece of code, given an entry point, and exits when it's done. Be able to do this multiple times, after making changes to the source in the editor.
  2. Run under a debugger. Place a break-point somewhere in the executation path, hit F5, and make sure it breaks there. Continuing after that, should go to the end and exit (not remain in the debugger)
  3. Run a set of tests.
  4. Place a breakpoint in any test or production code that's in the execution path of a test, run a set of tests (all tests), and hit the breakpoint on the first test that hits it.
  5. Be able to run an individual test.
  6. Be able to debug an individual test, and break where a breakpoint is set.

Nice to have

  1. Syntax highlighting
  2. Navigate to source of a a build error
  3. Navigate to source from excepton during debugging
  4. Simple refactoring (rename, extract, inline)
  5. Code-coverage
  6. Performance testing (CPU, Memory, I/O)

Programming languages / environments tried

  • Node, Haxe, Zig, C++, Haskell, Lua, Clojure, Racket, Janet, OCaml, Dart, Nim, Kotlin, C#, Python, PowerShell, Rust, C++, Go, Deno, WASI (Emscripten, C#, Rust, AssemlbyScript)

I wasn't keeping track of which passed and which didn't. Maybe I'll start doing that.

@scrumtuous
Copy link

Awesome wishlist!

@kasajian
Copy link
Author

Awesome wishlist!

Seems basic, but I'm surprized how difficult it is to set this up vscode or vim, but trivial with JetBrains or Visual Studio.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment