Choosing a Programming Language

Choosing a Programming Language

Teaching kids to code is at the heart of what we do here at Empow. Some of the benefits of learning to code at a young age include improving problem-solving and logic skills to exploring increasingly popular career paths. But coding isn’t just for future programmers! Being able to write a quick script to process data is useful in a wide array of professions. 

In our classes and camps, kids can explore coding using many different programming languages. Not sure where to start? This guide can help you and your child choose a programming language that’s right for them.

1. Scratch

Scratch is an introductory block-based programming language developed by researchers at MIT. Scratch is great for aspiring programmers who want to learn the core concepts behind coding without having to worry about the syntax—stuff like putting semicolons and brackets in the right spot. The Scratch user interface (UI) is also the inspiration for most child-friendly robotics programming languages.

Scratch is fun and playful and built to help kids make games and tell stories.

2. Robotics with Sphero

Sphero is exciting for kids because they can see the results of their program in the real world. Sphero can accommodate both block-based and text-based programming. While our curriculum focuses on their block-based interface, students who want to explore text-based programming can see the Javascript that underlies their block-based code and explore writing their own Javascript code outside or after class.

Our robotics classes and camps use Sphero’s popular BOLT, which is packed with programmable sensors and a colorful LED light matrix. Kids learn to aim and drive their new robot and use the light matrix to display characters or play games.

3. 2D Video Game Design with Flowlab

We also offer Flowlab for 2D video game design, which has a unique block-based UI. Flowlab’s code emphasizes the flow of data and cause-and-effect chains through a program. When combining experience with Scratch and Flowlab, children can develop a robust, language-independent ability to think like a programmer while preparing them to master any text-based programming language.

Using Flowlab, kids can have a fully-functional video game within minutes! There is no limit to creativity as kids explore everything that Flowlab offers.

4. Python

For students ready to tackle a text-based programming language, we offer multiple courses on Python. Python is an ideal starting language because it strikes a balance between ease of use and applicability. Other languages, such as Perl, might be even easier to use because of their looser syntax rules, but they are not widely used in professional contexts. By teaching Python, we provide an easy and enjoyable entry-point into text-based programming with skills that would be immediately marketable. In fact, Talent Box, our proprietary Learning Management Software, is written in Python!

How advanced are our Python classes and camps? We start with the basics and scale up beyond most college-level programming courses for non-Computer Science majors. In our more advanced courses, we introduce 8 out of 10 general topic areas covered by the Computer Science AP Exam, including working with large data sets and class inheritance. With our more advanced Python courses, your child will breeze through the AP class with confidence.

5. Java

Our Minecraft Modding with Java course is all about debugging—an essential skill for any programmer! In this course, students work on modding Minecraft by directly adding code to the system. Unlike other programming languages we offer, Java is not forgiving of errors, and hunting for missing semicolons is common for even the most advanced Java developers in the world. This class can feel very challenging in the beginning, but students who reach the end are always aware of how hard they have worked and are exceedingly proud of their accomplishments. 

No matter what programming language your child chooses, they will be learning an important set of skills known as computational thinking. Computational thinking is the process of formulating and solving problems by breaking them down into simple steps. When kids learn computational thinking skills, they develop skills they can use across a range of subjects, including math, social sciences and language arts.

6. Roblox with Lua Programming

Our Roblox course covers the design of a 3D video game environment and an introduction to the Lua programming language. This course guides students through some of the most commonly used scripted events in Roblox games so they can start to learn programming without even realizing it! This course is great for anyone ready for text-based programming, but perhaps a bit hesitant. Kids who have mastered intermediate programming and are ready for bigger and better challenges also enjoy Roblox.

No matter what programming language your child chooses, they will be learning an important set of skills known as computational thinking. Computational thinking is the process of formulating and solving problems by breaking them down into simple steps. When kids learn computational thinking skills, they develop skills they can use across a range of subjects, including math, social sciences and language arts.

 

Empow is closing for businessRead our announcement to learn more