Tuesday, December 25, 2018

Representasi suara dan pemrosesannya [3]

Tulisan ini adalah kelanjutan tulisan sebelumnya, catatan kuliah "Human perceptual system and its model", pertemuan ketiga.

Motivasi:
Apa perbedaan pemrosesan linear dan pemrosesan non-linear?
Pemrosesan linear:Transformasi Fourier, Laplace, Z, Wavelet
Pemrosesan non-linear: Sistem auditori, sistem produksi suara, sistem audio
Lebih jauh tentang perbedaan sistem linear dan non-linear bisa dilihat disini: https://youtu.be/nxGmkAgJaA8

Bagaimana mempelajari pendengaran?
- Fisiologi auditori
- Psikofisika auditori (psikoakustik)

Monday, December 17, 2018

Pengolahan sinyal auditori [2]

Ini adalah catatan kuliah yang saya transkrip ketika kuliah berlangsung: I656 - Human Perceptual Systems and its Models, pertemuan kedua.

Sistem auditori merupakan sistem pendengaran manusia.
Video tentang sistem auditori berikut memvisualisasikan tulisan di bawah ini:

Telinga manusia terbagi menjadi 3:
1. telinga bagian luar
2. telinga bagian tengah
3. telinga bagian dalam

Gambar berikut menjelaskan bagian-bagian telinga tersebut yang akan dijelaskan lebih detil di bawahnya.

Friday, December 14, 2018

Bermain (virtual) Piano di Ubuntu

Di zaman serba canggih ini, kita tidak harus memiliki piano untuk bisa bermain piano. Cukup dengan menggunakan laptop dan keyboard laptop-pun bisa dijadikan tuts piano. Begini caranya.

Instalasi
Saya menggunakan Ubuntu 16.04 untuk instalasi aplikasi piano ini. Anda bisa juga menggunakan OS lainnya. Aplikasi yang akan kita gunakan/install adalah vmpk (virtual midi piano keyboard). Untuk menginstallnya cukup mudah,

sudo apt install vmpk

Perintah tersebut juga akan menginstall qsynth, yang akan menginterface (menghubungkan) vmpk dengn sound output Ubuntu  (vmpk tidak menghasilkan suara, sehingga perlu interface untuk menghasilkan suara).

Monday, December 10, 2018

Pengantar Persepsi Manusia dan Pemodelannya [1]

Ini adalah catatan kuliah yang saya transkrip saat kuliah berlangsung untuk mata kuliah "Persepsi Manusia dan Pemodelannya", pertemuan pertama.

Persepsi: organisasi, identifikasi dan interpretasi informasi sensori untuk merepresentasikan dan memahami lingkungan.

Semua persepsi melibatkan sinyal dari sistem saraf (nerveous) yang dihasilkan dari stimulasi fisis dari organ pengindera.

Lima indera manusia:
- penglihatan
- pendengaran
- sentuhan
- perasa/pengecap
- penciuman

Kelima indera tersebut diindera oleh mata, telinga, kulit, lidah dan hidung.

1. Penglihatan
Mata merupakan indera penglihatan yang memiliki struktur kompleks terdiri atas lensa transparen yang memfokuskan cahaya pada retina. Retina sendiri terdiri atas dua organ penting, cell-rods dan cones. Cell-rods tidak sensitif terhadap warna namun sensitif terhadap cahaya daripada cones. Cones sensitif terhadap warna dan terletak pada bagian retina yang disebut fovea, dimana cahaya difokuskan oleh lensa. Manusia memiliki tiga cone (Red, green, blue) sedangkan anjing hanya memiliki dua saja (green dan blue), sehingga anjing tidak bisa membedakan warna hijau, kuning atau merah.

Penampang retina: rod, cones dan lapisan saraf (kiri-kanan)

Wednesday, October 17, 2018

Review Buku: 201 teknik presentasi

Dalam bukunya "Presentation skills 201", William "Bill" Steele (presentation skill trainer) membagikan kecakapan atau teknik presentasi sebagai berikut.

Perencanaan

Perencanaan sangat penting sebelum melakukan presentasi. Presentasi yang baik dipersiapkan dengan rencana yang baik pula. Jangan melakukan presentasi tanpa persiapan, dan jangan percaya pada orang yang bisa melakukan presentasi tanpa persiapan, kecuali dia sudah ahli. Diantara kecakapan atau teknik presentasi pada tahap perencanaan ini meliputi: bersungguh-sungguh melakukan persiapan, mendefinisikan apa yang ingin dicapai, memilih/memiliki tema, tekankan bahwa anda bukan audiens (tapi presenter), keluar dari kebiasaan, jangan abaikan suara kecil, jangan melalukan persiapan yang berlebihan, dan masukkan cerita pada presentasi anda.

Siapkan data dan buat data anda hidup, masukkan humor namun jangan mencoba melucu, bangun pemahaman dengan contoh, gunakan analogi untuk menjelaskan sains dan teknologi, bekerja dengan lawan, sitasi pengarang aslinya, nyatakan dengan jelas, mulai dengan mantap dan akhiri dengan mantap pula, sediakan rangkuman, pancing pertanyaan, pastikan pesan tersampaikan, hindari perubahan di menit-menit terakhir, dan persiapkan penampilan anda di panggung.

Persiapan Slide

Pada tahap persiapan slide kita bisa mencoba teknik brainstorming dulu: pesan apa yang ingin kita sampaikan baru kemudian beralih ke slide. Gunakan visualisasi yang baik, pewarnaan dan tema yang memukau namun tidak norak. Persiapkan juga untuk tampil tanpa slide (mati lampu misalnya, tidak ada LCD dll). Peragakan dan gunakan bahasa tubuh sebanyak mungkin jika ingin menggambarkan secara visual. Beralih dari slide ke slide selanjutnya secara halus. Jangan menjadi korban teknologi, intinya pada anda, bukan pada teknologi yang anda gunakan. 

Slide anda merefleksikan siapa anda. Jika anda menggunakan template milik kantor atau institusi anda, slide tersebut sepenuhnya milik anda. Anda bebas mengeditnya sebaik mungkin.

Latihan

Saturday, September 29, 2018

Pendakian Gn Fuji via Fujinomiya Trail: Rute, Estimasi Waktu dan Biaya

Persiapan

Video berikut sangat membantu untuk persiapan mendaki Fuji, khususnya via Fujinomiya trail. Langsung cus ke link youtube di bawah ini. Simak dengan baik, kalau perlu catat hal-hal penting yang sekiranya bermanfaaat ketika mendaki nantinya.

Rute

Rute yang kita gunakan adalah Fujinomiya trail. Selain Fujinomiya, ada tiga rute lainnya: Gotenba trail, Subashiri trail, dan Yoshida (Kawaguchiko) trail. Fujinomiya trail sendiri bukan rute yang populer, karena terletak di arah selatan. Kebanyakan orang mendaki dari arah Tokyo, khususnya rute Yoshida trail beserta dua rute lainnya. Awalnya, saat ibukota Jepang masih di Kyoto, rute Fujinomiya trail ini (katanya) adalah yang paling populer. Namun, begitu Ibukota Jepang berpindah ke Tokyo (Utara), maka rute yang populer adalah dari sisi utara Gunung Fuji.

Thursday, August 02, 2018

Deep Learning: CNN

Tulisan ini adalah kelanjutan dari tulisan sebelumnya tentang Jaringan Syaraf Tiruan (JST) .

Deep learning (tidak hanya) terbagi menjadi dua cabang algoritma besar: CNN (Convolutional NN) dan RNN (Recurrent NN). Masih banyak metode lainnya, namun seolah tenggelam oleh dua algoritma tersebut. Perbedaan utama CNN dan RNN adalah sebagai berikut.

CNN:
  1. Input berupa tensor dengan ukuran tetap (e.g: image)
  2. Output juga berupa vector dengan ukuran tetap (e.g. probablitias dari beberapa kelas berbeda)
RNN:
  1. Beroperasi pada sekuen vector atau tensor
  2. Contoh aplikasi: Text translation, speech to text, speech recognition, text to speech.

Sederhanya, jika input bisa diubah dalam bentuk "image", kita pakai CNN, jika data berupa vektor kita pakai RNN. Contoh, data ujaran (speech) juga bisa ditraining dengan metode CNN dengan memberi input jaringan berupa "image" spectrogram.

Kembali ke CNN. Masalah terbesar JST/NN. 

