How do I explain coding to beginners?
I've been asked to do a webinar demonstrating the basic fundamentals of coding. How do I explain this in the simplest form to an audience that has never seen or wrote code before? Anyone have experience in teaching beginners or know of materials I can reference?
If your beginners are kids, I really like the organization and approach to learning from this course https://www.fliprobotacademy.com/. Information is provided in a structured, easy, and playful way, because children can program their own robotics. This helps them easily assimilate information and get involved in this field
This is the best teaching tool I've seen to help people make basic web sites using coding. You'll love it!
Interesting. I have been thinking along the same lines. I put out a register of interest for such a course https://onlinedigitalbusiness.zenler.com/courses/register-of-interest-computer-programming-primer - so far much less interest than I envisaged.
I wonder if students will appreciate the connection between code and the "real" world. Languages like Scratch are good, but you are still manipulating images on a computer screen. I wonder if that's too abstract for some types of learners (i.e. Tactile learners).
You might consider using something like a Raspberry Pi and a LED/switch/speaker module (like a Pibrella). That way, the students can get hands-on experience with something that they can touch/see/hear. You could get them to do simple stuff like flash LEDs in response to button presses.
(I teach first aid...until I get my students working with bandages and CPR dummies, they aren't learning all that much.)
I designed and taught a command line programming course for middle-grade students. The basis for the training was a series of exercises (each representing a learning objective). For each exercise a working program stub was provided. For example, the first exercise consisted of a calculator with addition & subtraction functionality. The task was to implement multiplication & division operators. IMHO programming is best learned experientially.
I create elearning, virtual, and instructor-led training for a living, and have been writing actionscript and html for years. I like the idea someone had of starting off showing a kids' coding game. Disney has some cool ones, where kids grab a command, like (turn left 90 degrees and then turn right 45 degrees) and drag it into place in a stack of other commands. They can rearrange the order of any block they place, which changes the order of operation. It's written in words, but then you can toggle to what the code actually looks like for that command block. I think it illustrates really naturally, that code is just sets of commands stacked in order of operation. Then it would also depend on what language you're talking about, and whether it's object-oriented, etc. you could briefly explain nesting and encapsulation, parent/child relationships, etc but I would consider that the deepest you'd want to go for an introduction. Then I would provide some example code that people could take with them and actually use for themselves. Something like how to make a button or make a webpage close, or specify how to have a new page open in a new window, same window, or otherwise.
It's tough with a webinar because you can't interact with people nearly as well, and it's a short duration typically. Also maybe start the webinar off by doing a poll. Ask people why they're interested in coding, what their expectations are for the session, etc. That would help guide you and give people more of what they are hoping for.
Finish by giving them your email address and your website so people can follow up with you. Not only might that give you some leads and a little plug for your work, but it will also make people feel like you are genuinely interested in their success.
You could show them Scratch by MIT, the program that many people use to learn very young children the basics of coding.
As an instructor you need to understand the difference between explaining and demonstrating. In your question you ask how to explain coding and in your description you add "demonstrate". It is very easy to demonstrate coding. var d = 1; d+1 Answer: 2
Coding demonstrated. Now to explain coding that is a more complex question. If you are explaining basic programming fundamentals I would start with procedural programming and tell the audience about variables and conditions. Those things you can relate to every day life and even if they are not programmers, if they have ever used Excel they have probably seen variables and conditional statements in some form. This is an awesome course on programming for the non-programmer. You can take a look at the syllabus and integrate some concepts into your course.
First off I would direct them to http://w3schools.com and introduce them to the many resources available. I would also introduce them to http://udemy.com
I really think you have to start with telling a story from their lives. See if you can solve a problem from daily life that can involve putting a simple form together in HTML, then say "now we want to be able to search this data", so you need to hook it up to back end, etc. Story telling and then making it tangible with an example from their daily life, will get their attention.