Rabu, 21 November 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 komputerjagatraya, 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 »

Kamis, 15 November 2012

Menu dTree,Membuat Arsip / Archive Blog Seperti Folder Windows Explorer

Membuat Archive Blog atau Menu Seperti dalam Bentuk Folder2 Windows Explorer [dTree]Baca artikel ini dengan teliti (termasuk curhat penulisnya pent-),hal ini supaya pembahasan trik ini dapat bekerja dan dijalankan dengan baik.Bismillah - hi,hello sobat blogger,seneng,gembira,sukacita (sama aja deng!),itulah sekelumit perasaan yang sekarang penulis sedang rasakan,kenapa? ada apa? Ya,karena sore
Read more »

Selasa, 13 November 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 »

Minggu, 11 November 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 »

Senin, 05 November 2012

Fanspage-Id [dot] Com - Your Social Media Network Stuff

Sebuah rekomendasi dan alternative terjitu dalam memasarkan produk yang anda miliki.Adalah Fanspage-id.Com,sebuah situs yang menawarkan berbagai rekomendasi menarik termasuk bagaimana memberikan solusi kepada anda dalam mempopulerkan / memasarkan sebuah produk.Katakanlah sebuah widget dari jejaring sosial yang dalam sekali klik,informasi yang ingin anda bagikan langsung dapat dilihat oleh semua
Read more »

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 komputerjagatraya\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 »