Call or email today for a free consultation.
I just spent the afternoon re-thinking and re-evaluating my set up for developing Drupal sites on my local machine. Here's the hierarchy of the development tools in play:
I use a Macbook Pro which is linux based. I am thinking about making my next computer linux which will force me to improve my command line skills.
Drupal works best running on the classic mix of linux, apache, mysql, and php. Linux= the operating system, Apache = the server, MYSQL = the database, and PHP is the scripting language (that Drupal is built in).
Mac's have these things installed natively although there is some configuration involved to set it up. Personally, I use MAMP. MAMP seems to be a bit of an old school way of creating the LAMP stack on your computer; it's kind of redundant when it's already built in; but it's what I know and so I'm sticking with it for now.
Drush is basically a command line tool for drupal that makes essential tasks easier. You can find more about it here: Drush Info.
This is a file that drush uses to download the latest version of core and all the modules you have included in the .make file. If you have a set list of modules you use for every new drupal site, you can put them in your drush make file and spin up new sites quickly and efficiently. A side bar to the drush make command is the drush make-generate command. This creates a .make file from a current site.
This is the tool you'll be using to write and debug code. Here is a great recent list of the top IDEs: Top IDE's
I used PHP Storm on my most recent project. It's great for a big project. It compiled my less files and made debugging PHP easy. I'm still learning what this IDE can actually do but those in the know rave about it.
The problem with PHP Storm is that it is very slow to load. So it's not good for opening and editing individual files on the fly. For these tasks, I used CODA for a while but switched to Sublime Text and it looks awesome. It took me a bit to realize that this editor is all about the keyboard but now that I have that figured out, I'm realizing how awesome it is. This will be the IDE I use on my next project.
Git is source code management. I'll write more on this soon.