Sunday, October 06, 2013

Seberapa lama waktu tidur siang yang kita perlukan.

Di dunia modern yang semakin sibuk ini, tidur siang, atau tidur sebentar, adalah kemewahan. Tetapi ternyata banyak ahli membuktikan bahwa tidur siang (atau tidur sebentar di tengah hari) sangat diperlukan untuk vitalitas kehidupan kita.

Kenapa kita perlu tidur siang? Banyak sebab. Sebab pertama karena kurang tidur di waktu malam. Ini juga mungkin yang sering saya alami. Maklum, pekerjaan programer/software developer itu banyak aspek seni dan kreatifitas, dan bagi saya, puncak kreatifitas di malam hari, di saat dunia sunyi.
National Sleep Foundation menyarankan agar setiap orang dewasa tidur 7-9 semalam. Tetapi berdasarkan studi CDC, rata-rata manusia dewasa tidur kurang dari 6 jam semalam.

Sebab kedua kita perlu tidur siang adalah kurangnya nutrisi. Kekurangan nutrisi menyebabkan badan cepat lelah. Kekurangan nutrisi dapat disebabkan karena kurangnya sarapan pagi, sehingga tidak cukup pasokan energi sampai malam. Atau juga disebabkan makanan yang kurang gizi.

Sebab lain, adalah karena memang secara alami badan diciptakan oleh Allah SWT, agar istirahat setelah waktu tertentu. Kita mengenalnya sebagai jam biologis.

Nah, kembali ke diskusi di judul, berapa lama waktu tidur  yang kita perlukan?

Untuk mengembalikan tingkat kewaspadaan, kita perlu tidur 10-20 menit.

Untuk meningkatkan proses kongitif dalam memori/daya ingat, maka kita perlu waktu 60 menit. Dengan durasi ini, maka dapat meningkatkan daya ingat kita, misalnya mengingat tempat, istilah dan lain-lain. Tetapi hati-hati, mungkin Anda pening saat bangun.

Tidur 90 menit, merupakan siklus penuh tidur. Durasi ini akan meningkatkan kerja otak dalam hal kreatifitas dan emosional dan pemrosesan memori, dalam belajar, misalnya belajar mengendarai sepeda. Bangun dari tidur durasi 90 menit ini memiliki inersia terkecil, maksudnya semakin kecil kemungkinan pusing/pening saat bangun, karena bangung pada waktu siklus yang pas.

Bila kita bangun dari tidur selama 30 menit, maka kemungkinan pusing saat bangun sangat besar. Inersianya paling besar.

Sumber:
How Long to Nap for the Biggest Brain Benefits
Calculate the Best Time to Nap with This Interactive Nap Wheel

Friday, September 27, 2013

R: bahasa/tool terbaik untuk belajar/praktek analisis data

Tidak dapat dipungkiri bahwa dunia digital semakin membutuhkan aspek analisis pada data. Kita mengenal fenomena "ledakan informasi", tetapi sesungguhnya yang terjadi adalah "ledakan data". Mendapatkan data telah menjadi proses yang mudah. Mengolah data untuk menjadi informasi dan mengolah informasi itu sendiri menjadi proses yang semakin rumit. Kerumitannya terletak pada semakin besarnya data. Sehingga wajar kalau akhir-akhir ini perburuan pengetahuan analisa "big data" semakin marak.

Sebagai analis data, kita tidak hanya memerlukan ketrampilan dan pengetahuan yang memadai dalam statistik, database, data warehouse (ETL), data mining, interpretasi data/informasi dan juga visualisasi informasi. Beragam ketrampilan tersebut memerlukan tools yang tepat, yaitu tools yang dapat membantu pekerjaan kita lebih efisiean dan efektif. Memilih tools yang tepat adalah tugas kedua kita setelah mendalami pengetahuan dan ketrampilan tsb di atas. Atau bahkan dalam mempelajari ketrampilan dan pengetahuan tsb justru kita memerlukan tools terlebih dahulu. Problem ini memang akhirnya menjadi seperti ayam dan telur, mana duluan? Paling tidak menurut saya, pengetahuan dasar stastistik dan database perlu terlebih dahulu kita miliki, baru kemudian memanfaatkan tools yang tepat, kita mengembangkan pengetahuan dan ketrampilan analisis data. Pengetahuan dasar statistik kita dapatkan di bangku sekolah (menengah/tinggi). Sekarang tinggal database, kita memang perlu mengambil mata kuliah database (khususnya relasional) atau kursus atau otodidak.

