Upcoming Courses

Building an Interpreter in Swift

Build your very own programming language interpreter. Learn all about string manipulation, lexical analysis, parsing, and interpreting the code of your very own programing language.

Coming SoonGet Notified

Machine Learning and Reinforcement Learning in Swift

In this course, we'll implement neural networks and reinforcement learning algorithms and use them to teach our computer how to play a simple video game at human level performance. All implemented from scratch in pure Swift!

Coming SoonGet Notified

Advanced Swift Course

Come with me for a deep dive into Swift. We'll cover algebraic data types, functional programming, protocols and generics, structs vs classes, property wrappers and result builders, Swift concurrency, and manual memory management with pointers.

Coming SoonGet Notified

Subscribe to get notified

Your email address will not be shared with anyone else.


My name is Ahmad Alhashemi, and I'll be your instructor in those courses.

I’ve been coding since I was a kid and now have more than 20 years of coding experience. I started coding in Swift since the day it was released as a developer beta in June 2014 and have fallen in love with the language. I take my programming and computer science very seriously and I'm halfway through a Master's degree in Computer Science at GoergiaTech with a specialization in Machine Learning.

I've been teaching programming online since 1998 and been told that I have a knack for explaining complex concepts well. In my day job, I'm a specialist doctor (an Endocrinologist, if you're curious), and a medical educator with a masters degree in the field of medical education. I teach medical residents and students regularly.

Most importantly, I'm very passionate about teaching. I love taking a complex topic, breaking it down, explaining it, and watching my learners struggle with it for bit until it "clicks". I love seeing my students suddenly feel like they've gained a super-power after grasping a key concept and realizing the many different ways they can put this key concept to use.

If this sounds like something that would delight you, then you should subscribe to be notified when a course is published. Hope to see you on a course very soon!