Kival Evan

Early journey into web development


This would’ve been in introduction post but it was getting rather long and deserve another post.

In the beginning, I knew very minimal about web development. I understood that creating website takes effort but it wasn’t something I would bother to create until recently. I had taken web development course, both online and school, yet it is incredibly basic that it feels like it requires a kickstart to get things going. Thus, I had found a project that would do just that.

I’m not exactly sure when I started, but I do know I started to take off around early 2021 when I first launched Beat Saber Map Check. The project started around December 2020 and it was not exactly for web app… rather for node script to run on beatmap. I soon realise the potential of this and started to turn it into web app.

It wasn’t a pretty web app, but it’s practical enough and arguably straightforward, albeit not as user friendly. It was made with pure vanilla JavaScript, and it had rough start. I was not taught on how to build a project from ground up even after reading through multiple articles on how to, most of them I find rather boring, small, or overkill. I did not know nor want to use any existing framework as I find them rather intimidating. Perhaps I really didn’t want to as I went around with vanilla JS to learn more on the lower level hopefully the transition onto framework and another technology won’t be as dreadful.

Soon after the first project, I decided to do the side project that is Beat Saber Mapping Utility and my own website. Of course it was made completely vanilla, I did not try to use any existing technology as I wanted to learn on how to develop things from scratch. It also serves as a learning tool and that I was able to find new ways to develop things.

Later in development, I realised I needed a better way to maintain the web app. A large chunk of spaghetti code since the first web application project has proven to be difficult to maintain and scale. It was demotivating to say the least, and that is when I needed to learn a better file structure and design pattern.

I looked up on TypeScript, Sass, Webpack, and others, boy… I wished I had learned this early on, there are technologies that would’ve made development not only easier, but better overall yet I was stubborn to keep onto vanilla route. It wasn’t difficult to learn but learning the features it had to offer certainly takes plenty of time to get used to and well it was worth it.

Around June-July 2021, I started to do rewrite of my projects starting with Beat Saber Mapping Utility. It’s relatively small but has enough materials & features for me to start learning and adapting to newer technology, although difficult and time consuming as I was trying to ensure feature parity in the rewrite. Later after, the bigger rewrite on Beat Saber Map Check and now this website.

There are plenty of issues I faced while in development, one of them is trying to figure out the file structure and the design pattern. Most online resources cover the basics but never told anything regarding advanced stuff like user interface, components, etc. I get that they are subjectives, but I wanted to know how an experienced coder structure their file/code. Alas, I do hope what I did is the good practice and anyone reading would be able to understand.

I’m still learning a lot of things, hasn’t stopped there. My mind filled with ideas and projects, only needing a spark that would get it started. Hoping one day I’ll be able to contribute to project as I get more knowledgable and I believe I’m still a long way there. I might do this sort of blog post twice as yearly thing and perhaps not just as a web developer.