Learn to Script / Learn to Code in 5 Steps

Coding is an incredibly sought-after skill, and although it may be very daunting and abstract, what if you could begin learning in 5 steps?

Today, that dream can become a reality.


Video Format

This guide is available in video format if it’s easier for you. However, if you’re looking for more depth, this thread provides additional information that was omitted from the video version.


Preface

This guide tackles the topic of learning how to code from a broad enough perspective that the fundamentals of each step can be applied to other aspects of your life when learning other skills.

Ever since I learned the basis of coding with Roblox Lua, I felt that something was missing within the sphere of “Learn to Code” / “How to Code” guides. Although there’s a variety of written and video resources that enables a wider audience to begin learning, I never came across one that emphasized the importance of Metacognition, Meta Learning, and the processes around learning itself, which could help considerably with eliminating ineffective learning practices and habits from affecting their progression.

However, I understand that this guide will not be ideal for everyone. Even if you determine that this is not what you are looking for, remember that there’s a variety of other resources that may be better suited for your approach. It’s completely fine if you prefer a different format/style/etc. for these kinds of resources, as the structure and content contained here is atypical in comparison to the average “Learn to Script” / “How to Script” tutorial.

While I still appreciate the format that most of these guides are based on, I believe it’s a necessity to demonstrate that more can be done prior to and during the learning process to make it a smoother experience than it might be otherwise.


Note: Because there are some complex terminology/words that might be confusing, I’ll be adding definitions/simpler ways of saying the same thing next to it (with a / or inside of parentheses) when necessary.


Click on each image to be brought to the section!

Step 1 Preview

Step 2 Preview

Step 3 Preview

Step 4 Preview

Step 5



I hope you find this useful!

Please let me know if you have any feedback :slight_smile:

 

 


Creating a list of useful resources is something I’d recommend to anyone, regardless of skill level. Some benefits of consolidating your resources include the following:

  • Increased workflow efficacy – Quicker & easier to access important information, including instances (moments) where you need to share it with others.

  • Easy to scale & modify – Need to add/remove resources over time? No problem! Prevents you from having a collection of unorganized bookmarks. Totally hasn’t happened to me before…

  • Very Customizable – You’re only limited to your own imagination! Whether it’s a simple Google Document or a graphic organizer, it can be created however you’d like.

  • And more! – This will make it much easier in the long-term to remain organized so you know exactly where you could go for help.


Before outlining the various resources I’d recommend, here’s an example Resource List. It doesn’t have to be super fancy, just something that works for you.

Example – Google Document

 

If you’re confused why this is labeled as the first step when learning how to code, it’s structured this way as a result of common beginner roadblocks.

When learning something extensive such as coding, the process can be made easier by utilizing (using) various outlets/resources to garner (gain) a solid understanding of the fundamentals. If you don’t know where important information can be found, learning will not be as straight-forward.

Furthermore, by spending time to prepare yourself for the learning process, you’re building a foundation that potentially reduces the amount of skill-level plateaus (moments where you feel like you can’t learn anymore) that you encounter along the way.

