Minggu, 27 Desember 2015

Apa Jadinya jika Listrik di Prosesor Diganti Cahaya?












Sebuah penelitian dalam bidang prosesor menjanjikan masa depan yang lebih cerah. Mereka memanfaatkan cahaya untuk komunikasi dan transfer informasi pada prosesor.

Hal itu dilakukan peneliti dari University of Colorado Boulder, University of California Berkley, dan MIT.

Mereka mengembangkan chipset untuk menyebarkan data menggunakan cahaya. Selama ini, hal itu dilakukan dengan memanfaatkan listrik.

Sebagaimana dilaporkan DigitalTrends dan dihimpun KompasTekno, Sabtu (26/2/2015), ada 850 komponen optik input dan output terbenam pada chip tersebut.

Lalu, apa pengaruhnya kalau yang digunakan adalah cahaya?

Peneliti mengklaim, prosesor berkekuatan cahaya bisa 10 hingga 50 kali lebih cepat menghantarkan sinyal ketimbang prosesor konvensional.

Lebih spesifik, kecepatannya mencapai 300 Gbps per milimeter persegi.

Listrik selama ini jadi salah satu batasan untuk meningkatkan kecepatan dan kapasitas transfer data prosesor.

"Prosesor cahaya memungkinkan kami merancang sistem elektronik-fotonik kompleks untuk komunikasi yang lebih mumpuni pada sistem komputasi," kata perwakilan peneliti.

Selain soal kecepatan dan performa, penggunaan cahaya juga diklaim bisa menghemat listrik.

Sebanyak 30 persen listrik yang dikonsumsi data center konon digunakan untuk transfer data, informasi, dan komunikasi antara prosesor, memori, dan kartu jaringan.

Sepintas, tak ada perbedaan antara prosesor cahaya dan prosesor elektrik dari sisi bentuk. Ada dua inti berukuran 3 mm x 6 mm terintegrasi pada sebuah sirkuit.

Belum jelas kapan prosesor ini bisa digunakan vendor secara massal. Saat ini sudah ada dua startup yang muncul dari inovasi tersebut. Salah satunya bernama "Ayar Labs", di bawah naungan MIT.

5 Modul Python yang Wajib Anda Coba

Banyak modul Python yang telah dikembangkan oleh para programmer Python di seluruh dunia. Kegunaan modul tersebut meliputi banyak bidang. Pada kesempatan kali ini, penulis mencoba mengupas 5 modul Python yang unik. Ini dia sekilas ulasannya.

Tqdm

Tqdm merupakan modul Python yang berguna untuk menampilkan progress bar dengan perulangan yang sederhana. Jika pembaca membutuhkan keindahan dalam proses pemrograman yang pembaca lakukan, tqdm bisa menjadi pilihan.
Dibawah ini salah satu contoh penggunaan tqdm.
Ketika dikompilasi, pembaca akan melihat progress bar yang cukup indah seperti ini:
Penampakan semacam ini juga tampil, ketika pembaca memasang modul Python apapun dengan perintah pip atau pip3.
Modul Tqdm bisa diunduh via situs https://pypi.python.org/pypi/tqdm

Joblib

Joblib merupakan modul Python yang berguna untuk menyediakan fungsionalitas pemrograman paralel. Ada tiga bagian penting dalam modul ini yaitu Caching, Paralellisation dan Persistence (untuk menyimpan dan memuat data).
Fungsionalitas Caching berguna untuk memudahkan untuk mengingat fungsi dengan dekorator yang sederhana. Hasil cache ini berguna untuk pemanggilan fungsi yang menggunakan parameter yang sama sehingga bisa mengefektifkan waktu yang dibutuhkan. Sedangkan fungsionalitas Persistence berguna untuk menautkan pengingatan fungsi yang akan menyimpan hasil cache ke dalam file. Jika diatur dengan compressed=True, output file yang akan dihasilkan akan lebih kecil dari pengaturan default.
Modul Tqdm bisa diunduh via situs https://pypi.python.org/pypi/joblib

Folium


Folium merupakan modul Python yang berguna untuk memvisualisaikan data geografis. Koding yang dibutuhkan juga tidak begitu rumit, pembaca bisa mencobanya dengan salah satu dokumentasi yang sudah disediakan pengembang Folium.
Modul Folium bisa diunduh via situs https://pypi.python.org/pypi/folium

TinyDB

