Sudah sejak tahun 2017, saya mulai meninggalkan XAMPP secara total. Mulanya saya beralih menggunakan Vagrant dari Hashicorp, ya semacam wrapper untuk membuat virtual machine di laptop development kita. Kemudian, karena tidak begitu praktis dan bisa boros memori dan storage, akhirnya saya pun pindah ke Docker. Nah, tahun 2018 ini saya murni menggunakan kombinasi keduanya.

IDE

Untuk setup tahun 2018 ini, IDE yang saya pakai adalah Visual Studi Code. Kenapa? karena sudah paket komplet. Sudah ada GUI untuk melakukan pengelolaan repositori berbasis GIT. Sudah ada Terminal bawaan dan banyak Extension yang menarik. Sudah sangat lama saya meninggalkan Komodo IDE, JetBrains atau bahkan Coda.

Semua sudah tergantikan dengan IDE dari Microsoft ini, Visual Studio Code. Extension wajib yang saya install antara lain Autocomplete dan SFTP. Dengan extension SFTP dari Lixinomo, saya bisa Upload langsung file yang saya kerjakan dari local setup saya ke server production dengan sekali klik. (Bye bye Filezilla !!!)

Server

Seperti saya sampaikan di prolog di atas, saya menggunakan Docker sebagai farm server saya tahun ini. Saya cukup bikin satu images docker sebagai master, misal php54, php55, php56, php7 dst dengan environment yang sesuai dengan server production dan images-images tersebut bisa saya pakai berulang kali di project-project yang saya bikin.

Misal, untuk project client A, saya tinggal bikin satu container berbasis php56 yang kemudian saya binding volume /var/www nya ke direktori kerja dari project client A itu, jadi saya edit script di Visual Studio Code dan langsung dapat mengetahui perubahan tampilan/alur programmnya di browser, dengan environment yang dicocokkan dengan setting server produksi.

Nggak lagi-lagi menggunakan XAMPP. Tidak hanya mengelola aplikasi web yang jalan mulus di PHP 5.6 itu menyedihkan. Bahkan harus maintenance script dengan dukungan PHP 5.2 misalnya, kalau sampeyan paksa pakai XAMPP, sampeyan mumet dewe switch-switch versi PHP!

Oh iya, kenapa tidak menggunakan Vagrant saja sebagai builder servernya? Alasan utama adalah soal memori dan storage. Reusability komponen di Vagrant itu tidak seirit Docker. Docker menggunakan resource/images templatenya secara penuh, Vagrant hanya menyalin ke image barunya. Jadi server baru yang dibikin vagrant pasti butuh storage ratusan mega, hehe.

Tapi, bukan berarti Vagrant tidak saya pakai.

Database

Untuk database server, proses pembuatan dan maintenance nya menggunakan Vagrant. Kenapa? supaya mudah dipindah-pindah aja. Dimatiin atau dinyalain dengan mudah. Backupnya mudah, tinggal copy file .box dari folder Virtualbox.

Untuk pengelolaan DBnya, suka tidak suka, saya akui masih Navicat Premium yang mampu mengelola semua database, dari proses pembuatan maupun query-nya yang paling simple dan nikmat digunakan!