I decided that I needed a place to keep track of the tools/tips/techniques (can we call that T3?). Then I thought it would make a good blog post. Then I realized it’s been almost two years since I’ve posted anything. So here’s a post and something I intend to update as I use new tools.
This is mostly for my reference, but it might come in handy for someone else…
Xcode – The official developer environment for developing iOS and Mac Apps. There are some alternatives, but they seem like more trouble then they’re worth, and still needs to link into the core Xcode tools (like the compiler) to get things done.
Xcode also allows for plugins two of which I’ve started using recently:
Alcatraz – The one plugin to rule them all sort of thing. It has it’s own “network” which I usually try to avoid, but due to the more manual nature of most plugin installations, this seems worth it to keep it all cleaner.
VVDocumenter-Xcode – This is one of those things that does something so simple, yet can save you so much time. It will auto-generate the documentation skeleton for a method in a format the Xcode can read, so it’s one less excuse to not document your code. And we all can use one less excuse to not doc our code.
Sketch 3 – I use this for all my graphics needs. I used to use Adobe and Illustrator, and when I say “used” I mean “beat my head against”, for years. The pros that use these tools can make them sing and dance, but I’m not one of those people. In an afternoon with Sketch I was able to do more things quicker than the entire time I spent with the Adobe stuff. It works for me. From general UI/UX Prototyping to just playing with some graphics, it just feels right and I’ve only scratched the surface. There’s a growing community and it’s extensible with tons of plugins (or write your own). If you don’t absolutely need Adobe tools, I can’t recommend Sketch enough for your graphics needs.
PaintCode – This genius of a program lets you draw your graphics, and it will then generate the source code for you. Why would one need this? Well for doing complex dynamic UI elements for one, imagine having a variable gradient arc that sweeps from one side to another and changes colors, could you do that with static images? Or even just for icons that you use in the app, by doing it in code you can make it so you can change the size or the color (or even the shape) at run time depending on the needs of the user. It’s a little spendy, but it has paid for itself several times over in saving the time it would take of lots of trial and error code/compile cycles to get shapes right. If you do any kind of custom drawing in your apps, get this.
TextWrangler – A very good general purpose text editor. It’s code aware for all sorts of different languages, has great reg-ex support, and best of all: it’s free!
SQLite Professional – This is an SQLite database file editor, a must if you’re doing anything but the smallest Core Data operations. Great for checking that your data actually is what you think it is.
JIRA – An Issue and Task tracker that I have been using for years. More than once I’ve show a client how wonderful this is and have helped them bring it on site. I run a personal version for myself (only $10 for up to 10 users) or they have cloud options if you don’t feel like maintaining the server/database yourself. Free trials, give it a go. It can be overwhelming at first, but it’s incredibly customizable and can certainly be tailored to your needs and flow.
Evernote – I put this here because I’m trying it, again. Some people love it, some people don’t. I’m in between, but by all accounts, I’m not using it right. Some could argue that you should be able to use a tool how you want, that’s how you know if it’s truly useful. I can’t agree with that, you wouldn’t use a saw to drive a nail, does that make it not useful? So giving it another go…