Overview
Write and understand fundamental Python code using variables, loops, lists, and functions., Build visual and interactive programs using ModernGL and ModernGL-Window., Apply basic numerical and graphical techniques using NumPy and CuPy (For GPU speeds!)., Create structured Python projects from scratch using clean, readable code practices.
This course is designed for complete beginners who want to learn Python through practical, hands-on projects. It is ideal for students, hobbyists, and aspiring developers who prefer building things over memorizing theory. No prior programming experience is required—just curiosity and a willingness to learn by doing. If you're interested in graphics, math, or creative coding, you'll find this course especially valuable.
Preferably some coding knowledge. If not, you will learn what you need from the course.
Welcome to Generative Python: Arts and Maths with ModernGL. This course is designed for curious minds who want to bridge the gap between programming, mathematics, and visual creativity using Python and GPU-accelerated graphics.
We'll start from the absolute basics of Python—variables, loops, functions—and gradually move toward advanced topics like NumPy, object-oriented programming, and GPU rendering with ModernGL. Each section is filled with practical, project-driven exercises designed to help you learn by doing, not just watching.
You’ll build visually stunning and mathematically rich projects, such as sandpile simulations, Fourier drawing, and Perlin noise-generated continents—all while developing a solid understanding of shaders and real-time graphics.
This course is ideal for beginners with a basic grasp of Python or complete newcomers ready to explore coding through art and science. Whether you're a student, a hobbyist, or a developer looking to expand your creative skill set, this course will provide the tools and knowledge to bring your ideas to life on the screen.
No prior experience with graphics programming is required. You'll learn step-by-step, and by the end of the course, you'll be able to create your own GPU-powered visual simulations with confidence. I hope you will enjoy your stay and learn some ModernGL along the way!
Oğuzhan Kıranşal
I’m a Mechanical Engineering graduate from Middle East Technical University with a strong passion for programming and creative expression. During my studies, I was often the “go-to” person for programming-related subjects among my peers. Beyond engineering, I’m a storyteller at heart and spend much of my free time writing. Over time, my desire to explore new creative outlets led me to the world of visuals.
I started with PyGame but quickly found it limiting for the kinds of projects I wanted to build—especially those involving many objects and real-time performance. This curiosity naturally pulled me toward GPU-based programming and OpenGL. Since then, I’ve gained a solid grasp of the fundamentals and decided to share my knowledge through this course—as both a creative outlet and a side hustle.