Nah, sekarang permasalahan utama kita adalah memilih tools. Banyak faktor yang perlu kita perhatikan dalam memilih tools Alhamdulillah kita berada dalam dunia informasi dan internet, sehingga untuk keperluan ini kita dapat melakukannya dengan search di internet atau melihat rekomendasi/artikel dari komunitas-komunitas atau website analis data.

Berdasarkan polling komunitas data-mining kdnuggets.com, tools tertinggi penggunanya adalah R. Selama tiga tahun (2011-2013) R menduduki peringkat teratas, dan tetap tumbuh besar [1].



Referensi:
1. Top languages for analytics, data mining, data science 
2. Poll: R top language for data science three years running

Tuesday, April 30, 2013

Javascript Tutorial: Beginning

Javascript adalah bahasa pemrograman yang banyak digunakan untuk menambahkan fitur interaktif pada aplikasi web, bergerak di sisi client. Tetapi dengan sistem node.js, Javascript dapat digunakan di sisi server. Program hibrid (desktop + web) berbasis Adobe Air juga dapat dibangun dengan javascript. Sehingga seperti sepupunya -- Java, Javascript adalah bahasa pemrograman yang sangat portable, cross-platform, run anywhere. Justru lebih lightweight dibandingkan Java. Di sisi client (browser), Javascript lebih responsive dibandingkan Java

Belajar Javascript gratis dan mudah. Gratis, karena banyak sekali tutorial online gratis. Salah satunya adalah favorit saya yaitu W3School. Mudah karena memang bahasanya tergolong mudah dibandingkan Java dan C/C++ yang kompleks. Mudah karena tools belajar onlinenya banyak tersedia seperti, lagi-lagi dari W3School yaitu Tri It Your Self. Menjalankan programnya, simple, kita hanya perlu web browser. Tapi hati-hati, tidak semua web browser mendukung javascript versi terbaru, khususnya IE dari Microsoft. IE terkenal lambat dalam mengadopsi standar, dan seringkali memiliki dialek dan library khusus sendiri.


Tag <script>


Sebagai contoh berikut ini Javascript ditulis di dalam tag <body> dan melakukan manipulasi penambahan script html di dalam body.

<body>

JavaScript can write directly into the HTML output stream:

<script>
document.write("<h1>This is a heading</h1>");
document.write("<p>This is a paragraph.</p>");
</script>

</body>

Kita hanya bisa menggunakan <strong>document.write</strong> di dalam output HTML.
Jika menggunakannya setelah dokumen di-load (misalnya dalam suatu funtion), maka keseluruhan dokumen akan tertimpa.

Javascript juga digunakan untuk menambahkan sifat reaktif pada dokumen html. Seperti kode berikut ini, bila kita mengklik tombol "Click Me!" maka akan muncul popup alert window "Welcome".
<button type="button" onclick="alert('Welcome!')">Click Me!</button>

Function dalam Javascript adalah kumpulan statement/perintah. Seperti contoh berikut ini fungsi myFunction akan merubah isi tag <body> ber-id "demo".

<p id="demo">
JavaScript can change the content of an HTML element.
</p>

<script>
function myFunction()
{
   x=document.getElementById("demo");  // Find the element
   x.innerHTML="Hello JavaScript!";    // Change the content
}
</script>

<button type="button" onclick="myFunction()">Click Me!</button>


Saturday, February 23, 2013

Free Dataset

