Wednesday, November 21, 2012

NewsBasket - Article Management System | Projek PKL

Nahh yang ini projek PKL (Praktek Kerja Lapangan) saya dan temen-temen kmaren. Kebetulan saya dan temen-temen PKL-nya di Beritasatu. Oyya mau tau siapa temen-temen saya tersebut? Mau tau kann? Ciyuss? Are you sure? wokwokwok, kami ber-4 gan!!! Kalo kata orang pas ngeliat kami lagi jalan bareng sih kami semua mirip-mirip kayak F4 (eF Sehhh....), personilnya ada saya sendiri aka Priawadi, Andre, Abdi dan Rahmad.

Nahh karena kami berempat, jadi jadi kami dikasih 2 butir projek (emang butiran debu?). Ada ImageBank dan NewsBasket, untuk ImageBank diakusisi sama tim Abdi dan Rahmad, sedangkan NewsBasket saya dan Andre. Sesuai dengan namanya, ImageBank projeknya untuk mengelola gambar-gambar sedangkan NewsBasket untuk mengelola berita-berita.

Untuk NewsBasket usernya dibagi menjadi 4 (Admin, Editor, Publisher, Reporter) :
- Admin : Sebagai level tertinggi dari sistem, memiliki semua hak akses pada sistem.
- Editor : Memiliki hak akses untuk insert, edit dan hapus artikel.
- Publisher : Hak akses untuk mem-publish, menambah dan mengedit artikel.
- Reporter : Hak akses hanya sebatas untuk mengelola artikel dari yang telah dia bikin (Menambah dan mengedit).

Tambahan fungsi :
- Retrieve Email
- Retrieve XML dari Wires
- Artikel tidak bisa diedit kalau ada user lain yang sedang mengedit artikel tersebut.
- Untuk hapus, sebenarnya gak dihapus dari database. Tapi cuman gak ditampilkan di aplikasi.
- Ada article version, jadi apabila user mengedit atau menambahkan kata-kata pada artikel akan ketahuan lewat article version plus siapa yang mengeditnya.
- dll dah, udah lama soalnya jadi lupa :p

Berikut screenshoot-nya :


Halaman Awal

Halaman Dashboard Admin

Halaman My Profile

Halaman Manage Article

Dashboard Publisher

Halaman Add New Article

Halaman Manage Article pada Publisher

Detail Article plus Article Version



Read More

e-MEL Aplikasi pembaca email | Implementasi POP3 & IMAP

Kalian tentu sudah tau OUTLOOK kan? Yaap bener! Itu aplikasi buat baca email kita, nahh disini saya mau sharing projek namanya e-MEL Aplikasi pembaca email aplikasi ini merupakan implementasi dari POP3 & IMAP yang sama digunakan untuk membuat aplikasi outlook. Pada aplikasi ini saya mencoba membaca email dari GMAIL (Google Mail) saya. Oyya projeknya menggunakan library Twitter Bootstrap.

Ehh kalian udah pada tau belum apa beda dari POP3 sama IMAP? Berikut sedikit ulasannya...


- POP3 (Post Office Protocol version 3) adalah protokol yang digunakan untuk mengambil surat elektronik (email) dari server email. Protokol POP3 dibuat karena desain dari sistem surat elektronik yang mengharuskan adanya server surat elektronik yang menampung surat eletronik untuk sementara sampai surat elektronik tersebut diambil oleh penerima yang berhak.

- IMAP (Internet Message Access Protocol) adalah protokol standar untuk mengakses/mengambil e-mail dari server. IMAP memungkinkan pengguna memilih pesan e-mail yang akan ia ambil, membuat folder di server, mencari pesan e-mail tertentu, bahkan menghapus pesan e-mail yang ada. Kemampuan ini jauh lebih baik daripada POP (Post Office Protocol) yang hanya memperbolehkan kita mengambil/download semua pesan yang ada tanpa kecuali.

Gimana udah jelas kan? Nahh karena denger-denger IMAP lebih bagus daripada POP3, mangkannya di projek ini saya pakai IMAP bukan POP3. Nahh kalau kalian mau make POP3 caranya gampang kok, cuman mengganti satu baris kodingan doang. Kodingannya dibawah :

