So, if you haven’t noticed from my Github page, I’m mostly a PHP developer. Yeah, yeah I know there’s a circlejerk towards PHP as a language, but I couldn’t care less. IMO, any tool in the right hands can be powerful. Including PHP. Heck, you know what Facebook is built on?

Anyway, in this post I’ll try to explain my full time job tech stack and the tools I use. As a PHP dev using popular frameworks like Laravel and Yii2, I need an IDE that I can rely on. I first fell in love with the concept of an IDE back in 2013 (citation needed lol) when I was doing an intern job developing .NET apps using Visual Studio. Back then, Ctrl+clicking a variable to go to its declaration was magic to me. That’s when I first learnt what IntelliSense was.

Finishing that intern job to go back to PHP for my thesis and side projects, I was dreaded to be using Notepad++ for development. I’ve been stripped the luxury of IntelliSense, so I researched to find what was the best equivalent tool was for PHP. That’s where I first learnt about Netbeans - the tool that I use to this day. It might not look as pretty as Visual Studio (especially on Linux) but it gets the job done and boy Ctrl+clicking on stuff boosted my productivity.

As far as operating systems go, well I can basically use anything (I dual boot Windows 10 and Ubuntu 16.04) but for my local dev server, I rely on Vagrant on top of Virtualbox, in which I run an Ubuntu 16.04 image. Somehow typing vagrant up and vagrant ssh gives me satisfaction…

As far as RDBMS goes, I rely on MariaDB (sometimes MySQL), since I basically grew up on these, though I have worked with PostgreSQL for a project. HeidiSQL is my primary database management tool, running on top of Wine if run on a Linux system.

Gitlab for work related projects and Github for personal projects is where I go to store my repositories. And yes, I use git CLI to interact with Git.

Other tools that I haven’t mentioned are probably Putty as an SSH client on Windows (Basic ssh when running on Linux), Atom for a lightweight text editor, apart from the occasional Notepad++ to handle large files, Postman for API testing (if you’ve never used a tool like this to test your APIs, I strongly suggest you to try it out), and last but not least, Xdebug for PHP debugging.

Tabs vs Spaces? Why not both? (Tabs that convert into 4 spaces) (Probably spaces then) (I really need to settle on one)

Emacs or Vim? Screw them both! Nano is the way to go!