Recommended Resources

  1. Programming in Lua books - Provides detailed explanations and “tutorials” about many aspects of the Lua language. The first version of the book (which focuses on Lua version 5.0) can be viewed for free personal use on the same website.

    1a. Lua 5.1’s Official Reference Manual - Official documentation of the Lua coding language.

    • Although Roblox has greatly built upon Lua 5.1, evolving into Luau, the official reference manual contains incredible information about the base language!

    • Using these resources may allow you to have a better fundamental understanding of the language, which may accelerate the learning process when using Roblox Lua.

      • Although the description of the Programming in Lua series states that the books are written for people with some programming experience, keep in mind that “it does not assume any prior knowledge about Lua or other scripting languages.” This could be a fantastic book to cross-reference while learning from more Roblox-focused/Luau-based resources!

  1. Creator Documentation - Education Content [NEW as of September, 2022] - Contains dozens of detailed guides with relatable examples.
    • Code Fundamentals Series with 30 individual guides

    • Has reliable and valuable information

    • Projects that allow you to apply various coding concepts in realistic scenarios

    • NOTE: This was originally found on the Roblox Education website but it has since been moved over to the Creator Documentation site.


  1. Roblox Creator Documentation - This is the home of the API Reference! (Also contains many detailed tutorials)
  • NOTE (October, 2022):

  • API Reference - This has documentation and explanations for various elements of coding. Example: This page explains what a ProximityPrompt is, in addition to the functionality of each of its properties.

  • Short-form articles can be found here too! Let’s say the documentation for the ProximityPrompt wasn’t enough for you to understand how it works. Well, in this case, there’s also an article that provides a starter project and visual explanations to set it up.


  1. Roblox Developer Forum - Thousands of user-made threads can be found here!


  1. Roblox Lua Style Guide GitHub - Recommended coding practices are demonstrated here

    • Prevent bad habits from forming by using this resource! – This is an incredible resource that is not often talked about. I didn’t know about this until the end of 2020 and I wish I knew about it sooner.

    • Following the practices outlined in this resource will make your code more legible, making it easier to modify and debug over time.


  1. Lua Learning - A hands-on learning Roblox Game made by @boatbomber!

    • Interactive learning w/user-made guides – Because it’s a more familiar environment, it might be easier to learn from this resource for certain topics

    • Over time, there might be a full collection of lessons in this game that cover the fundamentals


  1. Roblox Build It, Play It! Challenges - A collection of interactive, step-by-step tutorials created by Roblox.

  1. YouTube - Contains a conglomeration (a looooot) of resources that span a chasm (a variety) of development topics

    • DO NOT rely off of YouTube for ALL of your learning – Although it may be easier to consume content in this format, it’s oftentimes better to make YouTube a supplementary resource/visual aid for learning. This is because practicing with the coding language on your own will allow you to experience and understand how different coding concept work together.

    • Regardless, four channels that I greatly recommend (aside from my own) include AlvinBlox, okeanskiy, B Ricey, and GnomeCode. all of which I admire greatly for their approaches toward development and content creation.

Edit April 6th, 2021: Added B Ricey to the list of recommended channels – I stumbled across their channel shortly after finishing this project so I didn’t get to recommend their content in the video!

Edit December 22nd, 2021: Added GnomeCode to the list of recommended channels. I first watched one of GnomeCode’s videos a month after creating this tutorial/guide but I forgot to include their channel here until December of 2021!

Take note of these resources in a place that you can easily find whenever you want. Over time, add anything that helps you learn onto this list. From here, you’re ready for the next step in the learning process.

 

Note: Because learning how to code requires you to take action on an individual level, remember that it’s your responsibility to utilize the resources at your disposal (resources that you have access to). As a person who creates tutorials, it’s not necessarily my job to make you understand certain concepts. Instead, I’m in a position to facilitate the learning process (make the learning process easier) and pave a pathway for you to discover what works best for you.


Even if you have all the resources you need, it’s crucial (very important) to ensure that you’re able to learn from them effectively. By optimizing your learning environment, you’ll be making it easier to learn in a shorter span of time.

A great way to begin optimizing how you learn could begin with taking notes of key information from the resources you’re using. This will allow you to focus on the fundamentals that make up different concepts, decreasing the likelihood that something overwhelms you.

Example

Furthermore, because taking useful notes requires a greater amount of focus and effort alongside that which is invested into the consumption of content, successfully doing so could allow you to retain the information in a way that’s more coherent and accessible for you in the long-term.


Sometimes these strategies can get boring, leading to a lack of motivation. Rather than relying solely on your desire to improve your development skills, you could motivate yourself to continue learning by taking inspiration from things that interest you and trying your best to use your current knowledge to create something related to it.

However, hoping that your motivation is strong enough to get work done is not an optimal strategy, as it’s not always possible to maintain high levels of motivation every single day. In order to prevent this from being an inhibitor to your learning (something that prevents you from learning), here are some potential strategies you can use.


Strategy #1: Path of Least Resistance

