Posts

Showing posts from 2020

Overthinking : Acara Tahun Baruan Buat Apa

disclaimer : tulisan ini hanya untuk hiburan Hari ini, 31 Desember 2020, yang artinya nanti malam adalah malam tahun baru. Biasanya nih warga +62 seperti layaknya mayoritas warga negara lain pada bikin acara tahun baruan mulai dari sekedar bakar-bakaran di kos sampai acara yang difasilitasi pemerintah "Car Free Night" yang biasanya pusat ditutup ga boleh dilalui kendaraan pada saat malam tahun baru dan dipakai untuk panggung-panggung hiburan. Tahun ini tentunya berbeda karena pandemi Covid-19. Beberapa pemda melakukan penutupan alun-alun dan memerintahkan tempat-tempat wisata untuk tutup lebih awal. Mari kita lakukan telaah dan pemikiran yang mendalam alias overthink , kalau dirasa-rasa lagi memang acara malam tahun baruan yang ramai-ramai itu tidak penting-penting amat. Berikut ini adalah alasannya : 1. Malam tahun baru tidak berbeda dengan malam-malam lainnya Malam hari tanggal 31 Desember itu ya sama seperti malam lainnya: matahari sudah tenggelam, kondisi gelap, waktunya

Forum Online Alumni SMPN 2 Ngawi dan SMAN 2 Ngawi

Kira2 sekitar tahun 2009 yang lalu beberapa alumni SMPN 2 Ngawi (espero) dan alumni SMAN 2 Ngawi membuat forum online di internet sebagai ajang diskusi dan berbagi antar alumni. Bukan forum resmi dari sekolah sih, namun ga mengurangi tujuan mulianya untuk menjalin komunikasi antar alumninya.  Sayang forum online tersebut tidak viral hingga akhirnya tidak terurus hingga kemudian domainnya expired. Dulu awalnya forum online alumni SMPN 2 Ngawi beralamat di http://forum.smpn2ngawi.net dan forum online alumni SMAN 2 Ngawi beralamat di http://forum.smadangawi.net. Hampir 12 tahun kemudian saya mencoba mengakses alamat tersebut dan mendapati bahwa domainnya sudah expired. Setelah iseng melakukan googling, saya mengetahui bahwa ternyata forum tersebut masih ada. Hanya saja alamatnya berubah tanpa custom domain, saat ini forum online alumni SMPN2 Ngawi dapat diakses di https://espero.indonesianforum.net/ dan forum online alumni SMAN 2 Ngawi dapat diakses di https://smadangawi.indonesianforu

Review Konten Youtube : Jejak Si Bungul

Image
Jika anda sering menonton televisi, tentu anda tak asing lagi dengan acara Jejak Si Gundul di salah satu stasiun tv swasta. Acara ini menampilkan Si Gundul, seorang pemuda setengah baya host yang memakai bandana untuk menutupi kepala plontosnya. Dalam setiap episodenya Si Gundul akan membantu warga sekitar untuk mengolah suatu bahan menjadi masakan dengan sentuhan kearifan lokal. Jejak Si Bungul adalah parodi dari acara Jejak Si Gundul yang tayang di channel Ipul Hary . Si Bungul menampilkan hal-hal khas yang ada di acara Jejak Si Gundul, mulai dari host berbandana, mengolah bahan menjadi masakan dengan kearifan lokal, hingga narasi acara yang dibawakan oleh hostnya. Namun Si Bungul tidaklah 100% sama dengan aslinya, konten ini menambahkan unsur kedaerahan, kreator yang berasal dari tanah Borneo memasukkan unsur bahasa daerah Banjarmasin ke dalam konten yang dibuatnya. Pemirsa dari luar daerah tidak perlu khawatir kesulitan memahami kata-kata dalam bahasa daerah tersebut karena disedi

Menjajal PHP 8 Lewat Docker

Image
Pada tutorial kali ini saya akan mencoba PHP 8 yang belum lama ini dirilis menggunakan Docker image di Ubuntu 20.04. Saya menggunakan Docker image php:8.0.0-apache. Lakukan instalasi Docker images PHP 8 menggunakan perintah berikut docker pull php:8.0.0-apache Docker image php:8.0.0-apache telah berhasil diinstall. Selanjutnya saya akan mencoba menjalankan script PHP untuk dijalankan pada sebuah container. Buat file dengan nama Dockerfile, isinya sebagai berikut FROM php:8.0.0-apache COPY src/ /var/www/html EXPOSE 80 Script Dockerfile tersebut akan membuat image baru berdasarkan php:8.0.0-apache dan akan mencopy script php yang saya simpan di folder src (di laptop) ke folder /var/www/html (di dalam Docker container). Simpan Dockerfile di sebuah folder (misal saya menggunakan direktori /tmp), kemudian buat folder src di dalam folder tersebut (misal /tmp/src) dan buat file index.php sekeder untuk menampilkan versi PHPnya <?php phpinfo(); Build Docker image dengan perintah be

