We may earn an affiliate commission when you visit our partners.
Course image
Richard Mitchell, Timothy Threadgold, Yen Tu, Karsten Lundqvist, Oliver Bathurst, Rhian Taylor, Lucille Blumire, and Varun Ojha

Week 1: Week 2: Week 3: Week 4: Week 5: Most FutureLearn courses run multiple times. Every run of a course has a set start date but you can join it and work through it after it starts. Find out more This beginners’ course teaches the basics of programming and you don’t need any knowledge of coding to take part. You may find it challenging at times, but we hope it’ll be fun too. However, the course does require you to be comfortable downloading, unzipping and installing software to your computer. If you think that you may find this difficult, you may like to have someone with a good knowledge of IT on hand to help you – particularly in Week 1. The 4 hours per week is an estimate based on past participants’ experiences, however some previous participants have reported taking much less time, while others take considerable longer to complete some weeks. This will depend on your experience and to some extent how powerful your computer is. This course includes video content and other visual teaching methods. As such, blind and visually impaired students may need a helper. You can use the hashtag #FLmobigame to talk about this course on social media.

Read more

Week 1: Week 2: Week 3: Week 4: Week 5: Most FutureLearn courses run multiple times. Every run of a course has a set start date but you can join it and work through it after it starts. Find out more This beginners’ course teaches the basics of programming and you don’t need any knowledge of coding to take part. You may find it challenging at times, but we hope it’ll be fun too. However, the course does require you to be comfortable downloading, unzipping and installing software to your computer. If you think that you may find this difficult, you may like to have someone with a good knowledge of IT on hand to help you – particularly in Week 1. The 4 hours per week is an estimate based on past participants’ experiences, however some previous participants have reported taking much less time, while others take considerable longer to complete some weeks. This will depend on your experience and to some extent how powerful your computer is. This course includes video content and other visual teaching methods. As such, blind and visually impaired students may need a helper. You can use the hashtag #FLmobigame to talk about this course on social media.

Topics Covered

  • An introduction to the course, programming and the development environment for building the mobile game.
  • Setting up the software
  • Setting up the testing environment for your game
  • Debugging and operators.
  • Different data types and variables
  • Introduction to operators
  • Applying variables and operators to the game
  • Modifying the game to change the speed of the ball and moving the ball to a position specified by user.
  • Conditional statements and comments.
  • Array variables and looping constructs.
  • Modifying the program to make the ball stay on the screen and adding a control paddle for the user.
  • Modifying the game to include multiple target objects for the ball to bounce from. The target objects are implemented using arrays and accessed using ‘for’ loops.
  • How to decide which algorithm is required to solve more complex tasks.
  • Considering which algorithm to implement, to modify the game.
  • Functions or methods – separate parts of a program.
  • Modifying the program using functions to replace any repeated code.
  • Consolidation of the course – analysing the game.
  • Considering the process behind implementing another game.

Save this course

Create your own learning path. Save this course to your list so you can find it easily later.
Save

Reviews summary

Beginner programming through game development

According to learners, this course is a largely positive introduction for absolute beginners with no prior coding experience. Students particularly appreciate the hands-on approach of building a simple mobile game, finding it a fun and practical way to learn core programming concepts like variables, loops, and conditionals. While many find the explanations clear and easy to follow, some note that setting up the required software can be a challenging first step, especially if they are not comfortable with installing programs. Reviewers generally agree the course provides a solid foundational understanding but caution it only scratches the surface and additional learning will be necessary to progress further in programming.
Covers basics, but not advanced topics.
"This course provides a solid foundation, but it's just the very beginning. Don't expect to be a game developer afterward."
"It's a great primer, but it doesn't go into much depth on any single topic. I know I need more courses."
"I learned the core basics, but complex programming or game design concepts aren't covered here."
Content is still useful over time.
"Even though the course has been running for a while, the fundamental programming concepts taught are still relevant."
"The development tools used are standard enough that the skills learned aren't immediately outdated."
"I took this recently, and the content holds up as a good entry point to programming."
Core programming concepts are clearly covered.
"The explanations for basic concepts like variables, loops, and functions were very clear and easy to understand."
"I found the videos and examples used to explain conditional statements and arrays particularly helpful."
"They break down the fundamental building blocks of programming in a way that's not overwhelming for beginners."
Building a game is engaging and practical.
"Building the game was the most engaging part. It helped me see how the concepts connect in a real project."
"I really enjoyed applying what I learned each week to modify the game. It made the learning feel practical."
"Learning to code by making a game was fun and kept me motivated throughout the course."
Excellent starting point for new coders.
"This course is genuinely for beginners. It assumes absolutely zero prior knowledge and builds up the concepts step-by-step."
"I've never coded before, and this course made it approachable. The pace was right for someone starting out."
"Great introduction to programming. They really start from scratch, which was exactly what I needed."
Installing required software caused issues.
"Getting the development environment set up in the first week was surprisingly difficult for me."
"I struggled quite a bit with the software installation process mentioned in Week 1; needed help."
"The course mentions IT comfort is needed for setup, and they were right. It was the biggest hurdle."