TinyDB merupakan modul Python yang berguna untuk menyediakan backend database yang berbasis NoSQL. Layaknya MongoDB, TinyDB juga memberikan kemudahan API untuk mengatur manajemen databasenya.
Modul Tqdm bisa diunduh via situs https://pypi.python.org/pypi/tinydb

Dill

Dill merupakan modul Python yang berguna untuk menangani objek Python. Cara kerja modul Dill mirip dengan modul Pickle. Perbedaannya, Dill mampu menangani objek Python seperti nested function, lambdas, slice dan masih banyak lagi.
Modul Dill bisa diunduh via situs https://pypi.python.org/pypi/dill
Sebenarnya banyak modul Python yang bertebaran di Internet. Namun jarang diekspos lebih lanjut karena fungsinya yang cukup spesifik. Nah, silahkan pilih sesuai kebutuhan pembaca untuk memudahkan pengembangkan perangkat lunak yang sedang dikerjakan.

Google Play Service 8.4 SDK Telah Tersedia

Beberapa waktu yang lalu, Google mengumumkan ketersediaan Google Play Service 8.4 SDK. Banyak pengembangan yang dilakukan Google untuk produk yang satu ini. Diantaranya:

Custom Email App Invites

Pengguna senang berbagi informasi mengenai aplikasi yang mereka sukai. Google telah menyediakan teknologi App Invites untuk melayani kebutuhan pengguna untuk berbagi. Di Google Play Service 8.4, App Invite telah dikembangkan untuk membuat proses berbagi lewat email menjadi lebih mudah.

Prediksi Spend dan Churn

Google telah mengembangkan Player Stats API dibagian Google Play Games Analytics untuk lebih memahami kebiasaan pemain dan mempertahankan mereka untuk tetap memainkan game yang telah kita buat. Pengembangan yang dilakukan Google ialah dengan menambahkan dua macam prediksi yaitu churn dan spend.
Prediksi churn merupakan metode untuk memprediksi kemungkinan pemain game kita untuk berhenti memainkan game tersebut. Dengan data dari metode prediksi ini, kita dapat mengembangkan konten game menjadi lebih baik agar pemain tetap memainkan game yang kita publish.
Prediksi berikutnya adalah metode spend alias metode untuk memprediksi kemungkinan pemain membelanjakan uangnya demi game yang Ia mainkan. Data yang didapat dari metode ini dapat kita manfaatkan untuk meningkatkan pendapatan. Misalnya, jika para pemain memiliki kemungkinan belanja yang kecil, kita dapat memberikan diskon sehingga para pemain tadi dapat lebih tertarik untuk belanja.

Pembaruan Fused Location Provider

Fused Location Provider (FLP) di Google Play service merupakan layanan google untuk menentukan lokasi berdasarkan beberapa jenis sensor seperti GPS, WiFi dan BTS. Di versi 8.4, Google Play service memberikan peningkatan yang signifikan bagi FLP dalam mendeteksi lokasi berdasarkan posisi BTS. Jika sebelumnya FLP hanya menggunakan satu BTS utama untuk menentukan informasi lokasi, sekarang FLP juga menggunakan BTS lain yang ada disekitarnya untuk menentukan lokasi yang lebih akurat.
Selain meningkatkan keakuratan penentuan lokasi melalui BTS, teknik penentuan lokasi menggunakan WiFi juga mengalami peningkatan, terutama di area di mana GPS tidak tersedia (ruangan tertutup).
Jika pembaca tertarik untuk mengetahui peningkatan-peningkatan lainnya di Google Play Service 8.4, kunjungi halaman android-developers.blogspot.mx.
(bas/android-developers)

Ruby 2.2.4 Telah Rilis