Salah satu tahap awal dalam proses data mining baik untuk bahan ajar maupun riset adalah menyediakan dataset. Banyak sekali dataset yang tersedia gratis di internet. Berikut adalah sebagian daftarnya:

Yang biasa digunakan dalam buku teks:


Yang lainnya

Informasi selanjutnya:

Friday, January 04, 2013

PHP & MySQL Tutorial

Source:
  • W3School
    • http://www.w3schools.com/php/php_intro.asp
  • Free Webmaster Help 
    • http://www.freewebmasterhelp.com/tutorials/php/
    • http://www.freewebmasterhelp.com/tutorials/phpmysql
  • Tutorials Point
    • http://www.tutorialspoint.com/php/index.htm

Menghubungkan Mylyn (Eclipse) dan Redmine

Developer software, khususnya software opensource terkait bahasa pemrograman Java seringkali menggunakan Eclipse sebagai IDE-nya. Meskipun demikian pengguna Eclipse mulai berkembang tidak hanya programer Java tetapi juga Python dan web.

Mylyn adalah tool untuk manajemen task dan manajemen lifycyle aplikasi (ALM: application lifecyle manajemen) untuk Eclipse IDE. Antarmuka berfokus-task pada Mylyn memperkecil informasi overload dan memungkin pembuatan task multitasking secara mudah. Mylyn mengintegrasikan pengeditan secara offline dan secara otomatis memonitor aktifitas pemrograman kita, serta melinkan dengan seluruh artifak. Sehingga Mylyn dapat meningkatkan produktifitas kita dengan mengurangi informasi overload, memfasilitasi multitasking dan memudahkan proses sharing dengan tim.

Redmine adalah sistem manajemen task berbasis web+Ruby. Redmine memiliki user interface yang bagus dan memungkinkan manajemen project, source, bug dan sharing antar developer. Tetapi sebagian besar developer tetap ingin bekerja dengan IDE favorit mereka sembari tetap mengupdate task-task mereka ke tim via sistem manajemen task terpusat seperti Redmine.

Plugin Eclipse bernama Redmine-Mylyn-Connector dapat membantu menyambungkan kedua tool ini dengan mudah. Plugin ini mendukung integrasi 2 arah antara kedua tool. Plugin ini telah dikembangan selama 4 tahun, dan masih aktif dalam pengembangan.

Instalasi Redmine-Mylyn-Connector terdiri dari 3 langkah mudah sbb:

Instal Plugin Redmine-Mylyn-Connector di Redmine

Masuk ke direktori redmine/vendor/plugins dan download plugin dengan git:

git clone git://redmin-mylyncon.git.sourceforg.net/gitroot/redmin-mylyncon/redmine-mylyn-connector

Install Plugin Redmine-Mylyn-Connector di Eclipse

Pertama tambahkan situs repository plugin, bila ingin menginstal versi stabil tambahkan 

http://redmin-mylyncon.sourceforge.net/update-site/N/

Bila ingin menginstal versi terakhir tambahkan

http://redmin-mylyncon.sourceforge.net/update-site/dev/
 
Setelah menambahkan situs plugin, maka lakukan instal.

Konfigurasi plugin di Eclipse

Buat sebuah task repository baru dengan memilih Add Task Repository. Pilih Redmine connector dan isikan seluruh detail yang diperlukan. Direkomendasikan untuk menggunakan opsi API-Key untuk autentikasi, karena lebih handal dibandingkan kombinasi user/password.

Untuk menentukan API-Key, buka Redmine, lalu buka My Account dan klik link Show di bawah sesi API access key pada panel sebelah kanan.

Sekarang kita dapat melakukan query pada task kita dengan membuat sebuah Query baru dalam Task List.

Referensi
  1. Eclipse Web Tools Platform (WTP) Project 
  2. Mylyn task and application lifycyle management framework for Eclipse
  3. Redmine, flexible web-based project management
  4. Redmine-Mylyn-Connector di sourceforge