Programming
Programming in Python
Variables, conditions, loops, functions, lists and dictionaries. Enough to write small programs on your own.
About 40 hours of study.
Where to learn it
Read
Watch
CS50's Introduction to Programming with Python
David J. Malan
Lectures 0–6
Short, clear lectures with problem sets that check your code.
Practise
Exercism
Exercism
Python track
Free practice tracks with mentoring, one per language.
Section not checked yet
Other options
- CS50x, Introduction to Computer Science (Harvard) (watch)
Weeks 0–3, then Week 6 for Python
Wrong chapter, dead link, or know something better? Tell us on GitHub.
Which roles ask for it
- Software engineer (SDE) to get hired
- QA engineer / SDET to get hired
- Data engineer to get hired
- DevOps / site reliability engineer to get hired
- Quantitative researcher / analyst to get hired
- Quant developer in the first year
- Risk analyst to get hired
- Economist / economic research analyst in the first year
- Salesforce administrator / developer to get hired
- MLOps engineer to get hired
- Analytics engineer to get hired
- Platform engineer to get hired
- Penetration tester to get hired
- Security engineer to get hired
- Product manager good to have
- Technical writer in the first year
- AI / LLM engineer to get hired
- Security analyst (SOC) in the first year
- GATE data science and AI to get hired
Before and after
Learn first
Nothing. You can start here.
Programming in Python
Opens up
- Kotlin
- C#
- PHP
- Swift and iOS
- Django
- FastAPI
- Flutter
- pytest
- Hugging Face
- Recursion
- Testing and debugging
- C and memory
- Java
- Go
- C++
- Rust
- Arrays, lists, stacks and queues
- How a computer runs a program
- Computer networks
- Data wrangling with pandas
- Pipelines and scheduling
- Redis
- MongoDB
- Machine learning
- Reinforcement learning
- How large language models work
- Classical AI: search, logic and reasoning under uncertainty