Rabu, 14 Desember 2011

Membuat Foto Vintage (Antik) pada foto Ayu Ting Ting hanya dengan Curves

Foto Vintages adalah foto yang kelihatan antik atau foto jadul.. dulu saya sudah pernah posting cara membuat foto jadul .. cara pembuatan foto vintage atau antik yang ini beda dan gampang banget..Hanya mengandalkan keajaiban CURVES foto vintage pun jadi.. mau bukti ?
Buka foto Ayu Ting Ting ( Neng Ayu Ting Ting ini siapa nya Malih Tong Tong yah ?? ) hehehe
ayu ting ting
saya ambil dari kapanlagi.com hehehe.. minta foto nya yaa ..
Duplikat layer background dengan menekan CTRL +  J ..

Sekarang Klik Add New Fill and Adjustment layer di Layer Palette.

Di Jendela Curves ada yang nama nya Channel.. dan ini fungsi nya untuk menyeting warna atau cahaya di sebuah foto..
Channel RGB = RED , Green , Blue..
nah kita setting deh si Channel tersebut..
Kita setting Channel Biru nya dulu ..

Sekarang kita setting Channel Green :

Sekarang Channel RED

Catatan : Kalo Kadung ke Klik OK , Klik aja 2x layer Curves di layer pallete nya ..
Pilih Layer Background Copy hasil Duplikat layer background tadi..
Klik Filter > Noise > Add Noise

Sekarang kita gunakan Efek Vignette atau membuat gelap di semua sisi foto.. kita gak perlu pake manual kalo udah pake CS 3 ke atas..
Kita pake Filter Lens Corrections..
Pilih Filter > Distort > Lens Corrections

Kalo sudah di setting Vignette nya  .. Klik OK
Hasilnya  :
ayu ting ting
Selamat Mencoba !!

Photoshop Untuk Usaha – Cara Menempelkan Baju hasil design ke model

Saya akan kasih contoh adobe photoshop yang digunakan untuk usaha… banyak banget jenis usaha yang melibatkan photoshop.. menurut saya sih, semua usaha butuh photoshop hehehehe.. contohnya: pembuatan brosur, Iklan di jalan-jalan, pembuatan packaging suatu produk, photography (jelas ini mah) dan lain-lain…
Ada request tentang bagaimana cara menempelkan baju jualan nya ke seorang model dan nanti bisa digunakan sebagai alat marketing supaya produknya lebih menarik. Ini biasanya untuk jualan di facebook nih hehehe.. karena saya udah kasih tutorial cara buatnya.. jangan nge-Wall atau promosi di facebook saya lagi yah… :D awass lho!
ya udah karena udah pada gak sabar, saya mulai deh.. ( udah jangan nyengir terus.. eeeh.. masih nyengir juga..kalo masih nyengir gak jadi nih buat tutorialnya…. ehh.. bandel yah.. udah.. mingkem ah.. ! :p)
Saya punya foto dapet dari google .. yang satu modelnya dan yang satu baju nya.. sekarang saya akan kasih tau cara nya supaya baju itu dipake sama si model.. sebenernya tutorial ini persis sama dengan yang tutorial foto cinta laura ..
buka kedua foto yang mau digabung

GUnakan magic wand tool untuk menyeleksi background putih nya…
Karena warna background putih atau sama warna nya.. maka gunakan magic wand tool. karena sekali KLIK aja semua bisa terseleksi.
TIPS : untuk memfoto produk, diwajibkan background berwarna polos yang kontras dengan produknya..

sekarang klik Select > Inverse untuk menyeleksi bagian Dress nya..

Drag gambar dress yang sudah di diseleksi ke dalam gambar modelnya.

Atur Dress nya supaya pas di badan si model.. bisa diputer, di besarin, dikecilin, pokoknya musti pas di badan.

Setelah kira-kira pas dibadan, pasti nanti ada bagian model yang nongol dikit-dikit.. kita liquify aja … udah pernah kan saya kasih tutorial tentang liquify di tutorial menguruskan badan

Pindahkan cursor ke layer background lalu Klik Filter > Liquify ( Photoshop CS 3 )

Hasil setelah liquify :

Tapi tangannya gak muncul.. mustinya posisi jari tangan berada di depan dress nya.. marilah kita Edit..!
Zoom daerah tangan.. tapi sebelumnya matikan dulu layer Dress nya.

Gunakan Pen tool untuk menyeleksi jari-jari tangan nya..

Kalo sudah terseleksi, Klik kanan di jendela gambar > Make selection

Klik Edit > copy, Lalu klik edit > paste .. nanti terbentuk layer baru.. nah.. si layer baru pindahin ke atas layer Dress ..

Nyalakan lagi layer Dress nya..

Kalo ternyata masih ada warna bawaan dari jari yang belum rapi, hapus pake eraser tool

Supaya lebih keliatan Real, beri bayangan di sekitar jari nya..
buat layer baru dibawah layer jari , lalu brush dengan warna hitam … atur-atur aja gimana cara nya supaya keliatan real..

Dan hasil akhirnya adalah :

Gampang kan yah.. ?
Selamat mencoba …

Mencari Faktorial Dari Data Yang Di Inputkan

