Pages

Subscribe:

Ads 468x60px

Sabtu, 21 April 2012

Lab Internet Dasar


LABINTDAS (Laboratorium internet dasar) adalah salah satu lab dibawah naungan universitas gunadarma yang terletak di kampus D gedung 3 lantai 2  . LABINTDAS bertujuan agar mahasiswa dan mahasiswi universitas gunadarma khususnya tingkat 1 memiliki pengetahuan seputar dunia internet . karena di zaman modern saat ini internet sangat cepat perkembangannya . praktikum ini sama dengan praktikum lainnya yang sudah pernah saya lakukan seperti ILab, Latex, Fisika dasar ada laporan pendahuluan ada juga laporan akhir, namun laporan internet dasar ini paling mudah dibandingkan dari praktikum yang lainnya . LABINTDAS memiliki sarana dan prasarana yang kurang memadai . dari segi komputer yang lebih banyak yang tidak terkoneksi dengan internet daripada yang terhubung . semoga ditahun berikutnya dari pihak kampus atau siapa pun yang bersangkutan dapat meningkatkan sarana dan prasarana agar kegiatan praktikum dapat berjalan dengan optimal . namanya saja laboratorium internet dasar pasti memerlukan perangkat yang support untuk meningkatkan kualitas praktikum, seperti perangkat utama yakni computer yang seharusnya memenuhi standar pada zaman ini . saya yakin universitas gunadarma yang sudah world class mampu untuk meningkatkan LABINTDAS ini seperti lab yang lainnya, karena ada alasan tertentu peningkatan sarana dan prasarana belum terlaksanakan .

Saya awalnya mengira praktikum internet dasar ini hanya membuang waktu saja ternyata TIDAK banyak materi yang belum saya ketahui sebelumnya dan materi cakupan internet dasar ini sangatlah luas . Pada praktikum internet dasar kami anak 1KA18 dibimbing oleh tutor yang bernama Akhmad Fauzi . metode pengajaran dari kak Akhmad Fauzi tergolong baik karena pengajaran yang santai, enjoy, friendly membuat saya mudah untuk memahami materi yang diberikan . ada aspek yang mendorong praktikan untuk aktif yaitu poin +25 dan max, dengan ini praktikan menjadi semangat untuk mendapat poin itu caranya menjawab atau menjelaskan pertanyaan di depan kepada lainnya . pada hari pertama kak AkhmadFauzi menjelaskan selintas internet dari mulai ruang lingkup yang regional atau sempit sampai global atau luas . saya sangat bersemangat ketika dijelaskan tentang jaringan karena 3 atau 4 tahun ke depan saya akan berkecimpung ke dalam dunia jaringan, lebih tepatnya berkesempatan bekerja di perusahaan jaringan dibilangan cempaka putih amiin !  . ternyata dalam bahasan sistem jaringan itu sangatlah banyak dan luas ini mendorong saya untuk lebih banyak mempelajari tentang jaringan lebih dalam lagi . pada hari kedua kak Akhmad Fauzi menjelaskan tentang search engine dan blog disini di kupas tuntas masalah search engine dan blog terlebih lagi tips mencari informasi lebih cepat dan akurat menggunakan filetype, Boolean , tanda “ . dan menambah pengetahuan istilah – istilah seperti I’m feeling lucky , apa itu portal dan banyak lagi . pada hari ini lah saya berkesempatan untuk mendapatkan nilai max . pada akhirnya kak Akhmad Fauzi mengadakan quiz tapi berkelompok, sebenarnya penilaian dari quiz ini kurang obyektif karena tingkat kesulitan yang rendah dan ditentukan dengan angkat tangan saja . sebenarnya bukan kelompok terbawah itu tingkat pengetahuannya kalah dengan kelompok teratas tapi kuis ini ditentukan oleh kecepatan angkat tangan saja . seharusnya kelompok saya mendapatkan nilai max tetapi hanya +25 saja akibat dari penglihatan pengatur kuis yang terbatas . intinya bukan kelompok saya kalah tetapi penilaian kuis ini yang tidak obyektif, ini bukan kuis namanya tapi adu cepat angkat tangan .