Career center

Learners who complete Begin Programming: Build Your First Mobile Game will develop knowledge and skills that may be useful to these careers:

Featured in The Course Notes

This course is mentioned in our blog, The Course Notes. Read one article that features Begin Programming: Build Your First Mobile Game:

Reading list

We've selected 50 books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Begin Programming: Build Your First Mobile Game.
Considered a must-read for any serious Java programmer, this book provides invaluable advice on writing robust, efficient, and well-designed code. It delves into best practices, common pitfalls, and advanced topics. It is highly recommended for intermediate to advanced programmers and professionals looking to deepen their understanding and improve their coding style.
While not exclusively a Java book, 'Clean Code' is highly recommended for Java developers. It focuses on the principles and practices of writing readable, maintainable, and testable code. is crucial for anyone looking to improve their software craftsmanship, regardless of experience level. It complements technical Java knowledge with essential coding standards.
Provides a foundational understanding of debugging principles applicable to both software and hardware. It outlines nine fundamental rules and offers practical strategies for identifying and resolving bugs. This is an excellent starting point for anyone new to debugging, providing a solid framework before diving into language-specific techniques. It is widely recommended for its accessible approach and timeless advice.
Drawing on extensive experience, this book presents a comprehensive collection of 66 specific and actionable debugging techniques. It covers a wide range of scenarios and provides practical advice for tackling complex software and system issues. is highly valuable for experienced programmers looking to expand their debugging toolkit and improve their efficiency in finding and fixing errors. It useful reference for various debugging challenges.
Is the definitive guide to writing correct and efficient multithreaded Java applications. Concurrency complex topic, and this book provides the necessary knowledge and patterns to handle it effectively. It's essential reading for graduate students and working professionals dealing with concurrent programming.
This seminal work provides a catalog of refactorings to improve the design of existing code. It explains how to identify code smells and apply techniques to make code more understandable and maintainable. is essential for developers who work with existing Java codebases and want to improve their design.
This updated edition delves into the latest monetization strategies and mechanics prevalent in the mobile and social game markets. It's a crucial resource for developers aiming to create financially successful mobile games. provides contemporary insights into the business models driving the mobile game industry.
This comprehensive textbook covers the fundamental concepts of algorithms, data structures, and analysis techniques. It provides a deep understanding of how algorithms work and how to design efficient and effective solutions to programming problems. While not specifically focused on programming fundamentals, it is an essential resource for programmers looking to develop a strong foundation in algorithm design and analysis.
Provides a comprehensive overview of variables in Ruby. It covers topics such as data types, scope, and memory management. It valuable resource for students and professionals who want to gain a deeper understanding of variables in Ruby.
Known as 'CLRS', this comprehensive reference for algorithms. Loops are integral to the implementation and analysis of many algorithms, and this book provides a rigorous treatment of their application in various computational problems. It standard textbook for undergraduate and graduate-level algorithms courses and is an essential reference for anyone looking to deepen their understanding of how loops are used in efficient problem-solving.
Deep dive into the architecture of game engines. It's a great resource for anyone who wants to learn more about how game engines work.
Offers a systematic and theoretical approach to debugging, moving beyond ad-hoc methods. It covers techniques for reproducing failures, isolating causes, and understanding the debugging process from a scientific perspective. While it delves into theoretical concepts, it also provides practical examples and insights into automated debugging tools. This book is valuable for those who want to deepen their understanding of the underlying principles of debugging.
Provides a comprehensive overview of variables in JavaScript. It covers topics such as data types, scope, and memory management. It valuable resource for students and professionals who want to gain a deeper understanding of variables in JavaScript.
Offers a structured and in-depth approach to programming fundamentals using the C programming language. It covers essential concepts such as data structures, algorithms, and memory management, making it well-suited for both beginners and experienced programmers seeking a deeper understanding of C.
Comprehensive guide to Android programming, covering everything from the basics to advanced topics. It is written by three experienced Android developers and is highly recommended for anyone who wants to learn more about Android programming.
Provides a comprehensive overview of variables in Python. It covers topics such as data types, scope, and memory management. It valuable resource for students and professionals who want to gain a deeper understanding of variables in Python.
For those interested in enterprise Java development, this book is an essential guide to the Spring framework. Spring is widely used for building Java applications, and this book covers its core features and best practices. It is valuable for undergraduate students and professionals focusing on enterprise Java.
Offers practical strategies and techniques for finding, repairing, and preventing bugs, with a focus on enterprise software development. It provides a hands-on approach to improving your debugging skills and tackling common issues encountered in real-world projects. This book good resource for developers seeking to enhance their day-to-day debugging practices and reduce the number of defects in their code.
Specifically addresses the unique aspects of designing and prototyping games for mobile devices. It covers topics such as touch screen input, mobile user interfaces, and the iterative design process for mobile. This highly relevant book for understanding the specific considerations of the mobile platform in game design.
Introduces fundamental design patterns in a highly engaging and easy-to-understand manner. While not solely focused on Java, it uses Java examples extensively. Understanding design patterns is vital for writing well-structured and maintainable Java applications, making this book valuable for students and professionals.
While not a Java-specific book, this is highly relevant for Java developers building large-scale, distributed systems. It covers fundamental concepts in data systems, which are crucial for designing robust Java applications in a professional setting.
Offers a comprehensive approach to mobile game development with Unity, covering programming, art design, and mechanics. It emphasizes a holistic method for creating games for iOS and Android. This book is useful for individuals or small teams who need to cover multiple aspects of game development. It includes hands-on exercises and covers topics relevant to the mobile platform.
Is highly relevant for professionals working with or interested in microservices architecture using Java. It provides a holistic view of designing, building, and deploying microservices. While not strictly a Java language book, it addresses a key architectural style in modern Java development.
Focuses on advanced debugging techniques for .NET applications using native debugging tools like WinDBG. It delves into the internals of the .NET CLR and provides in-depth knowledge for tackling complex .NET bugs. This is an essential resource for experienced .NET developers and those involved in troubleshooting production issues.
This guide offers a comprehensive overview of Unity's features with a focus on mobile game development. It covers the basics of structuring games, graphics, scripting, and physics, and includes hands-on projects for building 2D and 3D games. is suitable for those with basic programming skills who want to learn how to create mobile games using Unity. It provides a solid foundation for understanding the Unity workflow for mobile deployment.
A detailed guide to conditional statements in Rust, covering if-else expressions, match expressions, and other conditional constructs. It also discusses topics such as pattern matching and error handling.
Comprehensive guide to level design. It covers everything from the basics of level design to the more advanced techniques used by professional level designers.
Presents the fundamental concepts of computer science in a clear and concise manner. It covers topics such as data structures, algorithms, and software engineering, making it suitable for beginners with no prior programming experience who are looking to gain a broad understanding of computer science.
Practical guide to writing efficient and maintainable game code. It's a great resource for anyone who wants to improve their programming skills.
This collection of thought-provoking problems and elegant solutions in various programming languages challenges readers to think critically and develop their problem-solving abilities. It covers a range of topics, including algorithms, data structures, and code optimization, making it a valuable resource for experienced programmers looking to hone their skills.
Comprehensive guide to game development and production. It covers everything from the basics of game development to the more advanced techniques used by professional game developers.
Is known for its comprehensive coverage and clear explanations of Java concepts, emphasizing the 'why' behind the language features. It's a strong resource for intermediate and advanced learners seeking a deeper understanding of Java and object-oriented programming.
A comprehensive introduction to Java programming, this book covers the basics thoroughly, from writing and compiling code to understanding keywords and syntax. It's suitable for beginners and can serve as a good reference for fundamental concepts. The latest editions are updated to cover newer Java versions.
Guide to using design patterns in Android development. It covers everything from the basics of design patterns to specific patterns for Android applications.
Collection of recipes for solving common problems in Android development. It great resource for experienced Android developers who want to learn new techniques or solve specific problems.
This visually appealing and engaging book presents programming fundamentals in Java in a unique and memorable way. It uses a conversational style and numerous illustrations to make learning enjoyable and accessible, particularly for beginners with no prior programming background.
Another foundational book for software developers, this provides timeless advice on a wide range of topics, including development methodologies, personal responsibility, and career development. While not Java-specific, its principles are highly relevant and beneficial for any Java programmer seeking to improve their overall development skills.
Provides a solid theoretical and practical foundation in data structures and algorithms using Java. It's a standard textbook in many university computer science programs and is crucial for understanding the efficiency and design of programs. Essential for undergraduate and graduate students.
Focuses on verification and debugging approaches specifically for embedded software with hardware dependencies. It covers the entire flow from design to debugging and explores various verification techniques. This specialized book for those working at the intersection of software and hardware in embedded systems.
For Java developers working with containerized applications and cloud deployments, understanding Kubernetes is essential. provides a comprehensive guide to deploying and managing applications on Kubernetes. It's highly relevant for professionals in a DevOps environment.
Focuses on practical debugging using popular tools like GDB, DDD, and Eclipse, commonly used in Linux/Unix environments. It provides hands-on guidance for using these debuggers effectively, covering topics such as inspecting variables, understanding memory issues, and debugging different programming paradigms. This is particularly useful for students and professionals working with C, C++, Java, Perl, or Python on these platforms. It serves as a valuable reference for tool-specific debugging.
Focuses on the crucial aspect of monetization in mobile and social games. It explores different monetization models and mechanics used in the industry. Understanding these concepts is vital for the commercial success of mobile games. This book is particularly valuable for those interested in the business side of mobile game development.
Introduces the principles of Test-Driven Development (TDD) using simple examples. While the examples are not exclusively in Java, the concepts are directly applicable to Java development. TDD fundamental practice for writing robust and maintainable code, making this book valuable for all levels.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Begin Programming: Build Your First Mobile Game.
Intro to Programming With C#: Build A Word Guessing Game
Most relevant
Unity Mobile Game - Master Hyper Casual Word Game...
Most relevant
Unity Mobile Game - Create Your First Hyper Casual Game !
Most relevant
Design Patterns
Most relevant
Unity Mobile Game Development - Exterminator
Most relevant
Unity Android : Build 8 Mobile Games with Unity & C#
Most relevant
Unity C# Mobile Game - Make your own Hole Game from...
Most relevant
Java 17 Masterclass: Start Coding in 2024
Most relevant
Android Multithreading Masterclass
Most relevant

Futurelearn Buyer Protection & Guarantee

Verified partner policies & purchase protections

UK & International University Partner
Free Trial & Audit

Free Access on Short Courses

Free access option on most short courses for the duration of the course plus 14 days; free trial available on select subscriptions and tracks.

Return & Refund Policy

14-Day Cooling-Off Refund Window

14-day statutory cooling-off refund window from the date of purchase for course upgrades, Unlimited subscriptions, and ExpertTracks, provided no tests have been attempted and no certificates have been downloaded. Renewals are non-refundable.

Buyer Protections

Verified Academic & Industry Partner

Accredited university microcredentials and certificates from top institutions (British Council, leading UK and global universities), with secure payment safeguards.

Key Purchase Protections
Free access track on many short courses
14-day cooling-off refund window on initial purchases
Refund eligible if no tests completed and no certificate issued
Accredited certifications from top UK & global universities
OpenCourser Verified Partner Policy details last reviewed: 2026-10-22
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2025 OpenCourser