20 Jun 2011

Source Code Demo RMS dengan J2ME

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.rms.*;

public class DemoRMS extends MIDlet
  implements CommandListener {
   
  private Display display;
  private Form form;
  private RecordStore rs;
  private RecordEnumeration re;
  private ChoiceGroup choicegroup;
  private Alert alert;
  private List list;
   
  //untuk proses entri data
  private Form entri;
  private TextField tfNama, tfNoTelp;
   
  private final Command cmdKeluar =
    new Command("Keluar", Command.EXIT, 1);
  private final Command cmdPilih =
    new Command("Pilih", Command.OK, 1);
  private final Command cmdSimpan =
    new Command("Simpan", Command.SCREEN, 1);
  private final Command cmdHapus =
    new Command("Hapus", Command.SCREEN, 1);
  private final Command cmdKembali =
    new Command("Kembali", Command.BACK, 1);
 
  public DemoRMS() {
    display = Display.getDisplay(this);
     
    alert = new Alert(null);
    alert.setTimeout(Alert.FOREVER);
       
    list = new List(null, Choice.IMPLICIT);
     
    rs = null;
    // membuat atau membuka record store
    try {
      rs = RecordStore.openRecordStore("contohDB", true);
    } catch (RecordStoreException rse) {
      alert.setString("Record store tidak dapat dibuka. " +
                      "Aplikasi akan dihetikan");
      alert.setType(AlertType.ERROR);
      display.setCurrent(alert, null);
      System.exit(1);
    }
  }
   
  public void startApp() {
    form = new Form("Demo RMS");
       
    choicegroup = new ChoiceGroup("Menu:", Choice.EXCLUSIVE);
    choicegroup.append("Tambah Record", null);
    choicegroup.append("Daftar Record", null);
       
    form.append(choicegroup);
    form.addCommand(cmdKeluar);
    form.addCommand(cmdPilih);
    form.setCommandListener(this);
    display.setCurrent(form);
  }  
   
  public void pauseApp() {
  }
   
  public void destroyApp(boolean unconditional) {
  }
   
  public void commandAction(Command c, Displayable s) {
    if (c == cmdKeluar) {
      destroyApp(false);
      notifyDestroyed();
    } else if (c == cmdPilih) {
      switch (choicegroup.getSelectedIndex()) {
        case 0: {
          entriData();
          break;
        }
        case 1: {
          lihatRecord();
          break;
        }
      }
    } else if (c == cmdKembali) {
      display.setCurrent(form);
    } else if (c == cmdSimpan) {
      alert.setType(AlertType.INFO);
      if (!tfNama.equals("") && !tfNoTelp.equals("")) {
        tambahRecord(tfNama.getString(), tfNoTelp.getString());
        alert.setString("Data baru telah berhasil disimpan");              
        display.setCurrent(alert, form);
      } else {
        alert.setString("Data NAMA dan NO. TELP " +
                        "tidak boleh kosong");              
        display.setCurrent(alert, entri);
      }          
    } else if (c == cmdHapus) {
      int pos =
        list.getString(list.getSelectedIndex()).indexOf(" [");
      String nama = list.getString(
       list.getSelectedIndex()).substring(0, pos);
       hapusRecord(nama);
    }
  }
   
  public void tambahRecord(String nama, String noTelp) {
    byte[] temp = null;
    try {
      ByteArrayOutputStream baos = new ByteArrayOutputStream();
      DataOutputStream dos = new DataOutputStream(baos);
      dos.writeUTF(nama);
      dos.writeUTF(noTelp);
      temp = baos.toByteArray();
    } catch (IOException ioe) {
      ioe.printStackTrace();
    }
    try {
      rs.addRecord(temp, 0, temp.length);
    } catch (RecordStoreNotOpenException rsnoe) {
      rsnoe.printStackTrace();
    } catch (RecordStoreException rse) {
      rse.printStackTrace();
    }
  }
   
  public void lihatRecord() {
    byte[] temp = null;
    list.setTitle("Daftar Record");
    list.deleteAll();
    try {          
      re = rs.enumerateRecords(null, null, false);
      while (re.hasNextElement()) {
        int i = re.nextRecordId();              
        temp = rs.getRecord(i);
        ByteArrayInputStream bais =
          new ByteArrayInputStream(temp);
        DataInputStream dis = new DataInputStream(bais);
        try {
          String nama = dis.readUTF();
          String noTelp = dis.readUTF();
          list.append(nama + " [" + noTelp + "]", null);                  
        } catch (IOException ioe) {
          ioe.printStackTrace();
        }
      }
      list.addCommand(cmdKembali);
      list.addCommand(cmdHapus);
      list.setCommandListener(this);
      display.setCurrent(list);
    } catch (InvalidRecordIDException invID) {
      invID.printStackTrace();
    } catch (RecordStoreNotOpenException rsnoe) {
      rsnoe.printStackTrace();
    } catch (RecordStoreException rse) {
      rse.printStackTrace();
    }
     
  }
   
  public void hapusRecord(String nama) {
    byte[] temp = null;
    try {
      re = rs.enumerateRecords(null, null, false);
      while (re.hasNextElement()) {
        int i = re.nextRecordId();
        temp = rs.getRecord(i);
        ByteArrayInputStream bais =
          new ByteArrayInputStream(temp);
        DataInputStream dis = new DataInputStream(bais);
        try {
          String vNama = dis.readUTF();
          if (vNama.equals(nama)) {
            rs.deleteRecord(i);
            break;
          }                  
        } catch (IOException ioe) {
          ioe.printStackTrace();
        }
      }
      re.rebuild();
      lihatRecord();
    } catch (RecordStoreNotOpenException rsnoe) {
      rsnoe.printStackTrace();
    } catch (RecordStoreException rse) {
      rse.printStackTrace();
    }
  }
       
  public Form entriData() {
    entri = new Form("Entri Data");
    tfNama = new TextField("Nama:", null, 25, TextField.ANY);
    tfNoTelp = new TextField("No. Telepon:", null, 15,
                              TextField.PHONENUMBER);
    entri.append(tfNama);
    entri.append(tfNoTelp);
    entri.addCommand(cmdSimpan);
    entri.addCommand(cmdKembali);
    entri.setCommandListener(this);
    display.setCurrent(entri);
    return entri;
  }
}