// To connect to an IMAP server running on port 143 on the local machine,
$mbox = imap_open("{localhost:143}INBOX", "user_id", "password");
// To connect to a POP3 server on port 110 on the local server, use:                                $mbox = imap_open ("{localhost:110/pop3}INBOX", "user_id", "password");
// To connect to an SSL IMAP or POP3 server, add /ssl after the protocol
$mbox = imap_open ("{localhost:993/imap/ssl}INBOX", "user_id", "password");
// To connect to an SSL IMAP or POP3 server with a self-signed certificate,// add /ssl/novalidate-cert after the protocol specification:                                                           $mbox = imap_open ("{localhost:995/pop3/ssl/novalidate-cert}", "user_id", "password");
// To connect to an NNTP server on port 119 on the local server, use:                               $nntp = imap_open ("{localhost:119/nntp}comp.test", "", "");                                                  // To connect to a remote server replace "localhost" with the name or the                                 // IP address of the server you want to connect to.
Berikut screenshoot-nya :

Ada halaman ALL, UnRead sama Read
ALL       : Semua kotak masuk dari email
UnRead : Email yang belum dibaca
Read      : Email yang udah dibaca

Halaman INBOX (All)

Menggunakan libaray Twitter Bootstrap

Kotak masuk yang dibaca




Read More

Saturday, November 17, 2012

Jasa pembuatan blog toko online wordpress versi baru

toko online wordpress
Setelah sukses dengan blog toko online wordpress pada versi sebelumnya, rincian paket toko online, sebagai jasa pembuatan blog toko online yang berbasis wordpress dan blogspot, pada kesempatan ini kami ingin mengetengahkan kepada anda fitur terbaru dengan membuat toko online wordpress dengan beberapa penambahan fitur yang sangat mendukung dan memudahkan calon pembeli ketika berbelanja. fitur-fitur baru ini diantaranya:
  1. Penambahan Fitur Keranjang belanja atau Shopping Cart
  2. keranjang belanja toko online wordpress

  3. Penggunaan Overlay untuk Cart dan Formulir Pemesanan
  4. Penambahan Fitur Badge Unik pada produk Produk seperti: Sale!, Best Sellers dan Limited Edition)


  5. Penambahan Fitur Stock/Ketersediaan Barang (Available/Sold Out)


  6. Kolom Best Seller (terlaris) bisa diganti dengan iklan banner 160x600
  7. Slider produk yang dikolaborasikan dengan gambar banner.
  8. Penambahan Fitur Facebook Comment
  9. dll.
Seperti pada paket toko online Kangroes sebelumnya, anda akan tetap mendapatkan fasilitas dan fitur diantaranya:
  • Domain dan Hosting berbayar (domain .com, .net, .info, .biz) dan hosting 100Mb dengan bandwith Unlimited.
  • Free desain banner Header yang disesuaikan dengan produk yang anda jual.
  • Form order
  • Yahoo messengger
  • Halaman blog artikel (untuk keperluan SEO artikel)
  • Product slider image
  • Custom background image (bisa gonta ganti background dan warna halaman utama)
  • Dropdown menu
  • Facebook like box (bagi yang sudah memiliki halaman facebook)
  • Banner pembayaran dan pengiriman
  • SEO Template
  • dan yang penting: anda akan mendapatkan Tutorial cara maintenance dan update toko online dengan sangat mudah. Untuk pemula atau newbie tidak perlu khawatir karena blog toko online sudah disetting secara otomatis sehingga mudah dipelajari.
Bagaimana Minat dengan fitur toko online wordpress terbaru ini? silahkan kontak kami untuk pemesanan dan pertanyaan lainnya melalui:
SMS: 085715950615, 088211457172 (Mohon Info dulu bila mau telp)
Email: buatblog89@yahoo.co.id
YM:
pin BB: 3145DBEC
Read More

Tuesday, November 13, 2012

Beberapa Tools/SDK/Engine Untuk Pengembangan Aplikasi Augmented Reality


Mau share Beberapa Tools/SDK/Engine Untuk Pengembangan Aplikasi Augmented Reality. Barangkali teman-teman ada yang berminat untuk membuat aplikasi Augmented Reality, langsung cek aja linknya :