Akhir dari penulisan tentang LABINTDAS cukup ini saja , saya mengucapkan terima kasih yang sebesar-besarnya kepada kak Akhmad Fauzi selaku tutor yang telah berbagi ilmunya dan berbagi pengalamannya khususnya pada saya . ilmu ini sangat bermanfaat bagi saya kak apalagi tentang jaringan wah terima kasih banyak dah . semoga LABINTDAS tambah… amin kedepannya .


Jumat, 20 April 2012

Tips dan Trik SEO

1.Kata kunci dalam Judul blog
Ini adalah salah satu tempat paling penting untuk memiliki kata kunci karena apa yang tertulis di dalam judul blog menunjukkan dalam hasil pencarian sebagai judul halaman Anda. Judul tag harus singkat (6 atau 7 kata paling banyak) dan kata kunci harus dekat awal.

2.Kata kunci dalam URL
Kata kunci dalam URL membantu banyak - misalnya - http://domainname.com/seo-services.html , dimana "SEO services" adalah frase kata kunci Anda mencoba untuk peringkat yang baik. Tapi jika Anda tidak memiliki kata kunci di bagian lain dari dokumen, tidak bergantung pada memiliki mereka dalam URL.

3.Keyword dalam teks dokumen
Faktor lain yang sangat penting yang perlu Anda periksa . 3-7% untuk kata kunci utama adalah yang terbaik, 1-2 untuk kecil. Keyword lebih dari 10% adalah mencurigakan dan lebih mirip isian kata kunci, dari teks tertulis alami.

4.Kata kunci dalam judul 
Satu lagi tempat di mana kata kunci menghitung banyak. Namun berhati-hatilah bahwa halaman Anda memiliki teks yang sebenarnya tentang kata kunci tertentu.

5.Kata kunci pada awal dokumen
Juga penting, meskipun tidak sebanyak jangkar teks, tag judul atau judul. Namun, harus diingat bahwa awal dari sebuah dokumen tidak harus berarti paragraf pertama - misalnya jika Anda menggunakan tabel, paragraf pertama dari teks mungkin pada paruh kedua tabel.

6.Jumlah backlink
Umumnya, semakin baik. Tetapi reputasi dari situs yang link ke Anda adalah lebih penting daripada jumlah mereka. Juga penting adalah anchor text mereka, apakah ada kata kunci di dalamnya, berapa usia mereka, dll

7.Konten unik
Memiliki lebih banyak konten (konten yang relevan, yang berbeda dari konten di situs lain baik dalam kata-kata dan topik) adalah dorongan nyata untuk peringkat situs Anda.

8.Frekuensi perubahan isi
Perubahan sering disukai. Ini adalah besar ketika Anda terus menambahkan konten baru tapi itu tidak begitu besar ketika Anda hanya membuat update kecil untuk konten yang ada.

9.Kata kunci ukuran huruf
Ketika sebuah kata kunci dalam teks dokumen dalam ukuran font yang lebih besar dibandingkan dengan lain pada halaman teks, ini membuatnya lebih terlihat, sehingga oleh karena itu lebih penting dari sisa teks. Hal yang sama berlaku untuk judul yang umumnya dalam ukuran font yang lebih besar dari sisa teks.

10.Site
Satu masalah mendasar, yang yang sering diabaikan. Jika situs (atau halaman terpisah) adalah unaccessible karena link yang rusak, 404 kesalahan, password-kawasan lindung dan alasan sejenis lainnya, maka situs tidak bisa diindeks.

Arsitektur Search Engine

1. Spider
Spider adalah program yang dimiliki oleh search engine yang bekerja untuk mengambil halaman-halaman yang ditemukannya, hampir mirip dengan browser. Perbedaannya adalah jika Spider tidak kelihatan karena ditujukan kepada mesin yang langsung disimpan pada database mereka, sedangkan browser ditujukan kepada manusia yang langsung menampilkan informasi baik berupa teks, gambar, dan sebagainya.