Overthinking : Ribut-Ribut Pas Pemilu Buat Apa

Image
Mencermati dinamika politik termutakhir di negara kita tercinta, reuni dua pasang capres 2019 terwujud setelah pengumuman reshuffle kabinet. Maka ingatan kita akan diajak menengok kepada fenoma-fenomena dukungan capres dalam level garis keras full frontal yang pernah terjadi dalam sejarah bangsa ini. Hubungan pertemanan, kerukunan antar tetangga, bahkan hubungan darah keluarga bisa remuk redam akibat perbedaan pilihan capres idola pada waktu itu. Masih segar dalam ingatan kita, laga persaingan dua capres telah melahirkan istilah c-bonk dan camfreto sebagai label dukungan kepada masing-masing capres yang selalu memanaskan situasi di dunia maya, disertai oleh bumbu-bumbu yang diolah para bajer politik. Sungguh sebuah periode yang begitu menguras hati dan perasaan rakyat negeri ini, hanya karena dukung-mendukung capres. Hingga akhirnya, hari ini ketika pak pres mereunikan capres dan cawapres pesaingnya ke dalam kabinet, periode2 kelam pertempuran c-bonk dan camfreto seolah l

Berkenalan dengan Regular Expression di Bahasa Pemrograman Java

Regular Expression (regex) adalah serangkaian karakter yang membentuk sebuah search pattern (pola pencarian). Regex dapat berupa karakter tunggal, atau pola lain yang lebih rumit. Regex biasanya digunakan dalam operasi pencarian teks atau replace teks. Mari kita simak contoh berikut String s1 = "Java"; Terdapat sebuah variabel dengan tipe data String yang berisi "Java". Kita dapat mendefinisikan pattern sebagai berikut String regex1 = "J[a-z][a-z][a-z]"; String regex2 = "J[a-z]*"; Variabel regex1 dan regex2 tersebut memuat pattern yang cocok dengan String "Java", penjelasannya adalah sebagai berikut [a-z] : Pola berarti memilih salah satu karakter huruf kecil antara a, b, c, ..., atau z J[a-z][a-z][a-z] : Sebuah string yang berisi 4 karakter Karakter pertama adalah huruf J,  karakter kedua hingga keempat adalah salah satu karakter huruf kecil antara a, b, c, ..., atau z J[a-z]* : Pola ini sama dengan pola sebelumnya dengan penulisa

Hosting Aplikasi Android

Kemarin ada pesan di message FB saya yang masuk begini Bayar hosting dan domain aplikasi android ke siapa kak? Hmm, jadi begini sekaligus saya menjelaskan untuk teman-teman yang belum paham. Aplikasi Android itu tidak sama seperti web-based app yang memerlukan hosting dan domain. App Android adalah local app yang jalan di perangkat smartphone (ada pula yang menggunakan beberapa komponen online). Agar aplikasi Android yang kita buat dapat diunduh dan dijalankan di perangkat smartphone yang lain kita dapat mengunggahnya ke sebuah layanan "pasar aplikasi". Salah satu layanan pasar aplikasi adalah Google Play Store, ini adalah marketplace app resmi yang disediakan oleh Google. Bagaimana caranya mengunggah aplikasi ke Google Play Store? Kita harus membuat account dulu di Google Play Console https://play.google.com/console . Selanjutnya lakukan pembayaran sebesar USD 25 menggunakan kartu kredit. Apabila tidak ada kartu kredit kita bisa menggunakan VCC (virtual credit card), bebera

Contoh Penerapan Interface di Pemrograman Java

Image
Dalam pemrograman Java kita mengenal adanya Class dan Interface. Class adalah template dari suatu object. Di dalam sebuah class kita bisa mendefinisikan atribut-atribut yag mewakili data-data yang dimiliki oleh sebuah object, di dalam Class juga didefinisikan method-method / fungsi yang mewakili behaviour atau operasi yang bisa dilakukan oleh suatu object. Sedangkan Interface sendiri bisa dianalogikan sebagai template dari class. Di dalam sebuah Interface terdapat method-method abstract, ada nama method beserta parameternya namun isi / code dari method di dalam Interface tersebut belum dituliskan. Untuk menggunakan Interface kita perlu membuat Class yang mengimplementasikan Interface tersebut, Class yang dibuat nanti otomatis akan memiliki method-method yang dituliskan di dalam Interface dan kode dari method-method tersebut dituliskan dalam Class yang dibuat. Agar lebih jelas mari kita simat ilustrasi berikut : Kita akan membuat sebuah Interface dengan nama BangunDatar. Di dalam Interf

