Spifftastic,

 

Review: Sublime Text Starter

Full disclosure: I was asked to review this book by the publishing company, Packt Publishing, and given a free copy of the book to do the review. You can read the email sent to me by the publisher if you like.

Sublime Text Starter, by Eric Haughee, probably isn’t what you’re looking for to get started with the now-rather-popular programmer’s text editor, Sublime Text 2. As the title suggests, this book intends to get you started with the editor and for three quarters of the book, it really will start you at the very beginning: installation and saving a document.

The book’s downside is that it doesn’t seem to know quite who its audience is. It begins with basic installation instructions – the sort we take for granted and gloss over in all software manuals, especially the ones programmers ignore on a day-to-day basis because we think we know better. After installation, you’re given five pages on how to create, or open and modify, a file, and how to save the results.

This shows how basic the book starts at, which is fair enough for anyone not too used to these tools. However, given Sublime Text 2’s core audience is programmers, it may come across as odd at best and possibly demeaning at worst. Either way, the first 28 pages are likely not intended for programmers. So, we’ll skip past those 28 pages as redundant and get to the parts that don’t pertain to every piece of software intended for modifying some kind of file on the planet.1

We go on to learn about the minimap, multiple cursors, distraction-free mode, vintage mode, the goto panels and the command palette. Except for the explanation of vintage mode, these are all perfectly acceptable and include helpful screenshots and relevant key-bindings. My only complaint with these is that they are more or less covered by Sublime’s front page, as well as likely comprising the subjects of all Sublime Text 2 tutorials. For vintage mode, the book’s explanation only scratches the surface of its use and suggests only Vim users should use it, but I’m not sure a Vim user would read this book, so I’m again unsure who the book is for.

There is minor one downside to vintage mode’s explanation though, a bit of misinformation on the part of the book: it tells users to modify Sublime’s default preferences. This is a no-no, you never modify the default preferences. If you suggest the user modify preferences, you tell them to modify the user preferences, pictured to the right.

For most purposes, this won’t produce a noticeable difference, but it does result in a user unable to easily copy his or her settings over to new installations or versions of Sublime. This might not seem like an issue now, but it will present an issue with the coming release of Sublime Text 3. So, there is a small risk of future frustration involved.

Starter also goes on to mention Package Control, including some perhaps frustrating installation instructions fraught with potential bit-rot. This isn’t likely to be an issue for most people, but typing seven lines of Python into the Sublime Text 2 console is not the most pleasant experience. Thankfully, the author includes a link to the Package Control site as I have above.

The explanation of snippets is mostly sufficient, though the formatting of the book results in some unfortunate line wrapping in the snippet that produces less than eye-catching imagery. In addition, the snippet example provided by the book is invalid and will cause Sublime to insert nothing when using it. This sort of error is par the course for tech books, so I’m inclined to forgive it even if it highlights the sorry state of tech books.

Finally, the book finishes up with macros (never once mentioning how to create your own plugins, but this book is a “starter” and not likely to cover anything advanced despite expecting users to know how to work with XML and JSON). Custom key-bindings are shoehorned in as a part of macros rather than their own rather expressive feature, which is disappointing and perhaps not showing users just how much they can customize their key-bindings to their liking. Either way, the discussion of macros is mostly sufficient, though likely to frustrate users when they discover the limitations of Sublime macros (like certain commands not being recorded or working in macros).

Ultimately, the book seems to expect some level of experience with technology but simultaneously assumes none from the start, so the first chunk of the book might be well-suited for those who don’t know how to install software, but they would be lost in later sections. For those experienced enough to breeze past installation and those who know how to save a document, the rest of the book might work for them, but its brevity leaves something to be desired — again, a byproduct of the book’s attempt to get readers started with Sublime, but never seeming to try to imbue them with the skills needed for further use.

Rather than purchasing the book, either $4.24 for a digital copy or the much more expensive print copy at $19.99 (effectively $20, which is far beyond what anyone ought to pay for 46 pages, 28 of which cover installing an application), I’d recommend waiting for another edition — if you still want to consider this book. Wait for one that cleans up the few errors in the book and goes into enough depth to leave you with the feeling of knowledge gained.

As it is, though the book might be of use to someone, I’m not sure either I or the book know where to find that someone. The audience for the book would have to be someone who doesn’t program, doesn’t know how to install software, and possibly uses Internet Explorer 6. Instead, do as the end of the book suggests and take a gander at Jeffrey Way’s Sublime Text videos, read over the unofficial documentation and for anything else, join the Sublime forums.2


  1. Except for Emacs, which routinely forgoes the use of conventional key-bindings in favor of more esoteric ones, such as ⌃x⌃s (C-x C-s) for save. [return]
  2. For those who practice the necromantic art of IRC, you can also find many Sublime Text users, which includes myself, in #sublimetext on Freenode. [return]