15 Jun 2011

Konsep Citra Grey dan Warna

Jumlah warna pada citra grey adalah 256, karena citra grey jumlah bitnya adalah 8, sehingga jumlah warnanya adalah  256, nilainya berada pada jangkauan 0 - 255. Sehingga nilai intensitas dari citra grey tidak akan melebihi 255 dan tidak mungkin kurang dari 0. Model penyimpanannya adalah f(x,y)=nilai intensitas, dengan x dan y merupakan posisi nilai intensitas. Misalkan suatu citra dengan ukuran lebar  = 512 dan tinggi = 512, maka jumlah byte yang diperlukan untuk penyimpanan citra 
grey scale = 512 x 512 x 1
                = 262, 144 byte
                = 0.262 MB
sumber : purnomo, mauridhi hery dan muntasa, arif. Konsep Pengolahan Citra Digital dan Ekstraksi Fitur. Graha Ilmu.

2 Jun 2011

Ikhlas Itu Penting

Ikhlas memang kata yang mudah di ucapkan oleh seseorang. Namun, sangat sulit di lakukan, aplagi menuju Keikhlasan yang haqiqi..Banyak pertanyaan yang mungkin dalam diri kita. "Apakah kita sudah IKHLAS menerima kenyataan hidup ini???", Tetapi pada kenyataannya manusia tak pernah puas dengan apa yang sudah didapatkan. Ikhlas pada hakikatnya mempunyai arti yang sangat luas, tergantung kita bagaimana mengambil definisi dari keikhlasan tersebut. Ikhlas itu sangatlah penting kita lakukan untuk menjalani hidup ini, dengan ikhlas kita akan selalu merasa puas. Ikhlas akan membantu kita untuk menuju jalan yang di Ridhoi-NYA. 
Marilah belajar untuk Ikhlas. 

25 Apr 2011

Source Code Membuat Musik Player dengan J2ME

import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.media.*;
import javax.microedition.media.control.*;

public class Musikq extends MIDlet implements PlayerListener, CommandListener
{
 private Display dis;
 private static Player play;
 private VolumeControl vc;
 private List list;
 private Command CmdExit, CmdStop;

 public Musikq()
 {
  dis = Display.getDisplay(this);
 }