Menjelang akhir tahun, pengembang Ruby telah merilis Ruby 2.2.4. Pada rilis ini, keamanan menjadi topik utama. Salah satu vulnerability yang menjadi sorotan adalah CVE-2015-7551: Unsafe tainted string usage in Fiddle and DL.
Vulnerability ini mencakup program Ruby yang menggunakan Fiddle dan libffi. Dibawah ini merupakan contoh penanganan input yang berbahaya.
Program Ruby tersebut dapat membahayakan keamanan suatu sistem. Kode ini juga membuka peluang eksploitasi program Ruby yang lebih besar lagi dan dapat merugikan sistem yang telah dikembangkan.
Selain vulnerability diatas, ada banyak perbaikan bugs dan penambahan dokumentasi dan fitur-fitur lainnya. Berikut sekilas catatan rilis Ruby 2.2.4:
  • Perbaikan buffer overflow pada fungsi parse_mode_enc dalam file io.c
  • Penambahan deskripsi mengenai perubahan yang inkompatibel dalam duplikasi kunci Hash yang mengesampingkan policy
  • Penghindaran konversi Infinity pada fungsi opt_case_dispatch yang ada dalam file insns.def
  • Perbaikan pthread_getattr_np yang telah rusak pada AIX. Lebih spesifik, terjadi pada alamat dan ukuran stack yang mengembalikan nilai yang tak benar
  • Penggunaan BASERUBY lebih baik dibanding RUNRUBY dalam file common.mk
  • Perbaikan urutan argumen dari InterlockedCompareExchange64 dalam file ruby_atomic.h. Urutan yang sekarang diawali nilai baru, kemudian diikuti nilai lama.
  • Penundaan pencarian objek yang tidak diinfeksi oleh marshal source dalam file encoding.c
  • Pengaktifan loader yang kompatibel pada class USERDEF. Fungsi loader ini bisa dipanggil dengan classnya sendiri maupun objek yang dialokasikan dan data yang akan dimuat
  • Perbaikan penggeseran posisi yang salah dalam Rational conversion
  • Exception untuk karakter yang tidak lengkap sebelum EOF untuk fungsi rb_io_each_codepoint dalam file io.c, ini terjadi saat konversi
Jadi, segera perbaharui Ruby yang telah pembaca pasang dengan Ruby 2.2.4. Guna menghindari eksploitasi terhadap Fiddle dan libffi. Dengan dirilisnya Ruby 2.2.4, bahasa pemrograman Ruby menjadi semakin aman.
Untuk mengunduh Ruby 2.2.4, pembaca bisa mengunjungi situs resminya di Ruby Lang. Sedangkan untuk catatan rilis yang lengkap bisa pembaca kunjungi di Changelog.

Membuat Ekstensi PHP dengan Zephir

Zephir atau Zend Engine PHP Intermediate adalah sebuah bahasa pemrograman yang digunakan untuk membuat sebuah ekstensi PHP. Zephir menggunakan syntax yang mirip dengan PHP, jadi bagi kalian programmer PHP ingin membuat ekstensi PHP sendiri tapi tidak menguasai bahasa C, maka zephir adalah solusinya.
Pada tutorial ini, penulis menggunakan sistem operasi ubuntu, PHP 5.5.9 dan apache2 sebagai web server.

Instalasi zephir

Untuk menginstalasi zephir, ada beberapa yang perlu kita siapkan, diantaranya:
  • gcc >= 4.x/clang >= 3.x
  • re2c 0.13 atau versi terbaru
  • gnu make 3.81 atau versi terbaru
  • autoconf 2.31 atau versi terbaru
  • automake 1.14 atau versi terbaru
  • libpcre3
  • php development headers and tools
Bagi kalian yang menggunakan sistem operasi ubuntu, tinggal jalankan perintah berikut:
$ sudo apt-get install git gcc make re2c php5 php5-json php5-dev libpcre3-dev

Memulai instalasi

Klon zephir dari github
$ git clone https://github.com/phalcon/zephir.git
Masuk ke direktori
$ cd zephir
Instal zephir
$ ./install -c
Cek apakah zephir terinstal
$ zephir help

Memulai membuat ekstensi

Jalankan perintah berikut untuk membuat sebuah direktori yang mana nantinya akan di kompilasi menjadi sebuah ekstensi PHP.
$ zephir init hello
Maka akan membuat sebuah direktori yang bernama hello.
Masuk ke direktori hello dengan perintah:
$ cd hello
Didalam direktori tersebut, akan terdapat direktori ext dan hello.
Pada direktori hello, masukkan perintah berikut:
$ mkdir hello/lib
$ touch hello/lib/hello.zep
Perintah tersebut akan membuat sebuah direktori baru bernama lib didalam folder hello dan membuat sebuah file bernama hello.zep didalamnya.
Masukkan kode berikut kedalam hello/lib/hello.zep
Lalu kompilasi kode menggunakan perintah:
$ zephir build
Ekstensi sudah berhasil dibuat, tetapi masih belum bisa dijalankan karena ekstensi tersebut belum terpasang di PHP. Buat sebuah file bernama hello.ini di direktori /etc/php5/apache2/conf.d/
dan berikut isi dari hello.ini
Lalu restart web server, dengan begitu ekstensi anda telah berhasil terpasang di PHP.

Memanggil fungsi dari ekstensi

