Tahukah kamu, kalau hari ini (13/09/2018) adalah hari programmer?

Banyak yang tidak tahu tentang hari programmer. Karena di Indonesia tidak banyak merayakannya.

Hari programmer (Day of the Programmer) merupakan hari profesi yang diakui di berbagai perusahaan teknologi dan industri software di dunia.

Hari programmer biasanya dirayakan dengan memberi ucapan selamat pada rekan-rekan programmer. Bahkan ada juga yang membuat event-event seru.

Kepan Hari Programmer?

Jika kamu mencari di Google dengan kata kunci “programemr day”, maka Google akan langsung menjawabnya.

Hari programmer dari google

atau “day of programmer”:

Yap!

Hari programmer tahun ini (2018) jatuh pada tanggal 13 September 2018.

Kenapa hari ini dipilih?

…dan siapa yang memilihnya?

Untuk menjawab pertanyaan ini, kita harus cari tahu sejarah dan asal usul hari programmer.

Sejarah & Asal Usul Hari Programmer

Hari programmer pertamakali diresmikan di Rusia.

Ceritanya…

Dua orang karyawan, Valentin Balt dan Michael Cherviakov (aka htonus) dari sebuah perusahaan software yang bernama Parallel Technologies.

Pada awal tahun 2002, mereka berinisiatif membuat petisi untuk diajukan ke pemerintah Rusia agar hari programmer diresmikan.

Lalu pada tanggal 24 Juli 2009, hari programmer mulai dirancang draft proposalnya oleh kementrian komunikasi dan media massa Rusia. 1

(Seperti kominfo di indonesia)

Presiden Dmity Medvedev

…dan akhirnya pada 11 September 2009, Presiden Rusia Dmitry Medvedev menandatangani keputusan tersebut.

Ini merupakan hari bersejarah yang perlu dicatat. 😊

Diresmikan tanggal 11 September, tapi kok hari programmer tahun ini (2018) jatuh pada tanggal 13 September?

Kenapa bisa begitu?

Pemilihan tanggal untuk hari programmer, bukan tanpa alasan.

Untuk lebih jelasnya, mari kita bahas:

Cara Menentukan Hari Programmer

Hari programmer tidak ditentukan dengan melihat hilal maupun sidang isbat. hehehe 😄

Hari programmer ditentukan berdasarkan hukum yang berlaku di dunia komputer atau digital.

Hari programmer akan jatuh pada hari ke-256 di setiap tahun.

Pada tahun kabisat, hari programmer akan jatuh pada tanggal 12 september. Sedangkan pada tahun biasa, hari programmer akan jatuh pada tanggal 13 September.

Hitungan 0 dimulai dari tanggal 1 januari.

Bulan januari

Lalu berlanjut sampai hari ke-256.

Bulan september

Kenapa dipilih hari ke-256?

Ini karena angka 256 (28) merupakan banyaknya angka berbeda yang mampu direpresentasikan dalam 8 bit.

The number 256 (28) was chosen because it is the number of distinct values that can be represented with an eight-bit byte, a value well-known to programmers. 256 is also the highest power of two that is less than 365, the number of days in a common year. 1

Maksudnya?

Kalau belum paham, coba ingat kembali pelajaran atau matakuliah Sistem Digital.

Mahasiswa Malas

Oke, kalau begitu saya jelaskan sedikit.

Dalam sistem bilangan biner, 1 byte itu sama dengan 8 bit (binary digit).

googling 1 byte sama dengan 8 bit

Nah 8 bit merupakan panjang dari angka biner:

0000 0000

Lihat 👆 jumlah digitnya, ada 8 biji.

Apabila kita ingin membuat angka desimal dari angka biner 8 bit, maka angka yang mampu dibuat adalah sebanyak 256. (angka 0 juga dihitung).

Contoh:

Apabila kita aktifkan semua biner menjadi 1111 1111, maka angka desimalnya adalah 255.

255 adalah angka desimal maksimal yang mampu direpresentasikan dalam biner 8 bit. 2

Lho! tadi katanya 256, sekarang kok 255.

Iya coba hitung dari angka nol (0), banyak angkanya ada berapa?

Tabel Bilangan desimal dan biner
0, 1, 2, 3, ... 255

Ada 256 angka desimal.

Ingat! programmer biasanya menghitung dari nol 😄.

Array aja selalu dimulai dari nol.

Oke, paham sekarang…

Lalu, alasan lain kenapa angka 256 dipilih, karena 28 akan sama dengan 256.

Dan juga 256, bila diubah menjadi heksadesimal akan menjadi 100.

Unik ya angka ini.

Kapan Hari Programmer?

Jadi ini hanya permainan angka-angka saja, alias NUMEROLOGY seperti yang dikatakan pada komik ini. 😄

Komik hari programmer

Bagaimana Cara Merayakan Hari Programmer?

Sebelumnya saya tegaskan dulu…

Hari programmer ini bukan hari raya seperti Idul Fitri dan Idul Adha. Melainkan hanya hari libur profesi.

