Course description
Programming for Everyone – An Introduction to Visual Programming Languages
The world around us becomes immersed in technology, which is ultimately driven by programming and governed by its laws. We believe that high-level knowledge of means for programming ‒ past, present, and most importantly, future ‒ is of crucial interest to many.
This course is designed to teach almost anyone about the essence of programming, about the diverse types of existing programming paradigms, about how programming has evolved over the years, and, significantly, about what it will entail in the future.
In the main part of the course, we will present some visual, diagrammatic programming languages, and some of the more recent playful and intuitive approaches to programming. We hope to help people interested in technology, as well as computer science students, to better understand the various approaches to programming, which are becoming increasingly important in our lives. This course is meant to “Liberate Programming” - to provide more people with the understanding of what programming is and how it works.
Upcoming start dates
Suitability - Who should attend?
Prerequisites
None, introduction to CS a plus.
Outcome / Qualification etc.
What you'll learn
You will get an overview of existing programming approaches, and learn at an introductory level two visual and natural programming languages: statecharts and live sequence charts.
Training Course Content
- Introduction to programming, the development of programming langauges, reactive systems and the definition of programming.
- Visual programming languages and visual formalisms. The challenges of visual languages, and overview of possible languages.
- Introduction to the executable programming language of Statecharts. Concepts of hierarchy and orthogonality.
- Advanced statecharts and the semantics of statecharts. Can be skipped by less technical students.
- Programming with stories. The paradigm of behavioral programming. The executable language of live sequence charts (LSCs).
- Playful programming and programming by demonstration. Controlled natural language and interfaces to programming, show & tell, drag & drop.
- Advanced concepts in LSCs. Choice, forbidden scenarios and more. Can be skipped by less technical students.
- Survey of fun programming languages and learning robots. Discussion on the future of programming, and summary.
Course delivery details
This course is offered through IsraelX, a partner institute of EdX.
2-3 hours per week
Expenses
- Verified Track -$49
- Audit Track - Free