All posts related to Programming Principle
Bing Image Creator - PII encryption

Data pribadi user dikenal dengan istilah PII (Personal Identifiable Information). Ini merupakan kumpulan daftar data yang diwajibkan atau dianjurkan untuk dienkripsi saat disimpan di dalam system🔒. PII terbagi dua, ada PII yang sensitif, yaitu data pribadi yang wajib dienkripsi. Ada juga PII yang non-sensitif, yaitu data pribadi yang ga wajib dienkripsi, tapi…

August 26th, 20264 mins read
Programming Principle, Tips & Tutorial, Java
ImagineArt - timing attack

Timing Attack adalah serangan peretasan dengan cara membaca informasi waktu eksekusi pada system. Jadi, hacker ga secara langsung membobol system, melainkan dibaca dulu polanya. Hacker mengukur statistik waktu yang dibutuhkan oleh system untuk memproses sesuatu dari berbagai macam input. Misalnya pada aktivitas-aktivitas sensitif seperti autentikasi, verifikasi…

Gemini Nano Banana - cache stampede

Mendapatkan data yang butuh komputasi yang berat atau melibatkan query yang kompleks dapat membuat system jadi lambat. Permasalahan itu bisa diatasi dengan cache agar data yang pernah didapat disimpan di memori dalam jangka waktu tertentu. Namun, saat cache expired semua request yang masuk harus melakukan komputasi lagi berbarengan sehingga bisa membuat server…

June 29th, 20266 mins read
Programming Principle, Tips & Tutorial, Java, My Views
Gemini Nano Banana - server communication

Ketika membangun aplikasi yang terintegrasi dengan service lain kita perlu memilih strategi yang dilakukan untuk berkomunikasi atau bertukar pesan antar service. Biasanya pada Microservices strategi yang paling umum untuk dilakukan adalah Direct Call menggunakan HTTP. Namun, pendekatan ini belum tentu cocok untuk semua kasus. Ada beberapa pilihan strategi…

June 20th, 20262 mins read
Programming Principle, Tips & Tutorial
Gemini Nano Banana - screaming architecture

Screaming Architecture adalah sebuah arsitektur di mana struktur folder dan struktur package “mengaumkan” domain beserta fitur utama bisnis tersebut🦁, bukan tentang teknologi yang dipakai. Konsepnya sederhana tapi argumennya cukup kuat. Misalkan kita membuka struktur folder aplikasi e-commerce, yang harusnya kita lihat bukanlah folder terkait teknologi yang…

June 20th, 20266 mins read
Programming Principle, Java, Tips & Tutorial
Ideogram - Domain Driven Development

Domain Driven Design (DDD) adalah sebuah filosofi pengembangan software yang berpusat pada logic bisnis yang disebut sebagai “Domain”. Filosofi ini diperkenalkan oleh Eric Evans di tahun 2003. Walaupun udah lebih dari 20 tahun yang lalu tapi filosofi ini masih tetap relevan di jaman sekarang. DDD menyelaraskan antara code dengan realita bisnis, bukan sebaliknya…

June 20th, 20262 mins read
Java, Tips & Tutorial, Programming Principle
Ideogram - tell dont ask

Prinsip ini diperkenalkan oleh sesepuh OOP Martin Fowler. “Tell, Don't Ask” (TDA) artinya adalah kita tidak meminta data dari objek lalu kita memutuskan apa yang harus dilakukan, melainkan kita memerintah objek untuk melakukan apa yang kita inginkan. Jadi, di sini objek yang bekerja untuk kita. Prinsip ini mencegah micromanage di luar objek agar eksekusi yang…

June 18th, 202620 mins read
Tips & Tutorial, Programming Principle, Java, Spring
Gemini Nano Banana - clean architecture

Clean Architecture merupakan evolusi dari Onion Architecture & Hexagonal Architecture. Di sini modul dibagi jadi beberapa layer. Setidaknya ada 4 layer: Entities, Use Case, Interface Adapters, dan Frameworks & Drivers. Dependensi antar layer selalu mengarah ke dalam. Layer-layer tersebut tidak bergantung pada layer di luarnya. Dengan begini framework jadi lebih…

June 17th, 20264 mins read
Programming Principle
Gemini Nano Banana - http request methods

HTTP Method adalah kumpulan request method untuk menjelaskan tujuan dari pengiriman request dan apa yang diharapkan setelah request berhasil. Yang paling umum biasanya GET & POST. Padahal selain itu ada beberapa method lainnya yang mungkin masih jarang terdengar. HTTP Method memiliki karakteristiknya masing-masing yang digunakan untuk berbagai kasus tertentu…

December 25th, 20257 mins read
My Views, Programming Principle, Database
Gemini Nano Banana - CAP Theorem

Sebelumnya gw pernah bahas ACID pada database. Kali ini bahasannya tentang teori CAP pada database yang dipopulerkan oleh Eric Brewer di akhir 90an dan masih relevan hingga sekarang. CAP Theorem adalah teori yang menjelaskan bahwa pada sistem database maksimal hanya bisa memiliki 2 kombinasi dari 3 elemen CAP. Ketiga elemen itu adalah Consistency, Availability…

© 2026 · Ferry Suhandri