Membuat Project Kotlin di IntelliJ Idea

Image
Bahasa pemrograman Kotlin semakin populer, hingga disarankan sebagai bahasa pemrograman utama untuk membuat aplikasi Android native di Android Studio. Oleh karena itu menurut saya sudah saatnya kita mempelajari Kotlin sebagai bekal melakukan development Android app. Pada tutorial kali ini saya akan membagikan cara membuat project Kotlin. Saya menggunakan IDE IntelliJ IDEA karena dukungan terhadap bahasa pemrograman Kotlin paling bagus di antara IDE lainnya mengingat Kotlin juga dikembangkan oleh JetBrains yang juga mengembangkan IntelliJ IDEA. Untuk membuat project saya menggunakan build tool Gradle agar lebih praktis mengelola dependency dan bisa dibuka di IDE lain yang memiliki support Gradle. Klik tombol New Project Pilih Kotlin , Project Template : JVM --> Console Application Template Console Application ini bisa dipilih untuk membuat program Kotlin sederhana yang tujuannya untuk prototyping atau keperluan testing. Build System: bisa pilih Gradle Kotlin , atau IntelliJ

Tips Produktivitas : Membuat ToDo List

Image
Selayaknya kaum pekerja, demikian pula para budak korporat, para pejuang nafkah memiliki banyak tugas yang harus dikerjakan. Hal itu juga saya alami yang sehari-hari harus bergelut dengan berbagai tanggungan yang seringkali saya akhirkan menunggu H-1. Walaupun hal seperti ini biasa dilakukan para deadliner namun sebenarnya menumpuk beban pekerjaan itu tidak sehat, baik secara fisik maupun mental. Anda akan mengalami letih, lelah, lesu, loyo setelah mengerahkan segala daya upaya untuk menyelesaikan deadline. Secara pesikologis, mental health anda akan menurun dan mudah untuk merasa tidak bahagian *halah. Lalu bagaimana caranya agar kita tidak menumpuk pekerjaan?   Jawabannya tentu sangat sederhana, kerjakan sesegera mungkin dan selesaikan. "Iya mas, semua orang juga tahu kalau jawabannya begitu. Trus apa dong gunanya ada postingan ini?" Tenang gaes, saya akan membagikan salah satu tips sederhana untuk menyelesaikan pekerjaan yang menumpuk. Saya menggunakan metode memecah peker

Jaringan Seluler

Image
Menggunakan perangkat handphone atau smartphone, kita terhubung dengan jaringan seluler yang disediakan oleh provider. Ada banyak provider seluler di Indonesia misalnya Indotas, Temkoles, dan Smartparent *) nama provider diparodikan. Namun tahukah kalian mengapa disebut sebagai jaringan seluler (cellular networks)? Ternyata nama jaringan seluler ini berasal dari penggambaran bentuk wilayah yang dilayani oleh jaringan seluler. Seperti yang terlihat pada gambar, sebuah wilayah dibagi menjadi sejumlah area yang lebih kecil yang nampak seperti sel-sel makhluk hidup yang saling berdampingan. Setiap sel menggambarkan area yang dijangkau oleh menara pemancar sinyal (VTS) yang ditunjukkan oleh titik di tengah sel. Pada jaringan seluler dimungkinkan penggunaan spektrum radio secara efisien. Gelombang carrier dapat menggunakan kumpulan frekuensi yang sama tanpa mengalami interferensi. Misalnya pada gambar, A, B, C, D, E, dan F menggunakan channel yang berbeda. Namun channel A1 dan A2 sama, demik

Kuliah Online (Sampai Kapan?)

Pandemi Covid-19 sudah berlangsung sekitar 10 bulan sejak Maret 2020 hingga sekarang dan belum menunjukkan tanda-tanda kondisi yang membaik. Pertambahan jumlah konfirmasi positif Covid-19 setiap harinya masih tinggi di kisaran 5000-6000an orang dan jumlah kematian yang juga masih bertambah. Walaupun akumulasi jumlah yang sembuh juga meningkat, namun tak bisa dipungkiri pandemi masih menghambat aktivitas kita yang tidak bisa sebebas dahulu sebelum coronavirus menyerang. Aktivitas sehari-hari berubah, kita makin akrab dengan penggunaan teknologi untuk menghubungkan kita dengan dunia luar. Termasuk kuliah, guna menghindari kumpulan orang dalam jumlah banyak pembelajaran jarak jauh menjadi ujung tombak di kampus. Tak terasa sudah 1 semester lebih kita menjalani kelon (kelas online 😀) dengan segala dinamikanya. Saya mencatat di awal pandemi lalu banyak aksi protes dari rekan-rekan mahasiswa yang menyayangkan mereka tidak mendapat bantuan subsidi kuota yang menjadi kebutuhan pokok selama pa