Program ini adalah program dengan bahasa C++ untuk mencari nilai faktorial dari sebuah bilangan yang di inputkan. Nantinya user akan menginputkan suatu bilangan integer, kemudian program akan memproses inputan yang telah diberikan kemudian nantinya program akan menampilkan nilai faktorial dari bilangan yang telah di inputkan.
Mencari faktorial dari data yang di inputkan, adapun programnya :
#include
class factorial
{
private:
int fac;
int n;
public :
pembuka();
input();
faktorial();
output();
};
factorial::pembuka(){
cout << “===============================”<
cout << “Program untuk mencari faktorial”<
cout << “===============================”<
cout << endl;
cout << endl;}
factorial::input()
{
cout << “Masukkan nilai n = “; cin >> n;
}
factorial::faktorial()
{
fac=1;
for (int i=1;i<=n;i++){
fac*=i;}
}
factorial::output()
{
cout << “Faktorial dari “<<<” adalah “<<
}
int main()
{
factorial x;
x.pembuka();
x.input();
x.faktorial();
x.output();
return 0;
}

Kiat Sukses Belajar Pemrograman c++

Menurut Anda susahkan belajar bahasa pemrograman? Terutama bahasa pemrograman C++? Tentu ini menjadi pertenyaan tersendiri untuk Anda. Banyak orang yang belajar bahasa pemrograman C++, namun hanya beberapa yang sukses menaklukkan bahasa pemrograman yang satu ini. Yang lainnya kadang hanya menguasai dasar tanpa bisa terus berkembang. Menjadi seorang programmer tentu harus bisa menguasai minimal 1 atau 2 bahasa pemrograman. Apalagi C++ adalah bahasa pemrograman yang cukup diminati banyak orang di Indonesia. Tercatat setiap dosen Teknologi/Sistem Komputer pasti minimal bisa menguasai pemrograman C++. Lalu dari mana atau bagaimana mereka semua bisa menjadi programmer seperti itu? Mari kita temukan solusinya.

Awal saya kuliah mengenal yang namanya algoritma. Saya sangka algoritma itu adalah matematika karena sekilas katanya yang mirip dengan logaritma dalam matematika. Tapi ternyata tidak! Algoritma berbeda dengan Logaritma. Nah saya mempunyai beberapa tips yang mungkin berguna bagi kalian semua dalam mempelajari bahasa pemrograman, terutama C++. Berikut adalah kiat-kiat sukses belajar pemrograman C++:

  1. Sering-seringlah membaca modul atau buku panduan belajar pemrograman. Ini sangat penting untuk menambah wawasan Anda dalam teori ataupun materi. Bila perlu, tabung uang Anda dan beli satu buku bahasa pemrograman setiap awal bulan. Itulah yang saya lakukan selama ini. Walau tidak semua buku yang saya beli adalah bahasa pemrograman.
  2. Sering-seringlah melatih kemampuan Anda dalam menyelesaikan masalah algoritma pemrograman. Apabila kalian menemukan masalah, cobalah untuk menyelesaikannya kedalam pemrograman. Atau coba-cobalah untuk membuat program tertentu yang menurut kalian menarik. Atau kalian dapat membuat program dalam matematika, contohnya, program matriks dalam C++, atau rumus fisika lainnya.
  3. Practice make perfect! Slogan yang satu ini sangat ampuh dan berguna untuk menguasai pemrograman C++. Karena semakin sering kita latihan, semakin terasah kemampuan kita dalam menyelesaikan masalah. Semakin bertambah ilmu kita dalam membuat program.
  4. Jangan malu bertanya! Banyak para mahasiswa yang malu bertanya ketika sedang mengalami kesulitan dalam memecahkan algoritma pemrograman. Ketika menemui jalan buntu dan tidak bisa menyelesaikannya, biasanya kita menyerah dan pasrah. Ini adalah suatu sikap yang keliru! Sebisa mungkin, tanyakan pada dosen Anda atau pada kakak senior yang mungkin sudah mengetahui masalah Anda.
  5. Ketahui apa yang membuat program error atau perhatikan error handling. Ketika kita meng-compile syntax yang kita buat, terkadang muncul tanda compile gagal, ada syntax yang salah. Nah, disini dituntut ketelitian kita dalam memperbaiki syntax sehingga pada saat di-compile akan sukses. Semakin sering kalian mengalami syntax error, semakin terasah kemampuan kalian dalam memperbaiki program. Asalkan kalian mau berusaha agar tidak terjadi syntax error lagi, pasti kalian bisa. Jangan setiap menemui syntax error kalian langsung menyerah dan cuek.
  6. Kembangkan program yang sudah ada. Apabila kalian berhasil membuat beberapa program, coba kembangkan program tersebut. Misal kalian berhasil membuat 3 program, program luas segitiga, lingkaran, dan volume tabung. Kembangkan ketiga program tersebut menjadi satu program dalam bentuk menu pilihan. Dimana jika kita memilih tombol 1 maka kita akan menuju program luas segitiga dst sampai kita menekan tombol 4 yang artinya keluar dari program. Begitulah kira-kira.
  7. Luangkan waktu satu atau dua jam setiap harinya untuk praktek dan membaca. Lakukan ini diluar jam kampus. Dengan mengalokasikan waktu untuk belajar, maka kalian akan lebih cepat dalam memahami dan menguasai bahasa pemrograman.
Sekian tips yang dapat saya berikan. Semoga bermanfaat bagi Anda yang ingin mempelajari bahasa pemrograman dengan sukses. Salam dari IT Programmer.

