A long, long time ago we used only one tool for syncing development instances with production environments - FTP. Over the years, we at Netgen improved slowly but are still not where we want to be. The main problem is that we have many projects and clients with different infrastructure in type and size. It is very hard to consolidate the process in that situation. Here is what we have managed so far using Vagrant, Ansible, and PhpStorm.
A very important, but often overlooked, part of a software development process is testing. The thing is, if you don’t test your website, it could happen that you deploy the finished product and don’t notice any existing bugs until the production. That would be a very unpleasant experience both for you and your client. Here is where Behat comes in handy.
Although it is interesting to read bickering about PHP in the blog comments, forum threads, or Facebook group discussions, this post is not about comparing PHP with other languages. It is about an important factor that keeps PHP on the top - the frameworks.