Buat sebuah file bernama hello.php, dan masukkan kode berikut:
Perhatikan pada kode tersebut
Hello\Lib merupakan namespace dari ekstensi, sedangkan Hello merupakan nama classnya
hello_world merupakan nama function yang terdapat pada class.
Dan akhirnya ekstensi sudah berhasil dibuat dan dijalankan.
Beberapa contoh fungsi dari PHP yang telah saya bungkus jadi ektensi PHP bisa kalian lihat di
https://github.com/devilscream/kodebin-lib/
Referensi:
http://docs.zephir-lang.com/en/latest/index.html

Hello Java

u Java? sejenis makanankah atau salah satu aliran jenis musik yang sering Anda dengar seperti “Java Jazz” gitu. Hehehe…. Bukan. Java di sini yang saya bahas ialah salah satu bahasa pemrograman yang paling saya senangin. Bahkan, gara – gara Java ini akhirnya saya bisa menghasilkan uang juga untuk melanjutkan studi S1 saya.
Java itu ada banyak jenisnya mulai dari J2SE (ini yang sering saya pakai, untuk desktop komputer), J2EE (setahu saya ini untuk berbasis web enterprise), J2ME (ini untuk Mobile edition tapi, bukan Android ya. Ini yang untuk Handphone2 versi lama sebelum adanya Android).
Pada tutorial saya yang pertama ini di CodePolitan, tidak banyak yang ingin saya tulis. Sebagai salam perkenalan saja. Sesempat – sempatnya saya usahain bakal nulis semua pengalaman coding saya di Java dan Android di CodePolitan. Kebetulan menjelang akhirnya tahun 2015 ini sebagian proyek saya sudah mulai selesai jadi, ada sedikit waktu kosong yang bisa saya isi untuk melakukan hal – hal yang saya suka salah satunya yaitu, nulis tutorial gini lah.
Sedikit cerita dari saya, kalau saya ini orangnya di kampus pelit banget kalau ada tugas kuliah khususnya tugas pemrograman. Kenapa pelit? Karena, menurut saya yang namanya tugas itu ya dikerjakan saja masalah nilai bagus atau tidak itu masalah belakangan. Konsep penting bagi saya dalam perkuliahan ialah bahwa setelah lepas dari masa perkuliahan saya dan teman – teman harus mempunyai skill yang bisa dipakai di dunia pekerjaan. Terserah skill apa yang penting Anda senang akan skill tersebut.
Jujur, kalau bakat programming saya ini muncul dari masa perkuliahan di semester 1 ketika itu saya belajar mata kuliah Algoritma Dasar menggunakan bahasa C (yang screen nya warna biru itu loh). Di semester 1 ini, saya banyak mencoba berbagai hal dan belajar sendiri dirumah bahkan sampai larut malam. Di semester 1, memang banyak sekali waktu saya yang terbuang untuk belajar coding bahkan untuk ngumpul bareng teman – teman kampus aja susahnya minta ampun. Tapi, itu saya lakukan karena niatnya saya yang kuat untuk bisa mencapai cita – cita saya saat itu dan sampai saat ini yaitu, menjadi Programmer.
Tapi, sedikit motivasi untuk Anda semua yang baru mulai belajar pemrograman ada sedikit kata – kata yang selalu saya pegang dalam belajar pemrograman yaitu, “Percayalah bahwa apa yang Anda tanam hari ini akan bisa Anda nikmati hasilnya di masa yang akan datang”.
Oya, sedikit info kalau saya ini sebelumnya pernah tulis di JagoCoding.com jadi, kalau ada tutorial yang judulnya itu tidak terlalu jauh berbeda pada tutorial yang pernah saya tulis di JagoCoding.com itu berarti, saya lagi ingin memperdalam pembahasan tersebut sehingga saya ingin menulis ulang tutorial tersebut agar pembaca lebih mudah memahaminya.
Sedikit coding Java sebagai salam kenal saya untuk Anda semua.

1
2
3
4
5
6
7
public class Main
{
public static void main(String[] args)
{
System.out.println("Hello World!, Keep Smile and Write Code");
}
}

Belajar HTML Dasar