Belajar Pemrograman c++

C++
pemprograman C++ adalah pemprogaman yang di turunkan dari pemprograman C
biasanya ada beberapa macam style dalam membuat program C++
dalam kamus data dan badan program diakhiri menggunakan ; pada setiap baris fungsi
badan program selalu dimulai dengan { dan diakhiri dengan }
untuk membuat baris baru dalam text menggunakan \n
untuk membuat comment satu baris menggunakan //(double slash) atau menggunakan /* untuk memulai comment dan */ untuk mengakhiri comment(biasanya dipakai untuk comment yang lebih dari satu baris)

struktur program c adalah sebagai berikut:

(header file)
header file adalah bentuk libraries untuk memanggil fungsi tertentu
contoh:
#include,
#include

(kamus data)
kamus data menentukan jenis fungsi yang akan di pakai
contoh:
int x; /*artinya fungsi x adalah integer(bil. bulat)*/
float y; /*artinya fingsi y adalah float(bil. real)*/

(badan program)
semua isi ada badan program ada di sini
awal badan program adalah:
int main () /* ini adalah menu utama badan program*/
{ /*ini adalah fungsi memulai program*/

//di bawah ini akan menjadi isi dari program

printf("Selamat Datang di DC"); /*fungsi printf akan menampilkan tulisan yang berada di dalam (" ")*/
//selalu ingat untuk menutup fungsi dengan ;
scanf("%i", &x); /* fungsi scanf akan menyimpan data yang di input oleh pengguna yang bersifat bil. bulat(i, untuk integer) pada fungsi x
printf("%i",x); /*pada funsi ini layar akan menampilkan hasil scan/input dalam fungsi x yang bersifat integer(i)*/

system("pause"); /*agar program tidak langsung menutup*/
return=0 /*untuk keluar dari program*/

} /*menandakan bahwa badan program berakhir*/

Jumat, 09 Desember 2011

17 Keajaiban Dunia yang Mengagumkan

17 Keajaiban Dunia yang Mengagumkan – Inilah informasi seputar keajaiban dunia yang mungkin tak banyak dari kita yang mengetahui serta mensyukuri warisan sejarah dunia yang masih tersisah untuk kita hingga saat ini. Keajaiban dunia yang mengaumkan ini merupakan warisan baik itu buatan manusia maupun karya alam yang tersaji begitu indah.
1.Banaue Rice Terraces di Filipina
1 17 Keajaiban Dunia yang Mengagumkan
Dari gambar ini kelihatan luar biasa, ya, sawah irigasi kuno yang berumur 2000 tahun. Terletak di gunung Ifugao Filipina, terkenal dengan sebutan Banaue Rice Terraces. Tidak muluk-muluk, tapi Filipina merasa cukup puas seandainya Banaue Rice Terraces ditempatkan sebagai “Keajaiban Dunia ke Delapan”.
Diperkirakan, sawah yang ‘diukir’ di gunung Ifugo ini, dibuat dengan peralatan yang sangat tradisional oleh nenek moyang bangsa Filipin. Sawah petak ini berada di 1.500 meter di atas permukaan laut dan mengelilingi lereng gunung sejauh 10.360 kilometer persegi.
Yang luar biasa, nenek moyang sudah mengatur sedemikian rupa pengairan sawah yang berasal dari hutan yang berada atas persawahan itu. Penduduk setempat sampai hari ini masih menanam pati juga sayuran di sawah itu.
Erosi, merupakan salah satu ancaman bagi keberadaan sawah kuno ini. Karenanya, pemerintah juga warga sekitar sangat peduli hal ini, perawatan serta rekonstruksi dilakukan terus menerus, untuk menjaga kelestariannya.

2.Sigiriya di Sri Langka
2 17 Keajaiban Dunia yang Mengagumkan
Ini adalah sisa-sisa peninggalan istana kuno yang terletak di atas bukit batu. Sigiriya atau Batu Singa, begitu sebutannya. Terletak di Matale District, Sri Lanka, dikelilingi hutan, waduk, juga kebun. Letaknya yang unik, ditambah dengan pemandangan menakjubkan, membuat Sigiriya banyak dikunjungi wisatawan. Melihat dari udara, Sigiriya seperti lukisan kuno yang mengingatkan orang pada Ajanta Caves di India.
Sigiriya dibangun pada masas pemerintahan Raja Kassapa I yang memerintah dari 477-495 AD. Tempat ini adalah satu dari tujuh peninggalan kuno yang dimiliki Sri Langka. Diduga, Sirigiya didiami sejak masa pra-sejarah. Lalu, pada abad ke-5 BC, tempat ini dipakai sebagai biara.

3. Tower of Hercules di Spanyol
3 17 Keajaiban Dunia yang Mengagumkan
Menara Hercules adalah mercu suar kuno peninggalan Romawi yang terletak di semenanjung, sekitar 2,4 kilometer (1,5 mil) dari pusat Corunna, Galicia, barat laut Spanyol. Nama Corunna berasal dari kolom kuno. Tinggi tower ini 55 meter menghadap pantai Atlantik Utara, Spanyol. Mercusuar Hercules berusia 1900 tahun, peninggalan Romawi yang masih beroperasi hingga kini Konon, usia tower ini sudah mencapai 1900 tahun, direhabilitasi tahun 1791. Ini adalah mercu suar peninggalan Romawi yang hingga kini masih difungsikan.