Hari programmer sama seperti hari buruh, hari petani, hari guru, dan hari profesi lainnya.

Jadi yang saya sebut perayaan di sini, bukan perayaan dengan melakukan ritual tertentu.

Berikut ini beberapa cara merayakan hari programmer:

1. Ucapan Selamat

Hari programmer biasanya dirayakan dengan saling memberi ucapan “Happy programmer days” atau dalam bahasa indonesia “Selamat hari pemrogram.”

Selamat Hari Programmer

Ucapan ini biasanya disebar di sosial media dan forum-forum programmer.

2. Libur Coding

Beberapa orang memilih untuk libur dari aktivitas coding di hari ini. Karena hari programmer merupakan hari libur bagi profesi programmer.

Namun, karena hari ini belum resmi diakui di Indonesia. Maka banyak juga yang masuk kerja.

Programmer lagi ngoding

Untuk programmer freelancer, bisa libur bisa tidak.

Terserah mereka, hehe 😄.

3. Bikin Challenge

Salah satu challenge yang saya temukan di hari programmer adalah challenge dari Hacker Rank.

Challenge dari Hackerrank

Pada challenge ini, kita diminta untuk membuat program untuk menentukan hari programmer.

Challenge ini bertujuan untuk meningkatkan skill berpikir dalam menyelesaikan masalah.

4. Meetup dan Event

Meetup dan event sering diselenggarakan oleh komunitas programmer. Namun, meetup dan event yang mengangkat tema Hari Programmer belum saya temukan.

22499078_1321110097998572_6720472673006369396_o.jpg

Barangkali di tahun berikutnya akan ada event dan meetup di Hari Programmer.

Meetup dan event sangat bermanfaat untuk:

  • Menambah semangat dan motivasi;
  • Menambah teman dan network untuk kerja sama;
  • Menambah pengalaman;
  • Mengembangkan ilmu dan skill.
  • dll.

Harapan ke depan… semoga saja ada event yang bertema Hari Programmer.

Lalu di sana ada hackathon dan penghargaan untuk programmer terbaik di Indonesia atas kerja keras dan karyanya.

Bonus: Aplikasi Hari Programmer

Saya tertarik dengan challenge dari Hacker Rank.

Karena itu, bagian ini saya buat.

Kita akan mencoba membuat program untuk menentukan, apakah hari ini hari programmer atau bukan.

Yang perlu diingat:

Pada tahuan kabisat, hari programmer akan jatuh pada tanggal 12 september. Sedangkan pada tahun biasa, hari programmer akan jatuh pada tanggal 13 September.

Namun, agar tidak membuat fungsi lagi untuk menentukan mana tahun kabisat mana yang bukan

…saya akan menggunakan Javascript dengan modul momentjs. 3

Ini dia source code-nya:

var startOfYear = moment().startOf('year');
var programmerDay = startOfYear.add(255, "days").format('DD-MM-YYYY');
var today = moment().format('DD-MM-YYYY');

// check if today is programmer day
if (today === programmerDay){
    document.write("<h1>Today is programmer day🎉</h1>");
} else {
    document.write("<p>Today is not programmer day</p>");
}

document.write("<hr>");
document.write("<pre>");
document.write("Today         : " + today + "<br/>");
document.write("Programmer Day: " + programmerDay);
document.write("</pre>");

Penjelasannya:

Pertama kita ambil dulu tanggal untuk awal tahun 01-01-2018:

var startOfYear = moment().startOf('year');

Lalu dari tanggal tersebut, kita tambahkan 255 hari. Hasilnya nanti hari programmer akan jatuh pada hari ke-256.

var programmerDay = startOfYear.add(255, "days").format('DD-MM-YYYY');

Untuk memudahkan, kita format tanggalnya dengan format DD-MM-YYY yang akan menghasilkan 13-09-2018.

Lalu kita ambil tanggal hari ini:

var today = moment().format('DD-MM-YYYY');

Barulah kita cek, apakah tanggal hari ini (today) sama dengan tanggal di hari programmer (programmerDay).

// check if today is programmer day
if (today === programmerDay){
    document.write("<h1>Today is programmer day</h1>");
} else {
    document.write("<p>Today is not programmer day</p>");
}

Untuk memudahkan debugging, saya menampilkan kedua tanggalnya:

document.write("<hr>");
document.write("<pre>");
document.write("Today         : " + today + "<br/>");
document.write("Programmer Day: " + programmerDay);
document.write("</pre>");

Maka hasilnya:

Akhir Kata…

SELAMAT HARI PROGRAMMER 🎉

Bagaimana caramu merayakan hari programmer?

…dan bagaimana pendapatmu tentang hari programmer?

Yuk ceritakan di kolom komentar!


  1. Wikipedia. “Day of Programmer”. Retrieved 11 September 2018. [return]
  2. Wikipedia. “Sistem Bilangan”. Retrieved 11 September 2018. [return]
  3. https://momentjs.com/ [return]