https://www.gravatar.com/avatar/ff0292ca9329b69a1325f916c783db36?s=240&d=mp
Do not let today be the enemy of your tomorrow

DNS Notes

DNS There’re two ways to identify a host — by a hostname and by a IP address. People prefer the more mnemonic hostname identifier, while routers prefer fixed-length, hierarchically structured IP addresses. What is DNS DNS, domain name system is the networking system that allows us to resolve human-friendly names to unique id addresses. DNS is a globally distributed, stateless, scalable, reliable database. a distributed database implemented in a hierarchy of DNS servers an application-layer protocol that allows the host to query the distributed database DNS protocol runs over UDP protocol and uses port 53 DNS components name space name servers resolvers Name space The name space is the structure of DNS database.

Email Delivery Issues

Email in the Internet Email has been around since the beginning of the Internet. As with ordinary postal mail, email is an asynchronous communication medium. Internet mail system has three major components: user agents (outlook..) mail servers SMTP, Simple Mail Transfer Protocol SMTP SMTP is at the heart of email, is much older than HTTP. It is a legacy technology that possess certain archaic characteristics. e.g., it restricts the body of all mail messages to simple 7-bit ASCII, which was made sense in the early 1980s.

Bit Manipulation Notes

This note is primarily based on Explore Card on leetcode. And the objective is to grasp the basics of bit in computer science and tackle the related leetcode problems with confidence. Concepts introduction Base Base is a carry counting system with fixed digital symbols and rules. We use decimal numeral system (base-10) as standard in everyday life. In computer science, the binary system is mostly used. Octal (base-8) and hexadecimal (base-16) are also commonly used.

Memory Palace Introduction

Overview Motivation As a student in the field of Software Engineering, my academic and personal interests span a wide array of topics. From delving into complex technical subjects to exploring diverse fields such as history, psychology, and personal development, the necessity to form cognitive connections in each area and across areas is paramount. This breadth of interests requires me to internalize and retain a vast amount of detailed knowledge. ‘Memory Palacer’ stems from this personal need — a tool crafted not just for academic rigor but also for the joy of learning and exploring various domains.

Website Introduction

Overview Goals Enhancing Student Success: Empower Silicon Valley Campus students with essential campus information, valuable learning resources, and content crucial for their success in the tech field. Fostering Community Interaction: Establish an interactive communication and collaborative learning platform where students can pose questions, receive answers, and engage in discussions throughout their educational journey. Tech Stack Frontend: React, chosen for its efficient, component-based architecture that enhances user experiences. Backend: Express: Personally developed by me, focusing on efficient and scalable server-side solutions.

AWS Instance set up for blog and portfolio

TL;DR Create an EC 2 (or other instance from any cloud service provider) With ssh login setup (security rules, private key, non-root user) Domain name Install dependencies (Nginx…For SSL/TLS, I use certbot) Nginx configuration Blog setup I use HUGO Content (.md files) Make sure your blog service could generate static files Serve the content via Nginx Use GitHub repo to manage blog project Use GitHub Actions to automatically deploy static files on the instance Launch EC2 AWS or GCP Create a new Instance On your local machine (which is used to ssh login to the instance) Generate pem as private key file Make the key private by chmod 400 "key_name.

Prefix Sum Technique Notes

Idea Start from 0 Start from 1 Prefix sum is to create an array prefix where prefix[i] is the sum of all elements up to the index i (inclusive). nums = [5, 2, 1, 6, 3, 8]; pref = [5, 7, 8, 14, 17, 25]; # delay pref = [0, 5, 7, 8, 14, 17, 25]; Sometimes, we use a delay-prefix array which start from index 1. This is convenient when calculating distance or length.

Full-Stack Web Service — A Full-Featured Analytics Application

Overview In the digital marketing realm, timely, concise, and critical data delivery can significantly enhance team efficiency and strategic planning. Building on the foundation laid by the earlier data scraping project, the goal was to provide a more real-time, succinct, and essential data delivery mechanism to the team. Recognizing the profound impact of an accessible, one-stop solution, I embarked on the development of a full-stack web service adapting Python Django and the WeChat Mini-program.

Social Media Web Scraping Tool for Autohome

Problem Statement When I first started working in this digital marketing department, I recognized that my colleagues and agents were spending an excessive amount of time obtaining social media data. At times, they even had to make substantial payments to platforms for data purchase, even though we only required a portion of the openly available data. I summarized a few key issues: Manual copy-pasting of social media data was too slow and prone to errors.

Life in the US 01

This article is a test draft and will be updated. The Flight Check-in process, I had very little luggage. The bag was beautiful and offered excellent protection; it left nothing, even water. That evening at Beijing Capital International Airport, there were only two flights: one to my layover city and the other to my hometown. It was impossible not to feel stirred. I was torn between going left and right.