The Path of Least Resistance is a general term that can describe the easiest decision to make. An example of this could be playing video games before starting homework. Because homework tends to be demanding and requires a lot of focus, you might resist starting it until later on. In this case, the path of least resistance would be playing video games first because it oftentimes doesn’t take as much discipline in comparison to the other choice. However, this can be modified over time to make it easier to choose one over the other.

Path of Least Resistance

If you’re adamant about learning how to script on Roblox (very sure you want to learn), I’d advise you to make small adjustments to your environment that prevent any distractions. For instance, if you check your phone a lot when it isn’t necessary, you can move it to another room or place it somewhere that takes slightly more effort to get to. This means that it might take a stronger urge in order to convince yourself to go get it, which could slowly prevent that action from being the path of least resistance.


This strategy can be extremely powerful due to the fact that it has the potential of saving you a lot of energy that would’ve been invested into resisting urges that had become a habit. By making it easier to begin more demanding tasks, you’ll have more willpower to spare that could push you the extra mile when learning something new.


Strategy #2: Taking Breaks – “15 to 5 Rule” & the “2 Day Rule”

Breaks are an essential aspect within the learning process as a result of its ability to “refresh” your perspective of the task at hand. While a typical break could involve taking an hour or two off, there’s alternative ways of doing this that could improve your efficiency immensely.

15 to 5 Rule

The first of which involves the 15 to 5 Rule. The basis of the 15 to 5 rule is that you should spend 15 minutes of time working on something, with 5 minute breaks afterward before repeating the process. This self-imposed rule requires you to be disciplined, as you should be trying your best to maintain complete focus on the task at hand for the entire duration of time until you begin your break. You can always scale or change the amount of time to suit your needs, but make sure the duration of your break is shorter than the amount of time focusing on work.

2 Day Rule

While the 15 to 5 Rule can be applied on a day-to-day basis in shorter increments of time, the 2 Day Rule is something that can be implemented on a much larger scale.

In short, the 2 Day Rule limits you from taking more than 2 entire days off from doing something in a row. For example, if I work on a game today and decide that I want to take a break from development, I could take 2 days off in a row. On the third day, however, I’d need to start working on the project again.


This concept balances the idea of “taking a day off” while maintaining consistency on a long-term basis. If you ever say “I’ll just do that later”, and completely forget about it until a few days or weeks down the road, this could be something that you try to apply to your workflow.

Image Courtesy of Matt D’Avella – He has a fantastic video that covers the 2 Day Rule, which is where I first learned about it (The video is linked with a timestamp to 4:14 in the video. You can watch from that timestamp to 4:50 for the main idea).

Outside of these specific rules, taking regular breaks is important to maintain a healthy balance between different aspects of your life, especially when preventing burnout. If you ever reach the point of burnout, evaluate the distribution of your time (how you balance your time) into working hard versus working smart, since consistently working 8 hours a day on something in an inefficient way may lead to worse results than working on something 1 hour a day in a very efficient manner.


In order to ensure that your optimizations allow you to continue learning in the best way possible, consider the realisticness of the expectations and goals that you have established. Compare the following goals for a beginner, as an example:

Create a front page Roblox game

  • Takes a lot more time to create (generally) – oftentimes more appealing

  • However, not as achievable for a beginner

  • Bad coding habits could compound over time if mismanaged

Or

Create a small project

  • Takes less time to create

  • More easily attainable for a beginner

  • Highlights strengths and weaknesses more easily, making it easier to know what you need to work on


If the goal is something extraordinary and out of reach, such as making a front-page Roblox game, progression might feel slower and you may be more likely to lose track of the journey that you’re enduring. On the other hand, being mindful and spending an adequate amount of time focused on individual concepts may enable you to to combine each new concept with other aspects of scripting more easily in the long term.

By setting your goals closer, for example, learning how to change the color of an object when something specific happens in your game, it’ll be much easier to keep track of your progression and maintain a pace that’s right for you.