 public void startApp()
 {
  CmdExit = new Command("Exit", Command.EXIT, 1);
  CmdStop = new Command("Stop", Command.OK, 1);
  list = new List("Menu", List.IMPLICIT);
  list.append("xfiless.wav", null);
  list.append("Sapii.wav",null);
  list.append("opik.mid",null);
  list.addCommand(CmdExit);
  list.setCommandListener(this);
  dis.setCurrent(list);
 }

 public void pauseApp()
 {
 }

 public void destroyApp(boolean unconditional)
 {
  if(play != null)
  {
   play.close();
  }
 }

 public void commandAction(Command Cmd, Displayable s)
 {
  if (Cmd == List.SELECT_COMMAND)
  {
   switch (list.getSelectedIndex())
   {
case 0:
list.addCommand(CmdStop);
try
{
 playMedia("xfiless.wav", "wav");
}
catch (Exception e)
{
e.printStackTrace();
}
break;
case 1:
list.addCommand(CmdStop);
try
{
playMedia("moo2.wav", "wav");
   }
   catch (Exception e)
   {
e.printStackTrace();
}
break;
case 2:
list.addCommand(CmdStop);
try
{
playMedia("opik.mid", "mid");
   }
   catch (Exception e)
   {
e.printStackTrace();
}
break;
}
}
  else if(Cmd == CmdExit)
  {
exitMIDlet();
  }
  else if(Cmd == CmdStop)
  {
   try
   {
play.stop();
if(play != null)
{
play.close();
}
   }
   catch(Exception e)
   {
   }
   list.removeCommand(CmdStop);
  }
}

public void exitMIDlet()
{
 destroyApp(false);
 notifyDestroyed();
 play = null;
}

private void playMedia(String file, String p)
throws Exception
{
 if(p.equals("wav"))
 {
  play = Manager.createPlayer(getClass().getResourceAsStream(file), "audio/x-wav");
 }
 else if(p.equals("mid"))
 {
  play = Manager.createPlayer(getClass().getResourceAsStream(file), "audio/midi");
 }
play.addPlayerListener(this);
play.setLoopCount(-1);
play.prefetch();
play.realize();
vc = (VolumeControl)play.getControl("VolumeControl");
if (vc != null)
  vc.setLevel(80);
play.start();
}

public void playerUpdate(Player play, String event, Object eventData)
{
 if(event.equals(PlayerListener.STARTED) && new Long(0L).equals((Long)eventData))
  {
}
 else if(event.equals(PlayerListener.CLOSED))
 {
 }
}
};

16 Apr 2011

TRUE LOVE

Cinta Memang mudah kau dapatkan
Disetiap lorong kehidupan
Namun....
Cinta sejati hanya satu
Dan perlu pengorbanan tuk mendapatkannya
Sungguh....
Orang yang berkali-kali
Gagal dalam bercinta
Akan mendapatkan cinta yang sungguh-sungguh
Cinta sejati adalah Kesetian...Pengorbanan...Pengertian...Saling Percaya...
Maka dari itu hati-hati dalam bercinta
Dan sekali-kali bermain dengan kata CINTA ^^

15 Apr 2011

Ajari Anak Selalu Bersyukur

"Ma, anak kecil yang jualan koran itu kasihan ya." "Iya. Makanya, adik harus bersyukur ya karena sudah diberi kehidupan yang lebih baik."

Sukses mengajari anak mengucapkan 'terima kasih' adalah separuh perjuangan. Separuhnya lagi yaitu mengajarkan mereka untuk bersyukur. Coba berikan pandangan tentang aspek positif kehidupan agar mereka dapat memahami arti hidup secara mendalam. 

Jeffrey Froh, PsyD, direktur dari The Laboratory for Gratitude in Youth at Hofstra University memberikan saran untuk melakukan kegiatan berikut dengan anak agar membantu mereka tumbuh menjadi orang yang bersyukur dan optimis:

Umur 3-7 tahun

Setiap malam sebelum tidur, tanya anak Anda, "Hari ini apa yang membuat kamu senang?" saran Dr. Froh. Walaupun dia masih belum memahami betul tentang konsep bersyukur, paling tidak kebiasaan ini membantunya untuk selalu melihat sisi positif dalam hidupnya. Hal ini dapat memacunya untuk selalu berpikiran positif.

Umur 8-10 tahun