HTML adalah kependekan dari Hyper Text Markup Language, yaitu sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web. Si HTML inilah yang menyusun sebuah halaman web menjadi sebagaimana yang kita lihat melalui browser (penjelajah internet). So, belajar HTML dan mengerti bagaimana cara HTML bekerja akan sangat penting jika kamu ingin terjun ke dunia web development.
Sebenernya ketika bekerja dalam menampilkan dan menyusun sebuah halaman web si HTML ini nggak sendiri, dia juga dibantu oleh teman-temannya yang lain yaitu si CSS dan si JavaScript. Si HTML sendiri bertugas menyusun kerangka halaman web, si CSS yang akan merapihkan dan memperindah tampilan halaman web, sedangkan si JavaScript-lah yang bertugas membuat halaman web menjadi lebih interaktif. Pada kesempatan yang lain kita akan coba membahas CSS dan JavaScript, tapi untuk kali ini marilah kita buat si HTML menjadi tokoh utama :D
Perlu diperhatikan, HTML bukanlah sebuah bahasa pemrograman. HTML merupakan bahasa markup yang berisi perintah-perintah dengan format tertentu yang terstruktur untuk menampilkan tampilan tertentu. Baik, mari kita buat menjadi lebih sederhana. Misalnya di halaman web kita sering melihat ada teks yang ditulis tebal seperti berikut:
tulisan tebal
Nah untuk bisa membuat sebuah tulisan tebal seperti di atas, maka kita bisa membuatnya dengan HTML dengan kode berikut:
Sederhananya adalah, jika kita menuliskan kode seperti di atas, maka nanti si browser akan menampilkan tulisan tebal. Jadi HTML adalah format penulisan kode tertetu yang mampu dimengerti oleh browser untuk menampilkan tampilan tertentu.

Oke sekarang saya paham, selanjutnya dimana saya bisa menulis kode HTML dan bagaimana caranya?

Benar, untuk dapat membuat sebuah halaman web dan dapat ditampilkan oleh browser sebagaimana yang kita inginkan tentu dong ada aturan dan formatnya. Nggak mungkin kita tulis kode-kode HTML di Photoshop kemudian kita jalankan melalui browser. Ya nggak akan jalanlah. Untuk menulis kode HTML kita bisa menggunakan software code editor seperti Notepad, Notepad++, Sublime Text, Atom, atau yang lainnya. Dan agar kode kita mampu dibaca oleh browser dengan baik kita harus menyimpannya dalam format HTML yaitu .htm atau .html.
Berikut ini contoh sederhana penulisan kode HTML:
Kita bisa menuliskan kode tersebut pada code editor seperti Notepad, Sublime Text atau yang lainnya. Adapun code editor yang saya gunakan disini adalah Sublime Text 2. Sekali lagi kamu bebas menggunakan code editor yang lain, itu hanya masalah pilihan saja.
Screen Shot 2015-12-26 at 13.10.23
Kemudian kita simpan dengan format .htm atau .html, misalnya disini untuk contoh di atas kita simpan dengan nama index.html. Maka berikut ini tampilannya jika dibuka melalui browser:
Screen Shot 2015-12-20 at 11.46.35
Pada contoh kode HTML di atas kita bisa melihat bahwa untuk memulai menulis kode HTML maka kita harus memulainya dengan kode <html> dan ditutup dengan </html>. Adapun mengenai kode <!DOCTYPE HTML> itu berfungsi sebagai pengenal HTML5 (di lain kesempatan insya Allah akan kita bahas), sementara ikuti saja seperti demikian.
Kode-kode yang ada di antara <head> dan </head> berfungsi untuk memberikan informasi tambahan kepada browser, untuk contoh di atas misalnya ada <title> yang artinya memberikan informasi ke browser bahwa halaman web yang dibuat ini memiliki judul Selamat Datang HTML.
Apa yang ingin kita tampilkan pada browser terletak di antara kode <body> dan </body>. Yups, itulah inti dari kode kita. Disitulah kode-kode yang akan menyusun halaman web ditulis.
Sebagai penutup untuk panduan belajar HTML dasar ini saya ingin memberitahukan bahwa ada dua hal lainnya terkait HTML yang harus dipahami untuk memulai belajar HTML, yaitu TAG dan Atribut.

TAG

Sebenernya dari awal kita membahas HTML kita sudah berbicara tentang TAG, hanya saja belum saya jelaskan detailnya. TAG sederhananya adalah kode-kode tertentu yang menjadi pengenal bahwa kode tersebut adalah HTML dan bisa diterjemahkan oleh browser dengan tampilan tertentu. Misalnya tadi, untuk membuat sebuah tulisan tebal, maka kita bisa menggunakan TAG STRONG, atau TAG B. Untuk membuat paragraf kita bisa menggunakan TAG P. Dan masih banyak TAG HTML lainnya, tentunya dengan fungsi yang berbeda-beda. Dikesempatan lain akan kita pelajari lebih jauh. Untuk menuliskan TAG HTML kita bisa menggunakan huruf kecil ataupun kapital, bebas-bebas saja, browser sudah mengenalinya kok.