Learning how to code can be like learning a language in many different ways. For example, the order of words in a sentence is important to make sure that other people understand what you are saying. Similarly, when coding in Roblox, you need to make sure that you arrange certain keywords and phrases in the right order so the game will know what it needs to do.

The following image demonstrates this similarity/difference when figuring out when someone joins a game. (The top is how you might ask someone, while the bottom is how you would tell the game.)

The amount of time it takes to garner (obtain) a solid understanding of coding syntax can be mitigated, or reduced, by learning from a variety of perspectives.

In order to understand why this is important, let’s explore the concepts of Self-Directed Learning and Self-Regulated Learning.

Self-Directed & Self-Regulated Learning

To start, Self-Directed learning revolves around the bigger picture of establishing your learning trajectory and understanding the general steps that are required to accomplish your goals (1A).

On the other hand, Self-Regulated learning takes place on a smaller scale, dealing with the planning, optimization, and evaluation of how you perform specific tasks inside of the overarching trajectory (1A).

As an example, imagine you want to create a large game on Roblox for the first time. If you utilize Self-Directed Learning, you might first decide what the end goal of the project is going to be. Whether it’s to create a game that earns you money or to simply learn how to work on a large-scale project, this is the baseline that determines your learning trajectory.

Afterward, you might consider hiring other developers in order to fulfill the goal that you have created.

An aspect of Self-Regulated learning during this process could include figuring out the best way to recruit developers for your project. As an example, you might plan this out by creating a document that explains what roles are needed (such as programmers, builders, etc.), templates that others will fill out in order to apply for the job, in addition to the place that the recruitment post will be published, which could be the Roblox Developer Forum.

While the macro-level processes (big picture) involved in creating that game started with figuring out what you wanted to learn and if you needed other people to help along the way, the individual steps on the micro-level (smaller scale) that dealt with optimizing the recruitment process demonstrated specific processes that are important to ensure that everything goes smoothly.


From a glance, it might seem extremely basic to simply analyze the bigger picture and the processes involved in task execution. However, doing so will allow you to not only gain an understanding of what you would like to achieve and how to make sure you get there, but also to improve your ability to learn independently.

The importance of those general concepts are supported by a well-renowned Professor of Educational Psychology, Barry J. Zimmerman, who was a large proponent of Self-Regulated Learning. He determined that self-regulation enables the learner to utilize feedback loops in order to improve their future performance during certain tasks because they are able to see how their preparation and actions contributed toward the end result (1B).

(Image Courtesy of reference 1B in the Works Cited)
SRL Model


Asking Questions

Now that we have a general understanding of these concepts, let’s move on to some ideas that you’re more likely to remember. The first of which involves asking questions when something isn’t working as expected. What kind of questions(?), you might be wondering. Well, that depends on each scenario; and no, this doesn’t mean always asking “why doesn’t this work” every time you encounter something that didn’t go as planned, since that doesn’t diagnose the problem.

More effective questions could be “what part of the script isn’t working properly?”, or “what could I do to solve this issue?”. Being more specific with your questions increases the chances of narrowing down what is causing something to happen in addition to the steps that are needed to resolve it, especially if you created a list of useful resources during the first step.

By treating these situations as a learning opportunity rather than a roadblock, you’re enabling yourself to adopt more open-minded approaches when encountering future issues as you continue learning what kinds of questions are the most effective.


Practicing

If you’ve spent a lot of time practicing or learning something, such as the lyrics of a song, how to play an instrument, or even the best strategies to win more often in a game, you probably understand the amount of effort it takes to learn something new. Eventually you might reach the point where most of the process is subconscious from muscle memory.

This same concept applies with scripting, which is why it’s important to consistently work on and incorporate the fundamentals, or basics, into the projects that you take on. This allows you to continue familiarizing yourself with scripting to improve your understanding of it to a level where you won’t have to spend as much time individually working on it in the future.

Remember that this doesn’t mean you could necessarily “memorize” how certain elements of code work and not have to worry about it again, because you still need to have the experience in conjunction with it to truly understand why it works.

Mistakes

