Sam Croft

Full-stack developer

Essential web and app development tools that I use every day

  • 10 comments

Filed in: apps, project management, rith, tools

I love seeing what tools people use throughout a project lifecycle. Finding a tool that you can use every day is a great feeling.

I thought I’d share what I use during a project and pretty much every day at RITH:

Chrome – WebKit browser of choice

A screenshot of my blog viewed with Google Chrome
Google Chrome - my browser of choice since 2009

I get quite loyal and attached to my browser and I was a massive Firefox advocate in 2009 back when I started RITH. But fellow RITH co-founder, Iman, encouraged me to give Chrome a good go.

Chrome’s tiny and unobtrusive, er chrome… is what makes me so fond of this browser. That and the speed, security and extension support. Speaking of which, I often rely on the utter convinience of Chrome to phone and shared tab sessions across [Android] devices. It just works.

It also makes for a fabulous testing environment—perfect for iOS PhoneGap development as it is a WebKit browser. The frequent updating keeps it hot on the heels of the W3C working specification drafts.

When I’m using Windows: I also use Chrome.

Gmail, Google Documents, Google Calendar and Skype – project management

Screenshot of my Google Calendar for August 2011
Google Calendar - I can view my diary anywhere, on any device

Ok, these aren’t web development tools but I sure couldn’t develop without them. Well I probably could, but they make things a hell of a lot easier. Since 2004 I have used Gmail for all email correspondance and for the last three years; Google Documents for all document creation (proposals, quotes, contracts, invoices etc) and Google Calendar for all project scheduling.

Having everything in one place absolutely makes sense. I’m not tied to a particular machine and wherever I am, I can access all project planning.

Skype, with a webcam, makes communication with remote clients/partners easy.

When I’m using Windows: I also use Gmail, Google Documents, Google Calendar and Skype.

Textmate – the perfect text editor

Screenshot of my WordPress theme open in Textmate
Textmate - never leave your house without it

My first experience of creating websites was using Dreamweaver 3. I stuck with everyone’s favourite WYSIWYG editor until around 2005 when I switched to using the brilliant Notepad++, for Windows. The freedom of a plain and simple text editor was definitely more suited to my style of development—I loathed any kind of intellisense tag completion.

When I switched to a Mac in 2009 I needed a new editor and it was between Coda, Sublime or TextMate. I tried them all but TextMate stood out far and above. I’ve used it every day since installing it and it’s the one program I could not live without. There are a few minor gripes, such as the harrowing single character deleting limit but I’m sure that will be ironed out with TextMate 2.

When I’m using Windows: I also use Notepad++.

Sequel Pro – database manager

Screenshot of a UK landmarks MySQL table from one of my blog posts
Sequel Pro - makes MySQL database management easy

Pretty much every project I work on uses a database and Sequel Pro is the perfect, no-frills, to the point database manager. It has everything you need to managing all your databases with.

When I’m using Windows: I use the community edition of SQLyog.

Git + GitHub – version control

Screenshot of my a Git commit for FloodSax WordPress theme
GitHub for Mac - bye bye terminal commands, hello lovely ui

Starting to use Git for version control a couple of years ago really has changed the way I develop. And the release of GitHub for Mac just made the whole commit process an absolute breeze.

When I’m using Windows: I use Git and the command prompt (ugh).

Balsamiq Mockups – quick wireframing

Screenshot of FloodSax WordPress theme development using Balsamiq Mockups
Balsamiq Mockups - creating sexy wireframes, fast

I’ve never really been a fan of creating a paper wireframes. I think the industry puts too much emphasis on using pen and paper right at the start of a project to prototype things. I’m much more of the belief of designing in the browser using a rapid prototype framework. When I create wireframes I use the wonderful Balsamiq Mockups. It’s like a chilled out OmniGraffle, with a sketchy feel.

When I’m using Windows: I also use Balsamiq.

Spotify – music

Screenshot of New Order Best Remixes album in Spotify
Spotify - responsible for getting my in the zone every day

I struggle to work in silence. I much prefer to be listening to something—it helps me get into a rhythm. Spotify and GitHub are the two apps I am more than happy to subscribe to with a monthly fee. I can’t imagine working without Spotify.

When I’m using Windows: I also use Spotify.

Twitter for Mac – Twitter client

Screenshot of my mentions in the Twitter for Mac app
Twitter for Mac - always open

I recently closed my Facebook account; I was spending a lot of time on it but wasn’t sure why. It had just become something that was there and part of my procrastination routine. Twitter on the other hand remains one of my favourite things—I can talk to likeminded individuals, easily. I say easily because the Twitter for Mac/iOS app is probably my favourite, and most used, apps of all time. It’s slick, unobtrusive, beautiful and rolled together into a tiny window.

It’s essential to my development because I like to discuss what I’m working on and I learn something new almost every day from reading a broad spectrum of tweets.

When I’m using Windows: I use the Twitter website.

Other project specific tools

Of course, the above tools are ones that I use most frequently. There are many that others that I use on specific projects. Most notably:

  • Microsoft Remote Desktop Connection – server management
  • XCode + PhoneGap – iOS app development
  • Eclipse + PhoneGap – Android app development
  • FileZilla – FTP client
  • Photoshop/Illustrator – design comps

About the author

I'm Sam Croft a full-stack developer with over 15 years experience in web and app development. For the last six years I have been a partner of Running in the Halls, an app and game design studio based in Huddersfield, UK. During this time I have developed many web and applications. Highlights include a node.js/socket.io app to create the worlds largest crowd-based game on the first series of Channel 4's Gadget Man with Stephen Fry and Librarygame, a Library gamification platform for Universities. Librarygame is being played by over 6,000 students at The Open University, The University of Manchester, The University of Glasgow and The University of Huddersfield.

In my spare time I enjoy long distance running, watching all sports (especially F1) and playing video games. I live in the Holme Valley in West Yorkshire with my wife, Alex.

Sometimes I tweet.

  • Ettore Manetti Ink

    “When I’m using Windows:” sounds like “when I’m sad…” :-)

  • Invariably so! Fortunately not very often now :)

  • Chivz

    Hello Sam, I had a very specific question to ask but since I couldn’t find your email, I decided to send my question in the comment box, hoping that it will reach you one way or the other.

    I am very new to building phonegap app. I want to do something very simple: code up the login page in the mobile app. I want when a user enters his username and email, I will check it on the server, and then redirect the person to the homepage of the mobile app. If this user cannot be validated, he is sent a message. Now, in PHP, I would have used a header re-direct.

    Please help. Thanks.

  • Colemanto

    Try BBEdit – you’ll never look back:

    http://www.barebones.com/products/bbedit/ 

  • I’ll have a look! I tried Sublime Text 2 at the weekend, which is great but I found myself back in TextMate after a while.

  • hey sam. sorry about the late comment. do you use weinre? if not, check it out. great little tool for remote mobile debugging.

  • Hi,

    I haven’t use Weinre, but heard good things. Is it this? http://debug.phonegap.com/

    Looks ace!

  • yeah. i use it for my mobi-sites running on localhost via node.js. i’ll be getting into phonegap over the next few months and watching your blog ;)

  • Awesome. Look forward to using this for my next app :) Thanks for your comments, I haven’t published anything for a while mind :-/

  • Seba

    You should try out ProtoTouch (prototouchapp.com) to prototype your iOS apps. You add your own wireframes, or screenshots from Dropbox, your iPhone Library or your camera, link and add transitions between them, share, and install on any iOS device as a real app, or see it online. Great post!