Writing on software design, development and personal notes.

Remembering and understanding by explaination as simple as possible. More importly, this allows me to quickly revisit and grasp the core ideas upon review.

How much SQL is enough?

SQL (Structured Query Language) is a fundamental tool for data analysts, but how much of it do you actually need to know

Every CSS Animation Property Explained

Learn about every CSS animation property, including examples and use cases. This comprehensive guide covers keyframe animations, transitions, and more.

Understanding React's as Prop and Radix UI's asChild Prop

Explore the differences between React's polymorphic `as` prop pattern and Radix UI's composition-focused `asChild` prop. This guide explains how these powerful patterns enable more flexible, accessible, and maintainable component designs with practical examples and implementation details.

Git Workflow

Having used Git for many years, I often find myself needing to revisit certain operations, especially when it comes to tasks like discarding changes across different areas(workspace, index/staging, local repo and remote repo). To streamline my workflow and make these operations easier to recall, I've compiled a collection of common Git commands and workflows.

How to scale software project

Scaling a software project or tech-based service, involves multiple dimensions and strategies. The aim is to accommondate growth, whether it's in the number of users, the volume of data, the complexity of operations, or geographic expansion.

From Human Neuron to Perceptron Model

Human neurons are the basic unit of the brain, a highly complex, interconnected network responsible for processing and transmitting information using electrical and chemical signals. The journey from understanding human neurons to developing the perceptron model marks a significant milestone in the field of machine learning and deep learning. It reflects how biological structure has led to the development of computational models that capable of learning and making decisions.

Common Probability Distributions

A Probability distribution list the probabilities of all possible outcomes of a random variable

Encoding a column in a dataset

Encoding a column in a dataset during data preprocessing is a crucial step in preparing your data for machine learning models. This process involves converting categorical data, which are often represented as text, into a numerical format that can be understood by the algorithms. There are several methods to do this, each suitable for different types of data and models.

Organizing rust projects

Understanding Rust's project structure—including modules, crates, and workspaces—is fundamental for developers aiming to build scalable, maintainable, and efficient software.

Cargo Config

How to configure Cargo to use a specific registry and solve access issues.

React Props Typechecking with PropTypes

Why validate props in React React props, which stands for "properties", are read-only object being send from one component to another

How to reference favicon properly in HTML

Today I learned that the proper way to reference favicon(and other local resources in HTML): I used to use to reference favicon for my websites, an...

Tailwind Best Prictice

In this post, I am listing all initial setup for my tailwind configuration

Django Custom Usermodel

Django ships with a built-in User model for authentication and it is good enough for most common cases

Change Hugo Default lastmod Date

Today I found that even if I set date manually in my hugo post front matter, the content last modified date still pulls from , Which is a different...

Deploy Wagtail/Django to Heroku with Github

Once you've created an awesome local website with wagtail or django framwork, you'll want to make it pulic to everybody or somebody over the internet

Change Git Default Branch Name

All git repositories used to use the as the branch name, but it was changed to since October, 2020

CSS Flex in a Nutshell

Flex, also referred as flexible box, flexbox or flex layout, is a one dimensional layout in CSS

CSS Position

The CSS property specifies how an element is positioned in dom

Go Proxy

Set go proxy also solves vscode go plugin update failed problem

Git Proxy

This is, sadly, one of those China-only dev problems: > "Failed to connect to github

Linux Alias

Alias for current linux user Create/edit bashrc file Add aliases Add aliases content to bashrc file Refresh current shell environment

Rewrite Git Commit History

A comprehensive guide covering important concepts and practical examples.

Vim Cheatsheet

Started to learn vim from many years ago and used it on and off from time to time