Bertanya Pertanyaan Cerdas

Internet kini semakin banyak dikunjungi oleh para pencari jawaban, dan mesin pencari seperti Google, Yahoo!, dll bisa membantu kita menemukan jawaban dengan menunjukkan halaman yang sesuai dengan jawaban yang kita cari. Tapi tidak semua pertanyaan terjawab di Internet ini, semakin berkembang, semakin banyak pertanyaan baru bermunculan. Tapi seperti sosialisasi di dunia nyata, Internet-pun memilki etika dalam bertanya.

How To Ask Questions The Smart Way oleh Eric Steven Raymond, menunjukkan cara bertanya dalam dengan cerdas dalam bahasa Inggris, tapi jangan khawatir, untuk pembaca yang lebih suka bahasa lokal, terdapat juga versi Bahasa Indonesianya, Bagaimana Bertanya dengan Cerdas di situs bulsara.

Dan pada pertengahan 2010 kemarin, saya menemukan versi How to Ask Smart Questions yang lebih bersahabat, dengan kemasan yang lebih menarik oleh Martin Owens, yang lalu kemudian saya terjemahkan dalam Bahasa Indonesia.

How to Ask Smart Questions oleh Martin Owens

Bagaimana Bertanya Pertanyaan Cerdas, versi Bahasa Indonesia

Bagaimana menurut anda?

Iklan

Nautilus Script untuk konversi SVG ke PNG

Jadi ceritanya sedang iseng mencoba Nautilus script di Ubuntu kesayangan, gunanya untuk mempermudah konversi file SVG ke PNG, menggunakan beberapa program yang sudah ada, disini saya gunakan zenity untuk input dan konfirmasi dengan pengguna, dan rsvg untuk konversi file tersebut, sebelumnya pastikan dulu bahwa keduanya terinstall di PC anda. Berguna sekali bagi saya saat konversi icon Tango ke PNG (berhubung hanya disediakan resolusi kecil 16, 24, 32, dan Scalable bentuk SVG).

Jangan lupa dikopi ke file (misal disini saya pake svg to png.sh), lalu simpan di ~/.gnome2/nautilus-scripts/ dan set file menjadi executable, karena jika tidak begitu, script tidak akan dapat dijalankan.

#!/bin/bash
###############################
# 
# Nautilus svg to png script
# by khalifavi 2010
# 
# using zenity and rsvg
#  
# simply copy this to a file and place it in ~/.gnome2/nautilus-scripts/
# do not forget to SET THIS FILE TO BE EXECUTABLE
#
###############################
Size="$(zenity --entry --title "Enter Output Size" --text "Enter Output size of the PNG\'s :")"
for arg
do
    filetype=$(file -i "$arg")  

    if [ "${filetype:${#arg}+2:13}" = "image/svg+xml" ]; then
        rsvg --format png --width $Size "$arg" "${arg:0:${#arg}-4}.png"
    else
        zenity --error --text "File "$arg" is not image/svg+xml" --title "Not an SVG"
    fi
   
done
zenity --info --text "Conversion is done!" --title "Completed"

Ini saya perlihatkan saja bagaimana script ini bekerja
Ini tampilan nautilus, terdapat menu script disitu, itu setelah script disimpan di ~/.gnome2/nautilus-scripts/

Script tampil pada menu konteks Nautilus setelah file di klik-kanan
Script tampil pada menu konteks Nautilus setelah file di klik-kanan

Ini tampilan input ukuran PNG yang kita inginkan

Tentukan ukuran PNG yang diinginkan (sebenarnya yang ditentukan cukup weight saja)
Tentukan ukuran PNG yang diinginkan (sebenarnya yang ditentukan cukup weight saja)

Ini tampilan setelah script selesai dijalankan

Konversi SVG to PNG selesai
Konversi SVG to PNG selesai

Ini hasil dari script tersebut

Ini nih hasil icon yang sudah dikonversi jadi PNG
Ini nih hasil icon yang sudah dikonversi jadi PNG

oya, scriptnya sangat sederhana, nanti kita perbaiki lagi
🙂
selamat mencoba!
bagaimana menurut anda?

Database Abstraction Layer :: Kemudahan Melawan Performa

