How Code Thinks: Mvp, Mvc, And What A Computer Is
MVP: Most Valuable Player.
After winning the 2013-14 MVP award, Kevin Durant said his mother was "da real MVP", which isn't what we're talking about here today.
MVC: MODEL VIEW CONTROLLER
How you use data and create applications is common in "model, view, controller" applications. 99% of your applications will have a user at some point, so I'm including a user.
MODEL: THE DATA BRAIN, STORAGE AND LOGIC
The Model is the data and the business logic of your application. Think of it like the brain. It has memories, and those memories tell the brain how it's going to do things with all the knowledge.
The Model gets information from the controller to make changes, and then tells the View what it's supposed to display or render.
Example: In an eCommerce application, the Model would manage the t-shirt inventory, for all quantities and colors. When a shirt is sold, it updates the inventory, along with sending information to the view side, so a user knows an item was added to their cart, and what it costs.
VIEW: WHAT YOU SEE OR USE
Your View is what you see. It could be the front end of a web page, an Unreal Engine computer game, or the LED display telling you when the next train will arrive for your local public transportation.
When you think about what a view does, remember that it's simply displaying changes that were sent from the model. You can style it up, change the way it looks, etc., but it's simply getting information from somewhere else.
Example: In an eCommerce application, the View is the page where you shirt is seen. The toggles for size, the colors, and then the "sale" bubble would all be built into your view. Need to change the way it looks, like a font? That's CSS. That's the style of your view.
CONTROLLER: THE DIRECTOR
The Controller is the middleman between the View and the Model. It controls the data flow into Model objects and updates the View whenever the data changes.
The Controller receives input from users via the View, processes that input (potentially altering the state of the Model), and then returns the updated View. It's the coach of the game, calling the plays. It subs in the players, decides on the formation, and then tells the players which play call they're going to run. SET HUT!
Example: In our eCommerce application, the Controller handles user requests. When a user places an order, the Controller takes that order, and asks the Model to save it, before updating customer information, inventory, and sending an email saying, "Order number 123456 has been placed. Here is the tracking number." It then manages updates as other exterior sources (such as a shipping API) update the model, and tell the user when their tracking number will put the shirt on their doorstep.
PYTHON CAN HELP US UNDERSTAND GOING TO A GENTLEMEN'S CLUB
You have $1,000 in your checking account.
You are at a gentlemen's club, and you get $100 from the ATM machine. After getting $100 from the ATM machine, you make it rain $60 to the dancer as a tip, and buy $40 in vodka sodas. You go back to the ATM and withdraw another $400.
You intend to tip the dancer $400 for a VIP dance, but you get a text from your wife asking why you just withdrew $500 total dollars from the ATM at a strip club. Your wife then blocks access to your bank card. You have $500 remaining, but you cannot access it because you have angered your wife by trying to look at a stripper's balloon knot up close.
We can express this in Python. See? Code helps us navigate situations we can all understand and relate to.
SO NOW YOU KNOW WHAT TO EXPECT
This is a curriculum, not an in depth coding tutorial where I personally run these videos, but I will provide resources here. As part of this curriculum, I'm going to recommend courses on Udemy and YouTube.
Udemy costs money, but it's only like $30 a month for an unlimited plan. (Plus you can learn other stuff on Udemy too. If you see a course you dig, take it.)
I do not get paid on any affiliate links.
WHAT IS A COMPUTER?
Before you start programming, let's talk about what a computer does. It all goes back to Babbage's Difference Engine, which was a mechanical computer. Then we had computers that used vacuum tubes. Then transistors happened. Then someone said, "Let's print all these transistors onto silicon microprocessors, rather than these big ass transistors."
And that's how we got computers.
Do you need to know exactly how all the hardware works? Not really. But I'm going to provide some ideas on what stuff does, because as you learn how to program, you'll want to be thinking about things like RAM and storage, because this is data, and you'll need to understand what's happening with it and where it's being stored.
A server is basically just a really big, scaled up version of what you're using at home. They all have RAM, CPU's, GPU's, storage etc. The difference is that servers are industrial versions, and you use consumer grade. (And we'll cover how sometimes, on edge devices, they scale down… in this little cool computers called a Raspberry Pi.)
THERE'S NOTHING MORE IMPRESSIVE THAN A NICE RACK
Those big ass loud, cold, server rooms are full of computers. Here's what you'll find on those server racks.
- Motherboard: The grand stage where all the other components come to play. It's like the nervous system of the server, connecting all the other pieces and making sure they play nice together.
- CPU: The server's brain. It performs all the computations your server needs to function. More cores, more threads, more speed… you know the drill.
- GPU: Something that gamers spend too much time obsessing over, but GPU's are now also the domain of big neural processing for machine learning. They're super damn expensive.
- Memory (RAM): The scratchpad for all ongoing operations. It's like the server's short-term memory, holding on to the data the CPU is actively using. Oh, and it's volatile, so it's kinda like Dory, the fish from Finding Nemo.
- Storage (HDD, SSD): The server's long-term memory. It's where all your data lives when it's not being actively used. These days you have a choice between Hard Disk Drives (HDD) and Solid State Drives (SSD). One is cheaper and holds more, the other is faster and wears a designer label. (But costs for SSD's are dropping, so this may not be true soon.)
- Network Interface Card (NIC): The server's mouth and ears. It's how your server talks to the rest of the world (or at least the network). It can be wired or wireless, though for servers, wired is the way to go if you like reliability and speed.
- Power Supply Unit (PSU): The power source kicking out electrons to everything. It pumps electricity to all the other components, keeping them alive and humming. Life rule: Don't cheap out on the power supply.
- Cooling Systems: The server's personal AC. Servers get hot, so fans, heat sinks, and sometimes even liquid cooling systems are used to keep things chill.
- RAID Controller: The safety net for your server's data. RAID (Redundant Array of Independent Disks) controllers let you link multiple drives together for increased speed, redundancy, or both.
- Server Rack: The skeleton of your server setup. It holds all your server hardware in a neat and tidy (and often deafeningly loud) row.
Something wrong on this page? →
Curriculum last updated 2026-04-30