Kamis, 15 Agustus 2013

Re-install MATLAB: Beda Arsitektur Beda Lisensi

Rasanya sudah tidak asing lagi perangkat lunak ini di telinga kita, perangkat lunak yang cukup digandrungi para 'saintekers' (baca: ahli sains dan teknologi) dewasa ini, ya, MATLAB. Betapa banyak penghuni dunia yang sangat piawai dalam menggunakan perangkat lunak (tools) super canggih ini :-D

Tidak perlu berbelit-belit, langsung saja, tulisan singkat ini berfungsi sekedar untuk memberikan informasi kepada Anda (buat yang belum TaHu) sekaligus sebagai catatan pribadi penulis saat ingin memasang-ulang (re-install) MATLAB di PC, khususnya apabila kita sudah memiliki key maupun berkas lisensi hasil aktivasi kita (sebelumnya).

Sabtu, 13 April 2013

Good DB Design: MyEdition

Pada kesempatan ini, saya ingin berbagi pengalaman tentang desain-mendesain basis data, berbasis pada pengalaman mengerjakan beberapa proyek pengembangan perangkat lunak yang pernah saya kerjakan. Ada beberapa hal yang biasanya menjadi perhatian saya khususnya masalah penamaan (naming convention), antara lain:
  1. Penamaan entitas/tabel
    • Saya biasa menggunakan model penamaan full-lowercase pada nama entitas, dengan menambahkan underscore ( _ ) sebagai pemisah suku kata, jika lebih dari satu suku kata. Misal: Untuk sebuah entitas dengan nama "Periode Akademik", akan saya ubah menjadi periode_akademik ketika saya desain dalam bentuk diagram ER maupun ketika sudah saya implementasikan ke basis data relasional semacam MySQL, Oracle, atau SQL Server. Hal tersebut saya lakukan karena terkadang ada beberapa RDBMS yang akan mengubah secara otomatis case dari nama tabel yang dulunya sering saya namai dengan menggunakan model penamaan camelCase (periodeAkademik) menjadi full-lowercase, sehingga yang awalnya periodeAkademik akan menjadi periodeakademik yang secara kasat mata akan tampak agak susah untuk dibaca.
    • Selain itu, tabel hasil relasi dua entitas atau lebih yang seringkali merupakan hasil pembangkitan otomatis dari perangkat lunak CAD untuk desain basis data biasanya akan saya ubah juga secara manual agar kelihatan lebih well-defined dan tentu saja mudah dibaca, sesuai konsep, dkk.

Sabtu, 23 Februari 2013

Mengubah LAF NetBeans di Ubuntu

Salah satu kelebihan aplikasi berbasis Java adalah tersedianya fasilitas untuk mengubah antarmuka grafis aplikasi yang biasanya disebut sebagai LAF (Look And Feel). Mengapa disebut LAF? Mungkin bisa kita analogikan dengan sebuah Desktop Environment di Linux (GNOME Shell, KDE, LXDE, dsb.), apa yang Anda bayangkan...? Dan saya tidak akan memperpanjang bahasan itu... :) Karena tujuan tulisan saya kali ini adalah menunjukkan kepada Anda (yang belum tahu) bagaimana cara mengubah LAF NetBeans yang berbasis Java itu agar tidak membosankan, apalagi ini adalah aplikasi untuk ngoding yang biasanya prosesnya saja sudah bikin setresssss...

Okay, let's turning this way...

LAF default NetBeans biasanya mengikuti native sistem operasinya, jika Anda menggunakan Windows ya berarti tampilannya mirip aplikasi-aplikasi Windows pada umumnya, begitu pula jika Anda menggunakan Ubuntu (misal menggunakan GNOME-Shell DE), tampilannya akan mirip aplikasi-aplikasi yang dikembangkan dengan GTK Toolkit.

Cara mengubah LAF NetBeans di Ubuntu cukup mudah, karena NetBeans sendiri telah menyediakan file spesifik yang berisi konfigurasi-konfigurasi, yang bisa kita ubah tentu saja. File tersebut bisa kita temukan di:

Jumat, 22 Februari 2013

Query SUM+IF pada MySQL

Tulisan ini sekedar memberikan cara alternatif meng-query data di MySQL, sebuah cara meng-query yang bisa dipakai untuk menghitung nilai saldo (balance) dari seluruh transaksi keuangan yang memiliki fitur D (debet) dan K (kredit) dengan contoh data sebagai berikut.

rekeningIdjenistotal
4D
3000
5D
35000
10D
10000
11D
5000
12D
1000
13D
5000
14D
71000
1D
130000
22D
40000
26D
25000
27D
35000
27K
34100