2. Crawler
Crawler merupakan program yang dimiliki search engine yang bertugas menelusuri setiap link yang ada di sebuah web site. Tugas Crawler adalah untuk membantu Spider untuk menentukan arah yang akan ditujunya sekaligus mengevaluasi link tersebut.

3. Indexer
Indexer merupakan salah satu komponen search engine yang bertugas untuk mendeskripsikan suatu halaman web site dan menganalisa berbagai unsur di dalamnya, seperti pada penulisan title, penulisan huruf, keyword-keyword yang ada di konten sehingga dengan demikian akan mengenal web tersebut lebih jauh lagi terutama dalam menganalisa suatu keyword di dalamnya.

4. Database
Database merupakan komponen search engine yang bertugas sebagai tempat meletakkan data-data sebelumnya yang telah didownload oleh Spider serta sebagai tempat yang tadinya digunakan oleh Indexer dalam menganalisa suatu web.

5. Result Engine
Result Engine merupakan program yang bertugas menggolongkan suatu web site dan menentukan suatu perangkingan dalam hasil pencarian yang diminta oleh user. Program ini menganalisa siapa yang pantas masuk kriteria utama dalam pencarian suatu keyword yang diminta oleh pengguna. Data yang pertama muncul tentunya data yang telah memenuhi kriteria-kriteria search engine dan kaidah tertentu yang ditentukan oleh search engine.

6. Web Server
Web Server merupakan komponen terakhir pada seacrh engine yang berfungsi melayani permintaan kepada user yang merupakan umpan balik dari permintaan user tersebut. Web Server merupakan bagian central dan penentu terhadap apa-apa yang diminta oleh user.

Selasa, 06 Maret 2012

Algoritma Divide And Conquer

Algoritma Divide And Conquer



Pemrogram bertanggung jawab atas implementasi solusi. Pembuatan program akan menjadi lebih sederhana jika masalah dapat dipecah menjadi sub masalah - sub masalah yang dapat dikelola.
Penyelesaian masalah dengan komputer berhadapan dengan 4 hal, yaitu :
1.     Pemahaman keterhubungan elemen-elemen data yang relevan terhadap solusi secara menyeluruh.
2.     Pengambilan keputusan mengenai operasi-operasi yang dilakukan terhadap elemen-elemen data.
3.     Perancangan representasi elemen-elemen data di memori sehingga memenuhi kriteria berikut:
a.     Memenuhi keterhubungan logik antara elemen-elemen data.
b.    Operasi-operasi terhadap elemen-elemen data dapat dilakukan secara mudah dan efisien.
4.     Pengambilan keputusan mengenai mengenai bahasa pemrograman terbaik untuk menerjemahkan solusi persoalan menjadi program.

 

STRATEGI DIVIDE DAN CONQUER


Metode

Strategi Divide dan Conquer memecah masalah menjadi submasalah-submasalah independen yang lebih kecil sehingga solusi submasalah-submasalah dapat diperoleh secara mudah, solusi submasalah-submasalah digabung menjadi solusi seluruh masalah.

Skema umum algoritma divide dan conquer


            Procedure DNC ( i,j : integer )
            Var K : integer ;
                        If  SMALL (i,j) then SOLVE (i,j)
                        Else begin
                                    K : = DIVIDE (i,j)
                                    COMBINE (DNC(i,k),DNC(k+1,j))
                        End if
Keterangan :
1.     SMALL adalah fungsi yang mengirim BOOLEAN, menentukan apakah ukuran telah cukup kecil sehingga solusi dapat diperoleh. Ukuran dinyatakan sebagai telah berukuran kecil bergantung masalah.
2.     DIVIDE adalah fungsi membagi menjadi 2 bagian pada posisi K. Biasanya bagian berukuran sama.
3.     COMBINE adalah fungsi menggabungkan solusi X dan Y submasalah. Solusi diperoleh dengan memanggil prosedur rekursif DNC.
Jika ukuran kedua submasalah sama, waktu komputasi DNC dideskripsikan hubungan rekuren berikut :
                                                T(n) = g (n),                               n kecil
                                                            2 T (n/2) + f (n),             selainnya
