Hey, it's a text editor. It happens to work pretty well for programming use, and it hits all the high points of what we want in a programmers editor. Over in the App Store it is rated with four stars on 54 ratings, which is a pretty decent result.
Supports syntax highlighting for over 80 programming languages - this means you can load about any text file into the editor, and have it colorized for you. And the colorization works pretty well. If it happens to incorrectly intuit the programming language, it's trivial to choose one with a popup menu thing in the status bar.
It can import TextMate syntax definition files - I'm not a TextMate user so I'm not completely understanding what this mean, but obviously Textmate is a popular editor and this is a good feature to have.
Code completion - I've only used it to edit JavaScript files, and the code completion doesn't work so well. I suppose it might work better in Java where it's easier to know the characteristics of each object.
Supports editing multiple files at a time - the model for multiple documents is to place each one in a top level window, and to use the Window menu to switch between windows. This is pretty straight-forward, right? Well, in practice it has a flaw. I'm editing a lot of Node.js code and end up with a lot of files named index.js, and the Window menu doesn't do much to help me know WHICH index.js is which.
It does not have a "project" paradigm, and it doesn't have a file system browser widget. It means opening a file means using the file selector dialog. The programmers editor I most use has a file system browser and it's easy to switch files by scrolling that browser around. That model, of having a file system browser, also helps straighten out which index.js is which. So while it's nice and normal and usual to open files with a file selector dialog, I'm not convinced that's a good model for a programmers editor.
It supports editing using a wide wide range of text encodings - meaning, you can edit as UTF-8, or UTF-16, or UTF-31, or ASCII, or ISO Latin 1, or any of about 60 different encodings. Like Cyrillic, or Romanian, or Greek, etc. It even supports editing in EBCDIC, though does anybody still use that encoding?
In general I'd say that Textastic has some great features as a programmers editor - so far as it goes. However, it has some big gaping holes such as a very weak set of text processing functions, and as I said the clumsiness of not having any kind of project mechanism, or a file system browser.