During this process, don’t be afraid of making mistakes and asking questions when you need help, as that is a natural part of learning. As long as you’re aware of your weaknesses and attempt to improve upon them over time, you are actively learning more. No matter the skill level of a developer, mistakes will be made, questions will be asked, and solutions will eventually be found.

On a similar note, this idea is supported by a fantastic talk from a well-respected developer and long-time member of the Roblox community, crazyman32, now known as sleitnick, who expanded upon the uses of procedural generation at RDC 2019. (Note: I bring this up not because of any “mistakes” with Procedural Generation, rather, as a result of the idea that even after many years, there’s always more questions we can ask that can lead to solutions/improvements and innovations, which ties into the next paragraph.)

To add onto this, it’s crucial to understand that no matter if you know something now, it doesn’t mean that you’ll have the same understanding of it given a week’s time. If you’re really comfortable with something such as creating functions, remember that there’s always more you can learn.


Exploring something that you are unfamiliar with can be a very daunting task once you get started. As an example, here’s a box (the video below should be used as a reference point). The image on the bottom left corner of the box represents the skill of a novice, and the image at the top right of the box represents the level of understanding they think they need to reach to know it all. As they get closer to that point, the level of understanding they believed they needed to reach gets further and further away. This process continues, and over time it becomes clear that the mountain they tried to climb was steeper than it seemed.

Despite the novice potentially feeling unsatisfied that they do not “know everything”, their constant drive to continue chasing the next goal by exploring the realms of something that was previously out of their reach is important to understand. Not only does this demonstrate outsider and or beginner ignorance, where we sometimes underestimate the complexity involved when learning certain skills, but it also accentuates the power of intrinsic motivation, which is essentially when you’re doing something without regard for external factors, such as someone else telling you to do something.

Note: Extrinsic motivation, which is the exact opposite of intrinsic motivation, is still completely valid! For example, those who have game development as a job will likely have a lot of extrinsic motivation from wanting to sustain themselves/make a living off of it. They can still have intrinsic motivation if they really love game development, so remember that these two can mix to create a cohesive motivator.


Locus of Control

In order to explain why this is important, briefly covering the related concept of Locus of Control can bring it all together. Locus of Control is an element of psychologist Julian B. Rotter’s social learning theory of personality which determines whether someone believes what happens to them in life is more reliant on themselves and their own abilities (an internal locus of control) or if outside influences have more control over them (an external locus of control) (2A).

Under the assumption that an individual who possesses an internal locus of control takes part in activities due to intrinsic motivation, that individual is approaching the task in a manner that is extremely optimized to learn something extensive such as coding. This is because of how your mindset influences the decisions that you make, especially when exploring the unknown.

Real-World Example

Take the RB Battles events as an example. The organizers behind the events are not Roblox employees; they’re just a couple of YouTubers that wanted to try something new, have fun, and explore uncharted territory while they were at it. This is especially so with Season 2 of the event, where there was an entire game dedicated for RB Battles, created by an incredible team of developers. A variety of other games on Roblox were included alongside this, which the participating YouTubers played as well, providing a large scale and near-collaborative experience between the community and their favorite creators, which hadn’t been done before.

And even if something of that magnitude (scale) isn’t as easily attainable (achievable) for someone like me or you, remember that there’s always something new you can explore along the way.


Click here for a Video Version of the Ending Sequence

Text Version of Ending Sequence

This final step has no name. This final step has no definitive direction. This final step is up to you. If you’ve reached this point, it’s ultimately your decision if you believe that learning to code is something you want to pursue, regardless if it ends up being a hobby or a career.

It must be understood that truly learning to code is more than simply understanding the language. No matter how much you know, you’ll need to consistently problem-solve through situations you’ve never encountered before and practice over and over and over again, even when you aren’t feeling up to the task.

It’s crucial to understand that it won’t be easy at the start of the road. Most paths begin unpaved, and that’s no different on this platform. If you turn back time, this was the same with Roblox itself. It’s been evolving extensively throughout the years, through the good and the bad, and it’s still here. It’s still continuing to grow and it’s still continuing to cement a foundation for what’s next.

