Introduction to Programming and App Development (Android and IOS)

Dr Hesam Samimi
Dr. Hesam Samimi
Past Courses
Take this course

April 25 – June 29

Intro to Programming and App Design and Development Course

Covers Android with Java, and iOS with Swift Language

10 Week Course

Get Started Making Your Own Apps for Fun, as a Freelancer, or to Become a Professional Software Developer

No Prior Knowledge or Experience in Programming Necessary


This is an introduction to programming and app development class series.

This is a 12 week course. We will spend four weeks on the principles of computer programming. Next we’ll learn basics of mobile app development, for both iOS and Android, and we’ll continue by developing a sample app together in both these platforms. At the end of the course students will be starting the design and building of their own apps.


– No prior knowledge or experience in programming is necessary and all ages are welcome

– To be able to learn and practice programming languages concepts, you only need a computer with internet connection

– To be able to practice making apps on your own, you will need a computer with Xcode (for iOS) or Android Studio (for Android) installed

– Most students like to bring their own laptops – let us know ahead of time if you need access to a computer so we can reserve one for you

Wed and Fri 5:30 pm - 7:00 pm

Week 1: Orientation, Swift Primer, Functional Languages, Functions, Types, Type Inference, Type Checkers, Control, Imperative Languages
Week 2: Recursion, Data Structures, Data Structures, Optional Types
Week 3: Scoping, Closures, Interpreted and Compiled Languages, Static and Dynamic Typing, Object Oriented Languages, Interfaces, Inheritance, Polymorphism
Week 4: Object Oriented Programming Topics: Generics, Concurrency, Asynchronous Computation, Exceptions
Week 5: Java Primer
Week 6: App Programming Primer: Layout, Layout in iOS, Coding in iOS
Week 7: App Programming Primer: Layout in Android, Coding in Android
Weeks 8-11: Build Your Own App in Android or iOS
Week 12: Intro to Fundamentals of UI/UX Design


These typical job duties appeared in online ads for computer programmer positions found on

  • “Develop, test, and implement computer programs on multiple computer/operating system platforms”
  • “Help develop a new web-based information system (IS)”
  • “Perform all activities necessary for the definition, design, construction, testing, and implementation of automated computer systems”
  • “Review programs on a frequent basis and make adjustments as are necessary to ensure proper working of the program”
  • “Confirm program operation by conducting tests; modifying program sequence and/or codes”
  • “Create and publish technical diagrams to support coding efforts”
  • “Integrate new functionality into existing applications”

App Developer

An application developer is someone who creates, tests and programs applications software for computers. Applications are used in almost every type of computer device, from desktops to handheld devices, and application developers are the minds and fingers behind the greatest games, email and word processing functions that are available today.