Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Development Tools

Share the Tools of the Trade

I'm always on the lookout for apps/tools that make my life as a developer easier. Earlier today Treehouse shared a list of such tools for web developers on Twitter.

So I figured, we might as well have a thread here to share tools of the trade. Most of these will be familiar to seasoned developers, but they might be interesting for beginners. I'm going to list a couple in no particular order.

  • Alcatraz - Packet manager for Xcode
  • Mixture - Front-end development toolset (similar to CodeKit and Hammer)
  • Dash - Offline documentation browser (Windows/Linux alternative: Zeal
  • Recents - Fast access to recent Node, Grunt, Mixture and other projects
  • Anvil - A menubar app for managing local static sites and Rack applications
  • CodeRunner - Edit and run code in any programming language with just a single click
  • Chocolat - Text editor (I'm just mentioning it because I feel it's really underrated, and it's also really great for JavaScript developers)

Okay, I know, my list is mostly Mac-only, but that's my primary platform... kinda hard to come up with Windows apps when you don't really use Windows all that much. But, that's where you come in — share tools/apps for whatever platform you're using. :)

For instance, Alcatraz was a new discovery for me today. I'm fairly new to iOS development and I'm still exploring the landscape, so to speak. Alcatraz helped me get my favourite theme into Xcode (Tomorrow Night) and helped me solve a pet peeve of mine with Xcode (the fact that pressing Home or Cmd + Left takes you to the actual start of the line instead of the first typed character in the line like most other editors do).

James Barnett
James Barnett
39,199 Points

The problem with most of these lists is that they don't say why a tool is a good choice. Does it solve a problem I currently have? How does it solve the problem better than the competition.

I agree, none of these types of lists is a universal answer to something, but if plenty of people share and you're willing to do some digging, you might find a hidden gem.

I went through dozens of these over the years, and I only ended up with a handful of apps that I still use. But those apps were well worth the effort (for me, at least).

As you can see, I didn't really go into why you would or should use an app from my list. I just shared links and descriptions (often official ones) so people can decide for themselves.

A good tool is something that suits you and improves your workflow. And it's pretty hard to find something that suits you unless you give it a go.

4 Answers

Holger Liesegang
Holger Liesegang
50,595 Points

Just a list of most of the tools/applications I use (most are Mac only):

  • Pixelmator - Faster and IMHO better to use than Photoshop (used it for more than a decade and if you don't do print design...)
  • Sketch - Bye bye Illustrator (used it also for more than a decade and if you don't do print design...)
  • PaintCode - is a vector drawing app that generates Objective-C code in real time
  • Kaleidoscope - more than file comparison
  • Sublime Text
  • Coda and Transmit - Editor + FTP from Coda
  • Hype - "HTML5" animation
  • Snagit
  • Tower - Git client
  • MAMP PRO - local server environment with virtual servers
  • Scrivener and Scapple - "Scrivener is a powerful content-generation tool for writers that allows you to concentrate on composing and structuring long and difficult documents." and "Scapple is an easy-to-use tool for getting ideas down as quickly as possible and making connections between them."
  • Art Text - for the quick and dirty vector design ... just need an icon for a demo app kinda app :)
  • Reflector - "Reflector is an AirPlay receiver that allows you to wirelessly display your iPad or iPhone on your computer." ...which I find quite important for some tasks while developing or marketing an app
  • Docs for Xcode - "Install additional docsets into Xcode 5 and keep them up to date."
  • Macaw - build a full responsive landing page in a few minutes...
  • Sequel Pro - "Sequel Pro is a fast, easy-to-use Mac database management application for working with MySQL databases"
  • Final Cut Pro, Camtasia, Keynote and Garage Band - for the production of video tutorials (...and Scrivener for the script)
  • Evernote has evolved to one of my most important "tools" in so many ways
  • ... and of course countless frameworks for Web and iOS development and all the minor tiny tools :)

Thanks for sharing!

A quick question... how satisfied are you with PaintCode? Do you use it often?

Holger Liesegang
Holger Liesegang
50,595 Points

It's not my every day tool, Dino, but for configuration like purposes (e.g. change the color or form of an object with a slider) it's really great. I won't use PaintCode so to just make an app smaller at any price ...if I can do something with 2-3 images I'll still just gonna go with the images :)

IMHO dynamic graphics are the real domain of PaintCode: Interview: Peter Rapp, creator of Lightbow or Bezier Paths

Thank you for the answer and the links, Holger! This clears it for me.

