Why Cron?
Imagine you need a report generated every night at 2am, a database backed up every hour, and a stale-session cleanup run every 15 minutes. You could write a program that stays running forever, checking the clock in a loop — but that's wasteful, fragile, and it dies the moment the process crashes or the server reboots. What you actually want is something outside your program that says: "run this, on this schedule, and don't make anyone remember to click a button." That something is cron.
💡 The Bottom Line
Cron solves the problem of running a task automatically and repeatedly, on a schedule, without a human remembering to trigger it and without a program having to stay open forever waiting. You describe when using a compact five-field expression, and the scheduler takes care of the rest.
A Unix utility that outlived Unix
Cron is a Unix utility dating back to the 1970s — one of the oldest pieces of software still in everyday use, largely unchanged. Its job was simple: read a list of "run this command at this time" entries (a crontab, short for "cron table"), wake up once a minute, and fire off anything scheduled for that minute.
🙋 There Are No Dumb Questions
Q: If cron is a 1970s Unix tool, why am I learning about it for cloud/CI/CD work
today?
A: Because the tool's expression syntax — the compact five-field pattern you'll learn
in this track — became a de facto standard, adopted far beyond the original Unix daemon itself.
Even systems that have nothing to do with Unix under the hood chose to reuse cron's syntax
because it's compact, well understood, and developers already know it.
Where the syntax shows up today
You'll run into cron expressions constantly, long after you've stopped thinking about the original Unix daemon:
⚙️ CI/CD pipelines
Scheduled pipeline runs (nightly builds, weekly dependency checks) are configured with cron expressions.
☁️ AWS EventBridge
Scheduled rules that trigger Lambda functions or other AWS services use cron-style expressions.
🐳 Kubernetes CronJobs
A first-class Kubernetes resource for running a containerized job on a recurring schedule — configured with the same five fields.
🐙 GitHub Actions
The schedule trigger in a workflow file accepts a standard cron
expression to run a workflow on a timer.
⚠️ Watch Out
Because so many different systems adopted cron syntax, it's easy to assume every implementation behaves identically. Most of the core five-field syntax really is consistent — but details like shorthand aliases, supported ranges, and timezone handling can vary between systems. You'll see some of these differences called out later in this track (Lessons 4 and 6), so don't assume a schedule that works in one system will behave identically in another without checking.
🔧 Try It Yourself
Think of one recurring task in your own life or work that currently relies on someone remembering to do it — a weekly report, a monthly cleanup, a daily check. That's exactly the kind of task cron exists to take off a human's plate.
✅ Quick Check
What core problem does cron solve?
Next up: the five fields that make up a cron expression, and what each one actually controls.