pete > guides > text editors


To the best of my knowledge, many programming classes actively or passively recommend using an IDE (integrated development environment) for writing code. The alternative is to use a standalone text editor, but please for the love of Turing not NotePad or Word. Personally, I prefer a standalone text editor because IDEs insert excessive insulation between the programmer and what’s really going on.

In my opinion, the vital features for folks learning to program are:

Other features you might find useful in time:

Predictably, Wikipedia has a lengthy comparison of text editors.

Popular options that have graphical interfaces are VSCode and Sublime Text. For whatever it’s worth, I’ve found VSCode to be painfully slow—plus it’s controlled by Microsoft, so all bets are off as to its future. (A previously popular option, Atom, is now abandonware and should not be relied upon.)

Popular options that run inside a terminal window ("console applications") include vim and (God help me) emacs and nano. These are all installed on department machines; if you want help installing or configuring one of them on your own machine, check with faculty or brazenly try it out for yourself.

Tom Christiansen (of Perl fame) on good interfaces, focusing primarily on text editors: Zenclavier: Extreme Keyboarding.


Remote editing

Or: what if I want to edit a file stored on another machine?

Most text editors allow you to run them on your own ("local") computer but edit files that are stored on another ("remote") computer. We’ve got some documentation for setting that up with department machines on the bottom of this page.


And here I will collect fun, snarky links that elucidate why vim is worth at least trying, if not using primarily.

Last modified: