Page 3

Concepts of Ray Tracing

Ray Tracing

   

 

Sun and Lights

By Daniel K., Age 14


In real life, the sun and lights emit rays of light that travel in (kind of) a straight line. When these rays of light hit an object, some of them are absorbed, some of them pass through (if the object is clear), and some of them are reflected off. The rays of light continue bouncing around until they reach your eye (or a camera).


Ray tracing is supposed to simulate these rays of light and their complex interactions and is used to render realistic CGI scenes, usually in movies and more recently in video games. However, raytracing is incredibly hard to do. You have to simulate trillions of rays of light bouncing around the environment. In movie studios, raytracing one frame of CGI can take up to a day.


However, we can do some optimization. Since the rays of light that don’t reach the camera don’t affect the picture, we can simply not simulate those rays. But how do we know that the rays of light don’t reach the camera without simulating them? Simple. Assuming light travels the same way when reversed (aka. Camera to light source), we can simulate the rays of light bouncing from the camera to a light source. Since the camera is now emitting the rays of light rather than the light sources, it means some rays of light never reach the light sources. Although this method still simulates extra unneeded rays, this way of simulating light is still far superior to the other method (light source → camera).


Math


“Well then, what is the math involved?”, you may ask. A lot of very complex math goes on when calculating the path of a ray of light, but I’ll give you the basic rundown:

  1. A ray is cast from a point P, or the position of the camera.
  2. The vector of the ray is determined by combining the pixel the ray represents on the screen, the field of view and the angle of a camera.
  3. The vector is then multiplied by the camera’s view distance (longer means more accurate but takes longer to compute.)
  4. Uses an equation to calculate whether the ray intersects with a triangle using this equation.
  5. Repeat for all visible triangles (more efficient visibility calculation means less triangles to calculate intersections for)
  6. If an intersection is not found, either discard the ray or act as if the ray has hit an emissive material, set its color to a sky color, and skip to step 10.
  7. If an intersection is found, calculate the triangle’s surface normal (optionally use an algorithm to calculate smooth normal for smooth materials)
  8. According to the triangle’s material, refract the ray through the material or reflect it off of the material, applying the material’s color multiplicatively.
  9. If the material is not emissive (does not give off light), calculate the ray’s reflection angle and repeat steps 3-10. (limiting # of bounces to prevent infinite looping)
  10. If the material is emissive, mix the light ray color with the corresponding pixel’s color based on how many rays of light have already been calculated for that pixel.
  11. Do that (8294400 × amount of rays calculated per pixel) more times and voila! You have just raytraced a single 4k image!

20 Coding Facts You Didn’t Know

Coding is the language of the present and future.

There is no doubt about that. With technology taking over the world by a storm, coding has become almost a necessary skill.

Teachers, parents, friends, and business experts often talk about coding as a requirement. A language that must be learned if you want to thrive in a technology-oriented world.

However, coding is sometimes seen as a tedious process. It is associated with repetitiveness, incomprehensible lines of letters and numbers, and staring at the computer endlessly. What gets lost in such assumptions is that coding can be a cool, fun, and creative process.

There’s much more to coding than meets the eye. So, it is time to tackle the prejudice about coding.

In order to demystify the true nature of coding and why you should embrace it, we present to you some fascinating facts about this language of technology.

1. There are more than 700 different programming languages.

If kids want to explore the versatile world of programming, they should start with a block-based programming language and move their way up. Some good options for kids’ and teens’ first programming language are Scratch, Python, Java, and Lua.

2. The first computer game was created in 1961.

That game was Spacewar. MIT programmer Steve Russell and his team spent around 200 hours writing the first version of the game.

3. 67% of programming jobs aren’t in the technology industry.

If you think that the only direction you can take with coding in the field of technology, that’s not true. There are numerous pathways for coders. Some of the fields you can venture into are arts and design, engineering, data analysis, environmental science, medical research, and many more.

4. The first person in the world to carry the title of a coder was a woman named Ada Lovelace.

She was born in 1815, and some people believe that Ada published the very first algorithm that was to be carried out by a machine. “That brain of mine is something more than merely mortal; as time will show,” wrote Ada.

5. The first computer virus was created by a 15-year-old in 1982.

It was designed to affect Apple II computers. The author described it as “some dumb little practical joke.” It was a practical joke that made history.

6. The term computer “bug” was, in fact, inspired by a real insect.

Grace Hopper coined and her team coined the term inspired by a dead moth they found in Relay 70 of Harvard’s Mark II computer.

7. Smartphones run on more code than NASA’s computers in 1969.

This means that the code that sent the man to space was less complex than the code that runs your smartphone.

8. Many programming languages share the same structure.

Thus, if you learn one programming language, it will be easier to learn additional ones.

9. Coding is behind almost everything that is powered by electricity.

Code is all around us.

10. The first computer didn’t use any electricity.

It was an automated, mechanical loom called Jacquard loom.

11. Fortran (FORmula TRANslation) was the name of the first programming language.

John Backus and his team at IBM created it in the 1950s.

12. Coding leads to great cognitive benefits.

Learning how to code can improve your analytical thinking, problem-solving skill, creative thinking, computational thinking, and leadership-related skills.

13. Learning how to code is slowly becoming like learning how to write.

It is turning into an inevitable task for students. Just as you write an essay with the help of essay samples on this page, you’ll soon need to write codes with different programming languages no matter the type of study you undertake. The Ministry of Education has even started to include programming as a core curriculum in schools.

14. Computers use binary code to store data.

What this means is that the computer’s software is written using only 0s and 1s.

15. Computer codes had an important role in ending WWII.

An English computer scientist, Alan Turing, managed to decipher Nazis’ code machine ENIGMA thanks to his cryptologic and mathematical skills. The information he and his team at Bletchley Park provided saved many lives. His contribution to modern computing was rewarded by naming the annual prize given by the Association for Computing Machinery (ACM) the Turing Award. This award is presented to “an individual selected for contributions of a technical nature made to the computing community.”

16. Alan Turing also invented the “Turing Test” – a well known example is CAPTCHA.

That distorted numbers or words on online forms that help with distinguishing humans from computers was also the computing contribution of the famous Turing.

17. Kids as young as 7 years of age can start learning how to code.

It’s never too early. There are lots of great online games that can introduce young kids to coding in a fun and engaging way.

18. The youngest coder is Muhammad Hamza Shahzad.

He was only 6 when he became a Microsoft Professional. In a Microsoft software related test Muhamed scored 757 while the requirement for earning the certificate was 700.

19. A teenager, Avi Schiffmann, created one of the world’s most popular COVID-19 tracking websites.

He programmed ncov2019.live, the lauded coronavirus tracker that is one of the most visited corona trackers in the world. And he isn’t stopping there. Avi shared for GeekWire, “I have some ideas for simple projects like an app to help my friends quit vaping, or a platform to manage clubs. But I am always jumping around a long list of ideas.”

20. Computer programming is one of the fastest-growing careers.

According to the U.S. Bureau of Labor Statistics (BLS), the computer science industry is projected to grow much faster than any other industry over the next several years.

Final Thoughts

Coding is more than just a career of the future. It is an interesting, exciting, and creative occupation. Let us know if there are any other cool coding facts that you know about! Or if you’re interested in the full history of coding and computer programming, try this.

What is Swapping and Why is it Vital For Coding?

By Noor H., Age 15

     Often online shoppers will encounter “recommended for you” when buying items online at sites like Amazon, music services, and even news articles.  How do they decide which items to target and which ads to use? Word suggestion in texting and typing is also common form technology that people encounter every day. How does the program know what word you are trying to type? The answer is machine learning.
     Many people confuse artificial intelligence with machine learning, but they are not the same thing.  Artificial intelligence is merely programming a machine. Most conventional programs use artificial intelligence.  However, machine learning goes a step further allows the code to be able to respond to new input and stimuli to create new and different responses.  Machine learning is more common in professional uses than mere artificial intelligence because it’s higher applicability. For example, robots are an example of artificial intelligence but not machine learning because they don’t really respond to new input, they just run their existing code.  On the other hand, Apple’s “Siri” and Amazon’s “Alexa” use machine learning in both speech recognition and language processing to understand the input of what owners are asking of them. 
     The basic summary machine learning is programming a machine to learn.  There are several ways of doing this. One of the most basic and often used for teaching purposes is the genetic algorithm, which is creating several miniature programs, putting them through tests, then making more programs based on which miniature one did the best on the tests and destroying the mini programs that didn’t perform as well.  This is designed to mimic genetics in real life.  
     Another way of programming machine learning is neural networks.  These try to mimic the human brain inside a computer by replicating individual neurons and their connections.  This is used for predicting and extrapolating from databases. For example, it will group a lot of products by seeing which items are frequently bought together and placing those items items in the same group.  If a consumer buys one item in the group, it can recommend other products in the group.  

     Artificial intelligence and machine learning are important for the future because they are much faster ways to allow programmers to make high-level prediction algorithms for a variety of areas.  For example, doctors can look at symptoms of new patients and match them with the symptoms of patients that have already been diagnosed to match with the type of disease that they have for faster diagnoses in health care.  Machine learning will also be used in self-driving cars to recognize traffic signs and signals and adapt to increased traffic patterns during rush hours.

Coding Classes for Kids – The Python Programming Language

Coding Classes for Kids – The Python Programming Language

Picking a programming language for your child to study can be tough. They probably don’t have a great feel for what the entire coding experience is going to be like. So maybe they start off with something very visual, like Scratch. They learn the basics and create a few working programs.

After spending a lot of time with Scratch and learning the tenets of logic and coding, a lot of kids want something with more substance… something with more of a future. If you peel back the curtain on Scratch 3.0, you see ActionScript and Javascript. Not the most friendly languages for young coders.

So what else is there? What language can a hungry young mind really tear into?

Is That Hissing I Hear?

No, but it is Python.

Python has been around since the late 90’s, the brainchild of Guido van Rossum. He remained in the driver’s seat as the language’s main architect for nearly two decades. That consistency is why it continued to grow stronger and more reliable through three major iterations.

The language is incredibly flexible, with both structured and object-oriented programming fully supported. This means that however your child likes to approach a logical problem, it’s highly likely that the Python programming language will have the tools to help them solve it.

Is Python for Kids, or Just Adults?

There are a few good reasons that the ‘Python for Kids’ movement took off, outside of just the Jason Briggs book by the same name.

The Python programming language is one of the most human-readable mainstream languages in use today. Although not quite a fourth generation language, it does draw upon some of the ease of use aspects of 4GL.

That readability is why so many coding classes for kids have embraced Python. The things that you read in the tutorials, the words that are spoken by an instructor, they resonate as friendly, recognizable terms.

Another advantage is speed. Once the basics are grasped, the typical Python script should be shorter than the equivalent Javascript program, and five to ten times shorter than C++ doing the same task. So kids learning Python get to experience the gratification of completing functional scripts more frequently.

This is why, in a lot of classrooms and households, the Python for Kids movement is strong. Structurally, it caters to the young mind. And of course, it is a legitimate career skill.

What is the Python Programming Language Typically Used For?

This is where things get interesting. Because Python is heavily used in some of the biggest commercial programming fields on Earth: Automation, web development, data integration, and e-commerce solutions.

It’s no wonder that Python is the fastest growing mainstream programming language on the planet according to Stack Overflow. As we move towards a world where more countries embrace things like remote work, universal income, big data projects, and virtual currency, it looks like we have an excellent candidate for the dominant programming language of the next decade.

This is being reflected in the salaries of coders. The top two programming languages in terms of compensation are Ruby, followed directly by Python. The average Python developer in the United States makes around $119,000 a year according to Daxx. And it is an international trend, with the U.K. based Indeed putting the median Python coder’s salary at around £64,000. Learning Python early can give children a real edge in tomorrow’s marketplace.

So it is important to not only introduce kids to the Python programming language when they’re young, but to embrace it at an educational level as well. Coding classes for kids simply need to offer it as a first or second tier choice, or they’re missing a trick.

Is Python Free and Easy to Set Up?

If you’re familiar with the phrase ‘so simple, a child could do it’, that applies here. It’s one of the easiest programming languages to install.

And yes, it is completely free, and it always has been. Guido van Rossum developed it under an OSI compatible open license.

The official download site has all of the links and instructions that you will need to help you to set it up on the home computer. It shouldn’t take a parent more than just a few minutes with a decent computer and Internet connection.

Or if you’re fully embracing the Python for Kids motif, make them do it themselves (under proper supervision of course)!

There are also app store versions of the Python programming language for mobile devices, running on iOS and Android. Kivy and BeeWare are both excellent mobile frameworks to look at.

Structured Coding Classes for Kids that Teach Python

If you as a parent would prefer that professionals teach your kids the Python programming language, that’s a completely reasonable option. Some kids simply do better in classrooms. Whether those classrooms are real or virtual, well that depends on how close you are to a coding campus and what’s going on in the world at large, of course.

Children who do well in a structured, but relaxed learning environment should look into theCoderSchool’s physical locations and camps. Coding classes for kids are available in dozens of locations all over the continental United States. You want to join classes that have a Code Coach to student ratio under six to one, if at all possible. But the more popular the class, the higher the student ratio will be, of course.

Then again, some students learn better from the comfort of their own home, from anywhere in the world. For those students, our virtual program also offers a great way to embrace the Python programming language.

In Conclusion

Python is one of the best choices for young people to enter the wonderful world of programming. The combination of ease-of-use, accessibility, and flexibility are hard to beat. Combine that with a human language oriented interface that appeals to kids, and it’s no wonder that Python is widely considered to be one of the primary programming languages of the next decade.

Scratch Coding: What is it & Why Does it Work For Kids 8+

Scratch Coding: What Is it & Why Does it Work For Kids 8+

Want to introduce your child to the world of coding? Scratch is a programming language built for kids and beginner coders to teach them the basics of coding. 

Kids who learn Scratch can create their own interactive stories and games while better understanding coding fundamentals. Why is Scratch such a great language for kids eight and up? Let’s explore how Scratch was developed and how it teaches coding in a meaningful and creative way.

The History of Scratch Coding

Parents researching coding languages often don’t know where to start. And that’s okay! Until about a decade ago, even professional educators weren’t certain which programming languages and teaching methods worked best for kids.

In the past, intro coding classes focused on rote memorization of basic techniques, and enhancing familiarity with programming terms. Over time, technology companies in both the U.S. and the U.K. reported a distinct lack of preparedness and understanding from students learning coding. So, in 2013, the U.K. reworked its computing curriculum, including all coding aspects to make coding classes more purposeful.

The goal of coding classes for kids was boiled down to a simple concept: Fluency. Fluency is the difference between memorizing words in a dictionary, and adding words to your effective vocabulary. Shifting goals provided structure to help make students successful, and that success bred confidence, which encouraged kids to learn and accomplish more. All great computer coding schools now encourage students to learn code using methodologies that work best for them.

2013 was also when one of the most vital tools in modern coding education was released by the Massachusetts Institute of Technology: Scratch 2.0.

What is Scratch?

Scratch is a programming language developed by MIT that brings meaningful context to coding. The Scratch team had three goals in mind: to inspire people to ‘think creatively, reason systematically, and work collaboratively.’ 

Scratch is designed for children aged eight to sixteen, though new coders of all ages consider Scratch to be a great intro to the world of computer science. 

Three versions of Scratch have been published over the years, each one improving on the last in both methodology and technology. The Scratch Cat, which is the default sprite for new Scratch projects, has also been upgraded over time to reflect advances.

The latest version, Scratch 3.0, came out in January 2019. It was an opportunity to fix lingering bugs, and upgrade Scratch 2.0 technology to HTML5 and JavaScript. Scratch 4.0 enhancements are still on the horizon, expecting to be released in the year 2025.

Community is important for Scratch, so MIT Media Lab hosts the Scratch website as a dedicated place for users to share ideas, coding projects, Scratch games, and talk about their learning experience. The website has tutorials, a detailed wiki, code guides, tips for educators and parents, and a full project management suite. Community guidelines help keep it a friendly place to learn about Scratch programming. Students can code privately or publicly, depending on whether they want to collaborate with others. Once they’re done, they can add their own games and projects to the Scratch code library for other students around the world to experience.

The Scratch website at MIT is invaluable for kids who enjoy coding, but learning with the support of teachers is important, too. Teachers can help challenge kids as they learn and help them if they get stuck. Having a supportive instructor is paramount for a kid who’s just learning about coding. The support makes it more likely that they’ll approach coding in a way that builds skills over time.

Scratch Programming Helps Spark Imagination 

Learning Scratch or ScratchJr is easy for kids by design. Code blocks snap together like building blocks to simulate coding concepts. Within seconds, even a new coder can program the Scratch Cat to walk across the screen, meowing, or doing other actions. The interactive drag-and-drop blocks make Scratch a great way for elementary school students to learn coding. Once they understand what they’re doing, students can stretch their limits with help from instructors, doing everything from making interactive stories to building their own video games!

Kids ages eight and up are best able to learn functions and themes that are gradually introduced. As challenges intensify, individuals or groups of students can tackle new activities, code games, and demonstrate the solutions in Scratch code. 

Whether they know it or not, students are using Scratch to learn the fundamentals of computer programming languages. Scratch uses variables and both simple and complex coding skills to familiarize students with algorithms, challenging syntax, problem-solving, and computational thinking. Students learn how to create loops, if/then statements, and counters. Once you have those skills, you can move on to robotics and other coding languages like Python. 

If they put in the time and effort, young programmers can create interactive stories, animations, fun games, commands, and other audio/video elements. The result? Kids will learn to love Scratch coding.

What Is the Best Way for Kids to Learn Scratch?

There’s no right or wrong way for kids to learn Scratch. Simply put, different kids learn different ways!

Some kids love interactive classrooms, either virtual or in person. Children who thrive in a collective learning environment should look into theCoderSchool’s camps. Coding camps and classes for kids are available in dozens of locations all over the continental United States. The ideal Code Coach-to-student ratio in those scenarios is around six-to-one.

Some students learn better from video presentations. For them, step-by-step theCoderSchool AppStream will expose new students to the basics. As students grow in confidence and experience, they may wish to attend interactive classes.

Finally, some students just like to read, and who can blame them? For those lovable little bookworms, the “Coding with Scratch” ebook by Basher Books is their best option. In no time, they’ll be using Scratch for programming all kinds of fun projects.

Sign Up Your Child for a Scratch Class Near You

Scratch is an ideal first coding class for all ages, and an obvious choice if you want your child’s computer coding experience to be more than just a test of patience and memory. With thousands of community projects to draw inspiration from, every Scratch program they come across is a potential learning experience.

TheCoderSchool provides Scratch coding camps and classes. With locations across the United States and flexible courses including virtual learning, in-person classes, or private one-on-one lessons, our teachers provide a child-focused learning philosophy to help the next-gen to take their curiosities with technology to the next level. 

Find a class near you and get in touch with the educators at theCoderSchool today if you have any questions.

The NEAT Neuroevolution Algorithm

By Daniel K., Age 14

     The NEAT neuroevolution algorithm is a more advanced method of machine learning. Rather than creating multiple organisms and attempting to create newer versions of them until one succeeds by chance (like in evolution), NEAT adds a reward value to desirable actions and attempts to emulate human learning by slightly altering the neural network to do more actions that result in a reward. Unlike evolution-based learning, NEAT only has to simulate one neural network at a time.

     To understand the way NEAT works, we first need to talk about neural networks. Neural networks are the basis of machine learning and try to simulate a simplified human brain. Neural networks consist of a single input layer and a single output layer of neurons. The input neurons are connected to the second layer of neurons by several connections with different weights (how much of the signal the connection transmits). The second layer connects with a third layer and so on until the network reaches the output neurons. The input neurons are activated depending on the input data (image HSV values, text codes, and so on). The neural network then processes the data using its hidden layers of neurons until all neuron values are processed. The values of the output neurons then get processed. If a neuron is semi-activated, the activation can be interpreted as the certainty of the neural network that its output is correct.

     The evolution method starts out with multiple neural networks and removes those that underperform, ‘breeding’ those that succeed. However, NEAT only includes one neural network and starts out with all connection weights activated. Whenever the AI performs a task that is seen as successful, it gets a reward or punishment represented by a number. A positive number represents a reward and a negative number represents a punishment. The magnitude of the number determines how good the reward is, kind of like a points system. Usually when humans or animals receive a reward, whatever it might be, they want to do more of the thing that led to them getting a reward. When they get punished, the opposite happens and the human or animal does less of the thing that led to them getting punished. We can simulate this using NEAT.

     Whenever the AI gets a reward, we can ‘teach’ it to do more of the thing that gave it a reward by looking at the neurons that got stimulated the most, effectively singling all of the neurons that led to the AI getting the reward, and amplify the weight of the connections of the stimulated neurons. The increased weight or transmissivity of the neurons increases the chance that the AI will do tasks that give it a reward in the future. We can also do the opposite to simulate a punishment and decrease the weights of the neurons that caused the AI to get punished.

     Everything I just described happens live as soon as the AI gets rewarded or punished, which means that the AI can get better at doing things without having to restart it or the simulation. This also means that the AI can progressively get better at whatever it was made to do in production without having to pause to receive updates.

Artificial Intelligence and Machine Learning

By William O., Age 15

     Often online shoppers will encounter “recommended for you” when buying items online at sites like Amazon, music services, and even news articles.  How do they decide which items to target and which ads to use? Word suggestion in texting and typing is also common form technology that people encounter every day. How does the program know what word you are trying to type? The answer is machine learning.
     Many people confuse artificial intelligence with machine learning, but they are not the same thing.  Artificial intelligence is merely programming a machine. Most conventional programs use artificial intelligence.  However, machine learning goes a step further allows the code to be able to respond to new input and stimuli to create new and different responses.  Machine learning is more common in professional uses than mere artificial intelligence because it’s higher applicability. For example, robots are an example of artificial intelligence but not machine learning because they don’t really respond to new input, they just run their existing code.  On the other hand, Apple’s “Siri” and Amazon’s “Alexa” use machine learning in both speech recognition and language processing to understand the input of what owners are asking of them. 
     The basic summary machine learning is programming a machine to learn.  There are several ways of doing this. One of the most basic and often used for teaching purposes is the genetic algorithm, which is creating several miniature programs, putting them through tests, then making more programs based on which miniature one did the best on the tests and destroying the mini programs that didn’t perform as well.  This is designed to mimic genetics in real life.  
     Another way of programming machine learning is neural networks.  These try to mimic the human brain inside a computer by replicating individual neurons and their connections.  This is used for predicting and extrapolating from databases. For example, it will group a lot of products by seeing which items are frequently bought together and placing those items items in the same group.  If a consumer buys one item in the group, it can recommend other products in the group.  
     Artificial intelligence and machine learning are important for the future because they are much faster ways to allow programmers to make high-level prediction algorithms for a variety of areas.  For example, doctors can look at symptoms of new patients and match them with the symptoms of patients that have already been diagnosed to match with the type of disease that they have for faster diagnoses in health care.  Machine learning will also be used in self-driving cars to recognize traffic signs and signals and adapt to increased traffic patterns during rush hours.

Why Consider a Tech Career?

What do you want out of your career? Do you want to spend every work day doing what you love? Do you want that work to pay well and provide you with countless new experiences and opportunities? For many people, a career in tech checks all of these boxes and more. Read on for some more reasons that tech may be your optimal career path.

Cheaper education costs

In the case of tech, attending a four-year university isn’t necessarily required to get your foot in the door of the industry. Completing internships, attending technical schools, and achieving technical certifications are effective alternatives that a lot of people have used to launch their careers.

There is always a demand for tech workers

Technology is ever-present and ever-evolving in today’s world. One of the many results of this is the constant demand for innovative tech workers. Whether you choose to work in development or IT, there are many paths you can choose within the industry.

Opportunities for travel

The tech industry is global, meaning that working within it has the potential to provide you with opportunities to visit many different parts of the world. If you’ve always wanted to travel while doing fulfilling work, a tech career is for you.

Great perks

A lot of modern tech companies are always looking for ways to attract and retain new talent by creating an exciting workplace culture. This can include options like a flexible work schedule, casual dress codes, more paid time off, and on-site recreational and fitness facilities. The best tech companies boast high job satisfaction and excellent features to maintain their status of being a desirable place to work.

Tech changes lives

Typically, the educational and medical fields are assigned as the primary industries that help people. While this is definitely true, the tech industry also makes a profound difference in many people’s lives. Whether it’s helping people save time and money or developing a revolutionary medical device, the tech industry makes an invaluable contribution to society.

As an ever-developing field, there are a lot of reasons to consider a career in tech. Companies within the industry are great at helping those who are at the beginning of their careers, so a good idea for getting started would be to shadow someone who works in a position you’d like to learn more about. Besides, even if you decide that a tech career isn’t for you, the experience alone could provide some great information to add to your resume.

4 Ways to Improve Focus and Patience

When it comes to coding, there are many skills that talent and education alone can’t teach you. Patience is one of these. Some common issues you’ll come across include people’s varying opinions of your projects, as well as coding road blocks you’ll come across in developing them. If patience is something you’re struggling with, try these tips to help you stay level-headed the next time you run into a frustrating situation:

Slow down

Of course, this can be easier said than done since many coding projects have strict deadlines. However, it’s true that if you slow down when you’re feeling frustrated, you’re likely to use your time more efficiently than if you continue to force your way through whatever challenges you may be facing. By taking a step back to calm down, you can focus on working through your project line by line and fix errors you may have been missing before.

Consider other people’s ideas

Coding is a collaborative effort. Chances are, you are surrounded by people who would like to see you succeed. While frustration can lead to feelings of insecurity, it’s in your best interest to ask someone you trust for help on getting through your road block. This kind of collaboration is especially important if you are working on a small piece of a larger project that involves many other people.

Make the most of your downtime

Many coders love their work, which means it’s common for them to overwork themselves. If you find yourself constantly getting frustrated with your projects, it may be time to evaluate how much time you’ve been spending on your work. You may just need some time to rest or work on a different activity you enjoy. If you give yourself a proper break or day off, you’ll find yourself feeling refreshed and able to think more clearly when you start on your project again.

Establish a routine

Human beings thrive when they have a consistent routine. Take care of yourself by maintaining a regular sleep schedule, eating regularly, and taking consistent breaks throughout your work. When your work becomes overwhelming, form a habit of slowing down and practicing breathing exercises.

The projects you’re working on require passion, and passion can often lead to impatience. The key to producing quality work that you enjoy is to approach it with care and a fresh mindset. Once you learn patience, you will be able to focus, enhance your skills, and take your work to the next level!

VR – Where Is It Now and Where Is It Headed?

By Ethan S., Age 15

The movie Ready Player One was about fully immersive VR (virtual reality). Imagine if you could feel and touch everything you see in a VR headset and interact with it all too. That might seem like a not-so-distant future, however, that reality is closer than you might think.

In Ready Player One, there is a haptic full-body suit that allows you to feel everything around your entire body. The real life version? The Teslasuit. The Teslasuit is a full-body suit that uses electric shocks to stimulate your muscles and nerves. The suit can go as far as controlling your muscles via software. YouTuber Nathie was able to try out the suit and made a video on his experience. He goes as far as to say “It’s so strange that you can feel every interaction you are having.”

While it claims to be full-body, the Teslasuit does not cover the hands. The company HaptX has stepped in and created haptic gloves- the most impressive thing I’ve seen on the market. YouTuber SmarterEveryDay made a video (https://youtu.be/OK2y4Z5IkZ0) where he tried out the gloves. In one part, he sticks his hand under a mini cloud pouring a small stream of rain and exclaims “I’m not a VR believer but you could actually feel each individual raindrop.”

These products are not yet available to the public. Once they go on the market, however, and once virtual reality becomes mainstream, you will be fully “in” the game. Full immersion isn’t just close- it’s here.

Read about Private+Semi-Private Coaching, Virtual Learning, Coding Classes, Robotics, Python, Scratch, or Video Game Coding
or check out our general blog or our student blogs. Think coding isn't needed anymore because of AI? Think again.

What is theCoderSchool? We are an after-school drop-off (and virtual) program for kids learning to code - a coding school! There's after-school kung fu. There's after-school music lessons, sports, art, tutoring, Chinese, you name it, it's out there. But coding classes for kids? Founded in 2013, we're the first of many, and the largest in Silicon Valley with more locations on the way around the country. The future will be ever more dependent on technology so let's get our young generation ready. Learn to Code, Change the World®.

For questions about partnerships, curriculum, schedule, camps, or other operational inquires, please contact your nearest school.
For national franchise questions only, email us at info@thecoderschool.com. Please include the city/state you're writing from.

copyright 2014-2025, the Coder School San Francisco, LLC. All Rights, Alright? Don't forget our privacy policy. Find out who we are or like us on facebook.