Nam Vo Website
I developed this website to
share my knowledge and satisfy my coding passion
LATEST BLOG
PWA and Service Worker: Making Your Web App Feel Native
You might have seen browsers allow you to install a website like an app. Building a native application takes significant effort, and not many common applications support it. Google Calendar and Gemini are examples. To use them like a native app, I ju...
Software Engineer
Software Engineer
Frontend
Frontend
CORS and CSRF: How Attackers Exploit the Gaps
I used to think CORS was a security feature. It is, partially. But the more I understood it, the more I realized how narrow its protection actually is. This post walks through how CORS works under the hood, where it breaks down, what CSRF is, and how...
Software Engineer
Software Engineer
Top blogs
Explore the most popular blog posts. View all
How to Manage and Renew SSL Certificates Using Docker Compose
Securing your website with SSL certificates is essential to protect data transmitted between the server and client. Managing and renewing SSL certificates can be a cumbersome task, but Docker simplifies this process. In this blog post, we will demons...
Docker
Docker
Software Engineer
Software Engineer
How Google achieves seamless SSO across multiple domains like Gmail and Youtube?
Have you ever wondered how logging into Gmail can automatically sign you into YouTube, Google Drive, and all other Google services? This behind-the-scenes technique is called Single Sign-On (SSO). In this blog, I will show you some techniques that Go...
Software Engineer
Software Engineer
Solving the "must appear in the GROUP BY clause" Error in Rails and PostgreSQL
This blog will give an example of how to resolve this common error when using group_by in Active Record1. Example problemFirst, take a look at this SQL problem. Imagine you're working on a booking application where users can have multiple sessions. Y...
Software Engineer
Software Engineer
Ruby on Rails
Ruby on Rails
Rails 7.2+: How to show all model attributes in Rails Console
With the release of Rails 7.2, a new change was introduced to the way ActiveRecord models are inspected in the Rails console. Prior to this version, calling inspect on an ActiveRecord model instance would display all the model's attributes by default...
Ruby on Rails
Ruby on Rails