Frontend and backend
The part of an app you see and touch, and the part that works behind it.
Almost every app is split in two. The frontend is what runs on your device: the screens, buttons and forms of a website or mobile app. The backend runs on a server somewhere else: it checks your password, reads and writes the database, charges the card and sends the data the frontend displays. The two talk through an API, usually over HTTPS.
Frontends are built with HTML, CSS and JavaScript in the browser (often with a framework like React), or with Swift and Kotlin on phones. Backends are written in Python, Java, Go, Node.js and many others, and run on a cloud machine, in a container or as a serverless function. When you tap "buy", the frontend sends a request; the backend validates it, updates stock and orders, and replies "done"; the frontend shows the confirmation.
The split matters because each side has different problems. The frontend worries about screen sizes, speed on old phones and accessibility; the backend about security, data integrity and handling thousands of users at once. Anything that must be trusted (prices, permissions) lives in the backend, because anything in the frontend can be read and modified by the user. A "full-stack" developer works on both.
Keep in mind
- Frontend: runs on the user's device, built with HTML, CSS, JavaScript or native mobile code.
- Backend: runs on servers, owns the data and the business rules.
- They communicate through APIs, and the backend never trusts the frontend blindly.
- "Full stack" means working on both sides.