Want to learn how to code? We made an app for that!

?The book and companion app are updated to Swift 2 :)

We’re proud to announce that our Swift Exercise Platform is finally available. It was an exciting journey to get from the original idea to an actual product. We have learned a lot and we hope that you will enjoy using it. Now that we reached a stable version with some neat features and a healthy collection of exercises we have great plans to expand this platform.

Swift Exercise Platform

Download Demo

We want to thank all the people who have supported us! We couldn’t have reached this point without you!

Swift Programming from Scratch

After Swift was released we knew that a lot of people will want to make apps with it. We wanted to make an iOS course but we kept on hitting the same wall – there was no resource that will teach people enough programming to be able to make apps. We decided to make that resource – and more than everything – make it available for everyone – you can read the book and more about it here.
The book was designed using a principle named Cascading Information Theory, which is used in games. It gives the reader the minimum possible snippets of information to gain the appropriate level of understanding at each point during the book.
The book gradually shows the use of keywords and new syntax giving you time to practice every one of them and get comfortable using it. Solving and understating the exercises from the book will teach you how to solve many of the problems you will be facing when developing apps.
Thanks to the people who give us feedback on their experience with the book we are constantly updating and polishing it. The most common request was more exercises – when we reached 100 exercises we were having doubts that people will enjoy solving so many problems. We were wrong! We are going to keep adding exercises to the book and sending you guys updates.

Exercise Platform

The Exercise Platform complements the book by giving feedback to the student, checking for common mistakes and testing out his source code. The app also keeps track of your progress and rewards you with achievements.

  • Interactively learn the fundamentals of programming through 100+ exercises. Each exercise from the book is accompanied by a custom made playground that can evaluate your solution. Playgrounds make writing Swift code incredibly simple and fun. Type a line of code and get instant feedback. Our custom built playgrounds include problem statements, hints, examples and testing.

  • Get helpful feedback on your solutions. Check if your solutions are correct directly from the playground. Our exercise platform analyzes your solutions and tells you exactly what’s wrong.

  • Keep track of your progress through stats and achievements. It’s important to have a sense of progression when you’re learning programming. Have an overview of how many exercises you solved every day and keep track of your progress over time.

Achievements and Stats

  • Get free periodic updates. We’ll increase the number of exercises over time, covering Swift 2.0 topics and adding more challenging exercises.
  • Swift 2.0 support coming soon. The platform will support Swift 2.0 once it’s in a more stable state.

How does the app evaluate my solutions ?

For each exercise we have a list of tests that your code has to pass in order to be considered correct.
Before running the tests the platform checks for possible errors by analyzing your code.

The platform tries to detect and inform you of the following mistakes you can make:

  • Incorrect Output: The output of your program does not match with the expected one
  • Typos: You acicdentally mistyped the name of a variable or function
  • Missing variables: You did not declare some of the variables you were asked to declare
  • Expected values: After running the code some variables did not have the expected value
  • Missing functions: You did not declare some of the functions you were asked to declare
  • Incorrect function definition: You defined a function but it’s signature is incorrect
  • Runtime errors: Your code crashes on some input data – you’ll see the input that caused the crash
  • Missing Enums: The code does not contain an enum you were asked to declare
  • Non recursive functions: You were asked to implement a recursive function but your function is not recursive
  • Missing function calls: You were asked to use certain functions to solve the problem but you never used them

Check out the recently updated demo app that includes the first two chapters.

Get the first two chapters for FREE!

Download Demo

Be one of the first 100 to purchase a copy and receive a 50% discount on one of our next books/ apps.

?You can buy Training app  +  the PDF and ePub versions of the book!

    cover final small     +     cover final small

Coming Soon

We developed a general platform for swift exercises which we plan to extend to cover several domains. In the following months we’ll be focusing on 2 new books and accompanying training apps built on the platform. Just like Swift Programming From Scratch these books will be free to read online.


1 . Object Oriented Programming in Swift 

Good understanding of OOP principles and design are essential to building great apps. Furthermore you can’t build anything more than an extremely basic iOS app without knowing the basics of OOP. The iOS SDKs are built using OOP so you can’t harvest their power without a good understanding of it. This book will be designed to teach you OOP from the ground up, and will make an excellent next book after you’ve finished Swift Programming from Scratch.

2 . Data Structures and Algorithms in Swift 

We plan on teaching algorithms and data structures that are relevant to iOS and game development, focusing heavily on graphs, geometry and string algorithms. The book will be less theoretical than a typical college course on the subject, focusing heavily on applications and easing the learning curve via helpful visualisations and playgrounds. (No Calculus required :) )
We’ll also cover more advanced topics so that anyone can learn something new and interesting, whether you’re beginner or an iOS programming veteran.

See the screenshots below for a sample:

Problem Statement

Visualizing Algo

1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)

  14 comments for “Want to learn how to code? We made an app for that!

  1. Leonardo
    July 19, 2015 at 11:27 am

    the first two chapter looks good and easy to understand

  2. July 25, 2015 at 6:49 pm

    Hi, there!

    I purchased the bundle with the Exercise Platform and I have a problem: on submitting my answer for a specific task I get infinite “loading”. I started to investigate, found your server, running on port 1337, I made a request to “” and received “404” . Hmmm… I have no idea what’s going wrong, but I cant continue :(((

    Of course, I tried reboot )

    Where could be a problem?

  3. Andy
    July 30, 2015 at 2:49 am

    Will you be releasing an iOS version of the app anytime soon?

    • July 30, 2015 at 10:20 am

      We’ll release an app that teaches you iOS programming in a simillar fashion. We’re working on it.

      As for porting the current app to iOS, we’re not working on that at the moment.

      • Andy
        July 31, 2015 at 11:53 am

        Great, looking forward to seeing iOS programming App

  4. waleed
    August 29, 2015 at 10:16 pm

    When will you release the next two books??

  5. Ashish
    August 19, 2016 at 5:36 am

    Hi, any update on data structure and algorithms in swift book.

  6. Piara Sandhu
    September 14, 2016 at 11:34 pm

    Hey Andrei,

    The exercise platform doesn’t seem to submit my code. It’s stuck on exercise 3.4. The round loading icon next to the submit button keeps spinning. Any ideas how to solve the problem? I’m running Swift 3.0 with XCode 8. Thanks!

    • September 15, 2016 at 7:11 am

      Hi The app doesn’t support Swift 3 yet. An update will be posted as soon as possible.

      • Piara Sandhu
        September 15, 2016 at 7:33 pm

        Gotcha, thanks for the update!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

We send about one email per week with our latest tutorials and updates
Never display this again :)