4. Toru, Kota Kuno di Polandia Utara yang Masih Eksis
Toru adalah kota di Polandia utara, persisnya di Vistula River. Ini adalah kota kuno yang telah ada sejak 1100 BC yang sampai sekarang masih eksis. Kota ini adalah kota kelahiran Nicolaus Copernicus (Seorang astronom, matematikawan, dan ekonom. Teorinya yang terkenal adalah matahari sebagai pusat Tata Surya, menjungkirbalikkan teori geosentris tradisional —yang menempatkan Bumi di pusat alam semesta— dianggap sebagai salah satu penemuan yang terpenting sepanjang masa, dan merupakan titik mula fundamental bagi astronomi modern dan sains modern.
3.2 17 Keajaiban Dunia yang Mengagumkan
Teori ini menimbulkan revolusi ilmiah) Torun kota kuno di Polandia masih eksis hingga kini. Diduga kota ini sudah ada tahun 1100 BC Toru menjadi cikal bakal pemukiman pertama di daerah itu, diperkirakan telah ada sejak 1100 BC. Kota itu berkembang pada abad pertengahan, yakni abad ke 7 hingga ke 13. Kemudian Kesatria Teutonic membangun benteng di sekitar pemukiman, antara tahun 1230-31. Pada 1263, biarawan Franciscan menetap di daerah itu mengikuti Dominika pada 1239.
Kota ini semakin berkembang dengan dibangunnya kota baru di dekat Toru. Kedua kota ini berkembang menjadi pusat perdagangan penting pada abad pertengahan.
Kalau anda melihat potret ini, sungguh menarik. Tempat ini sejak dulu hingga sekarang banyak dikunjungi. Kalau dulu karena menjadi kota dagang, sedang sekarang menjadi kota wisata yang sarat dengan sejarah masa lalu.

5.Ajanta Caves di India
Goa Ajanta di Maharashtra, salah satu dari banyak peninggalan kuno yang ada di India. Yang menakjubkan di goa ini banyak terdapat lukisan juga patung-patung Buddha bernilai seni tinggi. Diperkirakan, monumen-monumen yang ada dalam goa ini mulai digarap pada abad ke 2 BC.
5 17 Keajaiban Dunia yang Mengagumkan
Tapi goa di Ajanta ini kemudian ditinggalkan. Selama 1300 tahun goa ini terbengkalai, di bagian luar, belukar tumbuh tinggi, akhirnya menjadi hutan yang otomatis menyembunyikan keberadaan goa ini. Tidak ada yang pernah tahu bahwa di sana tersimpan ‘warisan dunia’ yang luar biasa. Sampai akhirnya pada musim semi tahun 1819 seorang perwira Inggris, tanpa sengaja memasuki ngarai yang curam.
Semakin dalam dia masuk ke sana, dan dia luar biasa kaget karena ia menemukan sebuah pintu tersembunyi di salah satu gua. Inilah kunjungan pertama manusia setelah ribuan tahun. Ketika ditemukan goa itu hanyalah ‘rumah’ burung dan kalelawar serta binatang lainnya. Kapten Smith kemudian melakukan eksplorasi pertama untuk mengetahui ‘isi’ dari goa misterius itu. Nama Kapten Smith ini diketahui, karena yang bersangkutan menuliskan namanya pada dinding goa dan tahun kedatangannya. Ia menulis, “Kapten Smith, April 1819”.

6. Lembah Bunga di Himalaya
Lembah Bunga adalah lembah yang berada di ketinggian Himalaya. Para pendaki juga ahli botani menggambarkan lembah itu luar biasa indah, sudah ada sejak lebih dari seabad lebih, bahkan dalam mitologi Hindu, penggambaran keberadaan lembah ini sudah ada sejak jaman dahulu kala.
6 17 Keajaiban Dunia yang Mengagumkan
Hamparan yang lembut, padang rumput di selingi bunga-bungaan warna warni, sangat indah dan nyaris menyesakkan nafas memandangnya. Lembah bunga yang indah semakin lengkap dengan adanya background gunung dan hutan. Lembah bunga ini dinyatakan taman nasional (Nanda Devi National Park) pada 1982. Masyarakat setempat mengetahui keberadaan lembah bunga ini, mereka meyakini bahwa tempat itu dihuni oleh kawanan peri.


7. Metéora, Bangunan di Puncak Gunung Batu Athos, Yunani
Lihat gambar-gambar ini, pasti anda takjub. Bagaimana bisa sebuah castile bisa berdiri di puncak gunung batu. Terbayangkan betapa sulitnya pembangunan castle ini, padahal usianya sudah ratusan tahun. Ini adalah kompleks biara-biara ortodoks Timur paling besar dan paling penting di Yunani. Persisnya, biara-biara ini dibangun di puncak gunung batu Athos.
7 17 Keajaiban Dunia yang Mengagumkan
Ada enam biara di kompleks ini. Persisnya berada di kawasan Thessaly, dekat sunagi Pineios, pinggir baratlaut Yunani Tengah.Yang cuku menarik adalah akses menuju biara yang sangat sulit. Konon, dulunya untuk mencapai biara digunakan tanggap panjang atau semacam jala yang dipakai untuk menaikkan dan menurunkan barang, termasuk manusia. Dibutuhkan kekuatan iman untuk bisa mencapai biara ini.


