Educational Programming
Tags: beginners
Published: 2022-08-22 04:45:56


Learning a programming language for the first time is a tough feat, and getting good at it is even tougher. With a Varity of different programming languages to start with and not even knowing the correct syntax to get things rolling, it can feel incredibly difficult to start getting into a language. That's where educational programming comes in. Helping someone understand the basic syntax, but also how to think about getting a problem solved. So before we get into some examples, lets get a basic understanding of the types of scripting in these applications.


## Scripting Types
When it comes to most learning applications they tend to fit into two categories, visual-scripting, and text-scripting. Each of these are beneficial in things well get into soon, but they both accomplish the same goal of being an instrument of learning!

1. **Text-Scripting** 
Text-based programming is what we initially think of when it comes to most programming languages. These are more helpfull in the actual algorithmic problems and creating apps. some examples would be 

- Python

- Java/Java Script

- C++

- Swift
 
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eb028yvn3b722pt427vq.png)
   

2. **Visual-Scripting**
Visual-scripting aka block-based programming are great for beginners understanding how things are interacting with each other. while block-based programming is mostly used for educational purposes, Unreal engines blueprint is possible the most famous example for using block-based programming.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8tl1zqy9oski8o5teurk.png)


## Examples
Now we get into the examples. There are many ways to practice programming, but "programming" your brain to correlate things you already do with say JavaScript will make the process much easier to get into.

##Text-based Examples

1. [Khan Academy](https://www.khanacademy.org/computing/computer-programming)

Khan academy has been true innovators in the online learning space. with math, science, history being retally available to millions of people around the world, and for a while now they also have free courses on JavaScript, SQL, and html/css to just to name a few.
  
![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3y351uslp808ycngndix.png)
 
2. [Codewars](https://www.codewars.com/dashboard)

Algorithmic problems are very important when challenging yourself and getting better with programming. Code wars assists with exactly that from novice problems to job interview preparation in multiple languages.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jyn6g5bi9kml5u2lurig.png)
 
##Block-based Examples

1. [Unreal Engine](https://www.unrealengine.com/en-US/?utm_source=GoogleSearch&utm_medium=Performance&utm_campaign=3Q_UnrealEngine_MMT_Brand_Link-Clicks_Search_US&utm_id=18077327933&sub_campaign=&utm_content=&utm_term=unrealengine)

While Unreal Engine is not necessarily a education program for learning block-based coding. it is possible the best source to find tutorials and create features without using other block-based educational applications, that tend to be more focused towards children. Think of a feature that you want to implement in your test application in unreal engine and look up tutorials on that feature and follow along. by the end of it at the very least you'll have a understanding of how the blocks connect together to create your feature. 

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/e6hr15ovl4jt826ss8sk.png)

2. [Blockly](https://blockly.games) 

Blockly Teaches introductions of a multitude of programming concepts in a fun game based learning space. Blockly also proved text-based coding for the problems you've solved using the blocks helping the information click to help understand what real world problem was solved.

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/r127aasbvssq90rkynpm.png)

## Conclusion
I hope this dev blog gave you some recourses to begin some practice material and an idea of what block-based and text-based coding are. understanding and maintain knowledge on these topics are what makes the more difficult concepts in programming much easier. So once again I hope this helped you and thank you for reading!