ATRIBUT

Atribut adalah karakteristik tambahan pada suatu TAG. Misalnya seperti yang sebelumnya sudah saya informasikan bahwa untuk membuat paragraf kita bisa menggunakan TAG P. Secara default paragraf yang akan ditampilkan oleh TAG P adalah rata kiri. Tapi jika kita ingin membuatnya rata tengah, kita bisa menambahkan atribut ALIGN dengan value CENTER ke dalam TAG P tersebut. Misalnya seperti berikut:
Setiap TAG memiliki atributnya masing-masing tergantung bagaimana sifat dari TAG tersebut. Dan sama seperti halnya dengan TAG, kita juga bebas menggunakan huruf kecil atau kapital dalam menuliskan atribut di dalam HTML.
Demikianlah sedikit panduan belajar HTML dasar, semoga dapat bermanfaat bagi temen-temen yang sedang dalam proses belajar untuk menjadi web developer. Tenang saja, belajar HTML itu nggak susah kok, asalkan dicoba untuk dipraktekan dan terus berlatih pasti akan mudah untuk dikuasai. Sekali lagi selamat belajar, enjoy coding!

Cara Menggunakan Bootstrap 3 untuk Membuat Web

Bootstrap adalah sebuah framework css yang dapat digunakan untuk mempermudah membangun tampilan web. Bootstrap pertama kali di kembangkan pada pertangahan 2010 di Twitter oleh Mark Otto dan Jacob Thornton. Saat ini Bootstrap dikembangkan secara open source dengan lisensi MIT. Kita bisa memantau perkembangan proyek Bootstrap melalui web resminya di getbootstrap.com dan Githubnya di https://github.com/twbs/bootstrap.
Jujur saja, saya sendiri sangat terbantu oleh Bootstrap. Banyak sekali tampilan web yang telah saya buat dengan bantuan Bootstrap, bahkan web CodePolitan yang ini pun kami kembangkan tamplatenya dengan Bootstrap. Bootstrap sangat memanjakan kita dalam membuat tampilan web dan membuat kerja menjadi lebih cepat. Bagaimana tidak, kita tidak lagi harus memulai semuanya dari nol ketika membuat tampilan web. Bootstrap telah menyediakan banyak sekali class CSS dan plugin JavaScript yang bisa langsung kita pakai untuk membantu mempermudah kita membuat halaman web. Karena kemudahaan penggunaan, banyaknya komponen dan kelengkapan dokumentasinya, saat ini Bootstrap menjadi salah satu front-end framework yang paling banyak digunakan di dunia.
Saat tulisan ini dibuat sebenernya udah ada Bootstrap 4, namun masih versi Alpha. So, kita pakai saja dulu Bootstrap 3-nya yang udah stabil untuk memulai belajar sambil menunggu Bootstrap 4 versi stabilnya keluar.
Sebelum kita akan mulai bagaimana cara menggunakan Bootstrap dalam membuat halaman web, kita perlu tahu dulu bagaimana cara Bootstrap itu bekerja. Sehingga nanti kita bisa mengoptimalkan manfaatnya buat pembuatan web kita. Jadi pada dasarnya Bootstrap merupakan sebuah kumpulan class CSS dan plugin JavaScript yang sudah siap pakai. Biasanya kan ketika kita membuat sebuah tampilan web kita akan membuat file HTML yang di dalamnya berisi berbagai macam TAG HTML.
Misalnya saja ketika kita ingin membuat sebuah tombol berwarna merah seperti berikut:
Screen Shot 2015-12-21 at 16.20.05
Maka yang biasa kita lakukan adalah membuat sebuah TAG HTML yaitu TAG BUTTON kemudian memberikan CLASS, contohnya tombol-merah, seperti berikut:
Selanjutnya kita harus membuat file CSS untuk mengatur bagaimana penampilan dari dari CLASS atau ID button yang telah kita buat tadi. Misalnya seperti berikut:
Nah, dengan Bootstrap kita tidak lagi akan memulainya dari nol. Tidak lagi harus menulis semua kode CSS, terutama yang standar, karena itu sudah dilakukan oleh Bootstrap. Kita hanya perlu menuliskan kode CSS yang kita butuhkan saja yang tidak disediakan oleh Bootstrap. Umpamanya kita ingin membuat sebuah tombol, maka kita bisa melihat bahwa Bootstrap telah menyediakan 6 jenis tombol yang bisa kita gunakan.
Screen Shot 2015-12-21 at 16.37.51
Kalau kita ingin membuat tombol merah, kita cukup memberikan class btn dan btn-danger pada TAG BUTTON yang ingin kita buat merah, maka simsalabim langsung berubah jadi merah dengan indah, bahkan tanpa kita turun tangan untuk menulis kode CSS-nya.
Hasilnya seperti berikut:
Screen Shot 2015-12-21 at 16.45.56
Nggak kalah gaul dan ketche kan tombolnya? Hehehe… :D