Review Konten Youtube : Pemuda Tersesat

Image
Pemuda Tersesat adalah judul sebuah konten Youtube yang tayang bergantian di akun Majelis Lucu Indonesia dan Jeda Nulis yang saat ini menjadi konten yang begitu saya rindukan setiap minggunya. Pemuda Tersesat tayang pertama kali pada bulan puasa 2020 sebagai oase bagi pertanyaan-pertanyaan yang ada di benak pada pemuda namun kurang nyaman ditanyakan di forum formal akibat pertanyaan yang terlalu aneh kreatif. Awalnya konten ini hanya tayang selama bulan puasa, namun karena animo cotizen netizen masih tinggi terhadap tayangan ini hingga akhirnya Pemuda Tersesat melakukan comeback hingga sekarang. Konten Pemuda Tersesat pada dasarnya adalah konten dakwah, namun dikemas dengan begitu nyeleneh di luar kebiasaan. Eh sebentar sebenarnya dakwahnya ya seperti biasa, namun di sini kita akan menemui pertanyaan-pertanyaan out of the box, pertanyaan-pertanyaan tersebut dilontarkan oleh para pemuda tersesat yang haus akan pencerahan. Pemuda Tersesat ini dipandu oleh Tretan Muslim bersama denga

Gagal upload sketch ke Arduino dari Linux

Pernah suatu ketika saya mendapatkan pesan error ketika mengupload code ke Arduino IDE avrdude: ser_open(): can't open device "/dev/ttyACM0": Permission denied Ternyata cara mengatasinya cukup mudah yaitu dengan mengeksekusi perintah berikut sudo usermod -a -G dialout nama_username_linux sudo chmod a+rw /dev/ttyACM0

Docker : Image dan Container

Image
Terdapat dua terminologi utama yang harus diketahui berkaitan dengan Docker yaitu image dan container. Docker image bisa dikatakan adalah sebuah read only template yang berisi kumpulan instruksi untuk membuat container yang berjalan pada platform Docker. Docker image merupakan cara yang mudah untuk memaketkan aplikasi dan preconfigured server environments, untuk kemudian bisa digunakan sendiri atau dibagikan ke pengguna Docker yang lain. Sedangkan Docker container adalah lightweight, standalone, executable package perangkat lunak yang berisi segala hal yang dibutuhkan untuk menjalankan sebuah aplikasi : code, runtime, system tool, library dan setting.         Docker container mirip seperti layaknya hypervisor yang menjalankan banyak sistem operasi virtual, bedanya dalam Docker container yang dimuat bukan OS virtual namun aplikasi.

Belajar OOP di Python : Membuat Class Sederhana

Image
diupdate 2 Februari 2021 Python merupakan bahasa pemrograman yang dikenal memiliki banyak dukungan library, penggunaannya sangat luas mulai dari untuk belajar pemrograman sederhana, pengolahan bahasa natural, data science, pengolahan big data, hingga pembuatan aplikasi web based. Python juga mendukung paradigma OOP. Pembuatan sebuah class sederhana di Python dapat dilakukan dengan menuliskan keyword class diikuti dengan nama classnya, seperti berikut ini class MyFirstClass: pass Keyword pass pada baris kedua tersebut digunakan untuk menyatakan bahwa tidak ada action lain yang dilakukan, kita hanya membuat definisi class tanpa adanya atribut dan method. Class yang sudah dibuat dapat digunakan untuk membuat object, caranya dengan membuat variabel yang diassign ke class tersebut. Berikut ini adalah contoh eksekusi codenya menggunakan Python interactive mode. Python interactive mode dapat diakses melalui terminal Ubuntu dan ketik python3 lalu klik ENTER Menambahkan Atribut Atribut dap

Telat Memoderasi Komentar

