Senin, 07 Desember 2009

Pengen kan punya toko online sendiri? Banyak keuntungan memiliki toko online dibandingkan toko offline, diantaranya tidak perlu beli / sewa tempat untuk toko, bisa langsung dari rumah, menghemat banyak biaya overhead. Walaupun kalau toko onlinenya sudah ramai, mungkin harus sewa tempat untuk gudang.
Cara lain kalau tidak mau menyetok barang, adalah ikutan affiliate marketing semacam ClickBank atau Commission Junction. Tapi dengan affiliate marketing kita harus pintar-pintar mempromosikan barang-barang produsen, entah dengan mempromosikannya di blog kita, atau menggunakan iklan semacam Google Adwords.


Nah, kemarin saya menemukan Zlio (sorry ya kalo yang udah tau), sebuah website yang menyediakan toko online untuk kita. Di Zlio kita juga tidak perlu menyetok barang, karena Zlio telah menyediakan jutaan barang yang bisa kita pajang di toko kita, yang disediakan oleh ratusan top merchant yang ada di internet.
Kalau ada pengunjung toko online kita yang beli barang, kita gak perlu pusing karena sang merchant yang akan mengurus semuanya, mulai dari transaksi sampai pengiriman barang dan layanan purna jualnya. Jadi semacam affiliate marketing, tapi semua barang yang dijual oleh para produsen yang ingin kita promosikan itu dikumpulkan di satu tempat berupa toko online. Best of all, GRATIS!!!
Komisi yang kita dapatkan besarnya up to 10%, dan kita dibayar via PayPal atau MoneyBookers.
Zlio betul-betul memudahkan kita untuk membuat toko online sendiri. Caranya:
  1. Daftar gratis di Zlio.
  2. Beri nama toko anda.
  3. Pilih template untuk toko anda.
  4. Pilih produk yang ingin anda jual.
  5. Promosikan toko anda.
Anda bisa membuat kategori dan sub-kategori untuk setiap produk yang ingin anda jual. Dalam 1 account Zlio, anda bisa membuat sampai 50 toko. Nantinya, alamat toko online anda adalah xxx.zlio.com. Anda boleh mengganti .zlio.com dengan domain lain pada saat anda membuat toko.
Nah, fitur lainnya yang juga asik, anda bisa menambahkan modul-modul ke dalam toko online anda, seperti:
  • Menggunakan domain milik anda sendiri untuk meningkatkan kredibilitas toko anda dan rating di Search Engine.
  • Mengintegrasikan Google Adsense ke toko online anda. Sebesar 60% dari penghasilan AdSense di toko anda adalah milik anda.
  • Membuat sitemap.
  • dan lain-lain, bisa anda lihat sendiri di bagian modul di setting toko anda
Pokoknya Zlio keren lah.aklo yang gak mau repot nyari web na bisa klik disini

Minggu, 06 Desember 2009

Tulisan ini dimaksudkan untuk memberikan pengetahuan awal pemrograman dengan bahasa Python. Di sini tidak akan dibahas secara ditel kemampuan-kemampuan yang dipunyai Python. Karena biasanya pembahasan ditel akan membawa kita pada uraian yang panjang lebar dan tidak langsung pada inti permasalahan. Silakan merujuk pada dokumentasi-dokumentasi tentang Python, yang bisa didapatkan dari situs resmi Python di www.python.org jika ingin mendapatkan dokumentasi lengkap. Beberapa tulisan yang membahas perbandingan Python dengan bahasa pemrograman yang lain juga banyak bertebaran di Internet, silakan mulai dari Google atau Yahoo!
Penjelasan yang mengikuti pendahuluan ini akan memberi pengetahuan pada pembaca bagaimana membuat program —yang terkadang disebut dengan skrip—dalam bahasa pemrograman Python . Pembaca akan mampu membuat program dalam bahasaPython yang sederhana setelah membaca tulisan ini secara lengkap. Mampu di sini berarti mengetahui dan bisa menggunakan sintaks-sintaks dasar yang dipakai dalam Python.
Tutorial ini dibuat sederhana dengan sebisa mungkin menghindari istilah-istilah yang sulit kecuali kalau memang tidak bisa dihindari lagi. Ini karena penulis mengharapkan pembaca yang tidak mempunyai latar belakang pemrograman pun bisa mengikuti tulisan ini.
Asumsi yang diambil oleh penulis adalah interpreter Python sudah terinstal dengan benar pada komputer Anda.

Memulai Python

Menggunakan Mode Interaktif