Pada usia ini, anak memasuki tahap di mana ia mulai memahami apresiasi yang diberikan oleh orang lainnya padanya. Jadi, penting sekali untuk memberikan pengertian pada anak Anda bahwa suatu perbuatan yang dilakukan seseorang untuknya itu patut disyukuri. Contohnya, katakan: "Tante baik ya dik, mau bikinin kue tart buat ulang tahun adik. Black forest lagi, favoritnya adik kan."

Umur 11-13 tahun

Berikan kamera pada anak dan minta dia untuk memotret hal yang dia syukuri setiap harinya. Pasang gambar untuk memudahkannya mengingat peristiwa menyenangkan tersebut. Penelitian yang dilakukan oleh Dr. Froh menunjukkan bahwa anak yang mendaftar peristiwa yang menyenangkan cenderung membuat mereka lebih puas, selalu bersyukur dan optimis. Tidak hanya memotret, menulis, menggambar, serta bercerita juga menjadi media yang patut dicoba.

Umur 14 ke atas

Cobalah menonton film Pursuit of Happyness atau film lainnya yang bertema rasa syukur. Lalu, diskusikan nilai moral dengannya. "Sel dalam otak membantunya merasakan hal yang sama seperti kejadian yang dia lihat," jelas Dr. Froh. Hal ini dapat meningkatkan empatinya dan membuatnya lebih bersyukur atas apa telah ia dapatkan. (wo/meg)

13 Apr 2011

5 Cara Mudah Berhemat

Jangan sampai uang Anda melayang untuk hal-hal yang tidak berguna dan membuat Anda menyesal.
Beberapa waktu ini, perhatian kita tersita pada pemberitaan mengenai seorang wanita cantik bernama Malinda Dee yang diduga menggelapkan uang nasabah hingga milyaran rupiah. Beberapa mobil mewah, pakaian dan gaya hidup sang wanita yang terkesan wah... membuat kita semua berpikir, apakah semua itu adalah hasil nyata sebuah gaya hidup konsumtif dan jauh dari hemat?

Sekalipun kasus tersebut masih berada pada jalur penyelidikan, kita tentu berharap bahwa kasus tersebut menjadi pelajaran bagi kita semua agar terhindar dari hal-hal serupa. Bila Anda telah bekerja dan mendapat penghasilan, apa saja tips yang bisa Anda pakai agar terhindar dari kegiatan ilegal karena tidak bisa menghemat pengeluaran?

1. Gunakan Uang Cash Saat Berbelanja

Tidak bijak menggunakan kartu kredit jika Anda hanya menggunakannya untuk berbelanja. Orang-orang yang menggunakan uang cash pada saat berbelanja akan lebih menghitung dan sayang pada uang tersebut pada saat membayar, karena mereka melihat sendiri uang tersebut berpindah tangan. Berbeda dengan kartu kredit atau ATM yang hanya tampak digesek padahal ada sejumlah angka besar yang hilang di sana.

2. Jangan Malu Untuk Negosiasi

Jangan malu untuk menawar beberapa barang yang tidak diberi label harga mati. Jika Anda ingin membeli beberapa peralatan elektronik, tunggulah dua hingga tiga bulan kemudian, maka harganya akan jauh lebih murah, dan bisa jadi keinginan Anda untuk membeli barang tersebut hilang sama sekali. Punya kupon belanja atau kartu diskon? Tidak perlu malu memanfaatkannya.

3. Beri Jeda Waktu

Selalu beri jeda waktu bila ingin membeli barang, karena seringkali Anda hanya 'ingin', bukan 'butuh' saat melihat barang tersebut dipajang pada etalase toko. Buat daftar belanja barang apa yang memang Anda butuhkan. Tutup mata Anda saat 'ingin' membeli sepatu, tas, atau perhiasan yang sebenarnya tidak Anda butuhkan. Segera tunda sehari, dua hari, hingga pada akhirnya keinginan memiliki barang tersebut tidak ada lagi.

4. Tabung Di Depan

Baru mendapat gaji? Jangan langsung Anda ambil dan dijadikan modal untuk bersenang-senang dan ditabung bila ada sisa. Mulai saat ini, tabung terlebih dahulu gaji Anda. Misalnya gaji Anda Rp. 4.000.000, maka Anda akan berpikir "Ah, uang saya ada empat juta rupiah, nanti aku belikan ini, itu dan sebagainya," Bila Anda menabung 50% saja, maka Anda tidak akan melihat nilai yang utuh, "Wah, uang yang saya pegang hanya dua juta rupiah, harus pintar-pintar mengolahnya,"

