Nowadays, coding is becoming as important as reading, writing, math or science and soon it will be a part of a children's education at school. You don't have to wait for it to happen, you can start raising kid's interest in programming right now. Of course your child doesn't have to be a programmer in the future and do this for the living. Learning to code improves problem solving and thinking skills which are useful in many different areas.
First of all - it should be fun!
Programming is very creative and also can be a really fun experience, there are a few ways to learn it in an easy and effortless ways such as free games or programming languages for beginners like: Scratch, Alice, Microsoft Small Basic and many others.
Scratch - for small ones and big ones
The most popular one is Scratch - a free visual programming language developed by the MIT Media Lab with witch you and your children can easily create animations, games or interactive stories. It has large online community, every user can publish his work and browse, test or modify other people's projects. Scratch has very friendly interface, you program by moving colourful blocks (each category such as movement, control or sound has different color assigned). You may think that this is only for little children but you'd be completely mistaken, it can be fun for everyone! By browsing other people work you can find very complicated and complexed projects based on existing games like Mario, Agar.io, etc.
MIT App Inventor
Almost every child loves smartphones and tablets, that's why creating applications for them is a good opportunity to start programming. MIT App Inventor is a visual, block-based programming environment that allows to build fully functional mobile apps. All you need is a computer with an Internet browser, Google account and a smartphone or tablet to run and test your apps (if you don't have any device you can use smartphone emulator). Here you can find beginner friendly video tutorials, that will help you and your child create your first apps. Running them on a real mobile devices is always super fun and exiting.
Another programming language for beginners is Microsoft Small Basic - simplified version of BASIC language, based on the .NET platform. It's easy to learn and the development environment is completely free - which you can download here. Language has only 15 keywords, it's simple but very powerful, on the Microsoft's page you can find many tips and tutorials for beginners.
All of these languages are good for children and adults who want to start their adventure with programming. If you want to interest your kid in technologies, it's a good idea to learn coding with him or her and build something together. Remember that showing the interest in your child's work and progress is very important and encourages them to learn further!