Ahhh, text editors. All of these are designed from the ground up to handle text, and specifically, write computer code and web pages, with syntax highlighting and color coding to make it easier to tell what's going on.
TextWrangler is the free little brother to BBEdit and replaced BBEdit Lite. It is so powerful that it’s almost hard to justify paying for a full-blown editor until you are heavily involved in coding on a regular basis and really need some of the power-user features like code block folding, macros, and snippets that BBEdit and TextMate provide. File comparisons and graceful handling of large files also make the Bare Bones editors hands down winners compared to TextMate.
I've used TextWrangler for years, but use BBEdit now. I own TextMate, really like it, and used it as my primary editor for a couple years, but it chokes on large files and hasn't had any significant work done on it in a while to cover some of the odder quirks or oversights in an otherwise beautiful 1.0 release. Textmate 2 has been "coming someday" for quite some time now.
That said, TextMate is also much cheaper than BBEdit, and with TextWrangler to handle a prettier GUI-based file comparison when needed, can handle almost anything most people will throw at it. It's more a matter of taste and style - much like the war between the also free and extremely powerful Vim and Emacs editors (also available in Linux) which I don't use because at this point in my life, I don't want to learn all the commands of yet another text editor until I have to.
Play with all of the free ones, and even try the trials on the paid ones. Then settle in and really learn and get comfortable in one and stick with it as much as possible unless something truly new comes around. You'll end up having to learn other editors and development environments (Xcode, Eclipse, etc.) often enough as it is, there's no point in deliberately making your life more difficult.