dimana :
·         T(n) adalah waktu untuk DNC dengan n masukan,
·         g(n) adalah waktu komputasi jawaban secara langsung untuk masukan kecil dan
·         f(n) adalah waktu COMBINE.

Untuk algoritma divide dan conquer yang menghasilkan submasalah-submasalah dengan tipe masalah yang sama dengan masalah awal, sangat alami untuk mendeskripsikan algoritma secara rekursi. Kemudian untuk meningkatkan efisiensi dilakukan penerjemahan menjadi bentuk iterasi.
            Pemakaian teknik Divide dan Conquer banyak digunakan dalam menyelesaikan berbagai macam persoalan, antara lain :
1.     Searching
2.     Sorting

Algoritma Binary Search

            Binary Search (Pencarian Biner) dapat dilakukan  jika data sudah dalam keadaan urut. Dengan kata lain, apabila data belum dalam keadaan urut, pencarian biner tidak dapat dilakukan. Dalam kehidupan sehari-hari, sebenarnya kita juga sering menggunakan pencarian biner. Misalnya saat ingin mencari suatu kata dalam kamus.
Prinsip dari pencarian biner dapat dijelaskan sebagai berikut :
1.     Mula-mula diambil posisi awal = 1 dan posisi akhir = N
2.     Cari posisi data tengah dengan rumus (posisi awal + posisi akhir) / 2
3.     Data yang dicari dibandingkan dengan data tengah.
4.     Jika lebih kecil, proses dilakukan kembali tetapi posisi akhir dianggap sama dengan posisi tengah – 1.
5.     Jika lebih besar, proses dilakukan kembali tetapi posisi awal dianggap sama dengan posisi tengah + 1.
6.     Demikian seterusnya sampai data tengah sama dengan yang dicari.

Untuk lebih jelasnya, perhatikan contoh berikut. Misalkan kita ingin mencari 17 pada sekumpulan data berikut :

      
3

9

11

12

15

17 

23

31

35
   
     
               awal                                         tengah                                       akhir
  1. Mula–mula dicari data tengah, dengan rumus (1+ 9) / 2 = 5.
  2. Berarti data tengah adalah data ke-5, yaitu 15.
  3. Data yang dicari, yaitu 17, dibandingkan dengan data tengah ini.
  4. Karena 17 > 15, berarti proses dilanjutkan tetapi kali ini posisi awal dianggap sama dengan posisi tengah + 1 atau 6.

      
3

9

11

12

15

17 

23

31

35
   
     
                                                                                 awal            tengah             akhir

  1. Data tengah yang baru didapat dengan rumus (6 + 9) / 2 = 7. Berarti data tengah yang baru adalah data ke-7, yaitu 23.
  2. Data yang dicari, yaitu 17 dibandingkan dengan data tengah ini.  
  3. Karena 17 < 23, berarti proses dilanjutkan tetapi kali ini posisi akhir dianggap sama dengan posisi tengah – 1 atau 6.

      
3

9

11

12

15

17 

23

31

35
   
     
                                                                                   awal = akhir
  1. Data tengah yang baru didapat dengan rumus (6 + 6) / 2 = 6. Berarti data tengah yang baru adalah data ke-6, yaitu 17.
  2. Data yang dicari dibandingkan dengan data tengah ini dan ternyata sama. Jadi data ditemukan pada indeks ke-6.
  3. Bagaimana jika data yang dicari tidak ada, misalnya 16?
  4. Pencarian biner ini akan berakhir jika data ditemukan atau posisi awal lebih besar dari posisi akhir.
  5. Jika posisi awal sudah lebih besar daripada posisi akhir berarti data tidak ditemukan.