Berbasis Marker & Gambar :
ARToolKit (http://www.hitl.washington.edu/artoolkit/)
FLARToolKit (http://www.libspark.org/wiki/saqoosha/FLARToolKit/en)
FLARManager (http://words.transmote.com/wp/flarmanager/)
SLARToolKit (http://slartoolkit.codeplex.com/)
NyARToolKit (http://nyatla.jp/nyartoolkit/wp/)
D'Fusion Studio (http://www.t-immersion.com/products/dfusion-suite/dfusion-studio)
metaio Unifeye Design (http://www.metaio.com/software/design/)
IN2AR (http://in2ar.com/)
ATOMIC Authoring Tool (http://www.sologicolibre.org/projects/atomic/en/index.php)
OpenSpace3D (http://www.openspace3d.com/)
Junaio (http://www.junaio.com/)
ARmedia Augmented Reality Plugin (http://www.inglobetechnologies.com/en/)
Aurasma (http://www.aurasma.com/)
AndAR (http://code.google.com/p/andar/)
ArUco (http://www.uco.es/investiga/grupos/ava/node/26)
BazAR (http://cvlab.epfl.ch/software/bazar/index.php)
DroidAR (http://code.google.com/p/droidar/)
flare*tracker (http://www.imagination.at/en/?Products:Augmented_Reality_for_Flash:flare%2Atracker)
flare*nft (http://www.imagination.at/en/?Products:Augmented_Reality_for_Flash:flare%2Anft)
Goblin XNA (http://goblinxna.codeplex.com/)
instantreality (http://www.instantreality.org/)
iPhone ARKit (http://www.iphonear.org/)
LinceoVR (http://linceovr.seac02.it/)
Eligo (http://eligo.seac02.it/)
Minerva (http://sourceforge.net/projects/minervaproject/)
MXRToolkit (http://mxrtoolkit.sourceforge.net/)
Popcode (http://www.popcode.info/)
PTAM (http://www.robots.ox.ac.uk/~gk/PTAM/)
Qoncept AR (http://www.kudan.eu/)
Robocortex (http://www.robocortex.com/)
SSTT (http://technotecture.com/augmentedreality)
String (http://www.poweredbystring.com/)
osgART (http://osgart.org/wiki/index.php/Main_Page)
Studierstube (http://studierstube.icg.tugraz.at/main.php)
Vuforia AR (https://developer.qualcomm.com/develop/mobile-technologies/augmented-reality)
Win AR (http://r2m.nus.edu.sg/cos/o.x?c=/r2m/license_product&ptid=5730&func=viewProd&pid=22)
windage (http://code.google.com/p/windage/)
YVision (http://www.yvision.com/)
ALVAR (www.vtt.fi/multimedia/alvar.html)
Layar (http://www.layar.com/)
SATCH (https://satch.jp/en/)
buildAR (https://buildar.com/)
onvert (http://onvert.com/)
Serge (http://www.sergesdk.com)
ARmsk (http://armsk.org/)
ARLab Image Matching (http://www.arlab.com/imagematching)
Designer's AR Toolkit (http://ael.gatech.edu/lab/research/design/dart/)
Obvious Engine (http://obviousengine.com/)
PointCloud (http://pointcloud.io/)


Berbasis Lokasi :
Layar (http://www.layar.com/)
Wikitude (http://www.wikitude.com/en/)
Junaio (http://www.junaio.com/)
Aurasma (http://www.aurasma.com/)
3DAR (http://3dar.us/)
DroidAR (http://code.google.com/p/droidar/)
instantreality (http://www.instantreality.org/)
KHARMA (https://research.cc.gatech.edu/kharma/)
mixare (http://www.mixare.org/)
LibreGeoSocial (http://www.libregeosocial.org/)
buildAR (https://buildar.com/)
Look! AR (http://www.lookar.net/)
ARLab AR Browser (http://www.arlab.com/arbrowser)


Berbasis Face Tracking :
Viewdle (http://viewdle.com/index.html)
Beyond Reality Face (http://www.beyond-reality-face.com/)
metaio Unifeye Design (http://www.metaio.com/software/design/)
instantreality (http://www.instantreality.org/)
Luxand FaceSDK (http://www.luxand.com/)
SHORE (http://www.iis.fraunhofer.de/en/bf/bsy/produkte/shore/)
Motion Nexus (http://motionnexus.com/)


Berbasis Skeleton Tracking :
Kinect for Windows SDK (http://www.microsoft.com/en-us/kinectforwindows/develop/)
PrimeSense OpenNI/NITE (http://www.primesense.com/en/openni)
AIRKinect (http://www.as3nui.com/air-kinect/)
OpenSpace3D (http://www.openspace3d.com/)
Motion Nexus (http://motionnexus.com/)


Read More

Sunday, November 11, 2012

Penyebab Force Close pada Android



Bagi kamu para developer Android pasti sudah familiar dengan namanya Force Close. Terkadang kita bingung padahal tidak ada error pada kodingan tapi setelah di Running kok malah muncul tulisan Force Close?

Nahh berikut ada beberapa penyebab aplikasi Force Close :
  1. Belum menambahkan user permission di manifest
  2. Belum mendaftarkan activity class di manifest
  3. Kesalahan pengaturan fill_parent atau wrap_content pada layout
  4. Aplikasi terlalu lama loading
  5. Salah tipe casting untuk findViewById() saat mereference ui widget
  6. Lupa menambahkan show() pada toast
  7. Tidak melakukan clean project setelah debbuging di xml
  8. Isi database tidak muncul karena memory yang kurang
  9. Terlalu banyak inner layout yang menyebabkan recursive
  10. Kesalahan pada coloum _id untuk dbase adapter
  11. Belum menambahkan android:id="@id/android:list" pada listView tag di xml layout jika Activity menggunakan extend ListActivity
  12. Pengaturan warna di Android adalah 32 ARGB integer value
Nahh sebelum kamu jadi panic at the disco coba cek dulu beberapa kesalahan diatas. Semoga bermanfaat :)



Read More

Monday, November 5, 2012

Simple Eye, Nose and Mouth Detection using OpenCV | Visual Studio

Setelah tadi kita membuat projek Simple Face Detection using OpenCV. Sekarang kita akan mencoba membuat projek Simple Eye, Nose and Mouth Detection using OpenCV | Visual Studio. Sebenarnya kodingan masih sama seperti projek tadi, kita tinggal mengganti pembacaan file XML-nya aja dengan memodifikasi sedikit kodingan.

Berikut tahapan-tahapannya :
1. Bagi kamu yang belum install OpenCV, ikutin step by step di postingan install OpenCV dengan Visual Studio disini. Saya sarankan menggunakan OpenCV 2.1.0 karena saya menggunakan yang itu. (Biar sama :p)

2. Setelah selesai meng-install dan setting Project Directories kamu tinggal copy-paste kodingan di bawah :


#include "stdafx.h"
#include "cv.h"
#include "highgui.h"

void detect_and_draw(IplImage* img)
{
        //inisialisasi
        CvHaarClassifierCascade *cascade=0;
        CvHaarClassifierCascade *cascade1=0;
CvHaarClassifierCascade *cascade2=0;
        CvMemStorage *storage=0;

        IplImage* gray = img;

        //baca file xml untuk image detection
        if(!cascade)
        {
//untuk deteksi hidung
                char * file = "C:/OpenCV2.1/data/haarcascades/haarcascade_mcs_nose.xml";
//untuk deteksi mata
                char * file1 = "C:/OpenCV2.1/data/haarcascades/haarcascade_eye.xml";
//untuk deteksi mulut
char * file2 = "C:/OpenCV2.1/data/haarcascades/haarcascade_mcs_mouth.xml";

                cascade = (CvHaarClassifierCascade*) cvLoad(file,0,0,0);
                cascade1 = (CvHaarClassifierCascade*) cvLoad(file1,0,0,0);
cascade2 = (CvHaarClassifierCascade*) cvLoad(file2,0,0,0);
                storage = cvCreateMemStorage(0);
        }

        //mendeteksi image hidung
        CvSeq* noses =
                cvHaarDetectObjects(
                gray,
                cascade,
                storage,
                1.1,
                3,
                CV_HAAR_DO_CANNY_PRUNING,
                cvSize(10,10));

        //mendeteksi image mata
        CvSeq* eyes =
                cvHaarDetectObjects(
                gray,
                cascade1,
                storage,
                1.1,
                3,
                CV_HAAR_DO_CANNY_PRUNING,
                cvSize(20,20));

        //mendeteksi image mulut
        CvSeq* mouth =
                cvHaarDetectObjects(
                gray,
                cascade2,
                storage,
                1.1,
                3,
                CV_HAAR_DO_CANNY_PRUNING,
                cvSize(10,10));

        int i;

        //menggambar kotak merah pada bagian hidung yang ditemukan
        for(i = 0; i < (noses ? noses->total : 0); i++)
        {
                CvRect* r = (CvRect*) cvGetSeqElem(noses, i);
                cvRectangle(
                        img,
                        cvPoint(r->x, r->y),
                        cvPoint(r->x + r->width, r->y + r->height),
                        CV_RGB(255,0,0),
                        1, 20, 0
                );
        }

        //menggambar kotak biru laut pada bagian mata yang ditemukan
        for(i = 0; i < (eyes ? eyes->total : 0); i++)
        {
                CvRect* r = (CvRect*) cvGetSeqElem(eyes, i);
                cvRectangle(
                        img,
                        cvPoint(r->x, r->y),
                        cvPoint(r->x + r->width, r->y + r->height),
                        CV_RGB(0,255,255),
                        1, 20, 0
                );
        }

//menggambar kotak putih pada bagian mulut yang ditemukan
        for(i = 0; i < (mouth ? mouth->total : 0); i++)
        {
                CvRect* r = (CvRect*) cvGetSeqElem(mouth, i);
                cvRectangle(
                        img,
                        cvPoint(r->x, r->y),
                        cvPoint(r->x + r->width, r->y + r->height),
                        CV_RGB(255,255,255),
                        1, 20, 0
                );
        }

        //menampilkan gambar hasil deteksi
        cvNamedWindow("hasil");
        cvShowImage("hasil", img);

        cvWaitKey(0);
}

int main(array<System::String ^> ^args)
{
    //load image asli
        const char* filename = "dank3.jpg";
        IplImage* img = cvLoadImage(filename);

        //pemanggilan fungsi untuk deteksi wajah
        detect_and_draw(img);
}


3. Untuk yang berwarna merah sesuaikan dengan nama file foto yang sudah kalian masukkan di dalam projeknya. Kalau saya file fotonya ada di C:\Users\Ozi Priawadi\Documents\Visual Studio 2012\Projects\FaceDetection\FaceDetection\dank3.jpg. Kalau yang berwarna biru sesuaikan dengan folder instalan OpenCV yang sudah kamu buat.

4. Setelah selesai coba klik RUN projeknya dan hasilnya kira-kira seperti ini





Read More

Simple Face Detection using OpenCV | Visual Studio

Hmm... Bingung mau nulis kata pengantarnya (:p). Langsung aja kali ya?? Hehe, kali ini saya mau sharing kodingan Simple Face Detection using OpenCV | Visual Studio. Nah lhoo apa itu OpenCV? Biar lebih jelasnya mengenai apa itu OpenCV kalian tinggal baca aja postingan saya sebelumnya tentang apa itu OpenCV disini. Nahh kalau mengenai projek yang bakalan kita bikin adalah sebuah projek sederhana untuk mendeteksi wajah dari foto yang sudah kita tentukan. Kenapa menggunakan OpenCV? Jawabannya simple, karena lebih mudah dan Open Source!! haha

Oke langsung saja ke tahapan membuat projeknya :
1. Bagi kamu yang belum install OpenCV kamu ikutin langkah-langkah pada postingan saya sebelumnya dan saya sarankan menggunakan OpenCV 2.1.0 karena saya menggunakan yang 2.1.0. Postingannya install OpenCV-nya disini. Untuk nama projeknya terserah kalian, tapi kalau saya namanya FaceDetection.

2. Setelah selesai meng-install dan setting Project Directories kamu tinggal copy-paste kodingan di bawah :

#include "stdafx.h"
#include "cv.h"
#include "highgui.h"

//fungsi deteksi wajah
void detect_and_draw(IplImage* img){
//inisialisasi
CvHaarClassifierCascade *cascade=0;
CvMemStorage *storage=0;

IplImage* gray=img;

//baca file xml u/ image detection
if(!cascade){
char * file="C:/OpenCV2.1/data/haarcascades/haarcascade_frontalface_alt.xml";
cascade=(CvHaarClassifierCascade*) cvLoad(file, 0, 0, 0);
storage=cvCreateMemStorage(0);
}

//deteksi wajah
CvSeq* faces=cvHaarDetectObjects(
gray, 
cascade,
storage,
1.1,
3,
CV_HAAR_DO_CANNY_PRUNING,
cvSize(10, 10));

int i;

//menggambar kotak merah pd bagian wajah yg ditemukan
for(i=0; i<(faces ? faces->total : 0) ; i++){
CvRect* r=(CvRect*) cvGetSeqElem(faces, i);
cvRectangle(img,
cvPoint(r->x, r->y),
cvPoint(r->x + r->width, r->y + r->height),
CV_RGB(255, 0, 0),
1, 8, 0
);
}

//menampilkan gambar hasil deteksi
cvNamedWindow("hasil");
cvShowImage("hasil", img);

cvWaitKey(0);
}

int main(array<System::String ^> ^args){
//load image asli
const char* filename="dank.jpg";
IplImage* img=cvLoadImage(filename);

//panggil fungsi
detect_and_draw(img);
}


3. Untuk yang berwarna merah sesuaikan dengan nama file foto yang sudah kalian masukkan di dalam projeknya. Kalau saya file fotonya ada di C:\Users\Ozi Priawadi\Documents\Visual Studio 2012\Projects\FaceDetection\FaceDetection\dank.jpg. Kalau yang berwarna biru sesuaikan dengan folder instalan OpenCV yang sudah kamu buat. 

4. Setelah selesai coba klik RUN projeknya dan hasilnya kira-kira seperti ini





Read More

Sunday, November 4, 2012

Download text to speech dialek bahasa Indonesia

Lagi-lagi nemu bahan yang bagus buat di share nih! Haha, gara-gara kmaren gak produktif (inet gak ada yang konek T.T) jadi malam ini nyari bahan buat di posting. Sekalian nyari bahan buat nyicil skripsi tentunya, walaupun gak tau juga mau nyari apaan! #lah?

Sebenarnya saya lagi nyari-nyari bahan buat Text to Speech sama Speech to Text bahasa Indonesia buat dijadiin Skripsi. Tapi gak tau deh gimana jadinya ntar, ngomporin temen-temen buat bantuin gak dapet-dapet. Hoho, ada yang mau bantuin saya?

Oke  balik lagi ke judul Download text to speech dialek bahasa Indonesia. Ini ada sebuah aplikasi yang bagus buatan anak Indonesia tentunya dan namanya IndoTTS. Program ini dibuat oleh Pak Arry Akhmad  Armand dengan menggunakan Diphone Indonesia. Tapi sayangnya, sepertinya aplikasi ini gak dikembangkan lagi. Tapi kalau mau SDK-nya bisa kontak-kontak beliau di aa@lss.ee.itb.ac.id atau aa_arman@rocketmail.com dengan menyebutkan nama, institusi dan alasan mau menggunakan SDK-nya.

Berikut link website dan link download softwarenya :
Link website : http://indotts.melsa.net.id/
Link download software : http://indotts.melsa.net.id/download/IndoTTSV0924.zip


Read More

Download database kata dasar bahasa indonesia

Lagi gak jelas nih dari kmaren pas selesai UTS gak tau apa yang mau dilakuin. Kerjaannya cuman tidur terus seharian! Ckck, gimana Indonesia mau maju kalo orangnya kayak gini semua :p. Ini juga ngenet dikampus dari tadi gak jelas mau ngapain, adohhh parah banget dah. Daripada ngenet tapi gak ada hasil mending update postingan blog barangkali berguna nantinya buat teman-teman dan kebetulan dapat bahan yang bagus buat di share.

Nahh kali ini saya mau share database kata dasar bahasa indonesia, barangkali berguna nantinya untuk mata kuliah Information Retrieval (IR) atau bahasa gaulnya Temu Kembali Informasi (TKI). Barangkali nanti ada tugas untuk stemming bahasa Indonesia. Nahh lhoo stemming itu apa? Stemming adalah proses mencari bentuk kata dasar sesuai aturan dan kaidah bahasa Indonesia yang baku. Proses stemming itu sendiri sangat bergantung pada kamus kata dasar yang dimiliki. Nahh disini saya ada 2 file, yang satu dalam bentuk .doc dan yang satu lagi sudah dalam bentuk .sql. Databasenya kira-kira ada 28.526 kata dasar.

Bagi yang mau, sok silahkan download dimari :
- Database kata dasar bahasa indonesia (.doc)
- Database kata dasar bahasa indonesia (.sql)

Source : http://liyantanto.wordpress.com/2010/12/06/kata-dasar-bahasa-indonesia/


Read More

Like Us

Designed By Seo Blogger Templates