Tips Mengatasi Raspberry Pi 4B Gagal Menyala

Tentu rasanya nyebelin banget saat Raspberry Pi 4B yang telah ditunggun-tunggu lama itu datang dan Anda sudah menyiapkan segalanya, namun kemudian dia tidak mau menyala! Saya juga sempat mengalaminya loh! Kemudian saya browsing di internet dan menemukan beberapa pengecekan dan langkah yang bisa dilakukan. Syukurlah kemudian board komputer murah meriah itu mau menyala! Senangnyaaa…

Video ini tentang beberapa pengecekan tersebut. Semoga video ini bermanfaat ya, Teman2…

Membuat Virtual Machine Portable

Saat coding saya biasa menggunakan MacBook Pro. Sayangnya saat upgrade ke MacOS Catalina segalanya jadi berubah. Ada beberapa masalah yang timbul. Salah satunya adalah XAMPP tidak bisa bekerja lagi. Jadi saya tidak menjalankan Apache, PHP dan MySQL di MacBook Pro. Konon karena masalah dukungan aplikasi 32 bit yang dihilangkan.

Solusinya simple sih sebenarnya, yaitu dengan menggunakan Virtual Machine dengan guest Linux Ubuntu seperti yang saya lakukan juga di laptop Asus TUF saya. Tapi itu berarti mengorbankan sebagian storage MBP untuk VM.

Maklum, ukuran VM untuk OS Ubuntu, aplikasi HIS, database HIS, NodeJS, dan segala pernak-pernik pendukungnya itu memerlukan ukuran yang besar. Saya pernah mengalokasikan VM sebesar 40 GB ternyata kurang. Dan menurut kebutuhan saya ini, kurang lebih dibutuhkan ukuran VM antara 50-60 GB.

Naaah, MBP saya yang cuma punya kapasitas storage 256 GB itu tentu saja tidak mencukupi. Kalau saya membuat VM sebesar 50 GB, maka itu berarti sisa storage cuma tinggal 5-10 GB karena saat ini MBP juga saya pakai untuk membuat banyak dokumen dan konten.

Kemudian saya pun memikirkan solusi yang lebih kreatif, yaitu dengan membuat Virtual Machine di Flash Drive. Seperti biasa, saya membuat VM dengan menggunakan VirtualBox yang sangat user friendly dan bisa bekerja di MacOS, Windows dan Ubuntu. Dengan VM di FlashDrive ini berarti saya bisa:

  1. Menghemat storage internal di laptop. Saya bisa menghemat storage di MacBook Pro yang cuma punya SSD 256 GB itu. Cukup colokkan Flash Drive di MBP dengan bantuan kabel konverter USB A ke C.
  2. VM bisa portable, karena saya bisa menyalakan VM ini di MBP mau pun di TUF. Itu artinya saya tidak perlu tergantung dengan salah satu laptop saja. Kalau di kantor bisa pakai MBP dan ketika dibutuhkan coding di apartemen bisa pakai TUF. Cukup colokkan Flash Drive ke laptop yang tersedia. Jika perlu suatu saat nanti ketika ada laptop baru bisa langsung colok dan nyalakan VM. Praktis kan?
  3. Cukup membawa Flash Drive kemana saja. Idealnya saya cukup bawa Flash Drive VM ini untuk bekerja. Cukup menghemat tenaga karena tidak perlu bawa-bawa laptop. Dan ketika VM dinyalakan, semua lingkungan kerja sudah tersaji di laptop yang saya pakai.

Jadi saya pun membeli sebuah Flash Drive untuk mewujudkan ide ini. Saya membeli Flash Drive dari Sandisk dengan tipe Ultra Fit yang punya form factor sangat kecil. Tadinya saya ingin membeli yang tipe Ultra Flair yang punya kecepatan lebih tinggi, yaitu 150 Mbps. Tapi ukurannya lebih panjang sehingga kurang praktis. Terlalu menonjol dan tidak praktis.

Ultra Fit ini sangat pendek sehingga tidak terlalu menonjol saat dicolokkan di laptop TUF. Tapi kalau dicolokkan di MBP memang masih perlu kabel konverter USB A ke C sih. Tapi ketika digunakan di TUF bisa tertempel rapi di samping dongle USB mouse wireless yang juga selalu tercolok di TUF.

