7 tools every PHP developer should know

GIT | Bitbucket | GitHub

Distributed revision control and source code management system is what wikipedia says about GIT.  GIT is powerful tool giving you an opportunity to version your code and much more (for example deployment – try it and you’ll love it).

Bitbucket and GitHub are web based hosting services for your repos. Bitbucket gives you unlimited number of private repos (up to 5 users) and GitHub is mostly used for open sourced projects (public repos), so you are able to find there almost every source code you need.

Do you still use Subversion? It’s time to give a try to a GIT.  Are you not versioning your files? You should start with GIT right away!

FTP | Filezilla

GIT deployment is totally cool, but there’s sometimes situation you are not able to use it. For these moments there is the Filezilla – great FTP client supporting linux and windows. Go ahead.

IDE | PhpStorm

Of course you are going to need an IDE. And in my opinion the best one is PhpStorm. For a reasonable price you will get kick ass tool. Integrates GIT, FTP client and terminal, so you really don’t need to switch to other apps during the development. Really worth a try.

Framework | Nette Framework

There’s a lot of PHP frameworks. You probably know Symfony or Zend, but the slickest one is not so widely known framework called Nette. If nothing you should at least check out Tracy (debugging tool), Tester (do you write tests, right?) or Latte (amazing template engine).

Tracy in action
Tracy in action

Dependencies | Composer

You don’t know Composer? And how do you maintain your projects libraries? Go for it right now. This is the future of PHP development.

Hosting | Digital Ocean

If you are maintaining a lot of web apps or websites you should consider to buy a VPS. Just because it’s cheaper and you have the whole environment under your control. There’s no problem with old version PHP, the PHP is set up the way u want to and because you can set up the GIT deployment.

I recommend to try Digital Ocean – it’s working on SSD and servers are really fast and surprisingly cheap. Starts at $5/month, simply scalable.

Server & Database | Nginx + Postgresql

You are probably familiar with Apache (web server) and MySQL. Check out MariaDB (MySQL fork, for now it’s compatible) – it might be better match for your projects. Anyway there’s a lot of great stuff in web servers too. Earlier this year I was trying Lighty (lighttpd) but afterall, the nginx looks like true love for me and I am trying to use this one for all projects from now on. Why? It saves me a lot of server resources and it’s highly configurable.

And at last but not least the PostgreSQL. MySQL is great but not compared to PostgreSQL. If you need to work with JSONs or geodata and you still want to use object-relational database, this is the one.

 Resume

Lot of interesting tools were mentioned above but there’s still lot of them out there. Share your favorite tools in comments. Really looking forward for your opinions.

 

New Year with new technologies – mostly lighttpd

My old VPS was kinda meeting it’s limits so I’ve decided to order new one.  Actually I’ve ordered new VPS a few months ago at Digital Ocean for a project I am not able to complete and won’t be ready for a few months, so I decided to use this server for this blog and several more domains.

Digital Ocean offers really great deals (20GB SSD & 512MB RAM for $5, really easy scalable) and after few months of testing I have no other choice than recommend. About creating droplets (means VPS) and managing web server maybe some other time, it’s like two clicks of mouse.

My old VPS is running LAMP (Linux, Apache 2, MySQL & PHP) and I’ve ordered only 512MB of RAM, I’ve decided to try Lighttpd instead of Apache just to save some memory. And it looks amazing.

At this very moment I’ve got three websites (powered by PHP framework – Nette), one WordPress site (this blog) and  flyspray site (bugtracking) on the VPS and it’s using 190MB of RAM.

The only thing I had to really resolve was the mod rewrite for WordPress. As a matter of fact it was really easy, check how to run wordpress on lighttpd.

Few hours ago I’ve  changed MX records and the blog is now running on the Lighty provided by Digital Ocean. Hooray.