Jika sebuah image berukuran 50 x 50 pixel sebagai input, dan JST memiliki konfigurasi 2 hidden layer dengan layer pertama berisi 7500 neuron (node) dan layer kedua berisi 2000 node dan 2 ouput, maka jumlah weight (bobot) pada arsitektur JST tersebut:
$$ (7500 \times 2000) + (2000 \times 2) = 15004000 $$
Jumlah yang cukup "berat" untuk dijalankan dengan komputer spek standar. Sebagai solusinya, ditawarkan arsitektur JST yakni CNN yang bisa bekerja dengan mempelajari pola pada skala yang lebih kecil, dan menggunakannya untuk mengidentifikasi gambar yang lebih besar. Contohnya adalah apakah gambar input merupakan gambar singa atau macan. Dengan mempelajari sebagian kecil bagian gambar (misal: bagian mulut), maka informasi tersebut dapat digunakan untuk menentukan gambar yang diinputkan adalah singa atau macan.

Ilustrasi CNN untuk deteksi gambar macan/singa

Konvolusi

Ide dasar dari CNN adalah kovolusi itu sendiri. Jadi, setiap bagian pada image dikonvolusikan dengan kernel atau filter.  Kedua istilah tersebut, filter dan kernel size, pada Keras/Tensorflow dibedakan, filter sebagai representasi banyaknya feature map hasil konvolusi, dan kernel sebagai peng-konvolusi. Sebagai contoh, kita memiliki data image dengan ukuran 5 x 5 pixel, kemudian kita buat filter ukuran 2 x 2. Setiap bagian (2 x 2) pada data image dikonvolusikan dengan kernel atau filter 2 x 2 tadi. Lihat gambar berikut untuk lebih jelasnya.

Monday, July 30, 2018

Mengestimasi lokasi node pada Wireless Sensor Network berbasis Raspberry Pi dengan Algoritma Particle Filtering

WSN

Wireless Sensor Network (WSN) merupakan sekumpulan sensor yang saling terhubung secara nirkabel. WSN merupakan salah satu implementasi dari Wireless Ad Hoc Network. (Jaringan) Ad hoc sendiri merupakan jaringan yang dibuat "untuk tujuan khusus" dengan memanfaatkan fasilitas yang ada pada node itu sendiri. Contoh jaringan ad hoc adalah ketika menghubungkan dua laptop atau lebih dengan wifi internal dari salah satu laptop, bukan melalui router. Selain WSN, ada bentuk jaringan ad hoc yang lain seperti: Mobile Ad Hoc networks (MANET), Wireless Mesh Networks (WMN), dan Vehicular Ad Hoc Networks. Silahkan cari sendiri jika ingin tahu lebih detail tentang hal tersebut

Posisi node raspi. Idealnya antar node bisa dikondisikan pada jarak >= 1 m, terletak pada tinggi yang sama dan tidak ada rintangan antar node (pada gambar di atas dock bisa menjadi penghalang/barrier sinyal wifi antar node)

Membuat Jaringan Ad Hoc (dengan Ubuntu dan Raspi)

Untuk membuat jaringan Ad Hoc dengan beberapa Raspberry Pi, kita bisa menggunakan Laptop dengan OS Ubuntu (disini saya memakai Ubuntu 16.04). Langkah-langkah membuat jaringan ad-hoc dengan Ubuntu adalah sebagai berikut:
Setting jaringan ad-hoc pada Ubuntu 16.04
  1. Pada panel jaringan/wifi (gambar panah naik turun), klik "Create new network"
  2. Tulis nama jaringan ad hoc, contoh milik saya: bta-mbp-adhoc
  3. Isikan password jika perlu, kosongi jika ingin menyambungkan raspi dengan jaringan ad hoc tanpa password.
  4. Klik lagi top panel jaringan/wifi, pilih "edit connection"
  5. Pada tab "wifi" pastikan memilih "ad-hoc"
  6. Pada tab "IPV4 Setting", isikan IP address, misal 10.42.0.1, pada net mask isikan "255.255.255.0"
Selesai, cukup mudah. Catatan: Langkah selanjutnya diasumsikan bahwa Raspi telah konek dengan internet dan menginstall paket serta konfigurasi yang dibutuhkan (lihat halaman 1-9 slide INI).

Setelah login melalui ssh (atau bisa juga dengan mengeditnya melalui micro SD), kita perlu menyetel Raspi sebagai berikut.

Edit file /etc/network/interface:
sudo nano /etc/network/interfaces 

Tambahkan file berikut,
auto wlan0
iface wlan0 inet static
    address 10.42.0.3
    netmask 255.255.255.0 
    mtu 1500
    wireless-channel 13 
    wireless-essid bta-mbp-adhoc
    wireless-mode ad-hoc
    wireless-ap any

Ganti IP address dengan IP address yang tadi dimasukkan saat membuat jaringan Ad Hoc di Ubuntu, contohnya tadi saya memasukkan IP 10.42.0.1, maka pada raspi pertama di atas saya masukkan (misal) 10.42.0.3, pada raspi kedua 10.42.0.5, raspi ketiga 10.42.0.7 dan raspi keempat 10.42.0.9. Anda bisa memasukkan IP lain selama tidak bertubrukan, namun akan lebih mudah untuk memberi IP berurutan dan konsisten. Setelah itu restart semua raspi, dan coba konek dengan ssh dengan IP yang diberikan.

Jika anda ingin sharing internet dari PC Ubuntu ke raspi, anda bisa mengikuti tutorial di link ini.

Friday, June 29, 2018

Mengenal arsitektur MIPS: single-cycle vs pipelining

Arsitektur komputer merupakan hal yang menarik untuk dipelajari. Dengan memahami cara kerja komputer, khususnya processor, kita akan lebih mudah belajar IT, khususnya pemrograman dan komputasi. Masalahnya processor era modern menggunakan sistem yang kompleks, contohnya seperti i9, i7, m3 maupun processor buatan AMD dan IBM. Untuk mempelajari cara kerja processor, kita bisa memakai MIPS (Microprocessor without Interlocked Pipelined Stages), processor jaman baheula yang sudah tidak diproduksi di zaman ini [2]; namun konsepnya tetap digunakan oleh processor modern yang sekarang kita gunakan.

Secara umum, cara kerja processor dilihat dari data pathnya dapat dibagi menjadi dua yakni single-cycle dan pipelining.

Gb 1. Simple data path pada arsitektur MISP

Berdasarkan gambar diatas, bisa dijelaskan tahapan datapath pada eksekusi single-cycle sebagai berikut:
  1. PC (program counter): menahan alamat dari instruksi yang akan dieksekusi.
  2. Add: Menambahkan nilai dari PC(alamat saat ini) dengan nilai konstan 4, dan menghasilkan alamat tentatif untuk instruksi selanjutnya. (jika instruksi selanjutnya adalah percabangan dan syaratnya terpenuhi, maka alamat tersebut tidak dipakai).
  3. Add/ALU result: bagian ini menghitung alamat target selanjutnya (branch target address). Inputnya adalah PC+4 dan output dari konstan 16 bit yang di-sign extend menjadi 32 bit dan digeser kiri (left shifted) 2 bits.
  4. Mux: bagian ini menghasilkan alamat selanjutnya. Jika instruksi selanjutnya adalah conditional branch, maka output dari 3 dipilih, selainnya digunakan outout dari 2.
  5. Sign-extend: bagian ini meng-extend/memperluas input 16 bits menjadi 32 bit (dengan menambahkan 16 bit baru dengan "tanda" yang sama dengan bit paling kanan).
  6. Mux: memilih data yang akan ditulis pada register tujuan dari data yang dibaca dari memory dan data hasil perhitungan ALU.

Meskipun cara kerja processor single cycle diatas dapat bekerja dengan baik namun tidak dipakai di komputer modern karena:
  • Semua instruksi harus dieksekusi dalam satu siklus.
  • Lama waktu eksekusi merupakan jumlahan dari tiap instruksi, artinya jika ada instruksi yang dieksekusi cukup lama, maka instruksi lain akan menunggu,
Sebagai solusinya, diperkenalkan pipelining. Analogi yang cukup sederhana adalah proses mencuci, mengeringkan, menyetrika dan melipat/memasukkan lemari. Pada teknik single-cycle (satu siklus), semua tahapan dilakukan berurutan, mencuci dulu, setelah selesai baru dikeringkan, kemudian disetrika dan dimasukkan lemari, baru mencuci lagi. Pada teknik pipelining, sambil mengeringkan, kita bisa mencuci lagi, saat cucian pertama disetrika, cucian kedua dikeringkan, dan cucian baru (ketiga) bisa mulai dicuci. Dengan cara pipelining seperti ini, waktu pemrosesan menjadi jauh lebih sedikit. Gambarnya ditunjukkan seperti di bawah.

