Learning
Django Development Conventions (Part 1)
· ☕ 3 min read
This article mainly lays out a few things to watch out for during Django development. A consistent coding style and sound design principles help a project’s development and maintenance, and are worth developers studying and discussing continuously. 1. Encoding Declaration When the Python interpreter executes code, it needs to be

My Toolbox
· ☕ 3 min read
1. Documentation Pandoc Pandoc is a text conversion tool written in Haskell. It is fast and supports a wide range of formats, converting Markdown, LaTeX, and others into HTML, Docs, PDF, and more. All it takes is a simple command: 1 pandoc mypaper.md -o mypaper.docx Graphviz An open-source toolkit developed

Processes, Threads, and Coroutines in Python
· ☕ 5 min read
1. Processes A process is an instance of a running program, and it is the most basic unit by which the kernel allocates resources. A process has its own independent heap and stack, its own address space, and its own resource handles. Processes are scheduled by the OS, the scheduling

Interactive Notebook - Jupyter
· ☕ 2 min read
1. Introduction Jupyter Notebook (formerly IPython notebook) is an interactive notebook that supports running more than 40 programming languages. Jupyter Notebook is in fact a web application that lets you create and share program documents, with support for live code, mathematical equations, visualizations, and Markdown. Its uses include data cleaning

Error Code Design and Unified Exception Handling in Django
· ☕ 6 min read
I currently use Django for SaaS development, and I develop and maintain several SaaS applications at the same time. Many SaaS applications have agreed-upon error codes, some used to handle login state, others to mark business logic status. For a feature that is so strongly shared across projects, it is