Sebagai catatan, Ultra Fit yang saya beli memang kapasitasnya cuma 64 GB. Kebetulan dapat diskon sehingga harganya menjadi Rp 159.000 dari harga normalnya yang Rp 229.000. Tadinya mau beli yang 128 GB tapi sayangnya tidak diskon. Harga yg 128 GB mencapai Rp 479.000 (tidak ada diskon). Bagi saya kemahalan, mending beli SSD sekalian yang sudah pasti punya kecepatan tinggi ya? Hehehe.

Kecepatan Ultra Fit yang sudah punya versi USB 3.1 ini memang cuma 130 Mbps, yang mana lebih rendah dari pada Ultra Flair yang mencapai 150 Mbps. Sebenarnya saya punya kartu MicroSD dari Samsung dengan kapasitas 128 GB. Lebih lega tentu saja. Tapi sayangnya cuma punya kecepatan 100 Mbps utk read dan 90 Mbps untuk write. Sepertinya tidak saya rekomendasikan. Lagian jadi kurang praktis karena perlu SD Card reader USB yang lebih besar dari pada Flash Drive.

Kecepatan Flash Drive dan Micro SD ini tentu boleh dibilang sangat rendah dibandingkan dengan SSD bawaan MBP mau pun SSD hasil upgrade di TUF. Tapi saat saya coba gunakan untuk VM, ternyata performanya baik-baik saja. Memang agak lambat saat pertama menyalakan dan saat shutdown VM. Tapi ketika sudah menyala dan digunakan untuk programming sudah cukup baik.

Proses pemindahan VM dari internal ke Flash Drive juga bisa dilakukan dengan mudah. Memindahkan ke laptop lain juga mudah. Tidak ada masalah kompatibilitas, bahkan di saat menggunakan 2 laptop dengan platform yang berbeda, yaitu di MacBook Pro dengan MacOS Catalina mau pun di Asus TUF dengan Microsoft Windows. Bahkan keduanya punya prosesor yang berbeda, yaitu Intel dan AMD. Ternyata tidak ada masalah. VirtualBox memang bagus!

Lagian saya membuat konfigurasi VM di kedua laptop ini berbeda. Saat di MBP saya cuma mengalokasikan 2 core dan 2 GB RAM. Sedangkan di TUF saya mengalokasikan 3 CPU dan 4 GB RAM. Ternyata saat dipindah-pindah tidak masalah. VM bisa menyesuaikan diri di kedua alokasi tersebut.

Tidak dipungkiri, VM memang bisa lebih gegas di TUF yang punya alokasi mesin lebih baik. Namun untuk di MBP saya sedikit mengakali dengan menjalankan editor dan browser penguji di MacOS (host). Jadi VM di MBP cuma untuk dijadikan server LAMP. Sedangkan di TUF saya full menjalankan desktop Ubuntu 18.04.2 di VM dengan nyaman.

Demikian kurang lebih sharing tentang membuat Virtual Machine Portable denga VirtualBox. Jika ada kesempatan saya akan membuatkan videonya.

Di dunia teknologi informasi ini kita memang harus dituntut untuk lebih kreatif dalam mengatasi banyak tantangan dan masalah. Semoga tips ini dapat bermanfaat bagi para pembaca.

Sampai jumpa di tulisan selanjutnya. Salam.

Tips Memilih Durian Matang

Tempo hari kami menyempatkan makan durian alias duren di Lampung. Kebetulan kami nemu penjual duren Linggau yang terkenal enak dan berdaging banyak. Asyiknya lagi, penjualnya menjamin durennya manis. Kalau tidak enak boleh ganti. Asyik kan?

Memilih Duren
Memilih Duren

Kami pun minta dipilihkan duren yang matang. Si penjual membukakan duren yang dipilihnya dan kemudian kami mencicipi, apakah enak? Jika enak, maka dilanjut makan. Jika tidak enak, durian diganti.

Belah duren
Belah duren

Baca selebihnya »

Development Dengan Spesifikasi Minimum