So if there’s anything you can do to create your own path, it’s to make sure that you don’t watch the clock. Instead, do what it does… Keep. On. Going.


Works Cited

[1A] Jossberger, Helen & Brand-Gruwel, Saskia & Boshuizen, Henny & Wiel, Margje. “The challenge of self-directed and self-regulated learning in vocational education: A theoretical analysis and synthesis of requirements.” Journal of Vocational Education & Training. 62. (2010), doi:10.1080/13636820.2010.523479.

(This source provides a concise and well-summarized version of Self-Regulated Learning if interested)
[1B] Everson, Howard. “Barry Zimmerman.” Learning and the Adolescent Mind.

[2A] Rotter, Julian B. “Social Learning and Clinical Psychology.” Prentice-Hall Inc.,
doi:10.1037/10788-000.



Interested in more in-depth content similar to this? If so, check out my analysis of how this Roblox game with over 7.5B Visits rose to the top!

 

 


Thanks for reading! I wish you the best on your development journey :woot:

221 Likes

This is a really in depth topic about how you can learn to code, although this starts off with Luau, I really think it shouldn’t for a good reason, you shouldn’t learn luau first then lua, you should learn Lua first.

The motivation part I mostly agree with, all these methods are a really good way to becoming motivation, I have a topic for this as well showing Parkinson’s Law and more methods.

I find regularly that people tend to skip things that are written down and instead watch visually.

I also don’t recommend using big words for beginners and if you want to you should probably define them

I like how you organized your topic to the max! I never actually seen a much organized topic in devforum until now, you added table of contents and images that help you look into this more visually, your methods are also amazing as well, if you asked a 20 developers how they learned to script you would probably get this (except this is more in depth), you showed what most people wouldn’t show in their tutorials (Developer Hub Tutorials, API reference, DevForum, etc) and you have a very clear explanation not only from the video but the topic! It’s usually very rare to see a topic actually well done explained.

What I like about the video is you put a table telling us what they give to you if you do not know what |'m talking about here is a screenshot from his video:

Image

You even added Coding Practices, these would be also helpful for me as I always forget things like setfenv, _G, etc

I love how you mentioned Okeanskiy as well, he is a very underrated youtuber that has small recognition

In conclusion: This topic is one of the best Coding Tutorials in here for a long time! :smiley:

23 Likes

I think if i had this article when i first started coding it would’ve helped tremendously. You mention things like metacognition or using skills to then transform your mind into a more analytical machine was something i started doing as a result of coding and not to learn coding. This is definitely an interesting approach.

14 Likes

From my understanding of the first part of your message, are you referring to learning regular Lua outside of Roblox before giving it a go on Roblox, or did I misinterpret in the preface section what people refer to as “Roblox Lua” vs “Luau”?

Regardless, I appreciate you bringing this up because I completely forgot about mentioning the Lua reference manual! I’ll be adding that to the list of resources :slight_smile:


I’ll be adding clarification for some of the more complex terminology soon! This is something I had in the back of my mind but didn’t get to yet since I wanted to make sure I had all of the other necessary elements first.

6 Likes

Yes, that is exactly what I was talking about, thanks for a quick response :wink:

5 Likes

I’ve now added the Lua Reference Manual as the first resource in the list, and I’m working through the thread to add definitions/simpler ways of saying the same thing for those who need it. Edit: I’ve now done this for most of the post!

Also, I appreciate the additions you made to your original reply :smiley: I’m glad that you’ve found this to be resourceful even though you probably know more about Lua than I do!


I’ll be checking out your topic soon since it sounds incredibly valuable (I tend to procrastinate quite often, haha). Maybe I’ll end up referencing that topic in the OP around the motivation section, too :happy4:

6 Likes

Even with “simple” or “complex” learning tutorials, I personally believe that one of the fundamental pitfalls in starting the learning process is understanding what you’re actually learning how to do. I’ve recognised this throughout my own personal experiences as well.