Like I said above, I'm fairly new to iOS development, but I could imagine a few potential uses where PaintCode would be helpful. I can see myself using it at some later stage of my Objective-C escapades. :)

Chris Mitchell
Chris Mitchell
12,719 Points

My problem are these lists... talk about send me down a rabbit hole lol

Im sure they are of some value to others, perhaps more seasoned devs, but for a beginner like myself i am finding that learning web design/dev is insanely huge and sometimes, the less I know whats out there can keep me out of trouble and more focused on the absolute fundamentals i need to research, study, learn and apply!!

I used to feel the same way. I still do when they refer to topics that are outside of my comfort zone. I came up with a simple rule of thumb: if I couldn't see how to integrate a tool into my workflow at a glance, then it probably wasn't worth the time and effort just yet, or at all.

Michael Fraser
Michael Fraser
19,084 Points

I have the same problem; especially as half this stuff seems to have exploded in complexity (and capability) in recent years. I agree with what you're saying Dino, but where the problem comes in for me is when you know something is required, but there are several ways to attack it. My particular issue; I used to deal with Sass with Codekit. I finally decided that I shouldn't be afraid of the command line, so I thought I'd take the extra step of trying Grunt. Then I see an blog post talking about Gulp, Codekit 2 comes out, and now you've just pointed me at Mixture... sheesh.

John Enderby
John Enderby
11,730 Points

I know this is slightly off topic, but the illustrator and photoshop tutorials in the web design track... are they still useful for those of us who have the cheaper and IMHO better options of Sketch and Pixelmator?

And although I'm not a designer/developer (yet) I have found Sublime Text a valuable app for keyword research when working on client's Google AdWords accounts.

Sketch is brilliant for little mockups for things like remarking ads and Pixelmator is super useful for touching up photographs for clients that aren't quite right.

To tie in with the Evernote comment, I think it is good to note (no pun intended) that Skitch can be really useful for sending client annotated screenshots of things like spelling mistakes and reorganisation of content for conversion rate optimisation purposes.

Finally TweetDeck, Pocket and IFTTT keep me up to date with industry news and allow me, along with Evernote, to collate useful articles and make sure fingers are on pulses and whatnot.

Chris Mitchell
Chris Mitchell
12,719 Points

how do you use sublime for keyword research? Like is it a replacement for an excel sheet or something?

EDIT: I totally get that sublime is a text editor and not a spreadsheet but was wondering in what way do you use sublime for kw research

I use both Sketch and Pixelmator and I think they're great tools. I've pretty much abandoned Photoshop completely, and I use Illustrator rarely. Sketch is my go-to tool for most design-related things these days.

However, Illustrator and Photoshop are still industry standards. You'll still run into them in most design agencies. Proficiency with those apps will often be listed as a job requirement.

The thing is, the theory behind those apps can be applied to similar apps. Neither Illustrator nor Photoshop are just keyboard shortcuts. I'd say those courses are still more than relevant.

Oh, and I don't know if you've seen this project, it's done with Sketch.

John Enderby
John Enderby
11,730 Points

Hi Chris.

Usually I would use the two in tandem (Excel and Sublime). In very simple terms lets say a client sells beef, the Google keyword tool will give us around 800 "ideas", I would usually sort those in Excel and use filtering to take select all the queries that contain beef in them. Once you have that filtered list i would sort by Avg Searches per Month. Then copy that list into Sublime. Multiple cursors make copying and pasting into AdWords editor a breeze. For example if you want to have loads of keyword in an account as modified broad then simply use multiple cursors to add a "+" to all those keywords in one go.

I also find it more robust to use Sublime for pulling out negative keywords pre campaign launch. Lets say you take what keywords are left after taking the best candidates for an AdGroup, you are still left with a load of search terms (75%+ usually of what was downloaded from the keyword tool), I would put them into Sublime and use the cmd + G shortcut to select every instance of a negative in the list, then cmd + L to select the whole line that the negative keyword is on, and then delete each of those lines. Then type in the negative into your list once. This likely is an extra step compared to most PPC campaign set-ups but I prefer to get as many of the negatives in as possible to try and save clients money and getting the most relevant clicks from the outset.

Hopefully that makes sense! I think I might write a blog post about using it this way actually, I will let you know when I have done it :)

Chris Mitchell
Chris Mitchell
12,719 Points

Blog would be great thanks John

John Enderby
John Enderby
11,730 Points

Hopefully the above made sense. I will try and get something up at the weekend so you can have a look.