koneksi antara aplikasi database engine, abstraction layer dan developer/user/application layer
koneksi antara aplikasi database engine, abstraction layer dan developer/user/application layer

Abstraction Layer atau lapisan abstraksi adalah suatu lapisan untuk menyembunyikan kerumitan yang ada pada fungsi-fungsi yang serupa. Begitu pula dengan Database Abstraction Layer, suatu pendekatan penyederhanaan/penyeragaman fungsi dari setiap database engine yang ada, jadi kita tidak perlu mengetahui fungsi API database spesifik yang kita gunakan, yang perlu kita ketahui hanyalah fungsi API dari Database Abstraction Layer yang kita gunakan. Terkesan sederhana. Ya, memang ini menjadikan pekerjaan programmer sederhana.
Mungkin selama ini anda pernah mendengar ODBC, khususnya bagi anda pengguna Windows, karena memang pada awalnya ODBC muncul di sistem operasi ini. ODBC adalah salah satu dari berbagai jenis Database Abstraction Layer yang ada. Jenis lainnya adalah ORM, di PHP tersedia ActiveRecord, Doctrine, dll; di Java ada Hibernate, dll. Juga ada jenis yang lebih sederhana, seperti pada PHP ada PDO(PECL), atau PEAR DB(PEAR).
Dengan pendekatan ini, para programmer akan semakin mudah dalam menghubungkan aplikasi yang mereka buat dengan database, tapi harus kita ingat bahwa setiap pemecahan masalah akan selalu menimbulkan masalah baru. Memang benar bahwa dengan menggunakan Doctrine, kita tidak perlu mengkhawatirkan engine database apa yang kita gunakan, kita bisa menggunakan postgreSQL, MySQL, MSSQL, ataupun juga Oracle; dengan menggunakan Hibernate kita hanya perlu menggunakan fungsi API hibernate saja. Tapi, dengan adanya abstraction layer, artinya ada rutin fungsi lain yang dijalankan, ya, dengan itu berarti aplikasi jadi yang kita buat bisa menjadi lebih lambat dalam mengakses data :(, sayang sekali…
Contohnya mungkin pada skrip php yang menggunakan PDO berikut ini:

<?php
// tentukan $dsn, $username dan $password
$dsn = "mysql:host=localhost;dbname=telepon";
$username = "user";
$passwd = "password";

try{
    $pdo = new PDO($dsn, $username, $passwd);
    $runq = $pdo-&gt;query("SELECT * FROM akun a, telepon t WHERE a.id=t.id_akun");
    foreach ($runq as $row){
        echo $row['nama']." ".$row['telepon']."&lt;br/&gt;";
    }
}catch(PDOException $e){
    echo $e-&gt;getMessage();
}
?>

Ini dia, lihat pada $dsn, disini $dsn bisa diganti dengan driver lain yang disupport oleh PDO, kita bisa mengubahnya menjadi mssql ataupun yang lainnya. Untuk menjalankan query, kita hanya perlu menjalankan $pdo->query($sql), dan lakukan iterasi untuk memunculkan hasilnya.
Namun, lihat pada objek PDO, objek ini menerima berbagai masukan jenis database engine yang ada, tapi mengeluarkan hasil yang sama, artinya ada sesuatu yang kompleks yang terjadi di dalam fungsi objek ini, dan tentunya itu akan makan waktu, yang berharga untuk setiap permintaan query user :(.
Dengan rangkuman bahwa Database Abstraction Layer memiliki:
Kelebihan

  • Waktu pengembangan (yang perlu dilakukan developer hanya mengetahui fungsi DBAL saja)
  • Tidak perlu mengkhawatirkan database engine (selama driver terpenuhi, maka fungsi DBAL akan berjalan sesuai keinginan)

Kekurangan

  • Waktu (karena DBAL menjalankan rutin fungsi yang lebih banyak daripada fungsi native yang disediakan, tentunya waktu query jadi lebih lambat)
  • Fungsi Kompleks Spesifik Engine (mengingat DBAL ini fungsinya untuk menyeragamkan fungsi dan hasil, kita tidak akan menemukan kelebihan spesifik (fungsi kompleks) dari engine database. misal: pengoptimasian query, karena tidak semua database engine menyediakan cara untuk optimasi query (lewat index), jadi DBAL-pun tidak menyertakannya)

dan, itulah garis besar dari database abstraction layer.

Para Desainer 3D, Tunjukkan Taringmu : Google Model Your Town Competition

Ayo, untuk para penggemar Desain 3D, sekarang waktunya untuk menunjukan kemampuan yang anda miliki.

Google mengadakan Model Your Town Competition, sebuah kompetisi untuk mendesain kota yang kita tinggali. Tools yang bisa digunakan adalah Google SketchUp atau Google Building Maker, dan untuk menyimpan model kita ke dunia 3D menggunakan Google Earth, yang semuanya tersedia gratis, begitu juga dengan kompetisi ini, tanpa membayar apapun. Bersaing dengan Desainer 3D di seluruh dunia.
Ini adalah ringkasan aturan yang saya baca langsung dari situs resminya.

  • Tim bisa sampai 6 orang anggota dengan anggota berumur lebih dari 13 tahun, dan ketua tim lebih dari 18 tahun
  • Desain menggunakan SketchUp, ataupun Google Building Maker, dan ditempatkan se-sesuai mungkin dengan kehidupan nyata di Google Earth
  • Model bangunan yang sudah selesai harus diupload ke alamat Google 3D Warehouse masing-masing
  • Bergabung dengan Google Competition Group
  • Tentunya harus mendaftar terlebih dahulu dengan form yang sudah disediakan Google
  • Waktu deadline pengiriman tidak lebih dari 11:59 PM PST pada 1 Maret 2010

ini adalah contoh video dari kota yang sudah dibuat dalam 3D

Untuk informasi lebih lanjut, silahkan langsung ke link berikut:
Situs resminya
Halaman Get Started
Aturan resmi
Bagian Tanya Jawab

Tahu Kuah Kecap

Jenis makanan sup hangat di malam hari memang mantap
Jenis makanan sup hangat di malam hari memang mantap

Resep ini hanya digunakan untuk keadaan darurat saja

Waktu sudah terlalu larut, dan sayangnya perut ini sudah meminta jatah. Lihat ke dapur, nasi tidak ada, hanya kecap dan bumbu-bumbu, di kulkas, ah, terima kasih, ada tahu. Sebenarnya ada mi instan, tapi tidaklah, saya mau sehat tanpa makan mi 🙂
Saya siapkan panci untuk masak mi, dengan air sekiranya tahu tenggelam…, dan panaskan air..
Saya siapkan juga

  1. Tahu ~ 3 potong 🙂 hmm, enak
  2. Kecap ~ gunakan saja setengah bungkus
  3. Merica ~ biar ada sensasi hangat, saya pakai satu bungkus
  4. Garam ~ 1/2 sdt
  5. Penyedap rasa (saya pake kaldu ayam) ~ 1/4 sdt saja
  6. Bawang putih ~ 2 butir diiris tebal
  7. Yaah, memasaknya sederhana,
    Setelah air panas, masukkan bawang putih (kira2 1/2 menit lah)
    Kemudian tahu sampai kira-kira setengah matang
    Campurkan dengan garam, merica, penyedap rasa dan terakhir kecap
    Tunggu sampai sekiranya bawang matang…
    … and it tastes awfully delicious and warm…

    Kembali beraksi dengan pekerjaan :), have a good night

Masa Depan Pendidikan Indonesia

November 2019
Indonesia University of Education, Setiabudi, Indonesia

Suasana masih sepi di hall gedung Fakultas Pendidikan Ilmu Komputer. Meskipun perkuliahan dimulai pukul 10, biasanya mahasiswa ilkom sudah pada berkumpul di hall atau di kantin, sekedar mencari koneksi internet ataupun yang mengejar deadline pengumpulan tugas :). Banyak hal berubah disini, terutama sejak dibuat standar operasional laboratorium yang mewajibkan setiap laboratorium untuk melakukan penelitian mandiri. Bagaimana tidak, sekarang UPI sudah menjadi pusat pengembangan teknologi pendidikan internasional, International Education Development Center – IEDC ™ :). Menyedot jutaan calon mahasiswa tiap tahunnya di penjuru dunia dengan hanya 200 kursi tersedia.