5. Hati-Hati Belanja Online

Banyak website yang menawarkan berbagai barang menarik, bahkan apa yang mereka tawarkan jauh lebih menggiurkan daripada apa yang dijual oleh toko. Lebih mudah bagi Anda untuk menekan tombol 'Pesan Sekarang' daripada pertimbangan saat Anda melihat produk tersebut di toko. Kembali pada tips pada poin ke 3. Pertimbangkan juga untuk mencari selisih harga pada satu toko online dan toko nyata. Perhitungkan juga tambahan ongkos kirim yang harus Anda tanggung hingga barang tersebut sampai ke tangan Anda.

Dengan membiasakan diri mengatur keuangan dengan baik, maka kebiasaan-kebiasaan kecil di atas akan membuat Anda terbiasa untuk menahan keinginan budaya hidup konsumtif. Daripada membuang untuk sesuatu yang tidak Anda butuhkan, akan lebih bijak jika uang yang Anda miliki Anda tabung, ikut asuransi atau bisa juga Anda putar dengan menjadi wirausaha. Sekecil apapun usaha hemat yang Anda lakukan, ini akan menjaga Anda dari perilaku konsumtif.

2 Apr 2011

PENGOLAHAN CITRA DIGITAL

    Aplikasi pengolahan citra digital terdiri dari :
1.  Pengolahan citra dalam dunia perfilman
Dalam dunia perfilman pengolahan citra dimanfaatkan untuk menghaluskan gambar, menajamkan gambar, member efek terang dan gelap, member kesan timbul,memberi efek morphing dan lain-lain. 
2.  Pengolahan citra dalam dunia fotografi
Dalam dunia fotografi pengolahan citra digunakan sebagai pengganti kamera filter. Filter kamera digunakan untuk membuat film hitam putih, memberi efek berkabut, member cahaya pada bagian tertentu pada foto, menghilangkan noise dan lain-lain.
3.  Pengolahan citra dalam dunia kedokteran
Dalam dunia kedokteran pengolahan citra biasa digunakan untuk memperjelas hasil x-ray organ tubuh manusia, pengolahan citra hasil CT scan dan lain-lain.
4.  Pengolahan citra dalam dunia komunikasi
Dalam bidang ini, pengolahan citra digunakan untuk memperjelas foto permukaan bumi yang dihasilkan dari satelit cuaca atau memperjelas foto planet-planet yang dihasilkan dari satelit penyelidik.
5.  Pengolahan citra dalam keamanan data dan proteksi hak cipta
Sering kali data yang dikirim dari suatu tempat ke tempat yang lain merupakan data rahasia sehingga keamanannya perlu dijamin. Teknik keamanan data dan proteksi hak cipta yang biasa digunakan adalah Steganografi dan Watermark.
6.  Pengolahan citra dalam pengenalan pola
Pengolahan citra yang termasuk dalam bidang ini adalah pengenalan pola huruf, pola wajah, pola sidik jari, pola iris mata dan sebagainya. 
(Sutoyo.T, dkk. 2009. Teori Pengolahan Citra Digital. CV. Andi OffSet : Yogyakarta)

Puasa-KU

Puasaku...
Hanya ENGKAU yang tahu
Bahkan....
Aku pun tak begitu tahu
Apakah aku sedang berpuasa
Atau sekedar lapar dan dahaga
Aku cuma ingin belajar
Mengikhlaskan seluruh perbuatanku
hanya untukMU
Meskipun kalimat itu terasa lucu karena..
ENGKAU memang tak butuh sesuatu

1 Apr 2011

YA RABBII

Ya Rabbi...wahai tuhanku
Sekiranya semua penduduk bumi ini
Seluruhnya membenciku
Biarlah aku tak peduli
Asalkan ENGKAU tetap mencintaiku
Ya Rabbi...wahai tuhanku
Seandainya aku menyembahMU
Karena takut akan nerakaMU
Atau berharap akan surgaMU
Masukkan aku ke neraka sekarang juga
Namun jika aku beribadah padaMU
Karena berharap akan cintaMU
Jangan ENGKAU halangi aku
Untuk menikmati surgaMU