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 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 ...


Terima kasih Wordpress

Sejak pertama saya membuat blog, aplikasi yang saya gunakan adalah Wordpress. Aplikasi Wordpress sangat mudah digunakan dan banyak fiturnya. Selain itu, themes gratisan di internet juga berlimpah ruah, sehingga kita bisa ganti tampilan setiap hari kalau mau.

Walaupun demikian, zaman berganti, dan cara kita bekerja juga berubah. Saya saat ini lebih banyak berkutat di pemrograman dengan workflow sebagai berikut :

  1. Buka text editor
  2. Edit source code
  3. Jalankan di local dan test
  4. Kalau sudah ok, simpan di version control (commit)
  5. Ulangi ke langkah 2 sampai selesai
  6. Begitu sudah siap untuk sharing hasil pekerjaan, upload (push) perubahan ke version control pusat.

Workflow ini sayangnya tidak dapat dilakukan untuk menulis blog. Workflow saya dalam menulis blog biasanya seperti ini:

  1. Buka text editor
  2. Ketik dalam format text file biasa, dengan menggunakan HTML tag bila perlu
  3. Simpan di folder Dropbox selama masih draft
  4. Setelah siap dipublish, buka Wordpress di browser
  5. Login ke Wordpress
  6. Create New Post
  7. Copy - Paste dari text editor
  8. Preview dan rapikan lagi
  9. Publish

Seperti bisa kita lihat, dengan workflow di atas, praktis fitur-fitur Wordpress yang serba canggih tidak termanfaatkan. Oleh karena itu, sudah tiba saatnya untuk mencari aplikasi blogging yang lebih sedikit fiturnya. Biasanya orang mengganti aplikasi dengan yang lebih banyak fiturnya, tapi kali ini saya melakukan hal yang sebaliknya.

Lanjut membaca ...


Konsep Dasar Log4j

Walaupun sudah dibuatkan minibook, tapi ternyata ada juga beberapa orang yang tidak paham bagaimana cara enable/disable log message di aplikasi Java. Oleh karena itu, baiklah saya jelaskan lagi secara lebih singkat.

Lanjut membaca ...


Monitoring Aplikasi Java

Setelah aplikasi kita selesai dibuat, langkah selanjutnya tentu saja adalah menjalankannya di server production. Dalam software development, ini disebut dengan transisi dari development menjadi operation.

Salah satu aspek penting dalam fase operation adalah monitoring performance. Monitoring dilakukan untuk berbagai tujuan, diantaranya :

  • Mengetahui karakteristik aplikasi dalam menggunakan resource. Informasi ini bisa kita gunakan untuk melakukan tuning performance

  • Mengetahui karakteristik user dalam menggunakan aplikasi. Perilaku user ini berguna untuk menentukan waktu-waktu sibuk dan waktu-waktu idle, sehingga kita bisa melakukan capacity planning dengan akurat.

  • Mengetahui berapa persen resource yang sudah terpakai, sehingga kita punya gambaran kapan harus melakukan upgrade, dan apa yang harus diupgrade

  • Mendapatkan notifikasi secepat mungkin pada saat sistem mengalami gangguan

Lanjut membaca ...