Untuk lebih jelasnya perhatikan proses pencarian 16 pada data di atas. Prosesnya hampir sama dengan pencarian 17. Tetapi setelah posisi awal = posisi akhir = 6, proses masih dilanjutkan lagi dengan posisi awal = 6 dan posisi akhir = 5

      
3

9

11

12

15

17 

23

31

35
   
     
                                                                akhir       awal           
Disini dapat dilihat bahwa posisi awal lebih besar daripada posisi akhir, yang artinya data tidak ditemukan.
Secara umum, algoritma pencarian biner dapat dituliskan sebagai berikut :
  1. l  ← 1.
  2. r  ← N.
  3. ketemu ← false.
  4. selama ( l < = r ) dan (not ketemu) kerjakan baris 5 sampai dengan 8.
  5. m ← ( l + r ) / 2
  6. Jika ( Data [m] = x ) maka ketemu ← true.
  7. Jika ( x < Data [m] ) maka r ← m – 1.
  8. Jika ( x > Data [m] ) maka l ← m + 1.
  9. If (ketemu) maka m adalah indeks dari data yang dicari, jika tidak data tidak ditemukan.

Berikut ini adalah contoh fungsi untuk mencari data menggunakan pencarian biner.
Function BinarySearch (x: word) : integer;
var
         l, r, m : word;
         ketemu : boolean;
begin
         l : = 1;
         r : = N;
         ketemu : = false;
         while (1 <= r )  and  ( not ketemu )  do
         begin
                  m : = (1 + r )  div  2;
                  if  (Data [m] = x ) then
                              Ketemu := true
                  else if  (x  <  Data [m] ) then
                              r : = m – 1
                  else
                              l : = m + 1;
         end;

         if  ( ketemu )  then
                  BinarySearch : = m
         else
                  BinarySearch : = -1;
end;

      Fungsi di atas akan mengembalikan indeks dari data yang dicari. Apabila data tidak ditemukan, maka yang yang dikembalikan adalah –1.
      Jumlah pembandingan minimum pada pencarian biner adalah 1 kali, yaitu bila data yang dicari tepat berada di tengah-tengah. Jumlah pembandingan maksimum yang dilakukan dengan pencarian biner dapat dicari dengan rumus logaritma, yaitu :  C =  ²log (N)




 Algoritma Quick Sort

Metode Quick atau yang sering disebut juga metode partisi diperkenalkan pertama kali oleh C. A. R. Hoare pada tahun 1962. Pada metode quick, jarak dari kedua elemen yang ditukarkan dibuat cukup besar dengan tujuan untuk mempertinggi efektivitasnya. Hal ini mengingat metode gelembung yang menggunakan jarak cukup dekat ternyata kurang efektif.
            Proses pengurutan dengan metode quick dapat dijelaskan sebagai berikut : mula-mula dipilih data tertentu yang dinamakan pivot, misalnya x. Pivot ini harus diletakkan pada posisi ke-j sedemikian hingga data antara 1 sampai dengan (j – 1) lebih kecil daripada x; sedangkan data pada posisi ke-(j+1) sampai dengan N lebih besar daripada x. Cara pengaturannya adalah menukarkan data di antara posisi 1 sampai dengan (j – 1) yang lebih besar daripada x dengan data di antara posisi (j + 1) sampai dengan N yang lebih kecil daripada x.
            Algoritma penyisipan langsung sendiri dapat dituliskan sebagai berikut:
1.     x    ←   Data [( L + R) / 2)].
2.     i     ←    L
3.     j     ←    R
4.     Selama ( i < = j ) kerjakan baris 5 sampai dengan 12.
5.     Selama ( Data [ i ] < x ) kerjakan i   ←    i  +  1
6.     Selama ( Data [ j ] > x ) kerjakan i   ←    j  -  1
7.     Jika (i < = j ) maka kerjakan baris 8 sampai dengan 10; jika tidak kerjakan baris 11.
8.     Tukar Data [ i ] dengan Data [ j ].
9.      i    ←   i  +  1
10.   j    ←   j  -  1
11.  Jika ( L < j ) kerjakan lagi baris 1 dengan R = j.
12.  Jika ( i  < R ) kerjakan lagi baris 1 dengan L = i.

