The ups and downs are quite… something.
Photo by Joshua Aragon on Unsplash
Seperti tahun lalu, awal tahun ini saya mencoba menantang diri saya dengan melakukan #100DaysOfCode challenge sekali lagi. Bedanya, di tahun lalu saya mengikuti panduan dari The Odin Project, di percobaan kali ini saya jalan tanpa adanya panduan apapun, saya menentukan sendiri apa yang pengen pelajari, bingung sendiri juga kalo pas enggak tahu apa yang mau dipelajari di hari itu.
Sore nano ni (meskipun begitu), seperti halnya ketika saya melakukan challenge ini pertama kali, kali ini pun saya juga banyak belajar hal-hal baru dan saya bisa lebih berfokus belajar hal-hal terkait front-end development — selama 100 hari ini saya belajar full frontend developer, hoho.
Di tengah-tengah prosesnya tentu ada rasa malesnya juga, karena bingung mau ngapain, karena capek, karena ini karena itu, but fortunately my pride doesn’t allow me to stop doing it. Saya cukup bersyukur punya “gengsi” yang cukup tinggi untuk menyelesaikan tantangan ini, karena yaa memang lebih berasa males-malesnya gitu, ditambah di tengah-tengah prosesnya ada acara saya pindahan dari Jogja pulang ke Semarang, kalo enggak salah sempat kelewat satu hari — jadi enggak bener-bener 100 hari berturut ya, yaa nggak papa lah, yang penting sampe lah ya 100 hari belajarnya — karena setelah pindahan harus ngecat kamar dulu, ditata dulu, bongkar barang-barang daaannn sebagainya. But it’s worth.
Journey paling berat kerasa banget ketika udah menyentuh 1/3 yang akhir, mulai hari ke… 60 an sampai hari ini(?), saya kadang merasa — sering deng padahal — bingung apalagi yang mau dipelajari, perasaan yaa udah “semua”, sedangkan masih banyak hal yang belum saya eksplor tentang frontend development. Ketika pemikiran kaya gitu terbesit di pikiran saya, saya buru-buru ngingetin diri sendiri, “kalo kita bingung mau ngapain tandanya kita stuck, badanku, ayooo, isih akeh sing durung dipelajari”.
Setelah saya pikir-pikir lagi, tantangan kali ini enggak berjalan begitu lancar memang karena kurangnya persiapan, enggak adanya rencana yang jelas mau gimana, pokoknya jalanin aja udah, sedangkan pikiran saya sendiri udah “diperas” di jam-jam kerja, pas jatahnya belajar, udah habis, capek, akhirnya sering deh enggak tau mau ngapain. Ini jadi bahan evaluasi saya kali ini sih, karena memang kalo dilihat untuk challenge kali ini impulsif banget — yang kemarin sih iya, tapi ada guide nya.
Anyway… Saya tetep cukup senang sama apa aja yang telah saya capai di challenge kali ini, hal-hal yang “berhasil” saya pelajari antara lain:
Typescript
Akhirnya setelah sekian lama pengen belajar typescript, sempet sih coba implement, tapi karena enggak tau pondasinya, jadinya malah bingung sendiri. Sekarang alhamdulillaah sudah bisa pake typescript meskipun masih bingung gimana penggunaan file d.ts
.
Ohiya sambil belajar typescript saya juga belajar JSDoc hehe.
Atomic Design
Terobosan untuk nyusun web component dari atom bikinan Brad Frost ini akhirnya bisa juga saya pelajari maksudnya. Sebenernya udah sejak di Kulina pake approach ini, tapi karena enggak ngerti banget maksudnya, jadi yaa masih agak ngawur dulu implementasinya.
Xstyled
Alternatif dari styled-system
untuk modifikasi component-component yang dibikin lewat styled-components
yang menurut saya jauh lebih enak untuk dipake apalagi buat project yang berbasis typescript. Ohiya authornya juga asyik diajak diskusi, kami sempet beberapa kali reply-reply an ketika saya sambat terkait xstyled ini.
Rewrite Personal Website
Setelah belajar hal-hal di atas, rasanya agak sia-sia kalo enggak dipraktekin penggunaannya, akhirnya saya rewrite codebase web saya yang awalnya agak (uhuk) enggak teratur susunan componentnya, saya susun ulang, stacknya saya ganti. Jadilah web saya pake Gatsby JS, Typescript, xstyled.
Sejauh ini sih saya lihat codebase saya cukup maintainable. I’m so proud of myself. Good job, myself, hahaha.
React Query
Salah satu opsi state management untuk react app, alternatif lain dari Redux,. Sebenernya ada alternatif library lain kaya Recoil JS atau React Context, tapi menurut saya react-query
ini jauh lebih enak dari dua library tadi, lebih enak buat dipake gitu. Worth trying!
Freecodecamp: Javascript Algorithm and Data Structure
Ini sebenernya masuk salah satu goal saya untuk challenge kali ini, sempet enggak yakin apakah bisa nyelesaiin sertifikasi ini atau enggak, but here we are, I got the certification everibadeee.
Web Accessibility and Performace Optimization
Di sepuluh hari terakhir ini saya juga belajar tentang hal-hal yang saya dulu sempet pengen belajar (waktu di Kulina). Akhirnya bisa kesampean juga, berangkat dari podcast nya Wes Bos bareng Sara Soueidan yang ngomongin SVG dan accessibility, saya nemu course saya di Udacity yang mangkrak terkait topik ini, akhirnya GPL (gak pake lama) saya lanjutin — lebih tepatnya mulai lagi sih, karena juga masih awal-awal banget — course nya.
Saya yakin sih nyelesaiin course itu enggak akan bikin saya jadi “master” in no time, tapi setelah saya selesaiin course nya saya merasa dapet banyak banget pencerahan terkait bikin website. Dengan belajar a11y (accessibility), saya sebagai developer diajarin untuk bikin web dari perspektif usernya, lebih perhatian ke halangan-halangan yang mungkin dialami user, diajarin lebih empatik lah. Kalo Sara bilang sih kurang lebih gini
“It’s so selfish creating product for user but using developer perspective”
Atau yang Rob Dodson (mentor course di Udacity) bilang
“Having empathy is a huge part of creating an accessible product”
Gracias para “mentor” saya.
Others
Selain beberapa hal di atas ada juga yang saya pelajari, tapi antara enggak ke track jadi terhenti di tengah jalan, ada juga yang karena emang enggak banyak jadi cepet selesainya. Kaya Storybook, Preact, Websocket, Tailwind.
Conclusion
Kali ini emang cukup berasa “down” dari challenge-nya, karena kurangnya persiapan dan planning, jadi terkesan buru-buru dan enggak siap baik secara roadmap, mental, dan fisiknya. Meskipun begitu, alhamdulillaah bisa khatam juga challenge kali ini yang menyentuh 2 hari Ramadhan.
Saya juga belajar lebih banyak hal terkait frontend di kesempatan kali ini yang menurut saya sangat berharga dan bermanfaat karena banyak perspektif baru — sebagai developer — buat saya.
Mungkin tahun ini enggak akan ada #100DaysOfChallenge lagi, tidak dalam waktu dekat, ke depannya saya tetep akan membiasakan belajar hal baru tapi enggak se-intens ini. Kalaupun saya mau take the challenge lagi, saya akan persiapkan dengan cukup matang dulu, biar journey nya lebih tertata.
Anyway, it’s just a recap of my challenge. Hope you enjoy it!
Have a great day!