Muhammad Zainul Hakim

A lifetime learner

Into the web development world

Dev screen

If You ask me when was I starting play around with web programming languages, I would like to answer: since I had a Friendster account!

For those who ever have a Friendster page (Lol, You may guess my age from here), it’s cool to have a cool Friendster profile page. Embedding music, weird cursor, or blinking text is as cool as creating a JJ in TikTok or Instagram nowadays.

Blogger: Tried to be a content creator

Becoming a blogger with well-performing AdSense is one of my target years ago. But, later I realized that being a consistent content creator without proper knowledge is not enjoyable for me. So I decided to not continuing this attempt. However, making a cool blog layout is interesting but hard without good understanding of web langs.

Watching Web Programming UNPAS YouTube Channel

This is one of helpful learning sources for me in understanding web programming languages. After practicing learning materials from this channel, I attempted to build a PHP based web app with Laravel framework. Since I was a beginner and lack of familiarity, I still struggling to build the app.

Another problem for me is, although Laravel has a pretty straight forward APIs, I still need to switch the context to my poor understanding of JavaScript in the front-end side.

Start practicing basics in Freecodecamp

Besides Laravel, I tried to learn other web frameworks to accomplish my goal: Creating a simple attendance system app. From Django, Flutter, to Redwood JS. From there I realized that I can’t do more without familiarity with basics of those languages. I dropped Django and Flutter for their longer learning curves, so now I can’t avoid JavaScript!

To be more familiar with HTML, CSS and JavaScript, I finished some tutorials there, but without exams for certifications because again, lack of familiarity. Moreover, I didn’t think that I need those certificates. My main goals was building a working app.

Looking into JavaScript ecosystem

Although it was common to give some interactivity in a page with jQuery, my first reaction to it is, oh no, it is messy. Moreover, some random people on internet suggested to use more modern tools like React or Vue. I tried both of them, and again, my take is, web development is quite difficult and frustrating.

I looked for some good example codes of both React and Vue on Github, but more struggles were incoming: Those all were written in TypeScript!

Practicing Next.js starter tutorial

Next.js beginner tutorial is pretty straights forward. I can follow it easily while I still struggling to understand TypeScript-based codes.

At this point I feel that coding web page is not as scary as directly building React or Vue app. Thanks to its simplicity, I succeeded deploying a Next.js web page for the first time.

Trying Remix starter tutorial

My first impression was like I’m building a new Laravel app but without context switching needed. This is interesting! After practicing Remix Jokes tutorial, I tried to build a simple attendance taking app as it was my need at that time.

Joining IDCamp - Dicoding React course

Later I postponed this project because I just heard a new IDCamp - Dicoding 2022 just started. I don’t want to miss this opportunity to upskilling myself. This project is postponed until now and luckily, our school just building a whole academic system with a vendor.