Jika suatu barisan yang terdiri dari n elemen yang ditempatkan dalam suatu array dan urutan yang diinginkan adalah urutan yang tidak turun (non decreasing) maka dapat digunakan metode Quick Sort yang dengan teknik Divide and Conquer.
Adapun algoritma Quick Sort tersebut terdiri dari dua prosedur yaitu prosedur PARTITION dan prosedur QUICKSORT. Berikut ini disajikan algoritma Quick Sort yang dimaksud, yaitu :
PROCEDURE QUICKSORT(p,q)
            IF   p < q then  j              q + 1
                        CALL PARTITION(p,j)
                        CALL QUICKSORT(p,j-1)
                        CALL QUICKSORT(j+1,q)
            END IF
            END QUICKSORT
            PROCEDURE PARTITION(m,p)
            INTEGER m,p,i  ;  GLOBAL A(m-1,p)
            V                A(m) ;  i                 m
            LOOP
                        LOOP i                 i  +  1 UNTIL A( i ) > = V REPEAT
                        LOOP p                p  -  1 UNTIL A( p ) < = V REPEAT
                        IF i < p THEN CALL INTERCHANGE (A(i),A(p))
                                    ELSE EXIT
                        END IF
            REPEAT
            A(m)               A(p)
            A(p)                V
            END PARTITION

Contoh :
Suatu Array A terdiri dari 9 elemen, yaitu :
A(1) = 65                       A(4) = 80                       A(7) = 60
A(2) = 70                       A(5) = 85                       A(8) = 50
A(3) = 75                       A(6) = 60                       A(9) = 45

Elemen-elemen tersebut akan disusun secara tidak turun berdasarkan algoritma Quick Sort.
Jalannya proses pada algoritma tersebut disajikan dalam bentuk tabel sebagai berikut :

              1           2            3            4            5        6            7           8            9          10          i                   p
65
70
75
80
85
60
55
50
45

2
9
65
45
75
80
85
60
55
50
70

3
8
65
45
50
80
85
60
55
75
70

4
7
65
45
50
55
85
60
80
75
70

5
6
  65
45
50
55
60
85
80
75
70

6
5                
   
            1          2          3           4            5          6             7          8             9         10             i                    p
65
   45
50
55
60
85
80
75
70

6
9
65
45
50
55
60
70
80
75
85

7
8
65
45
50
55
60
70
75
80
85

8
7
              
Dan seterusnya




          EXIT

Analisisnya :
Hitung jumlah dari perbandingan-perbandingan elemennya dalam hal ini disimpan dalam variable C(n) dan kita asumsikan bahwa :
·         n elemen yang disortir berbeda,
·         proses pembagian (partisi) elemen V dalam prosedur PARTITION dilakukan dengan proses seleksi secara acak.

Worst Case dari C(n) dinotasikan dengan Cw(n). C(n) di dalam setiap pemanggilan prosedur PARTITION maksimum sebesar  ( p – q + 1 ) kali.
Misalkan r adalah jumlah kumulatif dari elemen-elemen di dalam seluruh pemanggilan prosedur PARTITION pada setiap tingkat dari teknik rekursif tersebut. Pada tingkat pertama terjadi  pemanggilan  prosedur   PARTITION   sebanyak satu (1) kali yakni  CALL PARTITION ( 1, n + 1 )  dan nilai r = n. Pada tingkat kedua terjadi pemanggilan prosedur PARTITION paling banyak dua (2) kali dan nilai r = n – 1, dan seterusnya dengan cara yang sama pada tingkat berikutnya. Dengan demikian dari proses tersebut diperoleh Cw(n) akan sama dengan jumlah seluruh tingkat (r) dan nilai r berkisar didalam interval [ 2 , n ].
Jadi kompleksitas waktunya (Worst Case) = Cw (n ) =  O ( n² ) dan
Average Case = CA(n) = O ( n log n ).