Setelah sekian lama saya tidak memeriksa komentar masuk ke blog ini, saya terkejut ternyata ada 20 komentar menunggu moderasi. Mohon maaf saya tidak aware dengan perkomentaran ini, saya kira blog ini masih sepi2 saja 😅 Tentu saja ada komentar-komentar spam yang menawarkan judi di kasino *ealah. Langsung saja mark sebagai spam. Namun banyak juga komentar yang sudah sesuai dengan konteks isi blog ini. Terima kasih atas partisipasi dan kesediaannya untuk mampir di blog yang jarang-jarang saya update ini. Kesibukan di kampus seringkali membuat setres, namun kali ini saya mencoba berkomitmen untuk lebih merawat blog ini. Saya mulai menulis sejumlah draft postingan yang sedikit lebih pendek, namun saya usahakan lebih sering post di sini. Pandemi Covid-19 belum berlalu, mari kita lebih mawas diri. Jaga kesehatan dan keseimbangan pesikologis.

Menjalankan Docker tanpa Sudo di Ubuntu 20.04

Image
Setelah menginstall Docker di Ubuntu 20.04, Docker dapat dijalankan namun perlu akses root dengan menambahkan sudo. Agar lebih praktis tanpa harus menambahkan sudo di depan perintah docker, lakukan langkah-langkah berikut Buat group docker sudo groupadd docker Apabila ternyata group docker sudah dibuat, akan muncul pesan groupadd: group 'docker' already exists lanjutkan saja ke langkah berikutnya Tambahkan user ke dalam group docker sudo usermod -aG docker nama_user Logout dan login kembali ke Ubuntu, coba jalankan docker tanpa sudo docker run hello-world

Instalasi Docker di Ubuntu 20.04

Docker menjadi pilihan untuk developer yang membutuhkan lingkungan development yang terisolasi dari sistem utama.  Misalnya saat ini PHP 8.0 sudah rilis dan saya ingin mencoba menginstallnya, namun di repository Ubuntu yang saya gunakan saat ini baru PHP 7.4 yang disupport. Sebenarnya masalah ini bisa diselesaikan dengan PPA PHP 8.0, namun saya tidak ingin package-package aplikasi di Ubuntu saya terutak-atik lagi akibat penambahan package dari PPA. Solusinya adalah menggunakan Docker. Untuk menginstall Docker, update apt dan install package untuk memungkinkan apt menggunakan repository melalui HTTPS. Eksekusi perintah berikut sudo apt-get update sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg-agent \ software-properties-common Selanjutnya tambahkan kunci GPG Docker melalui perintah curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - Tambahkan repository Docker stable sudo add-apt-repository \ "deb [ar

Class, Object, Consructor, dan Package

Image
Saya akan menjelaskan kembali mengenai class, objek, contructor, dan package. Misalnya terdapat class Mahasiswa, yang ditulis dalam source code bahasa Java sebagai berikut Class Mahasiswa adalah template dari objek Mahasiswa. Class bisa kita ibaratkan seperti cetakan kue, sedangkan objek adalah kuenya (hasil cetakan). Class akan diinstansiasi menjadi objek, kalau secara coding bisa dilihat pada baris Mahasiswa mhs1 = new Mahasiswa("M0507001", "Budi Setiawan"); Dari baris kode tersebut Classnya adalah Mahasiswa, sedangkan objeknya adalah mhs1. Di dalam sebuah Class, terdapat atribut / variabel yang memuat data-data yang dimiliki oleh sebuah objek. Dari source code class Mahasiswa, objek mhs1 memiliki data berupa nim dan nama. Di dalam sebuah class juga terdapat method-method / function yang mewakili action apa saja yang dapat dilakukan oleh objek. Dari source code class Mahasiswa tersebut, terdapat method getNim , getNama , dan method main . Kemudian dalam sebuah cla

Tools untuk Kuliah PBO

Mata kuliah Pemrograman Berorientasi Objek mempelajari paradigma pemrograman OOP (object oriented programming). Pada praktikum matkul PBO digunakan bahasa pemrograman Java, untuk itu diperlukan tools sebagai berikut : 1. Java Development Kit Di sini saya menggunakan Oracle JDK 14 yang dapat diunduh di https://www.oracle.com/java/technologies/javase-jdk14-downloads.html.   JDK ini wajib diinstall untuk coding bahasa Java, ukuran file installer JDK sekitar 180an MB. 2. Java IDE IDE atau Integrated Development Environment digunakan untuk menulis source code. IDE ini tidak wajib diinstall karena bisa digantikan oleh text editor seperti Notepad++, vim, dll. Namun IDE memiliki fitur yang lebih lengkap dibandingkan text editor, salah satunya dukungan terhadap visual designer untuk coding program yang menggunakan GUI. Terdapat sejumlah IDE yang bisa digunakan untuk keperluan menulis program Java di antaranya : Netbeans , IntelliJ Idea , VS Code , dan Eclipse . Setiap IDE memiliki kelebihan dan

Materi Wireless and Mobile Computing 2020

