https://unsplash.com/photos/FCHlYvR5gJI

Dulu sebagai software developer, kebahagiaan saya adalah ketika bisa menyelesaikan sebuah fitur sebanyak-banyaknya. Butuh fitur A? sikat! Fitur B, C, D, lembur!. Ini juga pernah saya tuliskan kebiasaan-kebiasaan buruk developer yang biasanya dianggap remeh.

Kemudian tidak lama fiturnya berubah spesifikasi bahkan ada yang harus diselipkan di antara fitur A dan B. Karena awalnya dibuat tanpa perencanaan yang matang maka ada banyak technical debt atau abstraksi tidak penting sehingga mengakibatkan penambahan fitur kecil pun menjadi sangat sulit.

Kita sebagai software developer setidaknya pernah merasakan hal ini kan? Sebagai kaum yang menjadikan “long live learner” sebagai salah satu jalan ninjanya tentu ini…


https://tailwindui.com

Recently, Adam just released a fully responsive components collection built with Tailwind CSS named Tailwind UI.

Still in early access stage, so there are only couples component and they are still working with the update. It is not free (some basic components is free) but I think it’s worth to buy the license because it could saved us to build a web application with some provided components rather than wrote from scratch.

Why Tailwind UI?

First, I am not a frontend guy and definitely struggling a lot using CSS. I could spent 2 hours just to get a button displayed in the center…


Photo by Safar Safarov on Unsplash

Fokus Kualitas

Awal tahun ini kami di DOT Indonesia melakukan riset untuk otomasi hal-hal rutin yang berkaitan dengan engineering dan kualitas pengerjaan terutama untuk urusan code quality.

Hampir seluruh project yang berjalan menggunakan bahasa pemrograman PHP dan yang paling mudah untuk distandarisasi adalah coding style. Pada umumnya PHP menggunakan PHP Standar Recommendation (PSR) sebagai acuan standarisasi. Dalam hal ini adalah PSR-1 & PSR-2 (atau sekarang menggunakan PSR-12 karena PSR-2 sudah deprecated) sebagai standarisasi coding style.

Implementasi PHP CS Fixer

Saya pribadi sering menggunakan PHP CS Fixer untuk memperbaiki coding style PHP secara otomatis di project yang saya kerjakan. Mungkin bagi banyak orang ini sepele, tapi ini…


Project meeting

“What if, I am not good enough to be a manager for my team?”

~ Alvian Usnul, DOT Indonesia’s Project Manager

Becoming a manager right after your college graduation? Well, I know that pain, but let me tell you what I’ve learned from my favorite project manager at DOT Indonesia if you get your first role as a manager especially in software development.

1. Learn Software Development Life Cycle


2018 akan berakhir, ada banyak hal yang menarik terjadi di departemen engineering DOT Indonesia sepanjang tahun ini. Berikut ini adalah pencapaian-pencapaian berarti kami sepanjang tahun 2018.

Laravel

Yup, bisa dikatakan hampir seluruh project masih menggunakan PHP sebagai server side scripting dan Laravel sebagai framework utamanya.

Laravel sebagai standar framework yang digunakan bukan tanpa alasan. Laravel mengusung elegant syntax yang mendukung standarisasi & penerapan clean code di perusahaan serta didukung oleh ekosistem yang sangat bagus membuat Laravel mudah dipelajari oleh backend engineer DOT Indonesia.

Versi minimal yang dipakai adalah Laravel 5.5 …


image source: http://welllin.net

Programmer yang profesional tidak hanya mementingkan bagaimana software yang dibuatnya bisa berjalan, tapi juga memiliki semangat software craftmanship. Salah satu aspek software craftmanship adalah bagaimana menulis source code dengan baik sehingga software dapat maintainable dan mudah dikembangkan untuk jangka panjang.

Uncle Bob banyak membahas tentang clean code di bukunya, Clean Code: A Handbook of Agile Software Craftmanship. Versi singkatnya bisa kita baca di tautan berikut.

Kami para Sentimental Engineer di DOT Indonesia selalu memiliki komitmen untuk menerapkan Clean Code pada proyek-proyek yang dikerjakan karena menurut kami kualitas software tidak hanya fungsionalitasnya yang berjalan dengan baik, tapi juga memberikan software yang…


Recently I was researching about Laravel using multiple database connection. I was curious how Eloquent handle relationship if another model is using different connection or how query builder handle join operation if another table is in other database.

Well, let’s get started.

TL;DR

Do not like to read a bunch of stories? Just jump to the code:

Install Laravel

Installing Laravel is easy, just make sure you have internet connection and your machine has minimal requirements for installing Laravel.

Wait until progress completed and we’re ready to setup our database.

Database Preparation & Configuration

I will use 3 different databases and 2 different database engines using MySQL…


image source: http://culttt.com

Hello coders, do you usually finding some Laravel’s libraries inside packagist? For example do you want to export your data into Excel format, you can search it inside packagist and will found this amazing package that you can use.

Amazingly we can build our own Laravel package / library and publish it to github or even packagist so your package is discoverable to others. I’ll cover this into several chapters, and in this first chapter we will create our simple Laravel package.

We will build a simple currency formatter package. The package will format a number into formatted number with…


Pair programming. (source: https://blog.daftcode.pl)

In programming world, there are many ways to build solution. Different people could bring different solution & approach to code write code. In this way there are many reason too why we need to take a look another people code.

Looking for Better Solution

We often struggling to write code that could solved our problem in our project. After hours we did it, problem is solved. But we ended up using many nested condition that make code is hard to read. If we care about quality, we should refactor that code to make more efficient, more readable, and easy to maintain.

We may browse…


It’s been a while since I wrote post about Laravel,

So in this section I’ll cover my research about automated testing in Laravel.

TL;DR

Wanna jump to complete source? Here we are

Automated API Testing

Automated test is an important key in agile practice. It is providing quick feedback from our code so we could determine that our code is working or not, especially when our code is complex enough to do manual tests.

We may testing our API using tools like postman or other tools. It is really fine to manually testing our API endpoints, but how to test a hundred or maybe…

Didik Tri Susanto

Proud to be Moslem | Introvert | Backend Engineer | Laravel Developer

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store