8.Chichen Itza
chichen itza 17 Keajaiban Dunia yang Mengagumkan
Merupakan peninggalan arkeologi suku Maya di Meksiko yang paling lengkap serta masih terawat dengan baik. Menurut buku budaya suku Maya dari Chilam Balam, kompleks candi ini dibangun antara tahun 502-522 Masehi. Suku Maya hanya menempatinya selama 200 tahun, kemudian mereka berpindah ke daerah pantai di Campeche. Itza merupakan titik sentral kompleks bangunan lainnya seperti Piramida Kukulcan, Candi Chac Mool, dan bangunan Seribu Tiang.

9. Colosseum Italia, Roma

colosseum 17 Keajaiban Dunia yang Mengagumkan
Adalah sebuah gedung pertunjukan yang besar/amphitheatre, terletak di Ibukota Negara Italia, Roma, bernama asli “Flavian Amphitheatre”, didirikan oleh Raja Vespasian dan terselesaikan oleh anaknya Titus. Ada yang berpendapat bahwa Colosseum dibuat pada tahun 79 SM. Asal nama Colosseum berasal dari sebuah patung setinggi 130 kaki atau 40 m yang bernama Colossus. Tempat ini di set untuk menampung 50.000 orang penonton.

10. Great Wall of China
great wall of china 17 Keajaiban Dunia yang Mengagumkan
Tembok Raksasa Cina atau Tembok Besar merupakan bangunan terpanjang yang pernah dibuat oleh manusia, terletak di Republik Rakyat Cina. Panjangnya adalah 6.400 kilometer (dari kawasan Sanhai Pass di timur hingga Lop Nur di sebelah barat) dan tingginya 8 meter dengan tujuan untuk mencegah serbuan bangsa Mongol dari Utara pada masa itu. Lebar bagian atasnya 5 m, sedangkan lebar bagian bawahnya 8 m. Setiap 180-270 m dibuat semacam menara pengintai. Tinggi menara pengintai tersebut 11-12 m. Untuk membuat tembok raksasa ini, diperlukan waktu ratusan tahun di zaman berbagai kaisar.

11. Machu Picchu di Peru

machu picchu 17 Keajaiban Dunia yang Mengagumkan
Machu Picchu (“Gunung Tua” dalam bahasa Quechua; sering juga disebut “Kota Inca yang hilang”) adalah sebuah lokasi reruntuhan Inca pra-Columbus yang terletak di wilayah pegunungan pada ketinggian sekitar 2.350 m. diatas permukaan laut. Berada di atas lembah Urubamba di Peru, sekitar 70 km barat laut Cusco. Merupakan simbol Kerajaan Inka yang paling terkenal. Dibangun pada sekitar tahun 1450, tetapi ditinggalkan seratus tahun kemudian, ketika bangsa Spanyol berhasil menaklukan Kerajaan Inka.

12. Petra di Yordania

petra 17 Keajaiban Dunia yang Mengagumkan
Adalah sebuah situs arkeologikal di Yordania, terletak di dataran rendah di antara gunung-gunung yang membentuk sayap timur Wadi Araba, lembah besar yang berawal dari Laut Mati sampai Teluk Aqaba. Petra adalah kota yang didirikan dengan memahat dinding-dinding batu di Yordania. Simbol teknik dan perlindungan. Kota ini didirikan dengan mengali dan mengukir cadas setinggi 40 meter. Petra merupakan ibukota kerajaan Nabatean. Didirikan pada 9SM-40M oleh Raja Aretas IV sebagai kita yang sulit untuk ditembus musuh dan aman dari bencana alam seperti badai pasir. Nabatean membangun Petra dengan sisitem pengairan yang luar biasa rumit. Terdapat terowongan air dan bilik air yang menyalurkan air bersih ke kota, sehingga mencegah banjirmedadak. Mereka juga memiliki teknologi hidrolik untuk mengangkat air.

13. Taj Mahal di Agra, India

taj mahal 17 Keajaiban Dunia yang Mengagumkan
Adalah sebuah monumen yang terletak di Agra, India. Dibangun atas keinginan Kaisar Mughal Shah Jahan, anak Jahangir, sebagai sebuah musoleum untuk istri Persianya, Arjumand Banu Begum, juga dikenal sebagai Mumtaz-ul-Zamani atau Mumtaz Mahal. Pembangunan menghabiskan waktu 23 tahun (1630-1653) dan merupakan sebuah adi karya dari arsitektur Mughal. Shah Jahan memerintahkan Ustad Ahmad membuat bangunan ini. Ustaz Ahmad mengumpulkan 20.000 orang pekerja yang terdiri dari tukang batu, tukang emas, dan pengukir yang termasyhur dari seluruh dunia. Dengan bumbung, kubah dan menara yang buat dari marmer putih, serta seni mozak yang indah. Sebanyak 43 jenis batu permata, termasuknya yaitu berlian, jed, kristal, topaz, dan nilam telah digunakan untuk memper indah Taj Mahal.

14. Giza Pyramid – Nekropolis Giza

giza pyramid 17 Keajaiban Dunia yang Mengagumkan
Adalah piramida tertua dan terbesar dari tiga piramida yang ada di Nekropolis Giza. Dibangun sebagai makam untuk firaun dinasti keempat Mesir, Khufu. Dibangun selama lebih dari 20 tahun dan diperkirakan berlangsung pada sekitar tahun 2560 SM. Tiga piramida yang lebih kecil untuk istri Khufu, dan sebuah piramida “satelit” yang lebih kecil lagi, berupa lintasan yang ditinggikan, dan makam-makam mastaba berukuran kecil di sekeliling piramida para bangsawan.


