
MaiSocial - Part 2
Background This is a continuation of MaiSocial - Part 1, feel free to read that section first. On this part, I wanted to add a few features: Google SSO using Supabase There is no particular reason why I avoided using Firebase, I just wanted to explore Supabase Simple comment section under each song I will not be doing replies or nested comments (at least for this part) Nickname By default, I will use their UUID provided by Supabase, because I donāt want to leak their email or name I wonāt have any unique nickname checking (for this part at least) Authentication Supabase Configuring Google Auth to work with Supabase is pretty straightforward, personally for me Supabaseās docs has a pretty detailed explanation on how to set it up. ...
How I'm Learning Japanese From Zero
Disclaimer I am just someone who recently passed the N4 exam. Please take my opinion with a grain of salt. Resources Brute force memorize hiragana & katakana: https://kana-quiz.tofugu.com/ Finish Tae Kimās complete guide: https://guidetojapanese.org/learn/complete/ Find any missing grammar / vocabulary / kanji for the level you want: https://jlptsensei.com/ Use these Anki decks to help: Japanese Core 2000 Step: https://ankiweb.net/shared/decks?search=japanese%20core%202000%20step I recommend skipping step 3 - 5 because it contains many N1-N2 words, so just do 1, 2, 6, 7, ā¦ Dictionary of Japanese Grammar: https://ankiweb.net/shared/info/1013111837 I recommend these Japanese channels: Yusuke (Japanese monologue/dialogue): https://www.youtube.com/@moshimoshi.yusuke Kaname Naito (In-depth nuance explanation): https://www.youtube.com/@kanamenaito Free mock JLPT exam: https://easyjapanese.net/jlpt-test?hl=en-US FAQ Should I use Duolingo? Sure, as long as you donāt use it as the sole resource for learning Japanese. ...

Hosting a Discord Bot in Vercel
Did you know that you could host a Discord bot in Vercel for free? I didnāt knew until I googled around. If youāre curious on how you could host your own bot in Vercel, follow along The theory I had made bots before, but they were like servers that are always on, so that the bot has an online status. But that was a long time ago. Discord supports webhooks for their slash commands, so when a user sends a command to your Discord bot, Discord will send a POST request. Vercel supports serverless functions, so it is perfect for this use case (despite them not recommending it). ...

MaiSocial - Part 1
Background Back when I made MaiFavorite/MaiChart (same project, just different name), I wanted to achieve two things: Bookmark favorite charts, using localStorage so that it works without having to store each userās favorites Have an estimated rating calculator for each chart With the release of BUDDiES PLUS version, the first point is redundant because you can have up to 30 favorite songs, and it will actually show up on the arcade cabinet when you play. The rating calculator seems to be an only me thing, because other people would just use the āRecommended based on ratingā category in the arcade cabinet as well. With that in mind, I wanted to remake the website, using a different stack in order to be a learning experience for myself. ...

My 1 month experience of using a split keyboard
Background I had some spare keyboard switches and keycaps lying around, so I decided to buy a barebone keyboard. Not just any keyboard, but a split one. The split keyboard that I am using is the Lily58 Pro. Something you should know I only realized after receiving the barebones keyboard, that split keyboards require some special keycaps. For example, 1u - 1.75u spacebar, 1u - 1.75u enter, 1u backspakce, 1u tab, etc. Thankfully I found an online store that offers custom keycap printing service, so I just made the keycap design myself and asked them to make the keycaps for me. ...
Creating a simple spendings tracker app using Expo.dev
Background Currently my family depends on me to count the monthly spendings. Their reasoning is that so I know the cost of living. The way this works is that my mother will write out the spendings on a book everyday, and on the start of the month I will read her handwriting, add the items to a google sheet, make sure there are no items missed, and report the monthly spending of that month to my parents. After 7 years of doing it, I had enough because: ...

Creating another personal site and buying a domain
Background In an effort to become more professional, I decided that I want to have a personal portfolio site, and buy a domain that uses my name. I also want to relearn React and Tailwind, so this is a good opportunity for me. Creating a portfolio site Since my portfolio site has no interactive experience, a static site is my end goal. Since the static site is going to be built into HTML by Vite, I could have just made a vanilla site, purely using HTML and CSS. In the end I still chose to use React and Tailwind for learning purposes. ...
2025 Resolutions
Intro 2024ā¦ A lot has happened in this world, but if I were to name the single most impactful event this year, it would be that one event that happened on the 14th of June, 2024. It was my first time getting laid off, and it really gave me some really high highs and low lows. From the happiness of earning 9 months of salary and a 14 inch macbook pro, anxiety from having no income, feelings of envy for other people that found a job faster than me, dread of job interviews where my fate is decided by other people, and relief after finally finding a new job. ...
Friend Only Giveaway
I have a lot of stuff that I donāt use anymore, so I decided to let you guys know that if you want it you can tell me & we can arrange to meet / get it delivered. Terms & Conditions I cannot guarantee that the item will work. You will not complain about the condition of the item. If you want it delivered, tell me & we can discuss how we can get it delivered to you. You will need to pay the delivery cost though. The items Below are the list of items & a quick reason why Iām giving it away. ...
My JLPT N4 Experience
What is JLPT? JLPT (Japanese-Language Proficiency Test / ę„ę¬čŖč½å試éØ) is a Japanese language exam that covers language knowledge, reading ability, and listening ability. JLPT has 5 levels of certification (N5 to N1, with N5 being the lowest level), and this blog post will detail my N4 exam experience. The exam format is multiple choice, with each section having its own length. During the listening section, a tape recorder will be played. ...