Site Overview
This website is designed as a structured learning space for technology study. It collects notes, explanations, practice topics, and useful references related to programming, operating systems, computer networking, and web development.
The goal is to make technical topics easier to review by organizing them into clear sections. Each section focuses on concepts, vocabulary, practical examples, and small learning tasks that can be used for regular study.
Programming Notes
Programming is the process of giving computers clear instructions. These notes focus on building a foundation in problem solving, syntax, debugging, and writing readable code.
Core Concepts
- Variables store values that can be used later in a program.
- Conditionals allow code to make decisions using
ifandelse. - Loops repeat tasks without writing the same code many times.
- Functions group instructions into reusable blocks.
Problem Solving
- Break large problems into smaller steps.
- Write pseudocode before writing real code.
- Test programs with simple input first.
- Read error messages carefully instead of guessing.
Readable Code
- Use clear variable names.
- Keep functions short and focused.
- Add comments only when they explain useful context.
- Format code consistently.
Linux Practice
Linux is widely used for servers, development environments, and technical learning. Practicing the command line helps build confidence with files, processes, packages, and system tools.
Common Commands
pwdshows the current directory.lslists files and folders.cdchanges directories.mkdircreates a new folder.cp,mv, andrmcopy, move, and remove files.
System Checks
df -hchecks disk space.free -hchecks memory usage.toporhtopshows running processes.systemctl statuschecks service status.
Software Management
sudo apt updaterefreshes package information.sudo apt upgradeinstalls available updates.sudo apt installinstalls new software.sudo apt removeremoves software packages.
Networking Basics
Networking explains how devices communicate across local networks and the internet. Understanding DNS, IP addresses, HTTPS, and web requests makes it easier to learn how websites and online services work.
Domain Name System
- DNS translates domain names into server addresses.
- An A record points a name to an IPv4 address.
- A CNAME record points one name to another name.
- DNS changes may take time to update across networks.
Secure Web Connections
- HTTPS encrypts traffic between a browser and a website.
- Certificates help browsers verify website identity.
- A secure lock icon means the browser trusts the certificate.
- Expired or invalid certificates can cause browser warnings.
How Pages Load
- The browser looks up the domain name.
- It connects to the web server.
- It requests HTML, CSS, JavaScript, images, and other files.
- The browser renders the page for the user.
Web Development Notes
Web development combines structure, style, and behavior. HTML describes page content, CSS controls appearance, and JavaScript adds interaction.
Page Structure
<header>can contain titles and navigation.<main>contains the main page content.<section>groups related content.<footer>contains closing information.
Layout and Design
- Use spacing to make pages easier to read.
- Use contrast for readable text.
- Use responsive layouts for different screen sizes.
- Use consistent colors, borders, and typography.
Interaction
- JavaScript can respond to clicks and keyboard input.
- The DOM represents the page structure in the browser.
- Small scripts can update text, forms, and page elements.
- Debugging tools help inspect errors and page behavior.
Study Resources
Reliable documentation and educational references are important for technical study. The resources below are useful starting points for learning programming, web design, operating systems, and computer science concepts.
Official References
- MDN Web Docs for HTML, CSS, and JavaScript.
- Python Documentation for language reference and tutorials.
- Ubuntu Documentation for Linux system topics.
- Cloudflare Documentation for DNS and web infrastructure concepts.
Practice Platforms
- freeCodeCamp for web development exercises.
- Khan Academy for math and computing lessons.
- W3Schools for quick examples and syntax review.
- Codecademy for guided programming practice.
Learning Methods
- Write short notes after learning a new topic.
- Practice by building small projects.
- Review mistakes and error messages.
- Explain concepts in simple words to check understanding.
Projects and Practice Log
Practice projects make technical learning more concrete. This section lists current study goals and small projects that help build practical skills.
Weekly Learning Goals
- Review HTML document structure and semantic elements.
- Practice CSS layout with cards, grids, and responsive spacing.
- Use basic Linux commands to manage files and check system status.
- Study how DNS records connect domain names to websites.
Small Technical Projects
- Build a static learning homepage with HTML and CSS.
- Create a command-line notes sheet for Linux practice.
- Make a simple webpage explaining DNS and HTTPS.
- Organize programming notes into clear topic sections.
Study Review Questions
- Can I explain the difference between HTML, CSS, and JavaScript?
- Can I use the terminal to move, copy, and list files?
- Can I explain what DNS does?
- Can I identify why a website certificate is trusted by a browser?
About This Site
Qifeng Learning Hub is a non-commercial educational website for organizing study notes and technical learning resources. The site focuses on computer science, programming practice, Linux, networking, and web development fundamentals.
Content may be updated over time as new topics are studied and new notes are added.