15. Acropolis of Athens – Athena

acropolis of athens 17 Keajaiban Dunia yang Mengagumkan
Acropolis adalah dataran tinggi berbatu setinggi 156 m, dan ada beberapa reruntuhan bangunan kuno yang dulunya adalah kuil yg menjadi pusat sejarah Athena. Mulai dibangun 1.300 tahun SM. Acropolis sebenarnya sebuah kota kecil yang permai, sampai kerajaan Persia menghancurkannya di tahun 480 SM. Setahun kemudian tentara Yunani mengalahkan Persia dan membangun ulang kuil-kuil itu. Antara tahun 467 sampai 404 SM, bangunan tersebut selesai dibangun. Pada tahun 1834 Athena menjadi ibukota Yunani, raja Otto menetapkan Acropolis sebagai bangunan arkeologi yang dilindungi. Tahun 1975 Acropolis direstorasi.

16. Alhambra – di Granada, Spanyol

alhambra 17 Keajaiban Dunia yang Mengagumkan
Adalah nama sebuah kompleks istana sekaligus benteng yang megah dari kekhalifahan bani ummayyah di Granada, Spanyol bagian selatan (dikenal dengan sebutan Al-Andalus ketika benteng ini didirikan), yang mencakup wilayah perbukitan di batas kota Granada. Istana ini dibangun sebagai tempat tinggal khalifah beserta para pembesarnya.

17. Christ The Redeemer
christ the redeemer 17 Keajaiban Dunia yang Mengagumkan
Atau Patung Kristus Penebus (bahasa Portugis: Cristo Redentor) adalah patung Yesus Kristus dengan gaya arsitektur Art Deco terbesar dan terdapat di Rio de Janeiro, Brasil. Patung memiliki tinggi 38 meter dan terletak di puncak dari Gunung Corcovado yang tingginya 710 m di Taman Nasional Hutan Tijuca, yang menghadap ke kota.
Itulah 17 Keajaiban dunia yang masih terjaga hingga kini. Semoga bisa menambah wawasan dan pengetahuan kita, wassalam.

Kamis, 24 November 2011

Open Source Programming dengan bahasa C/C++

