Refleksi
Minggu 20 Mei 2007
Penentuan Jarak Bintang
Pada dasarnya jarak suatu bintang dapat ditentukan dengan teknik yang disebut trigonometri paralaks. Apabila sebuah bintang “dekat” dicatat posisinya dari dua titik di sisi yang berlawanan di orbit Bumi (misalnya, dalam selang waktu 6 bulan), suatu perubahan posisi sudut yang sangat kecil akan terlihat. Pergeseran posisi ini — disebut sebagai paralaks — diamati relatif terhadap bintang di latar belakang, yang biasanya adalah bintang yang sangat jauh sehingga posisinya relatif tetap.
Dengan menggunakan radius (jari-jari) Bumi sebagai patokan, jarak dari bintang bersangkutan dapat ditentukan melalui sudut paralaksnya (p). Apabila p = 1” (satu detik busur), maka jarak bintang tersebut adalah 206.265 kali jarak Bumi ke Matahari. Apabila dinyatakan dalam satuan tahun cahaya, maka jarak tersebut setara dengan 3,26 tahun cahaya. Besaran ini dijadikan suatu satuan jarak yang disebut “parsek”, yang didefinisikan sebagai jarak dari suatu objek dimana objek tersebut menunjukkan paralaks sebesar 1 detik busur. Jadi, satu parsek = 3,26 tahun cahaya.
Karena paralaks berbanding terbalik dengan jarak, maka sebuah bintang sejauh 10 parsek akan memiliki paralaks sebesar 0,1”. Bintang yang jaraknya lebih jauh memiliki paralaks yang lebih kecil, dan dengan demikian lebih sulit untuk diukur jaraknya secara langsung. Untuk bintang-bintang semacam itu, para astronom menggunakan metode tidak langsung, diantaranya dengan memanfaatkan bintang-bintang variabel cepheid.
Bintang terdekat dari Matahari, Proxima Centauri, memiliki paralaks sebesar 0,76”, yang berati bahwa jaraknya adalah 1/0,76 atau 1,32 parsek, atau 4,3 tahun cahaya. Paralaks dari bintang terdekat berikutnya, bintang Barnard, terukur sebesar 0,55”, jadi jaraknya hampir 6 tahun cahaya. Tingkat kesalahan (error) dari metode ini berkisar 0,01”, yang artinya, ada 50 persen kemungkinan bahwa sebuah bintang yang paralaksnya terukur sebesar 0,065” berada pada jarak antara 13,3 dan 18,2 parsek (berhubungan dengan paralaks sebesar 0,075” dan 0,055”), dan dengan kemungkinan yang sama besar bahwa bintang tersebut berada pada jarak di luar kisaran tersebut.
Metode trigonometri paralaks hanya bisa diterapkan untuk bintang-bintang dekat, yang berjarak beberapa ratus tahun cahaya. Pada kenyataannya, diantara 100 miliar bintang di galaksi Bima Sakti, hanya sekitar 700 bintang yang cukup dekat untuk bisa diukur paralaksnya secara akurat.
Senin 16 April 2007
Nukleosintesis pada Masa Awal Kosmos
Istilah nukleosintesis merujuk pada pembentukan elemen yang lebih berat, inti atom dengan lebih banyak proton dan neutron, dari fusi (penggabungan) elemen yang lebih ringan. Teori Big Bang (dentuman besar) memprediksi bahwa alam semesta di masa awal adalah tempat yang sangat panas. Satu detik setelah dentuman besar, temperatur alam semesta berkisar 10 miliar derajat Kelvin, dan sebagian besar tersusun atas neutron, proton, elektron, anti-elektron (positron), foton, dan neutrino. Saat alam semesta mendingin, neutron dapat meluruh kedalam proton dan elektron, atau bergabung bersama proton untuk membentuk deuterium (isotop hidrogen). Dalam tiga menit pertama usia alam semesta, sebagian besar deuterium bergabung untuk membentuk helium. Sejumlah lithium juga terbentuk pada waktu itu. Proses pembentukan elemen ringan pada masa awal terbentuknya alam semesta ini disebut “Big Bang nucleosynthesis” (BBN).
Kelimpahan deuterium, helium, dan lithium yang diprediksi, bergantung pada kerapatan materi biasa di masa awal alam semesta, seperti ditunjukkan oleh gambar di sebelah kiri (klik untuk memperbesar). Dari sini terlihat bahwa produksi helium relatif kurang sensitif terhadap kelimpahan materi biasa, diatas ambang tertentu. Secara umum, diperkirakan bahwa sekitar 24% dari materi biasa di alam semesta terbentuk dari helium pada proses Big Bang. Angka ini sesuai dengan hasil observasi dan merupakan suatu pencapaian penting dari teori Big Bang.Namun demikian, model dentuman besar dapat diuji lebih jauh. Untuk memprediksi pembentukan elemen ringan lainnya sesuai dengan hasil observasi, kerapatan rata-rata dari materi biasa semestinya sekitar 4% dari nilai kerapatan kritis (mengenai nilai kerapatan kritis, silahkan baca kembali artikel berikut). Satelit WMAP diluncurkan untuk melakukan pengukuran secara langsung terhadap kerapatan materi biasa di alam semesta, dan membandingkannya dengan prediksi nukleosintesis Big Bang. Hasil pengamatan ini nantinya sangat krusial terhadap model Big Bang. Apabila hasilnya tidak sesuai dengan prediksi, maka hal itu dapat disebabkan oleh: (1) Kesalahan (error) pada data, (2) Pemahaman yang kurang menyeluruh terhadap proses nukleosintesis Big Bang, (3) Kesalahan pengertian mengenai mekanisme yang menghasilkan fluktuasi radiasi latar kosmis, atau (4) Adanya masalah yang lebih fundamental pada teori Big Bang.
Elemen yang lebih berat dari lithium dihasilkan didalam bintang. Seperti sudah berkali-kali dibahas disini, pada tahapan akhir evolusi bintang, bintang yang masif membakar helium menjadi karbon, oksigen, silikon, sulfur, dan besi. Elemen yang lebih berat dari besi diproduksi dalam dua cara: dalam lapisan terluar yang melingkupi bintang super-raksasa, dan dari ledakan supernova. Segala bentuk kehidupan di muka Bumi yang berbasis karbon secara harafiah tersusun dari debu bintang.
Jumat 13 April 2007
Teknologi Ajax dalam Pemrograman Web (2)
Melanjutkan tulisan sebelumnya; istilah “Ajax” pertama kali dipublikasikan oleh Jesse James Garrett pada Februari 2005. Istilah ini terlintas di benak Garrett saat ia memikirkan sebuah terminologi sederhana untuk merepresentasikan sekumpulan teknologi yang ia usulkan pada seorang kliennya.
Sekalipun istilah “Ajax” telah muncul sejak 2005, sebagian besar teknologi yang membangun Ajax telah dikembangkan satu dekade lebih awal oleh Microsoft melalui teknik Remote Scripting untuk melakukan pemanggilan (loading) suatu halaman secara asinkron tanpa harus memanggil ulang seluruh data, antara lain dengan memanfaatkan elemen IFRAME (diperkenalkan pada browser Internet Explorer 3 pada 1996) dan LAYER (diperkenalkan pada Netscape 4 pada 1997, dan kemudian ditinggalkan pada tahap awal pengembangan browser Mozilla). Kedua tipe elemen tersebut memiliki atribut SRC yang dapat memanggil suatu URL eksternal dan dengan menjalankan suatu halaman yang mengandung JavaScript yang memanipulasi halaman induk, menghasilkan efek yang mirip penggunaan teknologi Ajax. Set teknologi client-side ini biasanya dikelompokkan dalam terminologi generik DHTML. Sementara itu, Macromedia Flash, mulai dari versi 4, telah menjalankan file XML dan CSV dari remote server tanpa perlu memanggil ulang (reloading) halaman web.
Microsoft Remote Scripting (MSRS) yang diperkenalkan pada 1998 adalah pengganti yang lebih elegan terhadap teknik-teknik yang disebut diatas, dengan data diakses oleh suatu JavaApplet, dimana sisi client dapat berkomunikasi memanfaatkan JavaScript. Teknik ini bekerja baik pada browser Internet Explorer versi 4 maupun pesaingnya saat itu, Netscape Navigator versi 4. Microsoft lantas mengembangkan objek XMLHttpRequest pada Internet Explorer 4 dan untuk pertama kalinya memanfaatkan teknik ini melalui XMLHttpRequest pada Outlook Web Access yang disertakan pada perangkat lunak Microsoft Exchange Server 2000. Selanjutnya, Remote Scripting Framework seperti ARSCIF muncul pada 2003, tidak lama sebelum Microsot memperkenalkan Callback pada ASP.NET.
Sebagai tambahan, Konsorsium World Wide Web mengeluarkan beberapa rekomendasi yang juga mengijinkan komunikasi dinamis antara server dan user agent, walaupun hanya sedikit diantaranya yang mendapatkan dukungan, diantaranya adalah elemen object pada HTML 4 untuk merekatkan (embed) konten dinamis pada dokumen (menggantikan frame inline pada XHTML 1.1) serta spesifikasi Load and Save pada Document Object Model (DOM) Level 3.
Alasan paling jelas untuk memanfaatkan Ajax adalah meningkatkan pengalaman browsing pengguna. Halaman yang memanfaatkan teknologi Ajax lebih berlaku sebagai aplikasi yang berdiri sendiri ketimbang sebagai sebuah halaman web. Mengklik suatu link pada halaman web berteknologi Ajax akan membuat halaman terbarui secara dinamis, sementara browser tidak perlu memanggil ulang seluruh halaman. Dengan demikian diperoleh peningkatan kecepatan respon.
Dengan meng-generate HTML secara lokal dalam browser, dan hanya melakukan panggilan JavaScript terhadap data di server, halaman web berbasis Ajax dapat dipanggil relatif cepat akibat kecilnya trafik antara server-client. Ini akan sangat bermanfaat pada halaman web dengan data berjumlah banyak dan harus ditampilkan dalam beberapa halaman. Keuntungan ini semakin terasa kalau kita mempertimbangkan penggunaan elemen-elemen HTML yang sering muncul berulangkali dalam satu halaman (seperti elemen TR dan TD untuk menampilkan tabel). Penggunaan teknologi Ajax dapat mengurangi load halaman karena elemen-elemen tersebut dapat di-generate secara lokal.
Sebagai bagian dari skema “dipanggil apabila dibutuhkan” (load on demand), beberapa aplikasi berbasis web menjalankan bagian dari “event handler” dan kemudian menjalankan fungsi-fungsi secara on the fly. Teknik ini secara signifikan mengurangi konsumsi bandwidth untuk aplikasi web yang memiliki alur logika dan fungsionalitas yang kompleks.
Namun demikian, penggunaan teknologi Ajax juga menyimpan sejumlah kelemahan. Diantaranya, halaman yang di-generate secara dinamis tidak teregister pada “history” browser sehingga penggunaan tombol back dan forward mungkin tidak akan bekerja semestinya. Para pengembang telah mengimplementasikan berbagai solusi terhadap permasalahan ini, diantaranya adalah penggunaan elemen IFRAME yang tersembunyi untuk meminta perubahan yang dapat dikenali oleh fungsi history pada browser yang kemudian dimanfaatkan oleh fungsi tombol back. Contoh penggunaan teknik ini bisa dilihat pada situs Google Maps, dimana perintah pencarian bekerja pada elemen IFRAME yang tak terlihat, namun hasil pencarian diarahkan pada elemen halaman yang terlihat. Sebagai catatan, Konsorsium World Wide Web (W3C) tidak memasukkan elemen IFRAME dalam standar XHTML 1.1 dan lebih merekomendasikan elemen OBJECT.
Berikutnya adalah kesulitan yang dihadapi pengguna saat mem-bookmark halaman yang di-generate secara otomatis oleh Ajax. Solusinya juga sudah ada, salah satunya dengan memanfaatkan URL fragment identifier (bagian dari URL setelah tanda ‘#’) untuk menyimpan jejak sehingga pengguna dapat kembali ke status yang telah ditandai. Hal ini dimungkinkan karena kebanyakan browser mengijinkan JavaScript untuk memperbarui fragment identifier suatu URL secara dinamis, dengan demikian, aplikasi Ajax dapat menyimpan sebuah kondisi saat pengguna melakukan perubahan pada status aplikasi. Solusi ini juga dapat meningkatkan dukungan terhadap penggunaaan tombol back. Namun demikian, ini masih bukan solusi yang komplit.
Isu lainnya menyangkut optimasi mesin pencari. Situs web yang memanfaatkan Ajax untuk memanggil data yang seharusnya diindeks oleh mesin pencari perlu bersikap hati-hati dengan menyediakan data yang ekuivalen pada URL-nya dalam format yang bisa dibaca oleh mesin pencari. Ini karena robot pada mesin pencari biasanya tidak menjalankan kode-kode JavaScript yang dibutuhkan dalam fungsionalitas Ajax. Ini bukan masalah yang spesifik untuk Ajax mengingat isu yang sama juga dialami situs yang menyediakan data dinamis yang membutuhkan page refresh oleh pengguna, misalnya penekanan tombol submit pada akhir pengisian formulir (secara umum, masalah ini kadang-kadang dirujuk sebagai hidden web).
Ketergantungan pada JavaScript juga menjadi isu tersendiri. JavaScript sering diimplementasikan secara berbeda di tiap browser. Karena itu, situs yang menggunakan JavaScript perlu diuji pada sejumlah browser yang berbeda untuk meyakinkan kompatibilitasnya. Tidak jarang kode JavaScript harus ditulis dua kali, satu bagian untuk browser IE dan bagian lain untuk Mozilla. Masalah juga kerap muncul apabila pengguna tidak mengaktifkan dukungan JavaScript pada browsernya.
Kamis 12 April 2007
Teknologi Ajax dalam Pemrograman Web (1)
Dalam terminologi pemrograman web, Ajax adalah akronim dari “Asynchronous JavaScript and XML”. Ajax bukanlah suatu bahasa pemrograman, melainkan sebuah pendekatan yang relatif baru untuk memanfaatkan standar yang telah ada dalam membangun aplikasi berbasis web yang interaktif. Ajax juga bukan suatu teknologi tunggal. Lebih tepatnya, Ajax adalah gabungan dari beberapa teknologi terpisah yang dengan perannya masing-masing bersama-sama membangun sebuah aplikasi web.
Ajax menggabungkan pesentasi web standar yang menggunakan HTML, CSS, tampilan dinamis dan interaksi memanfaatkan Document Object Model, pertukaran dan manipulasi data menggunakan XML dab XSLT, dan akses data asinkron memanfaatkan objek XMLHttpRequest, yang kesemuanya itu disatukan oleh JavaScript.
Tujuan pemanfaatan Ajax adalah untuk membuat suatu halaman web yang lebih responsif melalui pertukaran data yang sekecil mungkin dengan server di belakang layar, sehingga seluruh halaman web tidak perlu dipanggil kembali setiap kali pengguna meminta perubahan.
Model aplikasi web klasik bekerja seperti ini: aksi pengguna pada browser akan memicu request HTTP ke web server. Server lantas melakukan beberapa proses tertentu — mengakses data, melakukan query database, berkomunikasi dengan berbagai legacy system — dan kemudian mengirimkan halaman HTML kepada browser pengguna. Ini adalah model yang diadaptasi dari kegunaan awal web sebagai medium hiperteks. Tapi setiap programmer tahu bahwa walaupun web cukup memadai untuk menampilkan data hiperteks, namun tidak ideal sebagai basis software aplikasi.

Perhatikan diagram diatas. Pada pendekatan klasik (sisi sebelah kiri), saat server sedang melakukan tugasnya, apa yang sedang dikerjakan di sisi pengguna (user)? Betul, menunggu. Dan dalam setiap langkah dalam proses ini, pengguna lagi-lagi juga harus menunggu. Seadainya web didesain sejak awal untuk aplikasi, kita tidak harus membuat si pengguna menunggu dan menunggu lagi. Sekali interface dijalankan, kenapa interaksi dengan pengguna harus terhenti setiap aplikasi membutuhkan sesuatu dari server?
Pemakaian Ajax mengeliminasi sifat start-stop-start-stop dalam interaksi dengan web dengan memperkenalkan sebuah perantara: engine Ajax, yang berada diantara pengguna dan server. Sepintas menempatkan suatu layer (lapisan) diantara aplikasi akan membuatnya semakin kurang responsif, tapi dalam kasus ini justeru sebaliknya.
Alih-alih memanggil sebuah halaman web, pada sesi start dan stop, browser menjalankan sebuah engine Ajax — yang ditulis dalam JavaScript, dan biasannya terselip dalam sebuah frame tersembunyi dalam halaman web. Engine ini bertanggung jawab, baik untuk merender tampilan yang dilihat oleh pengguna di browsernya, dan berkomunikasi dengan server atasnama pengguna. Engine Ajax mengijinkan interaksi antara pengguna dengan aplikasi secara asinkron — tidak bergantung pada interaksi dengan server. Dengan demikian, pengguna tidak perlu lagi-lagi menjumpai layar kosong dengan ikon jam pasir, menunggu server melakukan sesuatu, sebagaimana diperlihatkan oleh gambar dibawah.

Setiap aksi dari pengguna yang normalnya akan menghasilkan request HTTP akan memicu panggilan (call) JavaScript kepada engine Ajax. Setiap respon dari pengguna yang tidak memerlukan campur tangan server — seperti validasi data sederhana atau editing data di memory — dapat diolah sendiri oleh engine Ajax. Apabila engine membutuhkan sesuatu dari server untuk merespon permintaan pengguna — seperti mengirimkan data untuk diproses atau mengakses data baru di server — maka engine akan mengirimkan request secara asinkron, biasanya melalui XML, tanpa menutup interaksi pengguna dengan aplikasi.
Tulisan ini masih akan dilanjutkan dalam bagian kedua.
Selasa 30 Januari 2007
Perhitungan Parameter Fisik Bintang
Penentuan terhadap parameter fisik bintang, diantaranya diameter, suhu, hingga kerapatan, jelas berbeda dengan perhitungan serupa pada benda-benda di bumi. Berhubung jaraknya yang sangat jauh dan tak terjangkau secara fisik, perlu metodologi khusus untuk melakukan pengukuran semacam ini.
Untuk mengukur diameter bintang biasa digunakan beberapa cara. Dari kecerlangan dan jarak bintang, kita bisa menghitung luminositasnya (L), sementara dari observasi terhadap kecerlangan pada panjang gelombang yang berbeda, kita bisa menghitung temperaturnya (T). Karena radiasi dari banyak bintang dapat diperkirakan dengan cukup akurat melalui spektrum benda-hitam Planck, besaran yang diperoleh dapat dihubungkan melalui persamaan:
L = 4πR2σT4
Dari sini, kita memperoleh cara untuk menghitung R, radius (jari-jari) bintang. Dalam persamaan diatas, σ adalah konstanta Stefan yang nilainya 5,67 × 10-5 erg/cm2deg4sec. (Radius R disini merujuk pada fotosfer bintang, daerah dimana bintang secara efektif terlihat bulat melalui pengamatan dari luar.) Diameter sudut bintang dapat dihitung melalui efek interferensi. Alternatif lainnya, kita bisa mengamati intensitas cahaya bintang saat ditutupi oleh Bulan, yang menghasilkan difraksi di bagian pinggir dengan pola yang bergantung kepada diameter sudut bintang. Diameter sudut bintang sebesar beberapa milidetik-busur dapat diukur, namun sejauh ini terbatas pada bintang-bintang yang relatif cemerlang dan dekat.
Banyak bintang yang membentuk sistem bintang ganda, dimana dua buah bintang secara berpasangan mengorbit suatu pusat massa bersama. Periode (P) dari sistem bintang ganda berhubungan dengan massa dari kedua bintang (m1 + m2), dan sumbu orbital semimayor a melalui hukum ketiga kepler:
P2=4π2a3/G[m1 + m2]
Dimana G adalah konstanta gravitasi universal. Dari diameter dan massa, nilai rata-rata kerapatan (densitas) bintang dapat dihitung, dan kemudian kita juga bisa mengukur tekanan dan temperatur di pusat bintang. Sebagai contoh, Matahari kita memiliki kerapatan di pusatnya sebesar 158 g/cm3, tekanan diperhitungkan mencapai 1.000.000.000 atmosfir, dengan suhu mencapai 15.000.000 K. Dalam suhu setinggi ini, semua atom akan terionisasi, dan dengan demikian interior matahari terdiri dari plasma dan gas yang terionisasi, dengan inti atom hidrogen dan helium serta elektron sebagai penyusun utamanya. Sekelompok kecil inti hidrogen bergerak dengan kecepatan sedemikian tinggi hingga ketika bertumbukan, terjadi tolakan elektrostatik yang menyebabkan fusi (penggabungan) inti helium dan diikuti oleh pelepasan energi. Sebagian energi dihantarkan oleh neutrino, namun sebagian besar dihantarkan oleh foton ke permukaan matahari. Proses inilah yang memungkinkan Matahari memancarkan sinarnya.
Bintang lainnya, baik yang lebih maupun kurang masif dibandingkan Matahari, memiliki struktur yang kurang lebih sama, namun dalam hal ukuran, tekanan dan temperatur di pusat, dan kecepatan reaksi fusi, semuanya bergantung pada massa dan komposisi bintang bersangkutan. Bintang dan reaksi fusi didalamnya (dan luminositas resultannya) tetap dalam keadaan stabil dan terhindar dari keruntuhan karena adanya keseimbangan antara tekanan ke arah dalam yang dihasilkan oleh tarikan gravitasi dan tekanan ke arah luar yang dipicu oleh foton hasil dari reaksi fusi.
Bintang yang berada dalam keadaan keseimbangan hidrostatik semacam ini disebut sebagai bintang tahapan utama (main-sequence). Dengan memanfaatkan diagram Hertzprung-Russel (H-R), kita bisa menghitung temperatur bintang berdasarkan magnitudo dan spektrumnya. Pengukuran terhadap magnitudo tampak pada pita spektral B dan V (antara 4350 dan 5550 angstrom [Å]) memungkinkan kita menghitung indeks warna (colour index), CI = mB - mV, dimana dari sana kita bisa menghitung suhu pada bintang.
Untuk suhu yang diberikan, ada bintang yang memiliki luminositas lebih besar dari bintang tahapan utama. Besar nilai R2T4 bergantung pada luminositasnya, makin besar luminositas, berarti radiusnya juga lebih besar. Bintang yang radiusnya lebih besar dari bintang-bintang tahapan utama kita golongkan sebagai bintang raksasa atau super-raksasa. Sebaliknya, bintang yang radiusnya lebih kecil kita masukkan kedalam golongan bintang kerdil. Bintang kerdil putih misalnya, memiliki rentang suhu berkisar 10.000 hingga 12.000 K dan secara visual terlihat berwana putih kebiruan.
Klasifikasi spektral didasarkan pada indeks warna. Seperti sudah pernah kita pelajari disini, bintang-bintang dikelompokkan menjadi kelas-kelas spektral O, B, A, F, G, K, dan M, yang masing-masing dibagi lagi menjadi 10 subdivisi (bagian). Kekuatan garis-garis spektrum pada sebuah bintang menunjukkan kelimpahan elemen di atmosfer bintang bersangkutan. Dari sini, masing-masing subdivisi untuk tiap bintang ditentukan. Matahari, misalnya, adalah bintang tahapan utama, yang dikelompokkan sebagai bintang tipe G2 V (V menunjukkan bintang tahapan utama), sementara Betelgeuse yang merupakan sebuah bintang super-raksasa merah, dengan suhu di permukaan sekitar setengah kali Matahari namun dengan luminositas sekitar 10.000 kalinya, dikelompokkan sebagai M2 Iab.