Terbangun dan kembali ke dunia nyata, Indonesia memang sempat menjadi inspirasi di asia tenggara namun hal ini tidak berlangsung lama, terlalu terlena dengan alias “Macan Asia”. Kejadian diatas mungkin saja terjadi di Universitas Pendidikan Indonesia, ditambah lagi dengan dibukanya program studi ilmu komputer sejak tahun 2005, sebuah bukti bahwa UPI sadar akan pentingnya teknologi komputer dalam pendidikan.
Namun hal ini kelihatannya belum cukup, karena teknologi tidak berkembang karena keberadaan fasilitas, tapi harus juga didukung dengan SDM yang berkualitas, rasa penasaran, dan implementasi yang berkelanjutan (progressive implementation). Dalam kasus ini semua pihak civitas akademika tentu terlibat, dimulai dari mahasiswa, dosen juga staff akademis maupun staff teknis universitas.
Mahasiswa dengan kemampuan untuk mencari dan menghargai informasi di internet tentu akan meningkatkan mutu perkuliahan, karena ilmu yang didapatkan dapat dibandingkan dengan ilmu yang beredar di internet (konvensi internasional). Dosen yang dapat menggunakan teknologi informasi bisa lebih diakui keberadaannya dengan posting hasil penelitian maupun karya tulisnya di internet. Staff akademis universitas dapat meningkatkan produktivitas bekerja bila dapat memanfaatkan teknologi ini dengan baik, begitu juga dengan staff teknis yang minimalnya akan memiliki nilai lebih kehidupan dengan ilmu tambahan yang mereka miliki.
[harapan]
Program studi juga (ilmu komputer dan pendidikan ilmu komputer) baiknya memulai mengeluarkan inovasi pembelajaran yang berlaku di perkuliahan, tentunya ini harus dengan dukungan dosen-dosen yang berkualitas dan berkomitmen untuk kemajuan universitas, ditambah lagi dengan mahasiswa yang selalu haus akan ilmu baru, mengingat ranah teknologi yang kita dalami selalu berubah dan bertambah tiap menitnya. Ketergantungan pada suatu tool (bahasa pemrograman, teknologi maupun paket bundel instalasi) sudah jelas bukan hal yang baik.
~ dan (kurang lebih) standar pendidikan internasional-pun akan segera diraih UPI 🙂