Kali ini kita akan membahas tentang opensource
programming menggunakan bahasa
pemrograman C. Ini tentunya karena Linux
yang open-source sudah banyak menggunakan
C untuk membangun sistemnya. Tentunya jika
kita menggunakan C dalam program open kita,
maka itu akan disupport penuh oleh Linux
(*nix) dan team developernya. Oks.
Index
1. Overview
2. Membangun Open-Source Program
3. Build and run
4. Membuat Packet
5. Penutup
6. Referensi
1. Overview
Kali ini kita akan masuk ke pembahasan yang rupanya agak penting
bagi kita komunitas Linux-er dan sistem administrator. Hal ini tentunya karena
kadang kita membutuhkan program untuk membantu pekerjaan sehari-hari kita sbg
sistem administrator atau sekedar untuk coba-coba membuat tools kecil untuk
pentest. Yah, tentunya menggunakan bahasa C karena 'its powerful'.
C di Linux bagai keju dalam roti tawar, wew :o Sangat support satu
dengan yang lain. Lihat saja source linux di /usr/src/... . Semuanya dibangun
dengan bahasa pemrograman C. Nah, tentunya kalau kita sudah memahami cara kerja
C di LInux, kita juga bisa menggunakan source-source itu untuk kepentingan kita
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com
1
Lisensi Dokumen:
Copyright © 2003-2007 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan
secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus
atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap
dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin
terlebih dahulu dari IlmuKomputer.Com.
sendiri. Menggunakan source orang lain untuk memperkaya program buatan kita.
Bayangkan saja, banyaknya program yang dibuat untuk jalan di Linux, seperti
Nmap, OpenSSL, binutils, XMMS, MPlayer, dan koleksi program-program yang lain.
Semuanya itu dibuat dengan C. Dengan sources yang sudah ada itu, kita benarbenar
bisa membuat program baru yang lebih unik dan penuh fungsionalitas
tergantung keinginan kita.
Misalnya Clamav, salah satu antivirus yang jalan di Linux-like OS. Di dalamnya
ada banyak sekali library dan sources yang bisa kita gunakan ulang pada programprogram
kita. Seperti source untuk compressing file/direktori dan exstraksi.
Sources untuk meng-inspeksi berbagai tipe file seperti PDF, EXE, CHM, HTML, dan
lainnya. Tentunya semua itu bisa dengan lebih mudah kita lakukan jika kita
paham konsep dasa OpenSource Programming, sekarang dengan Linux.
2. Elemen Open-Source Program
Perlu sekali kita mengetahui lingkungan dan elemen-elemen yang akan
sering sekali kita temui pada programming open-source. Elemen-elemen di sini
adalah poin-poin seperti Source files, Include files, dan Makefile. Ketiganya
memiliki manajemen sendiri yang saling berhubungan sehingga program C kita
terbentuk.
======================
= Source Files =
======================
= Include Files =
======================
= Makefile =
======================
2.1 Source Files dan Include Files
Source program adalah file-file sumber dimana kita menuliskan program kita di
dalamnya. Perlu diketahui, Source File (SF) tidak harus ditulis semua pada
satu file. Nah, inilah yang disebut me-manage source file. Dengan memanage ini
lah kita bisa membuat program yang layak disebut sebagai opensource. Karena
orang lain yang membaca sourcenya dapat dengan mudah memahami jalannya program,
dan memodifikasinya. Untuk contoh arsitektur source file yang lumayan baik,
lihat contoh di bawah.
/* Program Virus Scanner */
VScan/
---------------------------
include/
vscan-conf.h
tipefile.c
tipefile.h
options.c
options.h
readdb.c
readdb.h
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com
2
scan.c
scan.h
---------------------------
vscan.c
Makefile
Sekilas melihat arsitektur di atas, terlihat sederhana. Menyederhanakan masalah
akan mempermudah menyusun logika. Begitu katanya. Pada susunan di atas, kita
mempunya file source utama (main) yaitu vscan.c. Kemudian, vscan.c ini sangat
tergantung (terikat) dengan file-file lain yang dibuat pada direktori include.
Fungsi-fungsi yang dijalankan oleh vscan.c telah dideklarasikan dan didefinisikan
pada file-file yang ada pada direktori include, baik file *.c maupun file *.h.
Apa yang perlu diperhatikan dengan file *.c dan *.h di dalam include directory.
Lihat schema di bawah :
include_file.h ----> menuliskan hanya prototipe-nya saja
----> prototipe = nama_fungsi(arguments);
----> (=deklarasi)
include_file.c ----> menulis kembali prototipe fungsi dan
kode lengkap pembentuknya
----> (=definisi)
Uah, belum ngantuk kan! File *.h hanya berisi deklarasi fungsi dan macro define
yang dibutuhkan. Lihat contoh di bawah untuk file scan.h dan scan.h .
/* File scan.h akan berisi macro define dan nama_fungsi(argumen) saja */
#include "vscan-conf.h"
#define RECURSIVE_DIRECTORY 100
#define FILETYPE_ONE 0x1
#define FILETYPE_TWO 0x2
#define FILETYPE_THREE 0x3
#define FILETYPE_GABUNGAN 0x1 | 0x2 | 0x3
static int scandesc(int deskriptor, const char *opsi);
int scanfile(const char *namafile, const char *opsi);
int scandir(const char *namadir, int recursive, const char *opsi);
/* Selesai sudah untuk file scan.h */
/* File scan.c akan berisi program lengkap dari fungsi-fungsi yang */
/* sudah dideklarasikan sebelumnya, yaitu pada scan.h */
#include
#include
#include
#include
#include "tipefile.h"
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com
3
#include "options.h"
// masuk ke fungsi-fungsinya ya...
static int scandesc(int deskriptor, const char *opsi)
{
/* file ini akan men-scan deskriptor dari
file yang sudah dibuka sebelumnya
Deskriptor biasanya bertipe integer, biasa
dikasih nama desc, fd, sockfd, dll */
int i=0
while (!eof(deskriptor)) {
cari_virus(deskriptor);
}
/* Contoh scandesc selesai */
}
int scanfile(const char *namafile, const char *opsi)
{
int desc;
desc = open(namafile, O_RDONLY);
if(scandesc(desc, FILETYPE_GABUNGAN)) {
printf("Ada virus pada %s\n", namafile);
return (-3); //kenapa -3 ? bebas, bung!
}
return 0;
}
int scandir(const char *namadir, int recursive, const char *opsi)
{
struct dirent *dir;
dir = opendir("/etc");
while(readdir(dir)) {
if( scanfile(dir.f_name, opsi) == -3) {
printf("Direktori ga aman\n");
return (-5);
}
}
return 0;
}
/* Nah, selesai untuk scan.c */
Lihat pada dua file scan.h dan scan.c di atas. Bagaimana hubungan
antara keduanya. Coba dilihat-lihat dulu beberapa kali. Maka anda
bisa mengetahui apa bedanya sekarang. File .c berisi fungsi lengkap
yang kita inginkan untuk melakukan tugas-tugas yang diinginkan.
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com
4
Perlu diketahui, sebenarnya menulis program tanpa membuat file .h
boleh-boleh saja. Dan program pun masih bisa di-compile dan di-run.
Tetapi kayaknya kurang asyik dan menyalahi standar open-source C
programming ;p Masukkan saja semuannya ke file .c kemudian compile,
kompilasi pun selesai tanpa error. Tapi file ini akan jadi sangat
panjang dan susah untuk didebug. Kecuali memang program kita sangat
sangat sederhana atau kecil!
Apa isi main file .c , yang mana di atas kita beri nama vscan.c ?
File vscan.c adalah file utama, program yang akan kita jalankan
setelah selesai di-compile. Kita akan mengkompile file vscan.c
dan menghasilkan file program executable vscan. Secara manual ini
bisa dilakukan dengan menjalankan perintah seperti di bawah :
gcc -o vscan vscan.c -Iinclude/
Kurang lebih begitu. Coba saja, pasti error! Karena memang source
kita di atas tidak lengkap dan hanya contoh saja. Tapi jika program
kita lengkap, baris perintah di atas Insya Alloh berjalan normalnormal
saja. Tambahan -I akan memberi informasi ke
compiler gcc untuk mencari file-file include pada direktori include/
. Sedangkan -o akan memberikan keluaran program setelah dikompile,
yaitu vscan. Bebas kok, vscan bisa diganti dengan apapun, yang harus
benar adalah file sourcenya, yaitu vscan.c
2.2 Makefile
Makefile adalah file bantuan untuk melakukan instalasi program kita.
Instalasi untuk source packet kita terdiri dari :
- Compile : meng-compile file source
- Copy (install) : meng-copy file program ke direktori path Linux
(/usr/local/bin)
- Remove (uninstall) : meng-uninstall / menghapus file program dari direktori
path
- Clean : membersihkan file-file object dari source direktori
- All (optional) : melakukan compile, copy, dan clean pada satu perintah
make
Nah, kita akan membahas elemen-elemen yang berhubungan dengan
Makefile. Makefile sudah digunakan oleh Unix dan Linux sejak lama
untuk membantu instalasi program pada sistemnya. Karena program
buatan kita adalah berbasis source , bukan binary, maka harus
ada tahapan bernama Compile atau kompilasi. Tahap ini sama dengan
baris perintah yang sudah kita tulis di atas :
gcc -o nama_program nama_program.c -Iinclude
Tidak harus seperti di atas, tetapi sepertinya itu bentuk paling
sederhana. Bisa saja ditambah opsi seperti untuk load library
dengan opsi -l. Baris kompilasi ini tentunya akan
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com
5
kita masukkan, bersama baris-baris yang lainnya di dalam Makefile.
Sebenarnya untuk membuat Makefile sudah ada tool-tool bantuannya. Tetapi
agar lebih memahami konsep Makefile, lebih baik kita menuliskannya sendiri
dari awal. Tool yang biasa digunakan untuk membuat Makefile di Linux adalah
automake.
Di bawah ini adalah contoh Makefile berhubungan dengan program VScan
buatan kita di atas yang ditulis menggunakan editor biasa, misalkan vim, emacs,
atau editor lainnya.
>>>>>>>>>>>>>> contoh Makefile | baris ini jangan ditulis lho <<<<
vscan: vscan.c tipefile.o options.o readdb.o scan.o
gcc -o vscan vscan.c tipefile.o options.o readdb.o scan.o
tipefile.o:
gcc -c include/tipefile.c
options.o:
gcc -c include/options.c
readdb.o:
gcc -c include/readdb.c
scan.o:
gcc -c include/scan.c
install:
cp vscan /usr/local/bin
uninstall:
rm /usr/local/bin/vscan
clean:
rm *.o include/*.o
all:
make install
make clean
>>>>>>>>>>>>>>>> selesai sudah Makefile kita <<<<<<<<<<<<<<<<<<<<<<<
Simbol bukan ditulis seperti adanya, melainkan adalah tabulasi
yang ada di keyboard kita, di atas CapsLock. Jika baris tidak diberi
, maka proses make akan error!
Simpan file di atas dengan nama Makefile pada direktori utama dimana
terdapat main file.
3. Build and Run
Cara menggunakan file Makefile adalah dengan memanggil perintah 'make' pada
console (command prompt) dari direktori dimana padanya terdapat file Makefile.
Pada kasus kita, kita memanggil 'make' dari direktori VScan.
Jika kita sudah membuat sourcenya dengan benar dan disimpan pada
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com
6
direktori utama VScan dan include juga Makefile-nya, maka program
open-source kita sudah selesai. Untuk melakukan installasi seperti di bawah:
# make
# make install
# (tidak harus!) make clean
atau --------
# make all
Jika kita akan membuat paket program kita, gunakan tar dan bzip2
untuk mengkompress menjadi satu file saja. Jika dibutuhkan, tinggal
diekstrak lagi oleh pengguna.
4. Membuat Packet
Setelah kita selesai membuat source dan Makefile dan mencoba menginstallnya
pada sistem kita sendiri, maka sekarang saatnya membuatnya satu paket sendiri.
Tujuannya tentu agar bisa diupload dan digunakan oleh siapapun yang membutuhkannya.
Ikuti baris-baris berikut :
(Jika anda sedang berada di direktori VScan/
# cd .. (ini untuk keluar dari direktori utama)
# ls
VScan
# tar cvf vscan-0.1.tar VScan
# bzip2 vscan-0.1.tar
# ls
VScan vscan-0.1.tar.bz2
Nah, kita sudah memiliki paket lengkap program kita disimpan pada
file bernama vscan-0.1.tar.bz2.
5. Penutup
Ternyata membuat program open-source tidak sesulit yang kita bayangkan.
Yang perlu diperhatikan adalah pertama, logika atau konsep membuat program
yang akan kita terapkan selama membuat program. Ditambah banyak latihan,
maka insya Alloh kita akan lebih mudah dan terbiasa membuat tool dan programprogram
pada sistem Linux dan Linux-like buatan kita sendiri.
Insya Alloh pada kesempatan lain kita akan belajar membuat program open-source
secara live, dengan menggunakan library-library bawaan dan library milik tools
lain pada program kita.
6. Referensi
Schildt, Herbert. THE ANNOTATED ANSI C STANDARD. McGraw-Hill. 1990
Gkioulekas, Eleftherios. Developing Software with GNU,.University of Washington. 1999

Share

Twitter Delicious Facebook Digg Stumbleupon Favorites More