Tabel tersebut menyajikan saldo tiap-tiap rekening yang terkelompok per jenis transaksi (D/K). Kolom "rekeningId" pada tabel tersebut menandakan ID rekening, kolom "jenis" merupakan jenis transaksinya, dan kolom "total" merupakan saldo rekening per jenis transaksi.

Permasalahan yang harus diselesaikan adalah bagaimana caranya agar nominal tersebut dapat dijumlahkan sehingga bisa didapatkan saldo total dari seluruh rekening, tentu saja setelah dikurangi nominal yang berjenis K.

Beberapa model query mungkin bisa digunakan, namun pada tulisan ini saya mencoba untuk mengombinasikan fungsi agregat SUM dengan menambahkan kondisi di dalamnya. Berikut contoh script SQL-nya:



Selasa, 19 Februari 2013

What to Back-up: Ubuntu Series

Mem-backup konfigurasi (data) aplikasi merupakan salah satu rutinitas yang biasa dilakukan oleh pengguna komputer, karena hal tersebut memang sangat disarankan untuk njagani manakala suatu saat terjadi hal-hal yang tidak diinginkan yang mengakibatkan data-data tersebut lenyap tak bersisa, ataupun alasan-alasan lain seperti terlalu suka gonta-ganti OS (masih sejenis), de el el. Entah backup tersebut dilakukan setahun sekali, sebulan sekali, atau bahkan ada yang melakukannya secara terus-menerus (tersinkronisasi) ke sebuah server backup.

Nah, tulisan saya kali ini bertujuan untuk membagi pengalaman kepada Anda tentang data-data apa saja yang biasa saya backup, tentu saja mengacu ke sistem operasi berbasis Ubuntu. Oke, ini dia:
  • okular docdata
    Okular merupakan aplikasi yang bisa digunakan untuk membuka berkas PDF. Adapun data yang dihasilkan oleh aplikasi ini adalah data yang berupa berkas-berkas XML yang biasanya berisi daftar bookmark, anotasi, catatan-catatan, highlight teks, de el el, yang terkait pada setiap dokumen PDF yang pernah kita buka, tentu saja anotasi-anotasi tadi merupakan anotasi yang kita buat menggunakan okular tersebut.

    Untuk lokasinya, biasanya ada di sini:
    /home/[usernameAnda]/.kde/share/apps/okular/docdata
  • maven repository
    Bagi Anda para pecinta Java, saya kira data ini juga cukup penting, repository dependency manager dengan maven.

    Untuk lokasinya, biasanya ada di sini:
    /home/[usernameAnda]/.m2
  • gradle cache
    Gradle sudah semakin sering didengar seiring dengan penggunaan Android Studio sebagai IDE resmi pengembangan aplikasi Android, dimana mekanisme building dan dependency management-nya menggunakan Gradle secara default.

    Untuk lokasinya, biasanya ada di sini:
    /home/[usernameAnda]/.gradle

Ini dulu, selebihnya menyusul :)

Senin, 21 Januari 2013

Kuliah Pengganti Grafkom

Informasi untuk kelas I1 dan H1 mata kuliah Grafika Komputer yang saya ampu, kuliah pengganti akan dilaksanakan pada 21 s.d. 23 Januari 2013 pada jam seperti perkuliahan biasanya. Untuk lokasi kelasnya, default-nya di H2-204 (tentative).

Terima kasih atas perhatian Anda.

Rabu, 16 Januari 2013

Alternatif GetDeb

GetDeb (http://getdeb.net) merupakan salah satu situs yang menyediakan berbagai paket perangkat lunak untuk sistem operasi Linux yang berbasis Debian (paket aplikasinya memiliki ekstensi *.deb). Sehingga, selain paket-paket perangkat lunak yang sudah disediakan oleh repository Linux yang bersangkutan, pengguna dapat pula menambah daftar perangkat lunak lainnya (third party software), antara lain dari situs getdeb tersebut. Namun, beberapa bulan ini, si 'getdeb' itu dalam keadaan tidak aktif, sehingga, saya pun harus muter-muter nyari alternatifnya. Alhamdulillah, akhirnya ketemu cerminnya di sini:


Dan kebetulan, paket yang tersedia di situs tersebut adalah paket perangkat lunak untuk Linux Ubuntu, tapi rasanya tidak menutup kemungkinan untuk dipasang di distro Linux yang lain.

Oke, cara untuk menambahkan daftar repository dari situs cerminan getdeb tersebut bagaimana? Nih, Gan, jalanin aje perintah berikut di terminal ente!

echo "deb http://mirrors.dotsrc.org/getdeb/ubuntu $(lsb_release -cs)-getdeb apps" | sudo tee /etc/apt/sources.list.d/getdeb.list

Kalau misal pengen nambahin yang source-nya, jalanin lagi perintah itu, plus tambahin -src setelah deb (deb-src bla... bla...).

Ya..., gitu deh, sampe situ dulu, selamat mencoba.