About Legendword
Summary
I am a third year student at UBC, pursuing my Bachelor of Science degree in Computer Science. I specialize in full stack web development and have some experience in iOS development, cross-platform web apps, Python, Java, and C++. My other hobbies include photography, music producing, and filmmaking. I am especially familiar with Vue, React, and several libraries based on them; MySQL database design and querying; NodeJS, PHP, and Java backend; server setup and maintenance. I am open to job opportunities (part-time Sep-Apr or full-time May-Aug), willing to learn new frameworks and expand my skillset.
Contact
Job Opportunities: jinanzwh@gmail.com
Other Inquiries: contact@legendword.com
Origins
The name "Legendword" came up when deciding on a domain name for this website back in 2014; it was discovered by accident, through the misspelling of "Legendworld".
Legendword.com grew as I gradually learned web programming on my own. It started out as a playground for my learning endeavors, a place to share interesting things with friends. As I became more proficient in programming, I started building tools, games, and apps on this website. The projects are all inspired by my passion for programming and curiosity. In recent years, I experimented with a wide range of frameworks. Creating web apps with these unfamiliar frameworks is an excellent way to practice new concepts and skills.
Competition Awards
Programming Languages Used (in order of proficiency)
Frameworks Used
Programming
Around 2014, I started to learn the most basic languages of the web: HTML, CSS, Javascipt, and PHP. At that time, I mainly used jQuery as the only Javascript library and Bootstrap as the only UI component library. It was the era of manipulating DOM directly, and I was happy to begin the journey there. Javascript did not have many of its amazing features back then, but it easily became my favorite language. 2015 brought me to competitive programming; I learned C++ in training camps provided by my school. This was when I grasped advanced algorithms and data structures to write highly efficient code. By participating in the NOIP competitions, I gained confidence in my programming skills and made lots of friends along the way.
I was also introduced to Python in the coding club at that time. However, the only Python project I did was a text animation. It was not until 2020 that I used Python again. One major project around 2017 was Square Warfare, an original 1v1 tank shooter in 2D. The game was rendered using only the HTML5 canvas. In the game, two players play against each other in customizable maps, with different types of tanks and four special abilities. An online version was developed in 2018 that enables remote play via WebSocket and Node.js.
PHP was the language I used for the backend up until 2018. I have gradually shifted my backend development language towards Node.js, and all of my recent serverside code is written in Node.js. There are also changes to my frontend development: rising frameworks like Vue and React have caught my attention. These component-based libraries make web dev much more satisfying, so I have been using them ever since. New frameworks opened doors to cross-platform apps with Javascript, allowing me to deploy web apps to laptops and phones.