Monday, May 21, 2018

Menginstall library CUDA 9.2 dan CuDNN 6 pada Ubuntu 16.04

Catatan singkat instalasi CUDA 8 (Upgaded ke 9.2) dan CuDNN 6 pada Ubuntu 16.04 Xenial Xerus.

OS: Ubuntu 16.04.4 LTS, 64-bit
CPU:  i9-7900X CPU @ 3.30GHz × 20
GPU: GeForce GTX 1060 6GB/PCIe/SSE2

Untuk instalasi CUDA 9.2, baca bagian bawah tulisan ini.

Langkah-langkah instalasi

Jalankan langkah-langkah berikut pada terminal, saya sarankan anda berada di "/tmp".
$ wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_8.0.61-1_amd64.deb
$ wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libcudnn6_6.0.21-1%2Bcuda8.0_amd64.deb
$ wget http://developer.download.nvidia.com/compute/machine-learning/repos/ubuntu1604/x86_64/libcudnn6-dev_6.0.21-1%2Bcuda8.0_amd64.deb
$ sudo dpkg -i cuda-repo-ubuntu1604_8.0.61-1_amd64.deb
$ sudo dpkg -i libcudnn6_6.0.21-1+cuda8.0_amd64.deb
$ sudo dpkg -i libcudnn6-dev_6.0.21-1+cuda8.0_amd64.deb

Kemudian tambahkan path instalasi di ~/.bashrc seperti berikut:
$ vim .bashrc
Anda bisa menggunakan Gedit jika tidak ingin menggunakan vim.
# cuda path
export PATH="/usr/local/cuda-8.0/bin:$PATH"
export LD_LIBRARY_PATH="/usr/local/cuda-8.0/lib64/$LD_LIBRARY_PATH"

Untuk mengeceknya, gunakan perintah `nvcc-version` dan `watch nvidia-smi`:

Monday, May 07, 2018

Pengalaman membeli simcard/HP di Jepang tanpa kartu kredit

Memiliki nomor Jepang saat di Jepang hampir mendekati kebutuhan, karena untuk "hidup" kita butuh HP. Contoh kecil adalah ketika bertransaksi online, baik untuk pembelian, pembayaran tiket dll, telfon tetap dibutuhkan untuk konfirmasi, utamanya saat akan menerima barang. Nah, hampir semua provider telekomunikasi di Jepang mensyaratkan kartu kredit sebagai alat pembayaran, the only one. Namun, ada beberapa provider yang menyediakan alternatif pembayaran melalui deposit transfer dari akun bank (振り込み/furikomi), tanpa mengeluarkan biaya yang mahal.

Provider apa sajakah itu...? Berikut pengalaman saya.

1. Softbank Prepaid
Softbank merupakan provider yang paling nyaman untuk foreigner karena ketersediaan layanan berbahasa inggris. HP pertama saya adalah softbank flip (non-smartphone) prepaid. Saat itu harganya hanya 2000 yen plus pulsa 1500 yang berlaku sebulan. Nomor tersebut aktif selama setahun (hanya bisa menerima saja ketika bulan pertama habis), dan bisa diisi ulang per bulan (3000 yen).
Saat ini saya juga masih menggunakan softbank prepaid, bedanya tahun lalu saya beli SIM cardnya saja (HP dari Indonesia), biaya awal 3000 yen plus pulsa 3000 yen untuk dua bulan, masa tenggan satu tahun dan jika diisi lagi akan bertambah masa tenggang setahun lagi.
Pembayaran kartu prepaid ini bisa secara tunah/cash di counter softbank.

2. Softbank
Saat saya kerja, saya beralih ke Softbank pasca bayar, dapat HP Dell (diskon 50%). Biaya bulanan sekitar 2000 yen plus modem mobile 4000 yen per bulan, jadi totalnya sekitar 6000 yen. Biaya yang besar, namun hanya itu cara saya bisa berkomunikasi dengan keluarga di tanah air saat itu. Dengan masa kontrak minimal 2 tahun, saya harus setor ke softbank minimal 24 x 6000 = 134000 yen plus biaya awal 10000 dan tagihan yang membludak jika roaming atau over kuota.
Pembayaran kartu ini melalui deposit tranfer atau furikomi, potong tabungan tiap bulan.

3. Rakuten Mobile
Selain Softbank prepaid, saat ini saya juga menggunakan kartu rakuten mobile untuk akses internet di luar kampus. Plan yang saya gunakan adalah "data only", jadi tidak bisa menerima telfon dan sms. Kuota yang saya ambil adalah 3.1 GB per bulan dengan biaya per bulan 900 yen. Biaya awal sebesar 4000 yen dan ada biaya administrasi tranfer karena saya menggunakan akun bank untuk furikomi, yakni 100 yen. Jadi saya harus membayar 1000 yen tiap bulan selain biaya awal tadi.

4. Skype Credit
Skype sebenarnya bukan merupakan provider, tapi IP Phone atau VoIP. Jadi bisa digunakan untuk telfon (termasuk sms, dan ada nomornya) namun harus memiliki koneksi internet. Saya beli kredit skype 1000 yen (tanpa langganan dan batasan waktu) via amazon.co.jp. Metode pembelian kredit (pulsa) skype yang lain adalah via kombini dan debit/credit card. Untuk dapat nomor, kita perlu langganan.

Selain metode diatas, masih ada beberapa provider lain seperti AU, dan provider bayangan (MVNO, Mobile Virtual Network Operator) lainnya selain tiga MNO utama: AU, softbank dan Docomo. Sekali lagi, jika menginginkan harga termurah, pembayaran dengan kartu kredit tetap lebih murah.

Friday, April 27, 2018

Menulis Kanji pada Latex

Ada dua cara/metode utama yang menurut saya simple untuk menulis kanji dengan latex, pertama tetap menggunakan engine pdflatex, kedua dengan menggunakan engine platex, dengan tool ptex2pdf. Cara kedua ini sebetulnya gabungan antara platex/ptex dan dvipdfmx. Keduanya engine tersebut (pdflatex dan platex) merupakan engine latex modern. Latex adalah kumpulan makro dan banyak engine yang digunakan selain engine asli "Tex" yang dibuat oleh Donald Knuth tahun 1978. Tex kemudian dikembangkan menjadi \LaTeX oleh Leslie Lamport pada tahun 1983. By default, latex menggunakan engine etex (Ubuntu/Debian versi sekarang masih menggunakan etex rilis 1994). Pdflatex juga menggunakan engine etex dengan output pdf. Kedua metode yg saya jelaskan di bawah menggunakan dua pendekatan yang berbeda untuk menulis kanji yakni pdflatex(tex) dan platex (eptex). Pada pdflatex (selanjutnya disebut latex), kita perlu menginput package CJK yang bisa digunakan untuk menulis kanji, sedang pada platex/ptex, kita tidak perlu menginput package tambahan, karena sejatinya ptex/platex dibuat agar bisa men-support kanji by-default.

Hasil penulisan kanji dengan pdflatex (atas) dan platex (bawah). Platex menunjukkan tampilan kanji yang lebih halus daripada hasil generasi pdflatex.

Tuesday, April 24, 2018

How to obtain CoE from Kanazawa Immigration Buerau (Nagoya Branch) and send to your country

Here is a small note I made when applying for Certificate of Elibility in Kanazawa Immigration office (branch of Nagoya Immigration office).

List of document (as described by Immigration office web site):
  1. Application Form for Certificate of Eligibility (available on the Immigration Bureau website).
  2. Proof of applicant’s relationship with the student. One of the following documents indicating the relation under the student’s country’s laws: A copy of an applicant’s family register, marriage certificate for spouse, and/ or birth certificate for children.
  3. A copy of the student’s Residence Card or a copy of his/her passport
  4. Proof that the student will be able to support his/her family throughout their stay in Japan. 
    1. Privately financed students should submit their bank statement indicating balance of deposit or a duplicate copy of remittance from home country. 
    2. Japanese Government (Monbukagakusho) scholarship students should submit Certificate of Monbukagakusho Scholarship Student.
  5. Certificate of Studentship issued.
  6. 1 photo (4cm×3cm) of each family member taken within 3 months of the day of application
  7. A self-addressed envelope affixed with a 392-yen stamp (for the recorded delivery purpose)
Note: In some cases, additional documents will be requested by the Immigration Bureau.

List document I submitted

Wednesday, April 04, 2018

University Entrance Speech by Asano-san: Lessons Learned

Today, I got one of the best speech I ever heard directly in university entrance ceremony (入学式). It was delivered by the president of my university, Asano-san. Moreover, the president is known in our university by his "Asano vision",  a vision that he brings to "rule" this university.

