Living life and Make it Better

life, learn, contribute

Endy Muhardin

Software Developer berdomisili di Jabodetabek, berkutat di lingkungan open source, terutama Java dan Linux.

Membuat Changelog Liquibase

Di ArtiVisi, kami menggunakan tools bernama Liquibase untuk mendefinisikan skema database. Dengan Liquibase ini, skema database dapat disimpan dan dikelola versinya dalam Git. Dia juga memiliki fitur untuk melakukan migrasi database pada saat aplikasi kita naik versi. Bila terjadi error di versi baru, Liquibase juga bisa melakukan rollback agar skema database kita kembali ke kondisi sebelum naik versi.

Skema database dalam Liquibase ditulis dalam format XML, disebut dengan istilah changelog. Untuk project baru, ini bisa ditulis tangan secara manual, tetapi untuk aplikasi yang sudah ada, terlalu merepotkan kalau semua tabel yang sudah ada harus ditulis ulang skemanya.

Lanjut membaca ...


Membuat Audit Log

Dalam membuat aplikasi bisnis, kita sering diminta membuat audit log.

Apa itu audit log?

Audit log adalah catatan mengenai perubahan data dalam aplikasi. Yang dicatat biasanya :

  • kolom mana yang berubah
  • siapa yang mengubah
  • diubah dari apa menjadi apa
  • kapan dia berubah

Lanjut membaca ...


Buku Panduan Markdown dan Pandoc

Menyusul postingan sebelumnya, saya telah menulis buku panduan cara menggunakan Markdown dan Pandoc.

Buku ini tentu saja ditulis menggunakan Markdown dan dikonversi ke PDF menggunakan Pandoc. Silahkan digunakan:

  • Source code ada di Github
  • Hasil PDF yang sudah jadi bisa diunduh di sini.

Semoga bermanfaat.


Membuat dokumen dengan Markdown dan Pandoc

Sudah lama saya mencari format yang tepat untuk membuat dokumentasi. Baik untuk menulis ebook, user manual, modul pelatihan, dan berbagai keperluan penulisan lainnya. Beberapa fitur yang saya inginkan antara lain:

  1. berbentuk text file biasa. Dengan menggunakan format text file biasa, ada beberapa keuntungan yang bisa diambil:
    • Bisa dikelola di version control seperti Git atau Subversion
    • Bisa diedit di komputer, handphone, ataupun tablet
    • Ukurannya kecil, sehingga memudahkan penyimpanan di cloud storage seperti Dropbox
  2. Bisa dikonversi ke format lain, terutama pdf
  3. Mudah dipahami
  4. Bisa diwarnai dengan syntax highlighting
  5. Bisa autocomplete

Dari empat fitur di atas, yang wajib cuma yang pertama dan kedua saja. Fitur lainnya bersifat nice to have, ada syukur, gak ada juga tidak terlalu masalah.

Lanjut membaca ...


Release Management

Release, atau di-Indonesia-kan menjadi rilis, adalah tahap yang paling penting dalam software development. Segala kegiatan hulu (upstream activity) lainnya seperti requirement, desain aplikasi, coding, testing, dan lainnya, semua dilakukan demi untuk menghasilkan software yang bisa dirilis. Sebagus apapun kita melakukan kegiatan lainnya, jika rilisnya tidak bagus, maka semua yang kita kerjakan menjadi tidak bagus. Sebaliknya, berbagai kesalahan dan kekurangan di kegiatan lain akan mudah dimaafkan dan dilupakan kalau kita menghasilkan rilis yang baik. Walaupun demikian, perlu diingat bahwa bila kita melakukan kegiatan hulu dengan baik, biasanya kita bisa menghasilkan rilis yang berkualitas baik secara konsisten.

Pada artikel ini, kita akan membahas pernak-pernik yang berkaitan dengan rilis. Apa itu rilis, berbagai jenis rilis, syarat dan ketentuan rilis, dan juga prosedur yang kita gunakan di ArtiVisi.

Lanjut membaca ...