RPS  unduh RPS WMC di sini Panduan Kuliah Online  lihat panduan kuliah online di sini Checklist Kelas  Checklist kelas WMC Ebook Wireless Communications & Networking Materi  1. Dasar pengiriman data (1)  slide kuliah   2. Dasar pengiriman data (2)  slide kuliah   3. Antena dan perambatan sinyal (1)  slide kuliah   4. Antena dan perambatan sinyal (2)  slide kuliah   5. Teknik encoding sinyal (1)  slide kuliah   6. Teknik encoding sinyal (2)  slide kuliah   7. Spread spectrum  slide kuliah   8. UTS    9. Coding & error control  slide kuliah   10. Komunikasi satelit  slide kuliah   11. Jaringan seluler  slide kuliah   12. Perkembangan teknologi seluler dan review teori mobile IP & WAP  slide kuliah   13. Teknologi WLAN dan standar 802.11 (1)  slide kuliah   14. Teknologi WLAN dan standar 802.11 (2)  slide kuliah   15. Bluetooth, RFID, dan wireless sensor networks  slide kuliah   16. UAS

Materi Pemrograman Berorientasi Objek 2020

RPS unduh RPS PBO di sini Panduan Kuliah Online  lihat panduan kuliah online di sini Checklist Kelas Checklist PBO kelas A Checklist PBO kelas B Checklist PBO kelas C Ebook An Introduction to Object Oriented Programming with Java 5th Edition   Materi  0. Penjelasan RPS  Video Youtube penjelasan RPS   1. Konsep class dan object Konsep object-oriented programming Java Packages Tools untuk kuliah PBO   2. ... 3. ... 4. ... 5. ... 6. ... 7. ... 8. UTS 9. ... 10. ... 11. ... 12. ... 13. ... 14. ... 15. ... 16. UAS

Membuat Game Pong dengan Framework Love2D (1)

Image
Tutorial ini adalah lanjutan dari tutorial sebelumnya https://www.ardhi.web.id/2020/07/membuat-game-pong-dengan-framework.html . Kita tambahkan code berikut ke file main.lua -- push is a library that will allow us to draw our game at a virtual -- resolution, instead of however large our window is; used to provide -- a more retro aesthetic -- -- https://github.com/Ulydev/push push = require 'push' Tambahkan code tersebut di atas baris yang memuat WINDOW_WIDTH = 1280 Kemudian tambahkan dua konstanta yaitu VIRTUAL_WIDTH dan VIRTUAL_HEIGHT VIRTUAL_WIDTH = 432 VIRTUAL_HEIGHT = 243 Tambahkan konstanta tersebut di bawah baris yang memuat WINDOW_HEIGHT = 720 Ubah fungsi love.load() menjadi sebagai berikut function love.load() -- use nearest-neighbor filtering on upscaling and downscaling to prevent blurring of text -- and graphics; try removing this function to see the difference! love.graphics.setDefaultFilter('nearest', 'nearest')

Membuat Game Pong dengan Framework Love2D (0)

Tutorial yang saya tulis ini menggunakan materi online course Introduction to Game Development di EDX https://www.edx.org/course/cs50s-introduction-to-game-development Online course tersebut gratis dan materinya bisa didownload, anda harus melakukan registrasi account EDX terlebih dahulu supaya bisa mengaksesnya. Game yang akan dibuat diberi nama pong, hasil akhir yang diharapkan dapat dilihat seperti pada gambar berikut game dev - pong0 Pada tutorial ini diguakan library Love2D untuk membuat game dengan grafis 2 dimensi. Download framework Love2D di sini , saya menggunakan rilis untuk versi Linux yang selanjutnya tinggal diekstrak untuk menggunakannya. Misalnya saya ekstrak ke folder love2d yang ada di dalam folder Apps di direktori home saya /home/linuxluv/Apps . hasil ekstrak love2d Tulis code menggunakan bahasa Lua , sebagai berikut Simpan code tersebut dengan nama main.lua . kemudian simpan di dalam folder, misalnya saya simpan di /home/linuxluv/Apps

Install Compiler C di *ubuntu

Untuk keperluan coding, saya menggunakan Linux. Kali ini saya menggunakan Xubuntu 20.04. Saya sangat merekomendasikan environment Linux untuk keperluan coding kuliah bagi mahasiswa-mahasiswa saya. Kali ini saya akan membagikan tutorial instalasi compiler C di *ubuntu (Ubuntu, Kubuntu, Xubuntu, Lubuntu, Ubuntu MATE, dll). Untuk menginstall program di Linux pastikan komputer sudah terhubung ke internet. Eksekusi perintah berikut melalui Terminal sudo apt install build-essential ubuntu Sejumlah package akan diinstall ke komputer, termasuk di dalamnya gcc (GNU Compiler Collection  / compiler C), g++ (compiler C++), gdb (debugger untuk C).

