Sublime Text is a really powerful text editor and includes tons of functionality relevant to programming. I will dive into what I personally use Sublime Text for and what makes it so powerful.
Syntax Highlighting and Autocomplete
Sublime has had built-in syntax highlighting for the majority of my needs, with the exception of Jade files, but that was quickly corrected by a package (more on those later). The highlighting makes it easy to tell if there is a typo, and increases the readability dramatically. On top of that, the editor features autocomplete for almost all native language functions and for user-defined variables, a true time saver.
Searching by Regular Expression
Sublime has a really quick search feature, and I have used it countless times to search through huge projects with hundreds of files. Something else of interest is Sublime’s ability to search by Regex. Knowing how to use regular expressions is essential for any programmer, and the more experience you have with them, the more useful they become. Sublime Text even allows you to find and replace with regular expressions! Now, Sublime is not the only text editor that can do this, but it is a key feature I find myself using time and time again.
Sublime also includes the ability to extend the features through packages. Generally, the first thing I do when installing Sublime Text is to install Package Control, a GUI for installing more Sublime packages. After that, installing other packages is painless. Some packages I recommend are Difftab (the ability to diff between files in your editor), Rsync SSH (to sync changes to a remote server), and SublimeLinter (automatic linting for your files).
All in all, Sublime Text is everything a text editor needs to be, fast, stable, and extensible. I recommend it to my friends and see myself using it for years to come.