I just finished my first week (or week-0 as it was called) in computer science (a.k.a. CS). The language used was Scratch.
Scratch is a free visual programming language developed by the MIT Media Lab. […] It provides a stepping stone to the more advanced world of computer programming. It can also be used for a range of educational […] purposes from math and science projects, including simulations and visualizations of experiments, recording lectures with animated presentations, to social sciences animated stories, and interactive art and music.
Scratch allows users to use event-driven programming with multiple active objects called sprites. Sprites can be drawn, as vector or bitmap graphics, from scratch in a simple editor that is part of Scratch, or can be imported from external sources, including webcams.
Source: Wikipedia / Scratch (programming language)
When a random person (not a programmer –> ) thinks about programming, the first thing that comes to mind is a black (or white) background with unappelling characters making no sense … or at least that is what one thinks.
Noticing the differnce between Natural languages and Formal languages is useful to understant WHY one might have the impression mentioned above about programming.
Formal and natural languages
Natural languages are the languages people speak, such as English, Spanish, and French. They were not designed by people (although people try to impose some order on them); they evolved naturally.
Formal languages are languages that are designed by people for specific applications. For example, the notation that mathematicians use is a formal language that is particularly good at denoting relationships among numbers and symbols. Chemists use a formal lan- guage to represent the chemical structure of molecules. And most importantly:
Programming languages are formal languages that have been designed to express computations.
Source: Allen B. Downey (November 2012). Think Python: How to Think Like a Computer Scientist. Retrieved Green Tea Press
Having been there myself, I concur that at first glance programming (a.k.a. coding) can look quite cryptic. Nevertheless, once one starts getting used to the programming language tools (characters, functions, etc) and using them, only then that one becomes fortunate enough to see beauty emerging from it.
Scratch takes away the cryptic part of programming and instead it incorporates the “Natural Language Flow” to programming. It is visually interesting and fun to use.
As you know, I started my programming journey with Python. It took several attemps to find beauty in it. However, in my humble opinion, Scratch is a really nice entry point to finally say:
So starting next month, February 2017, a serie of three (3) sessions will be offered as an introduction to the programming world.
Here is the format:
- Session 1) Computer set-up + Vocabulary + say: “Hello, world!” + Intro to Sprites’ costumes and sounds
- Session 2) Animation1 + Animation2 + Animation3
- Session 3) Game1 + Game2 + Game3
- Showcasing and playing a few games from the participants
This serie is particularly tailored to adults humble enough to start from Scratch 😉
Two conditions to join:
See ya soon!
NOTE: If you are a programmer and would like to volunteer, send an email, then an interview will follow prior to joining.