Karakteristik Protokol IP : Unreliable dan Connectionless

Image
Protokol IP memiliki karakteristik unreliable dan connectionless. Unreliable maksudnya protokol IP tidak memiliki mekanisme error control atau flow control (kecuali untuk error detection pada header). Artinya, data yang dikirimkan melalui protokol IP tidak dapat dijamin dikirim dengan bebas gangguan dan tidak dijamin data yang dikirimkan bebas dari error. Connectionless maksudnya setiap datagram ditangani secara terpisah, setiap datagram dapat melalui jalur yang berbeda-beda dalam pengirimannya. Akibatnya datagram yang dikirim oleh source yang sama ke tujuan yang sama dapat tiba di tujuan dengan acak (tidak urut). (Forouzan, Data Communications and Networking, halaman 583) Desain protokol IP yang unreliable dan connectionless ditujukan guna mengefisienkan penggunaan network resource. Protokol IP akan berusaha mengirimkan data ke tujuan tanpa memeriksa hasil pengirimannya dan tanpa membebani kinerja jaringan. Protokol ICMP didesain untuk mengatasi kekurangan IP dalam hal tid

Physical address dan Logical Address (1)

Image
Physical address adalah alamat suatu node yang ditentukan oleh jaringan (LAN atau WAN), alamat ini diinclude-kan dalam frame data yang digunakan oleh data link layer. Ukuran dan format dari physical address tersebut sangat bervariasi tergantug pada jaringannya, misal pada ethernet digunakan alamat 6-byte (48 bit) yang diasosiasikan dengan sebuah network interface card (NIC). Karena ukuran dan format physical address yang berbeda-beda (tergantung jenis jaringan), maka jenis alamat ini kurang cocok untuk lingkungan internetwork yang di dalamnya terdapat sejumlah jaringan dengan format alamat yang berbeda-beda. Untuk mengatasi hal tersebut, diperlukan adanya alamat universal yang tidak terikat jenis jaringan. Logical address didesain sebagai implementasi alamat universal tersebut. Jaringan / internet terdiri dari kombinasi physical network yang dihubungkan melalui internetworking device misalnya router. Sebuah packet yang dikirimkan dari source host mungkin akan melewati sejum

Rangkuman Materi MatKul Mobile Application Development - S1 Informatika UNS - Semester Ganjil 2020

Image
diperbarui pada 22 Juni 2020 1. Platform mobile       Baca website-website berikut ini     https://www.youtube.com/watch?v=Gp2J-oeDJDM     https://www.youtube.com/watch?v=xnobktms0TM     https://www.uswitch.com/mobiles/guides/history-of-mobile-phones/     https://www.tigermobiles.com/evolution     https://flauntdigital.com/blog/evolution-mobile-phones     https://www.webopedia.com/DidYouKnow/Hardware_Software/mobile-operating-systems-mobile-os-explained.html     https://techcrunch.com/2013/06/13/rip-symbian/ Materi kunci yang harus diketahui     Perkembangan hardware dan software     Apa yang terjadi pada periode berikut         1980 - 1990         1991 - 2000         2001 - 2010         2011 - 2020     OS mobile device yang populer     Inovasi fitur yang terjadi     2. Kelompok/jenis/kategori aplikasi pada platform mobile   Baca website-website berikut ini     https://manifesto.co.uk/history-mobile-application-development/     https://www.sciencedirect

Menginstall Xubuntu 20.04

Image
Xubuntu adalah distro Linux turunan Ubuntu yang menggunakan desktop default Xfce . Setelah agak lama saya tidak menggunakan distro berbasis Ubuntu karena pindah ke Archlinux , kali ini saya memutuskan untuk menggunakannya kembali sebagai OS utama saya. Untuk menginstall Xubuntu, unduh file installernya di sini . Agar dapat menginstall Xubuntu, buat bootable USB flashdisk, cara membuatnya dapat dilihat di sini . Setelah bootable USB flashdisk jadi, restart komputer kemudian atur agar booting dilakukan dari USB flashdisk. Setelah bisa booting, pilih opsi yang kurang lebih labelnya "Try Ubuntu without installing", selanjutnya kita akan menjumpai desktop Xubuntu. Apabila masih ingin sekedar mencoba Xubuntu, kita bisa menggunakan laptop yang sudah termuat Xubuntu dari bootable flashdisk seperti biasa, detail untuk mencoba *Ubuntu bisa dibaca di sini . Untuk menginstall Xubuntu klik icon Install Xubuntu yang ada di desktop. Pertama pilih bahasa default, di sini saya menggunakan pi