When you’re learning how to program, it’s less about learning the language than it is about learning the nuances of the language, how to problem solve and how to apply your own knowledge or documentation to the work ahead of you. Anyone can write code but where your effort will primarily be sourced from is understanding what you’re writing and what it’s meant to be doing.

Also the universal principle for learning something applies here: practice and repetition will help with memorisation. Make sure you’re able to pick up some knowledge along the way though: remembering isn’t enough, you also need to have knowledge to accompany that memory.

8 Likes

colbert2677:
" Also the universal principle for learning something applies here: practice and repetition will help with memorisation. Make sure you’re able to pick up some knowledge along the way though: remembering isn’t enough, you also need to have knowledge to accompany that memory."

Yes, and know how to act when encountering what you’ve learned, make an instinct of what could happen with whatever it is that you’re encountering.

Sorry if this partly doesn’t make sense, my mind is a little off right now cause of a sickness. Though I felt that this was also something that would be good to have.

Thinking more on it, I believe this may be something that would come later down the road, after someone’s been scripting for a good bit. Though if someone is able to make some things semi instinct, then that’s great!
They should keep practicing, they don’t absolutely have to do all the things colbert2677 said, but he made some very useful points.

5 Likes

How do I know were to start since there are so many things to make so it can get stressful, how do I think of a good idea which you can start out with that isn’t changing a color part or a simple door? (I have written some “Meh” ideas as well but they aren’t good)

2 Likes

It’s difficult to provide a concrete list of potential ideas that’ll work for everybody as a result of the following reasons:

  • I’m not sure what your…
    • Learning preferences are
    • What coding concepts you’ve already experimented with
    • Along with the elements of coding you are trying to incorporate into your projects

Before elaborating further, it appears that you may have encountered what could be considered a Choice Overload or The Paradox of Choice, which essentially encompasses the idea that having too many options makes it more difficult to follow through with one of the choices.

When you’re learning something new, narrowing your scope to focus on specific ideas could prevent these factors from slowing down your progress entirely.


If you’re unable to determine an ultimatum, here’s some things you could try:

  • Think of anything you’re interested in (outside of development itself) and try to create something related to that activity/task/etc. – This is something I included within the Optimize Your Learning Environment section:

    • Rather than relying solely on your desire to improve your development skills, you could motivate yourself to continue learning by taking inspiration from things that interest you and trying your best to use your current knowledge to create something related to it.

    • Instead of utilizing this in the context of motivation, it could be used to more easily determine a point of focus for a small project. For example, if you enjoy track and field, you could create something that revolves around changing the WalkSpeed of your Character when different things happen.

 

  • Start creating something that you might think is boring, such as that color-changing part/simple door, but continue adding onto it and making it more dynamic and/or complex.

    • This process may allow you to simultaneously improve your problem-solving skills while discovering how basic ideas/implementation can be expanded upon.

    • However, make sure that you’re not overdoing this to the point where you’re trying to combine concepts that you haven’t had any experience with otherwise, since that could inadvertently reinforce bad habits.

 

  • Open up an empty baseplate and try to create the very first idea that comes to mind.

    • Going with the first/one of the first ideas you think of could prevent you from spending too much time pondering over an expansive list of ideas. Over time, this could reduce the amount of instances in the future where you hesitate to create something.

    • Note: This is moreover in the context of smaller projects – once you get to the point where you want to/are able to pursue larger/longer-term projects, I’d advise you to take more time planning it out and determining what works best for you. As a reminder, this is something I covered during the Diversify Your Learning Approach section with Self-Directed & Self-Regulated learning.


If you exhaust the options above and run out of ideas, Roblox’s Education Website also provides lots of specific examples where different coding concepts can be applied in different scenarios.

Hopefully this will help you discover a starting point for the journey that could follow! :slight_smile:

15 Likes

made me wanna quite building and start scripting, smthn id like to get into but i never understand the reasons for codes lol.

1 Like

Thank you! I will check the video out and thank you for the info! :slight_smile:

3 Likes

Very nice bro i tried making a tutorial like this but it kept being flagged since it wasent detailed enough

1 Like