First things that I caught from his speech is about the feeling of new student entrancing the university. When entering graduate university, there is two type of students: 1) one who wants to take the challenge, 2) another who worries whether he/she can graduate from the university. No matter which type you are, you should do your best to tackle obstacles in the university. Attend all class, never miss one, submit all homework, focus on your research, make it narrow as much as possible, and you will be graduated.

To support this idea, Prof. Asano shortly described the work of Angela Duckworth of University Pennsylvania. It is not diligent or IQ that makes success in life but GRIT: perseverance and passion for long-term goals. An ability to keep hard work. The rule is called 10000 hours rule. The rule implies that 10000 hours of continues effort is the key to success. However, making effort without aims didn't make any significant result. Set the final aim, and divide it into pieces, everyday goal. Reach goal one by one. Grit nonetheless demonstrated the incremental predictive validity of success measures over and beyond IQ and conscientiousness. Collectively, these findings [1] suggest that the achievement of difficult goals entails not only talent but also the sustained and focused application of talent over time. Our head (read: brain) has the same capability as Einstein's brain. It depends on us to use it or not to use it. The problem is a will, there is or not, not the capability (can or can't).

The second one is about constant work, be persistent. Asano-san does running for 6 km every week on the treadmill. No matter how busy he is, as long as he can run, he will run. No ambition, no target. He just wants to keep persistent although he will get old and older. He also keeps walking around campus every Thursday, after lunch. The other record is he keeps his weight, every day. Another JAIST professor walks about four kilometers every day after completing the class/lab. He takes the route from the university to the nearest station. For your information, there is a free shuttle bus from university to the station. So, money is not the reason.

The last one is about the self-confident. It is the most important thing in a life. If you have self-confident, how big the task is given to you, you can accomplish it. To maintain a strong will, we need physical strength by physical exercise. Of course, you need to develop your skill. In contrast, although you are a skilled student, if you are not self-confident, you will be in trouble.


Additional reference:
  1.  Duckworth, Angela L., Christopher Peterson, Michael D. Matthews, and Dennis R. Kelly. "Grit: perseverance and passion for long-term goals." Journal of personality and social psychology 92, no. 6 (2007): 1087.
---
About this text
I analyzed the text above by using coh-metrix and I got the following result.

Saturday, March 31, 2018

Tutorial Shell Unix/Linux untuk pemula

Shell Linux/Unix merupakan tools yang sangat powerful. Jika kita bisa menggunakannya dengan baik, shell dapat digunakan untuk menyelesaikan permasalahan apapun yang berkaitan dengan komputasi. Berbeda dengan GUI (graphical user interface), mudah diawal namun tidak fleksibel. Contoh sederhana, jika anda ingin merubah satu kata yang sama dengan kata yang lain dalam 1000 file teks, apakah anda tidak capek melakukannya dengan GUI? Dengan shell, hal tersebut bisa dilakukan hanya dalam satu menit. Beda dengan menggunakan GUI yang membutuhkan waktu berjam-jam.
Laman depan Tutorial Shell Linux

Alhamdulillah, saya telah menyelesaikan tutorial Shell Linux/Unix untuk pemula. Tutorial ini saya terjemahkan secara bebas dari Carpentries' shell-novice yang saya improvisasi dan kembangkan dengan bahasa Indonesia yang sederhana dan mudah dipahami. Langsung saja cus ke link berikut.
https://bagustris.github.io/shell-tutorial/
Anda juga bisa berkontribusi pada tutorial tersebut. Jika menemukan salah ketik, silahkan diberbaiki  diperbaiki. Jika ada yang bisa di-improve, silahkan juga. Buat pull-request, insyaAllah saya accept selama itu baik. Karena di-track dengan Git, anda harus menguasai Git jika ingin berkontribusi. Jika ingin belajar git sekalian, silahkan pelajari posting saya tentang git disini.


Tuesday, February 13, 2018

Japanese Word for Masjid/Mosque

モスク、マスジドOR 回教寺院? 

私はムスリム人です。イスラムは私の宗教。イスラムのお祈り場所の名前は何ですか?ムスクか、マスジドか、回教寺院か?

アラビア語で、イスラムのお祈り場所名前は「masjid」。この言葉の意味は衰弱場所。お祈りの一番大切は衰弱です。人の最も風琴は頭脳 です。この意味は、神様に人は意味ない。この link はどうイスラムのお祈りで衰弱中。衰弱はアラビア語で「sujud」です。だから、 名前はマスジド、衰弱の場所。

英語で「masjid」は「mosuqe」、だから、日本語で「モスク」。この言葉はスペイン語から、「mezquita」。

日本語でイスラム教のは回教です。だから、イスラムのお祈り場所の名前は「回教寺院」。この言葉が適切だと思ういます。

でも、日本で、みんな名前はは「モスク」、英語で「Masjid」。何で「回教寺院」じゃない?日本に住んでいるので、日本語の単語を使いましょう。 回教お祈り場所名前は 回教寺院です。

Update:
他の言葉があります:寺院 (回教寺院の短い形)。例えば:
それはイスラム教の寺院です。
That is a Muslim mosque.

そして4つの言葉はあります:モスクと、マスジドと、寺院と回教寺院です。

Thursday, February 08, 2018

Part of Speech (kelas kata) Bahasa Jepang

Untuk menguasai bahasa Jepang (mampu berbicara dan membaca), kita harus memahami kelas kata bahasa Jepang, Part of Speech kalau dalam bahasa Inggris. Karena, suatu kata dalam bahasa Inggris bisa berbeda kelas katanya dalam bahasa Jepang (padanan katanya).

Contoh:
  • drive a car (verb phrase, English) : mengendarai mobil
  • kuruma no unten (noun phrase, Japanese): mengendarai mobil
Yang paling penting juga: bahasa Jepang menganut pola SOV (subject-object-verb), bukan SVO seperti bahasa inggris dan Indonesia. Contohnya seperti: saya-buah-makan (watashi ha kudamono wo taberu). Bahasa lain yang menganut pola SOV adalah bangla(deshi), konon ini yang memudahkan mereka belajar bahasa Jepang (meski faktanya banyak juga yang kesulitan).

Kelas kata bahasa Jepang secara "sederhana" dapat dibagi sbb:

Monday, February 05, 2018

Warna-warna noise (bising)

Bising, atau lebih familiarnya noise atau derau, memiliki banyak warna. Ya warna. Ada bising putih, bising pink, bising coklat, tiga itu yang paling terkenal. Warna bising lainnya adalah, bising merah, bising biru dan bising abu-abu. Tentunya kita jarang mendengar warna bising tersebut bukan? Pasti. Kita lebih familiar dengan white noise, pink noise, brown(ian) noise, red noise, blue noise dan grey noise. Maka, akan lebih mudah mendefinisikan dengan istilah aslinya dalam bahasa inggris daripada menterjemahkannya dalam bahasa Indonesia.

Berikut adalah pengertian warna-warna noise dan contoh suara dari warna noise tersebut.
  1. White noise
  2. Suatu noise (bising) dikatakan white noise jika power spectrumnya independen/konstan terhadap frekuensinya. Analoginya, cahaya putih mengandung semua frekuensi secara flat/merata (secara riil tidak flat sempurna, tapi secara matematik flat). Jika total power dari suatu noise dapat dihitung dengan persamaan, $$\bar{P} =\int_{f_i}^{f_u}df~N_0(f), $$ Jadi pada kasus white noise, maka power sinyalnya menjadi: $$ \bar{P}=N_0(f_u - f_i)=N_0 (BW),  $$ dimana BW adalah lebar pita noise pada spectrum yang konstan.
    Plot power spectrum white noise (sumber:[3])
    Untuk mendengarkan (dan mendownload) white noise, klik gambar di bawah ini (jika memakai headset, kecilkan volumenya dulu).

Tuesday, January 30, 2018

Belajar bahasa Jepang melalui gadget

Masalah:
Saya sudah lama tidak menulis, sejak pertengahan menjadi mahasiswa s1. Sejak itu saya lebih banyak mengetik dengan laptop. Karenanya saya tidak piawai menulis. Namun, saya kuat dalam mengetik.

Goal:
Bisa membaca kanji, bisa mengetik kanji
Solusi:
Belajar bahasa Jepang dengan PC, tablet dan smartphone.

Wednesday, January 24, 2018

How-to: Write a Research/Study Plan

Planning a research is the first step to authoring a Ph.D. The next steps are drafting, writing and finishing a doctoral thesis or dissertation. However, the first step is the most important. We'll never walk through 1000 steps if we don't walk on the first step. A journey of a thousand miles begins with a single step. Right..?

So, let's start. The research plan should include as following order;
  1. Theme (one sentence, almost the same as the title)
  2. Backgrounds (problems, previous reports for each problem, advantage/disadvantage of the previous research (if not separated in "previous work", remaining problems, final target)
  3. Purpose (your tackling problem (what/why), a main goal (a single purpose that must be achieved), sub-goals (should be achieved) to achieve the main goal)
  4. Methodology (how to achieve each subgoal, how to combine these to achieve the final purpose)
  5. Expected results and contributions.
That's all that I got from my supervisor here. Great! So, let's move to the next step.
Life is getting started. Move dynamically!

Wednesday, January 10, 2018

Berpikir terbalik

Kadang saya suka berandai-andai: bagaimana kalau sebaliknya...?

Saat ramai-ramai izin taksi online atau ojek online dipermasalahkan, saat itu saya punya pikiran: bagaimana kalau sebaliknya...? bagaimana kalau taksi dan ojek konvensional yang dilarang saja: semua harus online. Setidaknya ada manfaat: keterbukaan dan kemudahan, meski hanya untuk sebagian orang (di masa depan tentu manfaatnya lebih banyak).

Saat perayaan tahun baru dilarang: bagaimana kalau sebaliknya...? bagaimana kalau malah harus merayakan dengan hal yang negatif...? OK, begini urutannya:
Tidak boleh merayakan sama sekali --> boleh merayakan dengan hal yang positif --> boleh merayakan dengan hal yang positif/negatif --> harus merayakan dengan hal yang negatif.
Bagaimana jika seperti itu...?

Terkait "publikasi harus terindeks Scopus". Bagaimana kalau dibalik: Tidak boleh publikasi yang terindeks scopus. Atau kalau mau lebih extrim lagi: jika (sengaja) publikasi (hanya) terindeks Scopus --> pecat!

Bagaimana jika sepert itu...?

Anda tidak bisa melarang orang yang memakai cadar atau memakai jilbab. Sebaliknya anda juga tidak bisa melarang seseorang berpakaian seminimal mungkin atau (hampir) telanjang. Peraturanlah yang mengaturnya. Dan agama saya kaya akan peraturan seperti itu.

Dunia diciptakan berpasangan, ada hitam ada putih, ada gelap ada terang.

Ini pikiran ekstrim, setidaknya ada perimbangan dari satu kubu bahwa tidak ada kebenaran mutlak selama kita di dunia ini. Selama agama tidak melarang, tidak masalah. Peraturan buatan manusia banyak salahnya dan bisa diubah.

Monday, January 08, 2018

(Tidak) Merayakan tahun baru (2018): kemudahan menjalankan ibadah di Jepang

Tahun baru 2018.

Berawal dari keinginan untuk mengisi liburan dengan kegiatan yang postif. Memanfaatkan musim libur, awalnya "kami (saya + Dwi Prananto)" ingin menggunakan 18 kippu, tiket terusan murah meriah yang yang bisa dipakai untuk semua jenis kereta express dan local. Namun, karena seat kereta Moonlight Nagara sudah habis, kami memutuskan untuk naik bis. Pada (perayaan) Tahun baru ini, kami mendapatkan kemudahan menjalankan ibadah (sholat) di beberapa public space di Jepang.

Tokyo

Kami berangkat dari Nomi (能美市) jam 8 malam. Dengan menggunakan bus shuttle dari kampus menuju Tsurugi eki (鶴来駅). Dari Tsurugi dilanjut kereta hokutetsu (北陸石川線)  ke nishi-kanazawa (西金沢)/shin-nishikanazawa (新西金沢), dan dengan JR ke Kanazawa. Bus ke Tokyo berangkat dari Kanazawa eki (nishi gate) jam 22.15, dijadwalkan sampai di Tokyo ikebukuro jam 7.10, namun agak terlambat, jam 7.30. Pesan tiket Bus bisa lewat web ini, dan bayar via kombini atau credit/debit card. Jangan takut, bis ini amat sangat nyaman, lengkap dengan penutup kepala dan tempat kaki yang membuat tidur menjadi pulas.

Dari Ikebukuro Sunshine bus terminal kami berjalan menuju stasiun Ikebukuro. Dari Ikebukuro kami naik Yamanote Line ke Ueno untuk menuju ke Space hostel. Harusnya ada eki yang lebih dekat, yakni Iriya. Karena belum tahu, kami turun di Ueno dan jalan ke Space hostel. Kelebihan hostel ini, selain murah juga bisa check in lebih pagi, jam 08.00 JST. Hostel ini juga dekat dengan Ueno koen, zoo, National Museum dan beberapa obyek wisata lainnya.

Tuesday, December 26, 2017

Kembali ke Jepang: Life at Nomi

Tak terasa, sudah tiga tahun saya meninggalkan Jepang, tepatnya 3 tahun 3 bulan. Alhamdulillah, Allah menakdirkan saya kembali ke Jepang melalui MEXT. Melalui seorang teman, saya mendapat informasi tentang beasiswa MEXT, kemudian saya apply beasiswa tsb, wawancara dan alhamdulillah diterima. Saat bekerja di Jepang dulu, saya sudah beberapa kali apply beasiswa dan gagal. Saya sendiri bisa ke Jepang saat itu dengan beasiswa Jasso, kemudian bekerja di sebuah perusahaan Jepang di Mie-ken. Pelajaran yang bisa diambil, jangan takut untuk mencoba. Puluhan kali saya mencoba mendaftar beasiswa (Jepang) sejak S1, kemudian setelah lulus S2, kemudian setelah jadi PNS, akhirnya berbuah. Sebelumnya saya diinstruksikan untuk mendaftar beasiswa ke Eropa, namun hati kecil saya ingin kembali je Jepang, lingkungan dimana saya sudah terbiasa. Dan Tuhanpun mengabulkannya, Aamiin.

Saya masih ingat betul email terakhir dari calon supervisor yang mereject aplikasi saya, beliau menulis: "I regret to tell you this bad news, but I am hoping your fruitful stay in Japan", dan alhamdulillah, insyaAllah menjadi kenyataan.

Saturday, December 16, 2017

私の日本語教室

毎週、私は日本語教室に3回かい行きます。 「辰口」と「JAIST」と「 根上」です。

辰口教室は能美市 岩内コミュニティーセンターで火曜日の10時から12までです。先生は西川先生です。西川先生とは、ちょっと漢字を勉強しています。辰口のクラスは近いちかいです。JAISTからうちからあそこまで先生の車で5分ぐらいです。能美市日本語の先生はとても親切です。日本語の本は「みんなの日本語初級Ⅰ」です.今まで辰口では第10課まで勉強しました。

JAIST教室は火曜日の午後3時から5時までです。先生は滝沢(たきざわ)先生章子です。先生とは章子に、会話を勉強しています。私はJAISTの留学生ですから、 JAISTのクラスは一番近くてちかいです。うちからあそこまで2分ふんぐらいで行けます私はJAISTの留学生です。JAISTのクラスは第14課まで勉強しましたです。

根上教室は能美市 根上学習センターで土曜日の10時から12時までです。先生は山本先生です。あの先生は凄い偉い先生です。山本先生とは、日本語の文法を勉強しています。本は同じです、「みんなの日本語」で。今まで勉強は第17課まで勉強しました。です。根上のクラスは一番遠いです、でも勉強は努力ありますですよでも何かを学ぶためには努力することが一番大切だと思います。

日本語の勉強はとても面白いです。私は日本語だけででけはなく、日本の文化も勉強したいと思います。



ノート:
  • striketrough --> revised by 滝沢 先生
  • bold --> new from 滝沢先生

Thursday, November 23, 2017

Menulis persamaan Matematika dengan Latex di Blogger

Ini adalah tips lama, namun setelah saya cek, ternyata banyak skrip latex saya yang error karena server mathjax telah berpindah dari CDN ke CDNJS (as April 2017).

Sederhananya, salin kode berikut ke dalam theme html blogger anda (theme > edit html), persis setelah <head>.

<!-- for latex -->
<script type="text/x-mathjax-config">
 MathJax.Hub.Config({
  tex2jax: {inlineMath: [['$','$'], ['\\(','\\)']]}
 });
</script>
<script async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.1/MathJax.js?config=TeX-AMS_CHTML" type="text/javascript">
</script>

Berikut adalah contohnya,
$$ E = mc^2 $$

Persamaan di atas ditulis dengan,
$$ E = mc^2 $$


Selamat mencoba!

Update Juli 2020:
- Ganti skrip yang dicoret di atas dengan skrip berikut:
<script src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript">

Update Januari 2021:
- Setelan (config) skrip untuk latex yang pakai sekarang seperti terlihat di bawah ini.


Referensi:
  1. Davide Cervone, Casey Stark, Robert Miner, Paul Topping, Frédéri, MathJax Documentation, Release 2.7, Nov 08, 2017.
  2. http://mathjaxtest.blogspot.com/


Wednesday, November 22, 2017

Klasifikasi Emosi

Tulisan ini bukan tentang "perkenalan dengan emosi" namun tentang seri pengenalan emosi (secara otomatis, khususnya dari ujaran/speech). Tulisan pertama ini berkenaan dengan jenis-jenis pembagian emosi dan alasan dibalik pembagian tersebut.

Emosi manusia terbagi menjadi beberapa jenis. Pembagiannya pun beragam, tergantung siapa dan berdasarkan apa dia membaginya. Tentunya yang membagi adalah orang yang ahli dibidangnya, misalnya psikolog, psikiater, atau neuropsikolog.
Pembagian emosi secara diskirt (Sumber: Wikipedia)

Saturday, November 18, 2017

日本語を勉強しましょう!!!

日本語を勉強しましょう。

私の名前はバグスです。 インドネシアからきました。三音前に日本に住んでいます。
今日本大学の院研究生です。
この文は日本語書いています。 現在に日本語を勉強しています。
これは私が日本語を学ぶ方法です. 

日本語本 (フリーテキスト/free textbook)

日本語の本は沢山あります。 この下に、私が日本語を学ぶために使ったフーリーテキストです。
他本は: みんあ日本語。でも、その本を買いてください。

辞書 (dictionary)

辞書は大切です。簡単はソフトウェアを使います、PC と Android スマートフォン です。

Spaced Repetition

Spaced repetitionは方法です。この方法では、この間休憩があります。 そして、 Study - Stop - Study - Stop - ...
wiki >> https://en.wikipedia.org/wiki/Spaced_repetition
この方法を用いることで、日本語学習を改善することができます。

ソフト (Application)

spaced repetition は方法です。ソフト名前SRS、spaced repetition software. このSRSはいいです。
はい、あれは最初ポストです。あと、日本語勉強しましょう。がんばります!!!


インドネシア語で

Ini adalah kesekian kalinya saya belajar bahasa Jepang. Pertama kalinya tahun 2011, sampai 2014 saya pulang ke Indonesia, alhamdulillah sekarang dapat kesempatan ke Jepang lagi. Ayo belajar bahasa Jepang! Ikatlah ilmu dengan menuliskannya. Ini cara saya `mengikat` ilmu bahasa Jepang, dengan membagikan tools dan tips belajar bahasa Jepang di atas. Semoga ini merupakan success story belajar bahasa Jepang setelah beberapa kali fail sebelumnya. Ganbatte!

Thursday, November 16, 2017

Tutorial python virtualenv

Bahasa pemrograman python sedang boooming, menurut IEEE programming language rank, python menempati urutan pertama. Setelah membuat tutorial singkat, learning python: the hardway, saya jarang membukanya dan menggunakannya. Untuk memaksa hal tersebut, saya membuat tutorial lagi, yang saya sadur dari software carpentry. Kali ini saya akan mencatat tentang penggunaan `virtualenv`, module python yang digunakan untuk mengisolasi environment, seperti menggunakan modul versi tertentu dan setup tertentu. Hal ini sangat penting karena beberapa kode yang dibuat hanya berjalan pada versi yang sama, bukan versi di atasnya atau di bawahnya, misalnya deep learning untuk klasifikasi genre musik ini. Virtualenv ini sangat mirip dengan `modulefile` pada HPC (high performance computing).

Instalasi
Ada dua cara yang saya rekomendasikan untuk menginstall virtualenv, cara pertama dengan apt(-get), cara kedua dengan pip. Saya lebih merekomendasikan cara kedua.

Jika memakai cara pertama (apt untuk ubuntu, apt-get untuk debian-based)
sudo apt install virtualenv

Cara kedua (lebih direkomendasikan),
sudo -H pip install virtualenv

Pip adalah `python installing packages`, karena kita sedang menggunakan python, karena itulah saya lebih merekomendasikan cara kedua. Argument -H artinya agar installasi di-set ke user dari Home (alaiu, as long as i understood). Kemudian untuk mengecek apakah sudah terinstal, seperti biasa, cek dengan argumen --version.
virtualenv --version

Membuat virtualev
Untuk membuat python virtualennv, caranya cukup mudah sbb:
virtualenv nama_virtual_python
source nama_virtual_python/bin/activate

Denga perintah itu virtualenv dengan nama `nama_vitual_python` telah dibuat dan diaktivas dengan perintah berikutnya yakni `source activate`. Setelah perintah itu dijalankan, maka kita sudah berada pada python virtual environment dimana kita bisa menginstall dan menggunakan modul/package python dengan versi selain versi modul yang terinstall di komputer. Contohnya sebagai berikut,
pip install tensorflow==1.0.0 sugartensor==1.0.0.2 pandas>=0.19.2 librosa==0.5.0 sckits.audiolab==0.11.0 numpy==1.13.3

Menon-aktifkan virtualenv

Sebagai kebalikan perintah `source activate`, kita bisa menggunakan perintah `deactivate` saja tanpa argumen untuk menon-aktifkan virtualenv python dan kembali ke environment python secara umum di PC kita.
deactivate

Integrasi dengan Jupyter notebook

Dengan Jupyter notebook, pemorgraman python menjadi lebih interaktif seperti Matlab. Kita bisa melihat variabel, mengganti parameter, dan megedit baris tertentu saja tanpa menjalankan keseluruhan program. Seperti halnya alasan kenapa kita menggunakan virtualenv: yakni kita hanya ingin menggunakan paket python versi tertentu saja pada project/direktori tertentu saja, begitu juga pada Jupyter notebook. Alih-alih menggunakan python2 atau python3 sebagai kernel jupyter, kita bisa membuat custom kernel python sendiri dengan menginstall ipykernel dalam virtualenv.

Langkah-langkahnya adalah sebagai berikut,
$ source nama_virtual_python/bin/activate
(nama_virtual_python)$ pip2 install ipykernel
(nama_virtual_python)$ ipython kernel install --user --name=nama_virtual_python
installed kernelspec nama_virtual_python in /home/user/.local/share/jupyter/kernels/nama_virtual_python
(nama_virtual_python)$ jupyter-notebook

Perhatikan bahwa string sebelum tanda dolar $ bukan merupakan perintah. Singkatnya, baris kedua diatas akan menginstall paket ipykernel pada environment python saat ini, kemudian baris ketiga mengaktifkan paket (kernel) tersebut pada jupyter. Terakhir kita buka jupyter, dan disitu terdapat kernel baru: nama_virtual_python. Selamat mencoba!

Update:

Pada Ubuntu 16.04, by default perintah `pip` akan mengeksekusi pip3 (python3), bukan pip2 (python2), jika virtualenv sudah terinstall dan ada ketika di jalankan keluar "using base prefix '/usr' ", maka tambahkan opsi `--python=python2" saat menjakankan virtualenv sebagai berikut:
virtualenv --python=python2 nama_virtual_python

Update 2018/11/12
Untuk python3, gunakan venv daripada virtualenv. Lebih lengkapnya silahkan ikuti panduannya disini.

TL;DR untuk python 3:
1. python3 -m venv .env
2. source .env/bin/activate
3. pip3 install namapaket

Update untuk python3.6 (2020/07/31)
1. sudo apt install python3.6-venv
2. ... (step 1-3 di atas)

Referensi:
  1. http://www.pythonforbeginners.com/basics/how-to-use-python-virtualenv
  2. https://anbasile.github.io/programming/2017/06/25/jupyter-venv/

Wednesday, November 15, 2017

Make blogspot content and image header fit any screen resolution

So, I need to adjust screen resolution of my blog. First, I need my blog content fits any screen resolution. Currently I use 24" inch monitor so it looks ugly on my own monitor.
My blog opened on smartphone with mobile view disable (m=0)

After some googling, I found this blog post can be implemented, just found the following lines on the blogger template.
.content-outer, .content-fauxcolumn-outer, .region-inner {
        min-width: $(content.width);
        max-width: $(content.width);
        _width: $(content.width);
      }

Change those line with this one,
.content-outer, .content-fauxcolumn-outer, .region-inner {
        min-width: 1000px; /*$(content.width)*/
        max-width: 1280px; /*$(content.width)*/
        _width: 100%; /*$(content.width)*/
      }

Whoaa!! It changes my blog screen resolution to fit any page just in seconds. You don't need to understand the code. But,if you want, here is the simple explanation.

Friday, November 03, 2017

Sightseeing in Takayama dan Shirakawa Go

Date & Time: Saturday, October 28th, 2017 7:50 - 19:00
Destinations: Takayama, Shirakawa-go
Participants : 40 International Students, 4 Staffs of International Student Section
Total: 44 participants
Fee: JPY 1700

Shirakawa go from the view point

Time table:
07.50   Leave JAIST
09.15   Rest at service area
10.15   Arrive at Takayama
12.45   Leave Takayama
13.00   Lunch at Festa Forest
13.45   Leave for Shirakawa Go
14.45   Arrive at Shirakawa Go
16.45   Leave Shirakawa Go
18.00   Rest at rest area
19.00   Arrive at JAIST

Resume:

Thursday, October 19, 2017

HRIR, HRTF, dan BRIR

Artikel ini berkaitan dengan bidang ilmu akustik, subbidang spatial sound. HRIR, head related impulse response, merupakan impulse response kedua telinga ketika mendengarkan `sesuatu`. Jadi sebenarnya, apa yang kita dengarkan adalah `sesuatu` yang telah bercampur dengan `lingkungan`. Lingkungan ini bisa berupa ruangan. Idealnya, apa yang kita dengarkan tidak dipengaruhi oleh lingkungan. Untuk mencapai kondisi ideal inilah dilakukan pengukuran pada ruangan anechoic, ruang kedap suara, dimana apa yang kita dengarkan adalah sumber bunyi murni pada posisi tertentu. HRIR ini diukur pada kondisi tersebut, ruang kedap, sehingga respon yang diterima oleh telinga murni hanya pengaruh bentuk kepala dan posisi telinga kita serta posisi sumber suara.

Jika HRIR merupakan respon telinga karena pengaruh bentuk kepala dalam domain waktu, maka HRTF adalah Fourrier transform dari HRIR. Jadi HRTF merupakan HRIR dalam domain frekuensi.  HRTF dan HRIR ini paling banyak dipakai untuk mensimulasikan suara atau disebut auralisasi pada suatu desain ruangan untuk mendapatkan persepsi pendengaran di ruangan tersebut.

Pengukuran HRTF

HRTF diukur di ruang kedap suara dengan menggunakan head and torso simulator (HATS). Jadi hasil pengukuran sangat bergantung pada jenis HATS yang digunakan. Berbeda HATS (atau memakai manikin, atau manusia asli), maka hasilnya juga berbeda. Namun hasil pada HATS yang mewakili bentuk kebanyakan manusia bisa dipakai untuk men-generalisir hasil pengukuran.

Pada telinga HATS dipasang mikrofon kecil di dalam lubang telinga. Sumber suara dibangkitkan, umumya dipakai sinyal sine sweep atau MLS (maximum length sequences) dan direkam hasil impulsnya dengan mic di dalam HATS tadi. Geometri pengukuran membentuk geometri sehingga posisi sumber didefinisikan oleh tiga parameter (elevation, azimuth, jarak). Contoh suara pada (0,30,1) berarti pada sudut elevasi 0 derajat (tepat di depan, elevasi = sudut antara sumbu horizontal telinga dengan ketinggian sumber suara)) pada azimuth 30 derajat dari depan (depan kanan) dan pada jarak 1 m. Jarak biasanya tidak disebutkan karena pengukuran HRTF biasanya pada satu jarak/jari-jari yang sama.

Gambar berikut adalah konfigurasi posisi azimuth dan elevasi pada pengukuran HRTF sedangkan gambar bawahnya adalah contoh posisi sumber suara pada (30, 0).

Azimuth dan elevasi pada pengukuran HRTF (Sumber gambar: iidal-lab, IT Chiba)
Contoh posisi sumber suara pada (30, 0)

Wednesday, September 27, 2017

Git Undo

Tulisan ini adalah kelanjutan dari tulisan sebelumnya tentang bekerja dalam tim dengan Git disini. By default, git tidak memiliki fitur git undo karena sebenarnya fitur utama dari git adalah kemampuannya untuk meng-undo secara tak terbatas. Cara meng-undo-nya bergantung pada treatment apa yang sudah anda lakukan: mengundo commit, atau kembali pada versi sebelumnya (misal: karena anda tidak puas pada versi sekarang). Berikut caranya.

A post shared by Bagus Tris Atmaja (@bagustris) on

Sunday, September 17, 2017

Bern, Interlaken, Spiez and Fribourg

This is my second cross-country Europe tour after the second one visited Skocjan Cave in Slovenia. Although I have already visited Europe several times to ICTP Trieste, the previous tour only sightseeing in local Trieste: the piazza, canal grande, the Grotta Gigante cave and the similar. Once I have a chance for longer time, I planned this Europe tour to Switzerland, a rich country in central Europe.


Departure

The reason for choosing Switzerland is that I want to visit my friends there, combined to have an excursion to some interesting places. I depart from Trieste by train via this route: Triste - Venice - Verona - Milan, it cost Eur 31. The train available for every hour and I departed at 17.15. It takes six hours from Trieste to the Milan plus some delay caused by the rain. The next is to get a bus to Chiasso from Milan, but it is not so easy. The problem is that I have arrived at Milan on 0 O'clock midnight, the only bus will go on 00.45 and the bus stop still unclear at the time. Once failed, I will have a long delay because the next train to Chiasso is only available in the morning, 7 a.m. After several times searching (it took almost 30 minutes to the bus stop), we find it and the bus is coming at 00.41, leaving Milano Centrale about 00.43, 2 minutes earlier. The following is location and map of Bus stop 236A to Chiasso from Milan.

Friday, September 08, 2017

Neural Network with R: A concept [1]

This article is the English version of this article. It is based on Lecture by Roger Barlow given at ICTP Trieste on #DataTrieste17. The image belows show Roger explaining some fundamentals concept of Neural Network at ICTP class.



Neural network is one of the earlier and most developed artificial intelligence. The purpose of the computer, i.e., internet is to differ the picture between cats and dog, or between camel and dromedary.  The human brain is very good at recognising which is which. We can easily detect if the shown picture is camel of dromedary. But, how about computer? Can computer distinguish the image of camel and dromedary? Here is how the neural net works.

Thursday, August 24, 2017

Pentingnya sebuah konfirmasi

Beberapa tahun yang lalu saya pernah mendapat email. Karena tidak belum saya balas, saking sibuknya, si pengirim email mengirim email lagi kepada saya. Isinya kurang lebih begini:

Hi Bagus,
Apakah kamu sudah menerima email saya? Jika iya tolong balas kurang lebih seperti ini, "Terima kasih, emailmu sudah saya terima, dan saya bisa pada jam itu". Bukan apa-apa, sekedar memastikan bahwa kamu sudah menerima emailku.
Terima kasih.

Saat itu saya baru sadar, betapa pentingnya sebuah konfirmasi. Apalagi menyangkut janji (bertemu), attachment email, pengiriman dokumen, dll. Dari situ, saya berusaha untuk menjawab, atau memberi konfirmasi, terhadap email yang masuk. Tidak semua memang, tapi jika membutuhkan konfirmasi atau jawaban, saya usahakan untuk memberikan jawaban atau konfirmasi, ASAP: as soon as possible.

Belajar dari kasus tersebut, saya membuat rule of thumb: kapan harus menjawab atau mengkonfirmasi dari sebuah email (termasuk chat, tapi yang ini less important) sebagai berikut:

  • Email tersebut email penting (dari pejabat, rekan bisnis, keluarga dekat)
  • Email tersebut memuat pertanyaan yang harus dijawab
  • Email tersebut berisi janji (pertemuan/meeting) dan sejenisnya

Orang Jepang biasa meng-cc (carbon copy) setiap email yang dikirimnya ke orang lain, ke emailnya sendiri, memastikan bahwa email tersebut terkirim. Bagaimana dengan kita...? jangan sampai email penting tidak dijawab, dan seseorang disana menunggu dengan sebal.

I am text based, karena itu cara terbaik menghubungi saya adalah dengan text (email). If I marked your email as important, I will reply it.

Important
Beberapa pertanyaan (yang ingin anda tanyakan lewat email), sebagian besar jawabannya sudah tersedia di Internet, googling it. Don't ask the question that the answer can be easily found on the internet. Jangan membuang-buang tenaga untuk mengirim email hanya untuk menanyakan masalah sepele. Kalau sudah seperti ini, entah itu email atau chat, kemungkinan besar anda tidak mendapat jawaban atau konfirmasi. Dan permasalahan sepele seperti ini juga tidak memerlukan konfirmasi.

Wednesday, August 02, 2017

A Trip to Skocjan Caves - Slovenia from Trieste - Italy

This summer I got an offer again, a summer school on CODATA-RDA research data science in ICTP Trieste. The school is hold from Sunday to Friday, it is off on Saturday and Sunday. Take the moment in Europe, I do googling to some tourism place in Slovenia close to Trieste. Yup, Slovenia. This is the fourth time I went to Trieste, but I never go that neighbor country of Italy. After some googling, I found Skocjan Cave in Divaca, it is not so far from Trieste and can be reached by bus and Train.

So I have looked for how reach to Skocjan cave from Trieste. I found the route is Trieste - Opicina (by bus) - Divaca (by Train). The Google didn't show us much information, but gives us some link to explore. Some traveler on the tripadisor suggest to use tram to Opicina continued by train. The problem is the tram is not operated since 2016 until now (July 2017). However, there is bus number 42 from Piazza Oberdan (Trieste) to Opicina. So the route is, bus number 6 Grignano - Oberdan, Continued to bus number 42 Oberdan - Opicina.

A post shared by Bagus Tris Atmaja (@bagustris) on


Friday, July 28, 2017

Simulasi Kemunculan Partikel Higgs Boson dengan ROOT

Pada workshop extreme data, yang merupakan kelanjutan dari DataTriesta (ICTP CODATA-RDA data science summer school), saya berkesempatan mengikuti workshop tentang penggunaan perangkat lunak terbuka ROOT yang dikembangkan oleh CERN untuk simulasi partikel Fisika. Meski bukan orang fisika teori mau tak mau saya harus mempelajarinya agar keberangkatan saya ke sini (Trieste) tak sia-sia. Agar tak menguap begitu saja, saya menuliskannya disini. :D



Fisika partikel adalah cabang dari fisika yang mempelajari partikel dasar pembentuk benda dan radiasi, dan interaksi antara mereka. Dia juga disebut fisika energi tinggi, karena banyak partikel dasar tidak terjadi dalam keadaan biasa di alam, tetapi dapat diciptakan dan dideteksi pada saat benturan berenergi partikel lainnya, seperti yang dilakukan dalam pemercepat partikel [1].

Tuesday, July 11, 2017

Open Science dan Open Data

Dunia telah terkutub dalam dua kekuatan besar. Kekuatan kapitalisme yang berusaha mengeruk keuntungan dari umat manusia, dan kekuatan keterbukaan untuk berbagi. Contoh dari dua sumbu besar yang saling berseberangan ini adalah pada dunia IT. Di satu sisi perusahaan besar semisal Microsoft, Apple dan Google berusaha mendominasi dunia dengan perangkat buatan mereka. Di sisi lain ada movement opensource seperti Linux, GNU dan berbagai perangkat lunak yang mensyaratkan kode terbuka. Apakah semua perusahaan yang bertujuan mengeruk profit itu kapitalis? tentu tidak. Seiring berkembangnya zaman, mereka kini lebih terbuka.

Begitu juga dalam sains, ada usaha agar sains tidak dimonopoli oleh perusahaan yang berorientasi profit. Apakah bisa perusahaan mendapatkan profit dari sains? bisa sekali. Saat ini, standar metrik untuk publikasi, resources sains, dan infratruktur sains masih dikuasai perusahaan komersial. Ini berbahaya, karena mereka bisa memanipulasi dan mengatur kegiatan mereka dalam bisnis sains untuk keuntungan mereka pribadi. Karena inilah lahir pergerakan open science, usaha untuk membuat sains menjadi terbuka.

Open Science : Prinsip, Taksonomi dan Open Data
A post shared by Bagus Tris Atmaja (@bagustris) on


20 Perintah Dasar Linux (Shell)

Mampu menggunakan perintah dasar pada shell Linux merupakan suatu skill dasar yang harus dimiliki bagi mereka yang ingin menjadi programmer, sysAdmin dan, bahkan, (data) scientist. Shell merupakan jendela ke bahasa pemrograman lainnya seperti python, perl, awk, c/c++. Menguasai shell artinya anda bisa memadukan antara bahasa pemrograman karena shell saat ini dijadikan glue (perekat) antar bahasa pemrograman yang saat ini tidak bisa berdiri sendiri-sendiri. Contoh nyata penggunaan shell adalah pada riset speech synthesis, speech recognition dan data science. Dan hampir semua bidang yang menggunakan komputasi memakai shell pada systemnya. Shell pada Linux dapat digunakan melalui (gnome) terminal, buka dengan Ctrl + Alt + T, dan perintah dasarnya adalah sebagai berikut:
nama-perintah argumen
nama-perintah adalah nama perintah yang digunakan, misal perintah yang akan dibahas dibawah: ls, cp, mkdir dan mv. Sedangkan argumen adalah parameter, argumen atau input dari nama-perintah. Misal perintah "mkdir bagus" akan membuat direktori (mkdir, make directory) dengan nama "bagus" dalam direktori saat ini (current directory).

A post shared by Bagus Tris Atmaja (@bagustris) on


0. <tab>
Tab adalah temanmu, teman terbaikmu! Tombol tab berfungsi sebagai code completion atau pun path dan filename completion. Mulailah dengan mengetik perintah nomor satu (ls), ketik l den tekan tab. Ketil ls (spasi) dan tekan (tab). Ketil " ls Do (tab) ". Dan seterusnya. Tombol (tab) akan menghemat waktu anda, ton of times.

1. ls
ls digunakan untuk me-list file. Berikut contohnya:

ls /usr/bin

# melist secara detail
ls -l

# menampilkan dalam format "human readable" ukuran file
ls -lh

# menampilkan dalam urutan waktu secara detail
ls -lt

# menampilkan dalam urutan waktu secara detail list terbalik (reverse)
ls -ltr

# menghitung total file dalam direktori,wc word count/untuk menghitung kata, 
# wc -l untuk menghitung jumlah baris, "|" adalah pipe
ls /usr/bin | wc -l

# menampilkan argumen apa saja yang dimiliki ls
ls --help

Friday, June 30, 2017

Gambir, Monas dan Istiqlal (termasuk cara apply visa Italia)

Ini bukan tentang Traveling, tapi ini tentang memanfaatkan waktu dan tempat agar tak terbuang sia-sia. Ya, daripada menunggu di stasiun atau ruang tunggu. Ada waktu yang perlu dimanfaatkan, dan ada tempat yang dapat dikunjungi, inilah tiga tempat dalam satu kompleks yang dapat dijangkau dengan berjalan kaki itu. Biasanya saya mengunjungi ketiganya saat mengurus visa (di Kedutaan Italia).

Stasiun Gambir
Ini adalah stasiun paling modern di Jakarta menurut saya. Meniru model stasiun di Eropa dan Jepang, rel sepur atau gauge berada di atas sedangkan di bawahnya digunakan untuk administrasi dan pertokoan. Satu kekurangan stasiun ini: belum melayani rute KRL. Jika stasiun ini digunakan untuk melayani rute KRL, perjalanan ke semua sudut kota Jakarta akan mudah dijangkau.

Jika berangkat dengan kereta, dari Surabaya misalnya, ada beberapa kereta dari Surabaya Gubeng yang berhenti di stasiun Gambir, jika tidak anda bisa menggunakan transjakarta menuju stasiun ini. Per Juni 2017, kereta Bima dan Bangunkarta berhenti di stasiun Gambir dari Surabaya Gubeng. Sedang dari stasiun Pasar Turi, ada kereta Sembrani dan Argo Bromo Anggrek, baik yang berangkat pagi jam 08.00 WIB, atau yang berangkat malam, Argo Bromo Anggrek Malam, berangkat jam 20.00 WIB.

Jika berangkat menggunakan pesawat terbang, ada bus Damri di ketiga terminal yang menuju stasiun Gambir. Per Juni 2017, tarifnya masih empat puluh ribu rupiah. Waktu tempuh dari Bandara Soekarno-Hatta sampai ke Gambir biasanya 40 menit.

Tugu Monas
Tugu Monas terletak tepat di belakang stasiun Gambir. Dari stasiun, anda cukup berjalan kaki menuju bagian belakang kiri dan disitulah pintu Monas terletak. Kalau di Monas dan punya uang saku, sempatkan-lah naik ke puncak tugu agar bisa melihat Jakarta dari Puncak Monas. Tiket lift-nya sebesar sepuluh ribu rupiah.
Tugu Monas, dari pintu belakang stasiun Gambir

Related Posts Plugin for WordPress, Blogger...