Mapbox : Menambahkan Kontrol (Zoom dan Arah)

Image
Melanjutkan tutorial sebelumnya Kali ini saya akan menambahkan tombol kontrol (zoom dan arah) ke peta Caranya sangat mudah, yaitu dengan menambahkan baris map.addControl(new mapboxgl.NavigationControl()); Sehingga kode lengkapnya menjadi sebagai berikut ini Hasilnya dapat dilihat seperti ini, ada tambahan tombol kontrol di sebelah kanan atas peta

Mapbox : Alternatif Maps API Selain Google Maps

Image
Pada tutorial kali ini saya akan membahas mengenai Mapbox yang merupakan salah satu API untuk menampilkan maps. Mengapa Mapbox? Sebenarnya ada banyak service untuk menampilkan maps, yang terkenal misalnya adalah Google Maps API . Namun melihat perkembangan saat ini, Google Maps API mulai menerapkan biaya atas layanan yang diberikan misalnya untuk menampilkan dynamic maps di halaman web developer harus membayar $7 untuk menghilangkan watermark "for development puprposes" yang muncul. Sementara itu Mapbox menawarkan layanan free yang cukup lumayan dengan kuota 50.000 load per bulan tanpa biaya untuk menampilkan maps ke halaman web. Menampilkan Map ke Halaman Web Mapbox memberikan layanan untuk menampilkan map ke halaman web dan aplikasi mobile. Pada tutorial kali ini saya akan membagikan cara menampilkan map ke halaman web. Pertama, lakukan registrasi account. Selanjutnya developer akan diberikan token yang dapat diakses melalui halaman detail account . Kita bisa menggu

Revisi Rumus Buku Data Communication & Networking Halaman 282

Image
Pada ebook Data Communication & Networking, halaman 282, chapter 10: Error Detection and Correction terdapat bagian yang memuat rumus untuk menghitung parity checks sebagai berikut Penulisan rumus pada ebook tersebut tidak tertulis dengan jelas. Revisi dari kedua rumus tersebut dapat ditulis kembali sebagai berikut : dan dengan catatan tanda ⊕ adalah operasi XOR

Menghitung Minimal Hamming Distance

Hitunglah minimum Hamming distance dari 0111, 0011, 0101 dan 0010! Caranya adalah sebagai berikut : 1. Buat pasangan dari setiap (1) 0111, (2) 0011, (3) 0101 dan (4) 0010, kita mendapatkan pasangan sebagai berikut ini 0111 & 0011 0111 & 0101 0111 & 0010 0011 & 0101 0011 & 0010 0101 & 0010 2. XOR-kan setiap pasangan yang didapat dari langkah 1 0111 0011 -----XOR 0100 --> (jumlah angka 1 = 1 / antara 0111 dengan 0011 hanya berbeda 1 bit) 0111 0101 -----XOR 0010 --> (jumlah angka 1 = 1) 0111 0010 -----XOR 0101 --> (jumlah angka 1 = 2) 0011 0101 -----XOR 0110 --> (jumlah angka 1 = 2) 0011 0010 -----XOR 0001 --> (jumlah angka 1 = 1) 0101 0010 -----XOR 0111 --> (jumlah angka 1 = 3) Minimum Hamming distance adalah jumlah minimal dari angka 1 pada hasil XOR Pada soal di atas minimum Hamming distance = 1

Convert Gambar menjadi PDF Melalui Command Line

Di Linux terdapat sejumlah tool yang (nampaknya) sederhana karena tidak memiliki GUI namun powerfull, salah satunya adalah ImageMagick yang dapat digunakan untuk mengubah file gambar (jpg/png) menjadi pdf. Caranya sangat mudah, sebelumnya pastikan ImageMagick sudah terinstall. Di Archlinux dapat diinstall melalui perintah sudo pacman -S imagemagick di Ubuntu sudo apt install imagemagick Untuk mengubah file gambar, eksekusi perintah berikut convert nama_file_input.jpg nama_file_output.pdf file dengan format png juga dapat diubah menjadi pdf Troubleshooting Apabila mengalami masalah tidak bisa melakukan proses convert dengan pesan error yang memuat kata-kata "not authorized" atasi dengan melakukan editing pada /etc/ImageMagick-6/policy.xml, untuk ImageMagick versi 6 edit <!-- <policy domain="module" rights="none" pattern="{PS,PDF,XPS}" /> --> menjadi <policy domain="module" rights="none" pattern=