Menulis Blog Lewat Google Docs

Terkadang saya menulis di blog secara langsung karena memang lebih praktis, namun hal ini menyebabkan data tulisan saya tidak tersimpan pada media apapun selain web. Hal ini juga menyebabkan dokumen sulit untuk diedit secara manual(maksudnya harus dengan masuk ke blog yang bersangkutan). Bagi yang sudah mengenal Google Docs , masalah seperti itu dapat diselesaikan dengan fitur ‘publish as web page’ yang terdapat pada menu Share.
Dimulai dari pertama mengakses google docs, 

dengan pilihan untuk membuat dokumen baru, atau melakukan edit terhadap dokumen yang sudah ada (tentunya pilih file yang akan di posting)
lalu klik menu share dan pilih ‘Publish as web page…’,
dan kemudian kita akan dibawa ke halaman baru (Publish this document)
di tampilan ini kita mengubah setting dari blog yang kita gunakan, dalam kasus ini karena saya menggunakan layanan blog gratis dari wordpress.com, maka saya menggunakan Hosted provider > WordPress.com (yang lainpun bisa digunakan, bahkan server sendiri pun bisa digunakan)
setelah itu, jangan lupa isi username dan password dari blog kita.. dan klik ok jika sudah yakin…
setelah blog site settings diisi dengan benar, kita dapat meng-klik ‘Post to blog’, dan muncul konfirmasi.. ok

setelah konfirmasi selesai, dan google docs mengirim dokumen tersebut ke blog kita, artinya blog sudah terkirim.. dan

–untuk post ulang (re-post) atau menghapus post tersebut juga bisa dilakukan di google docs..
selamat mencoba…

%d blogger menyukai ini: