16 lines
2.5 KiB
Markdown
16 lines
2.5 KiB
Markdown
---
|
|
title: "My Pathway of Programming"
|
|
date: 2023-10-27T00:00:00+00:00
|
|
---
|
|
|
|
I have been coding since 2020. My first language was {{<red text="JavaScript">}}, it was to code a Discord bot for the gaming community to access various weapon statistics in CoD mobile. I learnt how to use NoSQL databases and start making API for my bot. To further extend my knowledge, I made a npm package, which is a wrapper of my API and a lot of utility functions for coding TypeScript or JavaScript and the package have over {{<red text="8000">}} downloads now.
|
|
|
|
After that, I started to learn {{<red text="Python">}} from school and collaborate with my classmate for some tools that I could use at school computers. Moreover, I gained strong understanding of {{<red text="Java">}} by coding Minecraft servers and clients, and the skills to design games. My focus then switched to {{<red text="Kotlin">}}, to contribute to the LearnSpigot community by adding features to their helper bot. I get to know more about how to have better code practice and work with other people as a team.
|
|
|
|
As time goes on, I learned various techniques on how to protect & manage licenses for Java applications, and learnt to use deobfuscators to reverse engineer and crack Java applications.
|
|
|
|
Meanwhile, I tried to use {{<red text="Linux">}} Operating system by using Ubuntu, I started to do more basic operations on the terminal rather than using graphical user interfaces. With the time I used Linux, I learnt more about the system, including kernels, boot loaders, windows manager and the ability to solve problems myself.
|
|
|
|
Additionally, I used more {{<red text="TypeScript">}} because the type-safe feature is magnificent and I made a youtube mp4/mp3 downloader site using framework like Next.js, as well as a file uploader, URL shortener, code pastebin. The reason I made that is because I like to made my own version of programs that I normally use so that I know more about the process of it. For example I made a chrome extension to show time and play music at new tab, I can customise everything I want by that and not using others code.
|
|
|
|
Apart from that, I also went into more low level by learning to code in {{<red text="C">}}. I made some simple applications for myself use, such as a CLI tool, simple game, keyboard shortcut app and a GUI app using WinAPI32. By learning C, I am able to understand how memory is managed and how to use pointers to access memory, along with how basic functions are performed behind the scene of high level languages.
|