Wah tombolnya kecil banget, saya pengen tombolnya agak besar

Yasudah tambahkan class btn-lg pada tombol tersebut, maka akan langsung berubah jadi besar tombolnya. Karena Bootstrap punya 4 jenis ukuran untuk tombol, tinggal yang mana yang kita gunakan, tergantung kebutuhan.
Hasilnya:
Screen Shot 2015-12-21 at 16.47.55
Oke, intinya seperti itu. Jadi si Bootstrap itu sudah menyediakan banyak sekali class yang bisa kita gunakan, mulai dari tombol, form, tabel, grid, nav, list, dan lain sebagainya.

Tapi bagaimana jika dari tombol yang disediakan Bootstrap tidak ada yang saya inginkan, atau saya ingin memodifnya?

Nah disitulah baru kita menulis kode CSS tambahan kita. Karena sejatinya Bootstrap hanyalah sebuah framework yang memungkinkan untuk mempermudah kerja kita, namun pasti ada saja sesuatu yang tidak akan ada pada Bootstrap yang kita butuhkan. Tapi paling tidak kerjaan kita pasti menjadi lebih cepat dan terbantu.

Oke, saya paham. Jadi sekarang bagaimana caranya saya bisa memulai menggunakan Bootstrap?

Baik, untuk bisa menggunakan Bootstrap berikut ini langkah-langkahnya:

1. Download File Bootstrap

Untuk memulainya, pertama-tama kita harus mendownload file Bootstrap terlebih di http://getbootstrap.com/getting-started/.
Screen Shot 2015-12-21 at 17.01.00
Kemudian klik tombol Download Bootstrap yang paling kiri. FYI, di situ kan ada beberapa jenis file Bootstrap yang bisa didownload, untuk sementara abaikan saja dulu. Dua tombol sisanya itu merupakan pembahasan yang terpisah :D
Setelah selesai mendownload maka kita akan mendapatkan sebuah file zip dengan nama bootstrap-3.3.6-dist.zip.

2. Ekstrak File Bootstrap

Selanjutnya ekstraklah file Bootstrap yang telah didownload tadi (bootstrap-3.3.6-dist.zip) kemudian simpan di sebuah folder tertentu. Akan muncul sebuah folder dengan nama bootstrap-3.3.6-dist dan di dalamnya ada beberapa folder lagi yaitu css, js dan fonts. Jika file Bootstrap yang kamu download sama versinya dengan saat tulisan ini dibuat, maka kurang lebih seperti berikut isi file bootstrap-3.3.6-dist.zip yang telah diekstrak tadi.
bootstrap-3.3.6-dist/
├── css/
│ ├── bootstrap.css
│ ├── bootstrap.css.map
│ ├── bootstrap.min.css
│ ├── bootstrap.min.css.map
│ ├── bootstrap-theme.css
│ ├── bootstrap-theme.css.map
│ ├── bootstrap-theme.min.css
│ └── bootstrap-theme.min.css.map
├── js/
│ ├── bootstrap.js
│ └── bootstrap.min.js
└── fonts/
├── glyphicons-halflings-regular.eot
├── glyphicons-halflings-regular.svg
├── glyphicons-halflings-regular.ttf
├── glyphicons-halflings-regular.woff
└── glyphicons-halflings-regular.woff2

3. Buatlah Sebuah File

Selanjutnya, buatlah sebuah file sebagai bahan percobaan. Misalnya dengan nama index.html, simpan file tersebut di dalam folder bootstrap-3.3.6-dist tadi, kemudian tuliskan kode berikut:
Kode di atas merupakan format standar Bootstrap. Yang perlu diperhatikan adalah:

1. Pastikan link stylesheet Bootstrap mengarah pada path yang tepat dimana file CSS Bootstrap berada, relative terhadap file html yang memanggilnya.

Karena kebetulan file index.html yang kita buat berada di dalam folder bootstrap-3.3.6-dist dan di dalamnya langsung bersisi file Bootstrap, maka kita tulis css/bootstrap.min.css.

2. Pastikan juga script JavaScript Bootstrap mengarah pada path yang tepat dimana file JavaScript Bootstrap berada, relative terhadap file html yang memanggilnya.

Karena pada contoh kita, file index.html yang kita buat di dalam folder bootstrap-3.3.6-dist dan di dalamnya sudah ada file Bootstrap, maka path-nya bisa kita tulis js/bootstrap.min.js. Jika nanti kamu membuat file index.html nya tidak seperti path yang kita buat di atas nggak usah masalah, tinggal disesuaikan saja path-nya.

3. Pastikan JQuery terpanggil

Bootstrap membutuhkan JQuery agar berjalan dengan sempurna. Karena JavaScript-nya Bootstrap tidak akan bekerja jika tidak ada JQuery. So, pastikan JavaScript-nya terpanggil dengan baik. Sebagai contoh di atas, kita panggil JQuery langsung dari library-nya Google:
Sebenernya kamu bisa juga sih memanggil JQuery-nya offline (karena mungkin aplikasi kamu tidak harus online) yaitu dengan download file JQuery-nya terlebih dahulu, itu bebas-bebas saja.
Oke, jika semuanya sudah aman, coba silahkan buka file index.html yang tadi dibuat dengan menggunakan browser. Jika tampilannya sudah seperti berikut, maka itu artinya kamu telah berhasil menginstall Bootstrap pada halaman web yang kamu buat.
Screen Shot 2015-12-21 at 17.36.04
Oke demikianlah tutorial cara penggunaan Bootstrap kali ini. Semoga bermanfaat dan dapat membantu buat temen-temen Coders yang mau belajar menggunakan Bootstrap.

PVS Studio, Static Code Analyzer untuk C/C++ dan C#

Mencari error dalam source code yang sudah kita tulis, kadang menjadi hal yang menyebalkan. Kita harus memeriksanya line demi line, dan kadang kesalahan tersebut hanya membutuhkan semicolon saja.
Apalagi jika koding yang kita tulis dibagi ke dalam banyak file. Saat error, kita kadang bingung mencari errornya di sebelah mana. Oleh karena itu, kita membutuhkan tools yang bisa melakukan automasi pencarian error dalam koding. Salah satu contoh tools yang bisa kita gunakan adalah PVS Studio.
PVS Studio merupakan static code analyzer yang membantu para programmer untuk mencari error dalam program yang ditulis dengan bahasa pemrograman C maupun C++. PVS Studio saat ini sudah mempunyai track yang cukup panjang dalam menganalisa proyek open source. Proyek open source yang telah dianalisa antara lain PHP, OpenSSL, OpenMS, Qt, LibreOffice dan masih banyak lagi. Daftar lengkapnya bisa pembaca lihat di http://www.viva64.com/en/a/0084/.
Kabar baiknya, selain bahasa pemrograman C dan C++, PVS Studio kini punya fitur untuk menganalisa program yang ditulis dengan bahasa pemrograman C#. Walaupun statusnya masih eksperimental, PVS Studio menjadi tools yang menarik untuk bahasa pemrograman C#. Karena belum banyak yang melakukan analisa semacam ini.
Pengembang PVS Studio juga mengundang para programmer C# untuk menggunakan PVS Studio untuk setiap proyek yang sedang dikerjakannya. Sampai saat ini, dukungan C# masih dikembangkan dan ditingkatkan untuk mencapai tahap final.
Bagi pembaca yang ingin mencoba PVS Studio untuk menganalisa program yang ditulis dengan bahasa pemrograman C#, pembaca bisa mengunduhnya di http://files.viva64.com/beta/PVS-Studio_setup.exe/. Sedangkan jika pembaca ingin mengirimkan feedback kepada pengembang PVS Studio, pembaca bisa mengirimkannya di support@viva64.com
Mencari error dalam program yang sudah kita tulis, kini tak sulit lagi. Proses ini bisa kita automasi dengan tools PVS Studio. Semoga tidak kesusahan lagi dengan sintaks error dan jika ada tools yang lebih bagus, jangan lupa share di kolom komentar yah.
(yp/viva64)