Tempo hari sempat menuliskan 2 tech talk yang berhubungan dengan optimasi & tuning, yang gunanya untuk meningkatkan performa sistem dan menjaga agar mampu menangani beban kerja yang semakin meningkat setiap harinya (baca: “Optimasi & Tuning Server” dan “Optimasi Query”). Namun sebenarnya ada tips yang cukup jitu yang membuat kita aware akan optimasi dan tetap menjaga performa sistem sejak awal development, yaitu dengan menggunakan hardware berspesifikasi minimal.

Mungkin sulit dibayangkan, tapi kurang lebih ceritanya begini. Saat development saya menggunakan notebook yang cukup powerfull, yaitu Acer V5 yang memiliki prosesor Intel i5 berclok 1.8 GHz yang pada saat mode turbo bisa mencapai 2.7 GHz. Cukup powerful untuk development sistem berbasis web. Semuanya berjalan lancar sampai ketika sistem diimplementasikan ke user. Saat diimplementasikan, ternyata banyak hal yang turut mempengaruhi performa sistem, dari PC user yang spesifikasinya lebih rendah, koneksi jaringan, sampai ke beban kerja server.

IMG_00003236_edit

Saat saya memprogram di notebook powerful tentu saja hal-hal seperti ini tidak muncul. Lagi pula database di notebook sifatnya statik, jika ada perubahan tentu dari saya saja. Sedangkan server production memiliki beban kerja tinggi seiring banyaknya user yang bekerja. Saat implementasi inilah banyak permasalahan muncul. Apalagi jika sistem telah dipakai cukup lama dan database sudah mulai membesar.

Nah, tips-nya cukup sederhana, yaitu gunakan PC development dengan spesifikasi minimal. Sebenarnya tips ini sangat menyebalkan karena rasanya semua berjalan dengan lambat. Saat coding lambat. Saat menjalankan query lambat. Bahkan menunggu eksekusi query jadi hal yang menjemukan. Namun dari kelambatan ini, kita jadi bisa melakukan optimasi code dan query sejak dari development. Saya sangat terkesan ketika mencoba modul baru yang diinstall di server production, ternyata modul berjalan dengan sangat cepat. Wow…

Tips ini sebenarnya bukan hal yang baru. Selain karena saat ini saya menggantungkan pekerjaan di notebook yang kurang powerful, juga karena saya pernah mengalami development saat berwirausaha dulu. Dulu saat mulai berwirausaha, saya membeli notebook bekas dengan spesifikasi rendah, yang penting terjangkau kantong saya yang pas-pasan dan paling tidak bisa digunakan bekerja dengan baik. Rasanya dulu saya tidak mengeluh saat mengembangkan sistem dengan spesifikasi minimum. Eh sekarang malah sering mengeluh, hehehe… Maklum, sekarang sudah pernah merasakan notebook dengan spesifikasi yang baik.

Rasanya tips ini bisa dicoba walau pun mungkin mengundang rasa sebel saat development.

Tech Talk: Optimasi Query

Melanjutkan tech talk kemarin, perkenankanlah saya menyambungnya dengan membahas optimasi lebih detail lagi, yaitu ke level database dan pemrograman. Oh iya, sebagai catatan, optimasi di sini adalah berdasarkan pengalaman dan diskusi internal, mungkin belum benar-benar optimal sehingga saya harap mendapat masukan dari pembaca. Dalam kasus ini, kami menggunakan database server MySQL dan pemrograman PHP.

Oh iya, posting ini juga dimuat di studewo.com sebagai arsip.

Menggunakan mysqli

PHP telah menyediakan function untuk koneksi ke database baik secara prosedural mau pun secara obyek (class). Namun dengan berkembangnya waktu & teknologi, beberapa function telah usang dan mulai ditinggalkan karena telah ada function yang lebih baru dan lebih baik.

Kalau dahulu kita mengenal pustaka (library) mysql_xxx, maka sekarang sudah digantikan dengan mysqli_xxx (mysql improve). Jadi lebih baik mulai menggunakan library mysqli_xxx. Lebih baik lagi jika memigrasikan aplikasi yang masih menggunakan mysql_xxx ke mysqli_xxx.

Berita baiknya, cara penggunaan librari mysqli_xxx mirip dengan mysql_xxx. Dan php tetap menyediakan 2 cara penggunaan, yaitu metode prosedural mau pun obyek (class).

Baca selebihnya »