When I first started out developing, long before I started looking for a job doing it I thought I was cool because I knew CSS3. When I first started looking for a job I quickly realised I was not cool, and seriously needed to up my game in terms of the technology and development tools I was using. Here I have compiled a list of my 'simply can not do with' development items.
Mac (be it my rMPB or iMac)
This is the top because lets face it, nothing else will work without one. However its deeper than that, I am one of those Apple cult members. Now I'm not camp out side the shop the day after a new release so I can be first in line for the next one kind of crazy, but I don't do Windows. I just cant. Almost everything about Windows annoys me and its completely irrational, but that's a discussion for another post. I have however turned down jobs based on not being aloud to develop on a Mac.
SCSS / Compass
My coworkers are currently trying to bully me into using PHPStorm, but I am staying strong. Sublime is well, sublime. Its so simple and the array of installable packages makes it as full featured as you would like. Ok so it doesn't have some of the more complex features of PHPStorm but in a way I kind of like that it makes me work for it. I have however been cheating on Sublime recently with Atom,Github's new editor. Which is still in its early stages, as I'm writing this they have just released v1.0. So its a little buggy but its got some good potential I think.
Within sublime I have to give shout out to the main packages I use. Which are Emmet and SidebarEnhancements along with a bunch of the syntax highlighters. Emmet's haiku and tab expansions I couldn't live without while doing front end work.
I'm not a git command line use. I like my GUI's and I'm not afraid to admit it. If that makes me less of a 'pro' then so be it. I know you can get SourceTree for free, but the UI of Tower (in my opinion) is worth the money. As a developer 90% of our stuff is free and open source, so when I have to pay for something pretty every now and again I'm not that afraid to do so. I mean I'm one of the people that actually bought Transmit rather than using CyberDuck.
I'm not sure there is anything else out there for a Mac user as a MySQL client. Either that or the guys over at SequelPro have done such a good job they have cornered the market, because I have never seen a developer on a Mac use anything else.
Homestead / Vagrant / VirtualBox
I have rolled these all into one for obvious reasons. Most of my projects are using the Laravel framework, so Homestead is an obvious choice. I used to use Mamp Pro but found I was getting more problems. I like Vagrants clean approach that if you mess up the config when playing around, you can just re-provision and start again. In order to use Homestead you will need Vagrant and in turn you need VirtualBox or VMware
Who honestly could remember all of the root MySQL passwords they make you create? Im a little biased with 1Password because I haven't used anything else. Though I think that speaks for itself in that I havent had to try anything else. Its fantastic and allows me to keep all my work, home and home development passwords separate in different vaults. It syncs with iCloud and/or DropBox. Suggests passwords if you are too lazy, and even now with Watchtower will tell you when security vulnerabilities are present in the websites you have accounts on. Expensive, but well worth it.
This one I take for granted so much I almost missed it off the list. Divvy is a window manager and I'm sure with the progress of OS's now its features are going to be replicated within them. However, I'm not sure they will pull of the ingenious simplicity. Set up your keyboard shortcuts and you will be dancing around your screen in no time.
Also need a mention
- SnippetsLab - code snippets notebook
- Bartender - menu bar organizer
- Airmail 2 - email client
- Chrome Remote Desktop - does what it says on the tin
- Transmit - (s)FTP / WebDav client
- DaisyDisk - graphically displays whats taking up space on your HDD
- Kuvva - not for development but new and interesting desktop backgrounds each day
- OptImage - image compression
- smcFanControl - CPU Fan speed control (I have a retina MB)