Anda dapat bekerja dengan Python secara interaktif dengan interpreter Python. Dalam mode interaktif kita dapat bekerja seperti saat kita bekerja dalam prompt sistem operasi. Interpreter Python bisa Anda aktifkan dengan memberi perintah pada prompt sistem operasi:
$ python 
Interpreter Python akan menampilkan
Python 1.5.2 (#1, Feb 1 2000, 16:32:16) [GCC egcs-2.91.66 19990314
+/Linux (egcs-on linux-i386
Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam
>>>
Tiga tanda lebih besar (>>>) adalah prompt utama Python. Untuk perintah yang masih berlanjut Python akan memberikan respon dengan tanda tiga titik (...).
>>> if 1:
...
Untuk keluar dari prompt Python menuju prompt sistem operasi Anda bisa menekan tombol yang menghasilkan karakter akhir file, Ctrl-Z (di DOS/Windows) atau Ctrl-D (di Unix).
Mode interaktif sangat bermanfaat untuk mencoba perintah-perintah Python sebelum membuat skrip. Dalam tulisan ini kita akan lebih banyak bekerja menggunakan skrip.

Menggunakan Skrip

Kalau Anda memakai mode interaktif saat membuat program, Anda tidak bisa menyimpannya ke dalam media penyimpanan. Untuk mengatasi ini Anda bisa membuat skrip dengan editor teks yang menghasilkan teks murni, misalnya Notepad atau vi. Aktifkan editor teks Anda dan ketikkan baris-baris perintah ini:
#! /usr/bin/python
print "Belajar Python..."
# akhir file
Beri nama skrip ini belajar.py. Skrip ini hanya akan mencetak string Belajar Python... ke layar. Untuk menjalankan skrip ini kita hanya perlu mengetikkan:
$ python belajar.py
pada prompt sistem operasi.
Baris pertama adalah khas untuk lingkungan Unix/Linux, yaitu diberikan jika skrip ini ingin dijalankan tanpa mengetikkan interpreter yang akan menerjemahkan skrip yang bersangkutan, tentu saja setelah mengubah hak akses dari skrip tersebut menjadi executable. Baris ini tidak akan berpengaruh di sistem operasi Windows. Di contoh-contoh skrip selanjutnya baris pertama akan dihapuskan untuk menghemat tempat.
Baris kedua berfungsi untuk mencetak string yang diapit tanda petik.
Baris ketiga adalah keterangan, atau komentar, yang tidak akan mempengaruhi jalannya program. Keterangan selalu diawali dengan tanda #. Jika interpreter menemukan tanda ini maka mulai tanda ini sampai akhir baris akan dianggap sebagai keterangan.

Variabel dan Operator

Membuat variabel dalam Python sangat sederhana. Anda hanya perlu mengisikan nilai pada sebuah variabel dengan tipe data yang Anda inginkan. Operator pengisian adalah tanda sama-dengan (=).
Variabel dalam Python sangat dinamis. Artinya:
  • variabel tidak perlu dideklarasikan mempunyai jenis data tertentu;
  • jenis data variabel dapat berubah saat program berjalan.

Bilangan

Python mengenal beberapa jenis bilangan yaitu bilangan bulat (integer), bilangan pecahan (floating point), dan bilangan kompleks. Bilangan kompleks bisa dituliskan dengan format (real+imajinerj) atau menggunakan fungsi complex(real, imajiner). Untuk jenis data bilangan yang lain tanpa dijelaskan sudah bisa dimengerti dari contoh berikut:
variabel_integer = 10
variabel_floating = 24.5
variabel_kompleks = 3+4j

print variabel_integer
print variabel_floating
print variabel_kompleks
Operator matematik berfungsi dengan normal di Python seperti dalam bahasa pemrograman yang lain. Ada beberapa catatan yang harus diperhatikan.
  • Operasi pengisian beberapa variabel dengan nilai yang sama dapat dilakukan sekali jalan.
  • Tanda () dipakai untuk mengelompokkan operasi yang harus dilakukan terlebih dahulu.
  • Pembagian bilangan integer dengan bilangan integer akan dibulatkan ke bawah.
  • Bilangan integer akan dikonversikan menjadi bilangan floating point dalam operasi yang melibatkan bilangan integer dan bilangan floating point.
  • Kita tidak dapat mengkonversikan bilangan kompleks ke bilangan real (floating point atau integer); hanya bilangan mutlaknya yang bisa kita dapatkan.
Contoh-contoh berikut akan memberikan gambaran pernyataan di atas.
a = b = c = d = 0
print 'a=>',a,'b=>',b,'c=>',c,'d=>',d

x = 30 - 10 / 2
print 'x=>',x

y = (30 - 10) / 2
print 'y=>',y

print '10 / 3 =',10 / 3
print '10 / 3.5 =',10 / 3.5
print '8 * 12.4 =',8 * 12.4
print 'abs(1+9j) =',abs(1+9j)

String

String dapat ditulis dengan tiga cara:
  1. diapit tanda petik tunggal;
  2. diapit tanda petik ganda;
  3. diapit tiga tanda petik tunggal atau tiga tanda petik ganda.
Cara yang dipakai harus disesuaikan dengan kebutuhan. Perhatikan contoh berikut:
print 'dibatasi tanda petik tunggal'
print "dibatasi tanda petik ganda"
print
print '"petik ganda" dalam petik tunggal'
print "'petik tunggal' dalam petik ganda"
print
print '\'petik tunggal\' dalam petik tunggal harus menggunakan karakter
+escape'
print "begitu juga \"petik ganda\" dalam petik ganda"
Dari contoh ini bisa dilihat bahwa kita tidak dapat mencetak tanda petik tunggal dalam string yang diapit dengan tanda petik tunggal juga. Begitu pula untuk tanda petik ganda. Tetapi kita dapat memakai apa yang disebut dengan karakter escape. Tanda ini memberitahukan pada interpreter bahwa karakter yang mengikutinya tidak diartikan sebagaimana lazimnya. Dalam contoh ini, tanda petik tidak diartikan sebagai batas string jika didahului dengan karakter escape.
Perhatikan juga contoh berikut:
print 'Baris kalimat ini akan nampak terlalu panjang jika \
dituliskan memanjang secara lengkap.'
print 'karakter escape diperlukan jika ingin mencetak dibaris\n baru'
print
print """String terformat dapat dicetak dengan diapit
"tiga" tanda petik tunggal maupun 'tiga' tanda petik ganda.
         Dengan tanda ini string akan dicetak seperti saat ia ditulis."""
Sehubungan dengan jenis data string ini terdapat operator khusus untuk string yaitu operator penggabungan (concatenation operator), yaitu +, dan operator perulangan, yaitu *.
stringA = "String A"
stringB = "String B"
print 'stringA+stringB =',stringA+stringB
print "'-'*20 =",'-'*20
Sifat lain yang dimiliki oleh string adalah bisa diambil sebagian dari karakter pembentuknya, karena string ini adalah array, atau deretan, karakter. Kita dapat mengambil sebagian karakter dari string ini dengan notasi slice. Namun karakter-karakter yang membentuk string ini tidak dapat diubah.
stringA = "String A"
print 'stringA[4] =',stringA[4]
print 'stringA[2:6] =',stringA[2:6]

List

List disebut array dalam bahasa pemrograman yang lain. List adalah jenis data campuran yang bisa memiliki komponen penyusun yang berbeda-beda. Sebuah list dapat dibuat dengan dengan menggunakan tanda kurung siku, [ ]. Anggota list didaftar dalam kurung siku tersebut dan masing-masing dipisahkan oleh tanda koma. Sifat-sifat list bisa didaftar seperti ini:
  • Komponen penyusunnya bisa diganti.
  • Komponen penyusunya dapat dibaca dan dimanipulasi secara langsung.
  • Komponen penyusunnya bisa ditambah.
  • Komponen penyusunnya dapat diambil dengan menunjukkan indeksnya atau dengan notasi slice.
  • Komponen penyusun sebuah list dapat juga berupa list yang lain.
Untuk lebih jelasnya bisa dicoba skrip berikut:
x = [1,2, 'tiga', 'empat']
print x

x[1] = x[1] + 2
print x

x[1] = 'dua'
print x

x = x + ['tambahan', 1]
print x

print 'x[2] =',x[2]
print 'x[1:4] =',x[1:4]

y = ['Salman', 'AS']
x[0] = y
print x

Dictionary

Berbeda dengan list yang memakai indeks angka untuk merujuk pada isi variabel, dictionary memakai key untuk merujuk pada isi variabelnya. Sifat kedua jenis data ini hanya berbeda dalam beberapa hal saja.
Untuk mendeklarasikan sebuah dictionary, Python memakai tanda { }.
d = {'nama':'Salman AS', 'nilai':3}
print d
print d['nama']
Untuk mengakses anggota suatu dictionary kita memakai lambang [ ] sebagaimana halnya list.
Dictionary bisa mempunyai anggota sebuah list, atau dictionary lagi.
d = {'nama':'Salman AS', 'nilai':3}
print d

nama_detail = {'depan':'Salman','tengah':'Agus','belakang':'Supriadi'}
print nama_detail

d['nama'] = nama_detail
print d

print d['nama']['depan']

nilai_detail = [3,4,2]
d['nilai'] = nilai_detail
print d

Tuple, Antara List dan String

Terdapat satu jenis data yang khas milik Python, yaitu tuple. Jenis data ini dideklarasikan dengan tanda ( ). Anggota-anggota tuple tidak bisa diganti dan dapat berupa bilangan atau string. Tuple dapat juga berisi tuple yang lain, dictionary, maupun list.
menu_file = ('New', 'Open')
print menu_file

menu_edit = ('Save', 'Save AS')

menu = (menu_file, menu_edit, 'exit', ['help'])
print menu
print menu[3][0]

menu_lain = (menu_file, menu_edit, 'exit', {'faq':'faq.html', 'manual':'man.html'})
print menu_lain

Perintah Kendali

Seleksi

Satu-satunya perintah seleksi dalam Python adalah if. Format umum perintah ini adalah:
if kondisi:
    perintah_jika_kondisi_benar
elif kondisi_lain:
    perintah_jika_kondisi_lain_benar
else:
    perintah_jika_tak_ada_kondisi_yang_benar
Kita dapat mencoba seleksi dengan if ini dalam modus interaktif Python. Aktifkan interpreter Python Anda dan ketikkan baris-baris perintah ini pada prompt Python.
>>> x = 4 
>>> if x<5: 
...     print "%d lebih kecil dari 5" % x 
... elif x==5: 
...     print "%d sama dengan 5" % x 
... else: 
...     print "%d lebih besar dari 5" 
4 lebih kecil dari 5
Untuk menguji kondisi kita dapat menggunakan operator ==, <, <=, >, >=, dan !=.
Sesuatu yang baru dan kita bisa perhatikan pada contoh di atas adalah cara penulisan blok-blok program. Dalam Python blok-blok perintah ditandai dengan penulisan kode program yang menjorok ke dalam. Setiap perintah yang mempunyai batas kiri yang sama dianggap sebagai satu blok. Sebisa mungkin Anda harus konsisten menggunakan karakter spasi atau karakter tabulasi untuk membuat indentasi. Jangan mencampur antara spasi dan tabulasi. Kesalahan yang sering terjadi dengan indentasi ini adalah terlihat dalam penampilan editor kita sudah lurus pada batas kiri tapi ada perbedaan dalam jumlah karakter tabulasi atau spasi.
Dalam perintah pencetakan ini kita menggunakan kode pemformatan %d. Kode ini akan diganti dengan variabel yang mengikuti string, yaitu x. Antara string dan variabel dipisahkan oleh tanda %. Jika ada beberapa variabel yang akan dicetak, seluruh variabel harus dimasukkan ke dalam tanda () dan antara satu variabel dengan yang lain dipisahkan dengan tanda koma (,). Mari kita coba dengan interpreter Python.
>>> x=4
>>> y=2
>>> print "x berisi %d, dan y sama dengan %d" % x,y
Traceback (innermost last):
File "<stdin>", line 1, in ?
TypeError: not enough arguments for format string
>>> print "x berisi %d, dan y sama dengan %d" % (x,y)
x berisi 4, dan y sama dengan 4
Sekarang kita terapkan seleksi ini dalam skrip yang akan memeriksa apakah suatu bilangan adalah bilangan bulat atau bukan.
x = input("Masukkan bilangan bulat:")
if x%2:
    print "%d adalah bilangan ganjil" % x
else:
    print "%d adalah bilangan genap" % x
Jika dijalankan, skrip ini akan menampilkan:
$ python ganjil.py
Masukkan bilangan bulat:13
13 adalah bilangan ganjil
$ python ganjil.py
Masukkan bilangan bulat:24
24 adalah bilangan genap
Kata kunci input() berfungsi untuk meminta input berupa bilangan. Bilangan ini disimpan dalam variabel x. Ekspresi x%2 akan menghasilkan 1 jika x ganjil dan 0 jika x bilangan genap. Oleh Python, 1 akan diartikan sebagai benar dan 0 akan diartikan salah.

Perulangan

Perulangan dengan kata kunci while mempunyai format umum sebagai berikut:
while kondisi:
    perintah_jika_kondisi_benar
else:
    perintah_lain
Perintah-perintah antara while dan else akan selalu dijalankan jika kondisi benar. Perintah-perintah di bawah else akan dijalankan jika perulangan selesai dengan normal. Yang dimaksud dengan normal di sini adalah proses perulangan tidak berhenti karena bertemu kata kunci break.
x = 1
while x<5:
    print x
    x = x + 1
else:
    print 'Loop sudah selesai dikerjakan!'
Jika skrip di atas ditambahkan suatu kondisi yang diikuti perintah break, maka blok perintah di bawah else tidak akan pernah dijalankan. Perhatikan perbedaannya dengan skrip berikut:
x = 1
while x<5:
    if x==3:
        break
    print x
    x = x + 1
else:
    print 'Loop sudah selesai dikerjakan!'
Perintah break menyebabkan dijalankannya perintah-perintah setelah blok while dan else ini.
Perintah perulangan selain while adalah for. Format dasar perulangan for adalah:
for variabel in objek:
    perintah-perintah
else:
    perintah_jika_tidak_bertemu_break
Langsung saja ke contoh penggunaan pernyataan for ini.
for x in range(1,5):
    print x
else:
    print 'Perulangan selesai'
Fungsi builtin range() dalam skrip ini menghasilkan bilangan 1 sampai 4. Hasilnya skrip akan mencetak bilangan dari 1 sampai 4 dan string Perulangan selesai.
Keistimewaan perulangan dengan for di Python adalah dapat memroses array. Seperti contoh di bawah ini:
y = [10,20,30,40,50,60,70,80,90]
for x in y:
    if x==50:
        continue
    if x>70:
        break
    print x
else:
    print 'Perulangan selesai'
Hasil yang akan didapat jika skrip ini dijalankan:
10 20 30 40 60 70
Pernyataan continue akan menyebabkan proses berlanjut ke awal perulangan dan melewatkan perintah-perintah yang ada di antara continue dan akhir blok perulangan.
Demikian akhir bagian pertama. Untuk mempelajari lebih jauh lagi tunggu bagian tutorial berikutnya.
Kreasiku, dibuat dengan GIMP
Kreasiku, dibuat dengan GIMP
Yah, apa itu GIMP ? GIMP adalah aplikasi opensource yang ditujukan untuk mengedit dan menapulasi gambar atau foto.  Nama GIMP diambil dari kata GNU Image Manipulation Program. GIMP bisa dijalankan di Linux, WIndows, Unix dan juga Mac OS X. Versi pertama Gimp ditulis oleh Peter Mattis dan Spencer Kimball. Dari masa ke masa GIMP mulai berkembang dengan banyaknya pihak yang mendukung dan berkontribusi untuk GIMP. Adapun GIMP yang dirilis akhir-akhir ini merupakan rancangan Sven Neumann dan Mitch Natterer serta orang-orang yang bergabung dalam GIMP-Team. GIMP bisa di download dari situs gimp.org
Hampir semua distro linux yang pernah saya coba, telah memasukan GIMP kedalam paket instalasinya. Sehingga ketika proses instalasi linux telah dilakukan, maka GIMP pun telah tersedia. Dibandingkan dengan program atau aplikasi desain grafis yang lain, GIMP tidak kalah hebat. Kesulitannya hanya terletak pada kebiasaan seseorang untuk belajar, mencoba dan memakai-nya.
Oh ya, GIMP juga didukung oleh banyak resource seperti tambahan plugin, brush, gradien dan lain-lain. Bahkan brush yang didesain untuk photoshop (format .abr) bisa dipakai di GIMP. Begitupun dengan tutorial-tutorial GIMP yang sekarang ini sudah banyak disediakan oleh ratusan website dan blog (silahkan lihat di allgraphicdesign.com atau situs sixrevisions.com). Untuk mencari brush GIMP silahkan jalan-jalan ke deviantart.com, disana ada ribuan member yang siap berbagi banyak hal tentang GIMP. Untuk Gradien, di situs gimp-tutorials.net disediakan Gradient Ultimate Web 2. Jika tidak mau repot-repot, ada beberapa resource GIMP berupa Gradien, Brush dan Plugin yang telah saya compress dan di upload ke situs mediafire.com, silahkan download disini !
Sekedar kabar yang kurang menyenangkan, katanya beberapa waktu yang akan datang GIMP akan dihapus dari CD Ubuntu. Ada beberapa alasan mengapa GIMP tidak akan diikut sertakan lagi diantaranya  GIMP kurang digunakan, besarnya paket GIMP yang memakan tempat di CD, aplikasi GIMP memakai banyak resource, dan lain-lain. Namun jangan khawatir, pihak pengembang Ubuntu sepertinya masih memiliki banyak opsi, silahkan intip di brainstorm.ubuntu.com
Berikut ini, sedikit kreasi wallpaper sederhana saya dengan GIMP, mohon maklum jika masih jelek, soalnya saya masih newbie dan baru belajar GIMP.




Zoho Writer
Zoho Writer Perangkat lunak pengolah kata (Bahasa Inggris: word processor) adalah suatu aplikasi komputer yang digunakan untuk memproduksi (termasuk penyusunan, penyuntingan, pemformatan, dan kadang pencetakan) segala jenis bahan tulisan yang dapat dicetak. Contoh perangkat lunak pengolah kata adalah Microsoft Word dan OpenOffice.org Writer. Di Linux, aplikasi pengolah kata yang sangat populer adalah openOffice (id.wikipedia.org). Aplikasi ini bersifat free dan opensource…
Lalu bagaimana jika kita berkeinginan mengolah file-file word secara online melalui browser ? Jawabannya adalah dengan menggunakan jasa pengolah Word Online. Berikut ini beberapa aplikasi Word Processor online yang layak di coba. Aplikasi ini adalah milik Google. Layanan mencakup pengolahan file word, spreadsheet, dan presentasi. Pengguna yang telah memiliki account di google, maka secara otomatis ia bisa menggunakan layanan ini. Google Docs memungkinkan pengguna untuk membuat dan mengedit dokumen online bersamaan dengan pengguna lain secara real-time.
The Zoho Office Suite is a Web- based online office suite containing word processing, spreadsheets, presentations, databases, note-taking, wikis, CRM, project management, invoicing and other applications developed by ZOHO Corporation (formally AdventNet Inc.), an Indian">The Zoho Office Suite adalah office suite Online berbasis web yang memberikan layanan pengolahan kata, spreadsheet, presentasi, database, catatan, wiki, CRM, manajemen proyek, faktur dan aplikasi lainnya yang dikembangkan oleh Zoho Corporation ( AdventNet Inc), sebuah Perusahaan dari India. Untuk menggunakannya, pengguna bisa memakai account-nya yang ada di google. ThinkFree Online adalah layanan online yang menyediakan aplikasi Write, Calc, Show dan Catatan dalam browser menggunakan campuran Java applet dan teknologi Ajax.Setiap user diberikan 1 GB ruang penyimpanan online untuk menyimpan dokumen. ThinkFree Online memungkinkan pengguna berkolaborasi pada dokumen dengan orang lain, mempublikasikan ke blog atau web. ThinkFree Online juga menyimpan history perubahan dokumen yang telah dibuat. Sekedar info, ada yang mengatakan layanan thinkfree bersifat trial, untuk memastikannya pengguna bisa registrasi dengan menggunakan account google yang dimiliki-nya.
http://etherpad.com/)adalah satu-satunya web berbasis pengolah kata yang memungkinkan orang untuk bekerja bersama dalam benar-benar real-time. Ketika banyak orang mengedit dokumen yang sama secara bersamaan, setiap perubahan akan segera tercermin pada setiap layar. Hasilnya adalah cara baru dan produktif untuk berkolaborasi pada dokumen teks, berguna untuk catatan rapat, penyusunan sesi, pendidikan, tim pemrograman, dan banyak lagi.Catatan : Beberapa aplikasi diatas ada yang bersifat free, namun tidak menutup kemungkinan ada juga yang trial dan berbayar. Penulis tidak sempat untuk menelusuri lebih lanjut.

Sabtu, 05 Desember 2009

Sebelum kita melangkah jauh untuk belajar afiliasi baiknya kita kenal dulu apa sih makhluk afiliasi tersebut ? mungkin sudah banyak yang tahu tentang afiliasi ini baik dari search bersama Om Google,Paman Yahoo ataupun Tante MSN. Semuanya mengarah pada satu kesimpulan ataupun kesepakatan bersama bahwa makhluk yang bernama Afiliasi tersebut adalah sebuah cara menghasilkan uang dari internet mau dibolak balik istilahnya maupun penjelasannnya ,mau pake cara singkat,panjang,lebar dsb dan dengan gaya berdiri,nungging maupun doggy style upss…..lho koq larinya kesana ??  :D jelas tujuan akhirnya adalah tetap dapat uang dari menjual barang orang terserah barang apa saja :D bahkan “barangnya anu” mungkin saja sudah ada yang di afiliasikan hahaha :D
Bisnis ini pada dasarnya merupakan model bisnis yang sangat lama, yakni membayar jasa seseorang hanya jika mereka berhasil menjual.
Bisnis Afiliasi termasuk sebuah bisnis besar. Diperkirakan bisnis ini bernilai sekitar 14 juta dollar setiap tahunnya.
Dalam Bisnis Afiliasi, kita dibayar kalau kita berhasil menjual produk/jasa seorang merchant atau afiliasi merchant.Merchant atau afiliasi merchant adalah orang atau perusahaan yang memiliki produk/jasa yang mereka pasarkan melalui internet.
Sementara orang-orang yang tidak memiliki produk/jasa untuk dijual, bisa membantu afiliasi merchant tersebut dalam menjualkan produknya. Untuk setiap produk yang terjual, mereka akan mendapatkan komisi.
Nah, orang-orang yang menghasilkan uang dengan cara tersebut di atas disebut ‘afiliasi marketers’ atau afiliator. Kadang-kadang mereka juga disebut ‘associates’ atau ‘program partners’.
Kalau kita mendaftarkan diri pada ‘afiliasi program’ milik afiliasi merchant, artinya kita mendaftarkan diri menjadi salah satu anggota jajaran sales online mereka.Kata lain bagi afiliasi program adalah ‘associate programs’, ‘bounty programs’, ‘referrer programs’, ‘partner programs’ atau ‘revenue sharing programs’. Semuanya sama saja! Hanya beda kata. Saya sendiri lebih senang menyebutnya ” program afiliasi ” karena ini istilah yang lebih umum digunakan para marketer.Okay, selanjutnya mari kita pelajari apa ‘ide’ di balik model bisnis afiliasi ini ?

Ide Di Balik Model Bisnis Afiliasi

Pernah nggak kita bekerja untuk seseorang atau perusahaan dan mendapatkan komisi? Bisnis afiliasi adalah model bisnis semacam itu.
Sebagai contoh, dulu waktu saya masih SD, karena sejak SD saya sudah harus menjalani kerasnya badai kehidupan saat seorang anak masih membutuhkan belaian seorang ibu namun kehendak Yang Kuasa menentukan lain , saya sudah merantau dari kampung halaman meninggalkan Bapak yang sudah ditinggalkan oleh Ibu saya karena sudah harus ke “Balikpapan” alias “Has Gone” :( . Dengan berat hati saya diajak Paman untuk sekolah di Makassar ,Nah di Makassar inilah “lives is begin” .Saya sudah harus bisa menafkahi diri sendiri mengingat Paman hanyalah seorang Honorer disebuah SD. Jadi untuk bisa Jajan saya harus mendapatkan sendiri. Alhamdulillah Allah Maha Adil dan sudah memberikan Rezki tersendiri bagiku, saya sekolah di sebuah Madrasah dimana ada pelajaran Bahasa Arab di kurikulumnya, Alhamdulillah saya sudah bisa mengaji dari kelas 1 dan bisa nulis bahasa Arab ,  diantara teman-teman banyak yang belum lancar bahasa arabnya dan setiap pelajaran selalu diharuskan menghafal doa dan hadist , agar mereka tidak di strap sama guru karena tidak bisa baca tulisan arab, maka jadilah saya menjual jasa dengan menuliskan bahasa arab itu ke dalam tulisan latin sehingga mereka bisa baca dan bebas dari hukuman berdiri didepan papan tulis sambil ankat 1 kaki :D :D , imbalan saya adalah semangkok bakso ataupun segelas Es cendol…duh koq jadi curhat neh :D
Kisah itu bukanlah contoh afiliasi tapi berupa jual jasa :D untuk contoh afiliasinya adalah silahkan simak kisah berikut ini…:D sekalian bermemori rialah :D
Saya pernah menjual manisan dan es lilin dipasar dan dirumah rumah . Saya berjalan kaki dari rumah ke rumah , berharap ada yang mau membeli Es dan manisan saya
Kalau saya berhasil menjual satu produk yang saya pasarkan, maka si pemilik (affiliate merchant) memberi saya persentase dari hasil penjualan. Dan tentu saja kalau saya tidak berhasil menjual, saya tidak dibayar…… nah kisah yang diatas adalah salah satu contoh bisnis afiliasi
Anda pernah juga diberi uang jasa karena berhasil mendapatkan orang yang bersedia melakukan transaksi bisnis dengan seseorang ?Kalau di dunia nyata biasanya hal ini kita kenal dengan istilah ‘calo’, ‘perantara’ atau ‘broker’.
Contoh lainnya, ada mobil yang akan dijual, kita bantu mencari orang yang ingin membeli mobil tersebut. Kalau kita berhasil mendapatkan orang yang mau membeli mobil tersebut, kita biasanya diberi komisi atas jasa kita mendapatkan orang yang mau membeli mobil tersebut.
Bisnis Afiliasi kurang lebih juga serupa dengan bisnis itu!.Ada banyak affiliate merchant yang bersedia membayar kalau kita berhasil mendapatkan calon pembeli yang memenuhi kualifikasi mereka. Dalam dunia internet marketing, calon pembeli ini biasa dikenal dengan sebutan “leads” atau “prospects”.

Kamis, 03 Desember 2009

Contoh program pada materi berikut dapat dijalankan dengan Borland C++ (turbo C++ juga boleh). Secara umum struktur program dalam C++ adalah sebagai berikut:
deklarasi header file/preprocessor
deklarasi konstanta
deklarasi var global
deklarasi fungsi
deklarasi class
program utama (fungsi utama)
main() {
……
……
}
Keterangan :
Deklarasi header file diawali dengan #include <.......> atau #include "........." Titik-titik diisi dengan nama
Header file yang ingin digunakan. Header file merupakan suatu fungsi yang mendukung eksekusi instruksi tertentu dalam C++
Deklarasi konstanta (bisa ada bisa tidak)
Deklarasi variabel global (bisa ada bisa tidak)
Deklarasi fungsi bisa ada bisa tidak. Fungsi juga dapat diletakkan seletah fungsi main().
Deklarasi class (bisa ada bisa tidak)
Fungsi utama, harus ada, diawali dengan { dan diakhiri dengan }. Didalamnya berisi instruksi-instruksi yang nantinya akan dieksekusi berikut deklarasi variabel (variabel lokal) yang diperlukan.

Beberapa header file yang sering digunakan :
iostream.h
Untuk instruksi:
cout<<”.....................”; cin>>nama_var;

conio.h
Untuk instruksi:
getch();
clrscr();

Instruksi untuk memindah cursor dibaris berikut:
”\n”
<&ltendl; Menuliskan komentar : // Jika komentar hanya satu baris /*.....*/ Sangat berguna jika komentar lebih dari satu baris. C++ bersifar case sensitive à membedakan huruf besar dan huruf kecil, sehingga: instruksi harus ditulis dalam huruf kecil Variabel yang ditulis dengan huruf kecil dan huruf besar berbeda. Contoh program : Contoh pertama berikut akan menampilkan teks Belajar C++ di layar.


//ini contoh pertama
#include "iostream.h"
#include "conio.h"
main() {
cout<<"Belajar C++"; getch(); }
//ini contoh kedua
#include "iostream.h"
#include "conio.h"
main() {
cout<<"Belajar C++";
cout<<"Media Belajar";
cout<<"Pemrograman Dasar";
getch(); }



Contoh kedua diatas akan menampilkan tulisan sesuai dengan yang diapit tanda petik dan ditampilkan dalam satu baris


Contoh ketiga berikut akan menampilkan tulisan sesuai dengan yang diapit tanda petik dan ditampilkan dalam tiga baris

//ini contoh ketiga
#include "iostream.h"
#include "conio.h"
main() {
cout<<"Belajar C++\n";
cout<<"Media Belajar\n";
cout<<"Pemrograman";
getch(); }


Contoh
keempat akan memberikan output sama dengan contoh tiga.
//ini contoh keempat
#include "iostream.h"
#include "conio.h"
main() {
cout<<"Belajar C++"<&ltendl;
cout<<"Media Belajar"<&ltendl;
cout<<"Pemrograman Dasar"<&ltendl;
getch(); }


Coba tebak...output dari contoh kelima berikut.

//ini contoh kelima
/* Pengggunaan \n
untuk mengatur tampilan */
#include "iostream.h"
#include "conio.h"
main() {
cout<<"Belajar\n C++\n";
cout<<"\nMedia Belajar";
cout<<"\nPemrograman\nDasar"; getch(); }
     

Pendahuluan
Pada proyek robot kali ini, penulis memaparkan cara membuat robot berkaki 6 (hexapod) menggunakan 3 buah sensor, yaitu 1 sensor  jarak SRF04 (Sonar Range Finder) dan 2 bh  Sharp GP2D12.  Dijamin dechhh penasaran dan  menarik untuk dicoba J.


Blok Rangkaian
Robot ini bergerak berdasarkan informasi dari ketiga sensor jarak. Robotini diharapkan dapat melakukaneksplorasike daerah yang dilaluinya, untuk memberikan informasi kepemiliknyamenggunakan kamera wireless misalnya, oleh karena itu robot ini dinamakan Explorer HexapodGambar di bawah ini menampilkan blok rangkaian yang akan dibuat:








                                                       Gambar 1.  Blok rangkaian robot Explorer Hexapod

Bahanbahan
Berikut ini ialah bahanbahan yang diperlukan, yang paling penting tentunya ialah kerangka dari kaki hexapod ini, yang dapat Anda buat sendiri atau membeli kit yang sudah jadi :
1.       2 buah servo motor HS311
2.       Body dan kaki hexapod
(Dapat membeli kit kaki hexapod lengkap dengan 2 bh servo HS311)
3.       Min. System  ATmega 8535, ATmega16 atau Atmega32
4.       Driver Motor DC 293D/ deKits SPC DC Motor
5.       1 sensor jarak  ultrasonic SRF 04 (jarak 3cm-3m)
6.       2 sensor jarak infrared SharpGP2D12(10cm -80cm)
7.       Tempat baterai 9V 2bh
Berikut ini ialah konstruksi dari kaki hexapod standar, yang digerakkan dari putaran motor servo continuous.  Servo ini dikendalikan dari port B.0-3  melalui Driver motor  yaitu kit DC motor Driver menggunakan IC L293D (dapat menggunakan juga kit dekits SPC DC Motor)  atau jika ingin lebih kuat lagi menggunakan IC H bridge  L298. Perlu diingat, kaki servo ini ada 3 pin, cukup gunakan 2 kaki yang menggerakan motor DC di dalam servo tersebut saja.








                            
                                                                      Gambar 2.  Susunan  sisi  kaki hexapod
Servo HS311 merupakan servo dengan torsi yang cukup besar untuk menggerakkan robot dengan beban maksimal 1.5kg.

Cara kerja
Pertama, kita lihat dulu bagian sensor.  Sensor SRF04 digunakan untuk mengetahui jarak depan Robot, apakah ada penghalang atau tidak, yang mampu mendeteksi jarak dari 3cm hingga  3 meter. Sensor ini bekerja berdasarkan prinsip gelombang ultrasonic. Pencari jarak ini bekerja dengan cara memancarkan pulsa suara dengan kecepatan suara (0.9 ft/milidetik) berfrekwensi 40 KHz.  Keluaran sensor ini dihubungkan ke Port C.0 dan Port C.1, dan dengan nilai trigger input sebesar 10 uS pada pulsa TTL.   Alasan mengapa digunakan sensor ini, ialah karena sensor  jarak ini paling banyak digunakan pada Kontes Robot Cerdas di Indonesia, sehingga pembaca pemula menjadi familiar. Anda dapat menambah sensor ini hingga 4 buah untuk digunakan pada  sisi kanan, kiri dan belakang robot biar lebih akurat.
                                                                      
                                                Gambar 3.  Susunan kaki SRF04

Sedangkan 2 sensor infrared GP2D12 di sisi samping kanan dan kiri dapat mengukur jarak sejauh 10cm-  80cm dengan output analog, sehingga dapat langsung dihubungkan ke port A.0 dan port A.1  dari mikrokontroler AVR tersebutKarakteristik dari sensor ini tidak linear, oleh karena itu idealnya perlu digunakan look up table untuk mengolah raw data dari sensor tersebut.
Hasil pembacaan sensor-sensor jarak ini diolah oleh mikrokontroler, untuk memutuskan gerakan yang akan dilakukan apakah maju, mundur atau belok. Dengan memutarnya servo, menyebabkan bagian kaki yang terhubung ke servo  bergerak bergantian sehingga robot dapat berjalan.  

Explorer.bas:
‘Program Demo Robot Explorer Hexapod
‘By Mr. Widodo Budiharto
‘Univ. de Bourgogne 2007
deklarasi fungsi dan variabel
Declare Sub Initialize_ultrasonic()
Declare Function Ultrasonic_depan() As Integer
Dim Jarakdepan As Integer
Dim Jaraksampingkanan As Word
Dim Jaraksampingkiri As Word
Dim W As Word
Config Portb = Output
Config Portd = Input
Config Portc = Output
Config Adc = Single , Prescaler = Auto , Reference = Avcc   'konfigurasi ADC
Start Adc
Call Initialize_ultrasonicpanggil fungsi
Do
baca SRF04 untuk jarak depan
Print "jarak sampingkiri" ; Jaraksampingkiri
‘Demo jika ada halangan, maka belok kiri
 If Jarakdepan > 40 Then
   Portb = 8                                   'maju
Wait 2 ‘delay
Else if jarak depan <40 and jaraksampingkanan >150 then
    Portb = 0     'belok kiri 
    Wait 2
End If
Loop
End
Function Ultrasonic_depan() As Integer
    …                                             ' set initial state pin trigger
    …                                  ' buat pulsa  5us @ 4 MHz
    …                 ' ukur return pulse
End Function
Sub Initialize_ultrasonic inisialisasi  sensor ultrasonik
  …
End Sub

Gambar berikut merupakan hasil yang sudah jadi yang dapat berjalan dengan cukup cepat dan kuat karena menggunakan servo torsi tinggi dari Hitec.

                   
               A.                                                        B.
                      Gambar 4. Robot in action a). Tampak samping     b). Tampak depan

Pengembangan Selanjutnya
Untuk keperluan riset atau hobi, Anda dapat menambahkan kemampuan Artificial Intelligent menggunakan Fuzzy Logic, Algoritma Genetic atau Neural Network, agar robot ini menjadi robot yang cerdasSilahkan baca artikel selanjutnya mengenai Neural Network  di majalah kesayangan Anda ini