topic: Introduction to coding challenges

Tags skill/problem_solving
Hard Prerequisites
IMPORTANT: Please review these prerequisites, they include important information that will help you with this content.
  • CODING_APTITUDE_ASSESSMENT: Basic introduction to Github - Helloworld
  • It’s time to write some code :)

    This is how the challenges work:

    1. When you choose to start one of your coding challenges (by clicking on the Start Project button on your board), we will create a new github repo for you. If you start 5 coding challenges then you’ll have 5 repos.
    2. To submit your code, just upload it into the main branch of the correct repo, don’t make any directories or branches. Make sure you add your task 1 code into the repo that was created for task 1.

    We have a bot 🤖 that plugs into the repos we create. It will mark your work and it will tell you if your code works or not.

    If your code doesn’t work then you can try again as many times as you want 😄

    However, it’s important that you write code in a very intentional way. You shouldn’t just make random changes to your code and chuck it at the bot until it works.

    Make sure you:

    • wrote every statement in your code in a very thoughtful way
    • understand every statement you wrote (obviously)
    • tested the code out yourself, does it work? Or does it cause random errors? If you hand in code that doesn’t run then that wont make you look good. If you can’t run it, don’t hand it in!

    Critical ⚠️

    Bots are pretty stupid so if you put your code in the wrong place it will tell you that your code doesn’t work. So you need to be very careful about naming things EXACTLY as required. This should be very easy to get right, it just takes a little bit of attention to detail.

    Good coders pay close attention to detail and read specifications properly.

    Make sure you can run your own functions on your own device

    If you write a function then you should be able to run the function on your own computer or phone. This is really important. If you submit a function that doesn’t work then you will get a negative review and you’ll have to try again.

    Running the code on your own device is:

    • a skill you need to develop! Obviously. If you aren’t able to run code then how can you be a coder?
    • a quick and easy way to get detailed and accurate feedback

    The fastest way to see if your code is broken is to run it yourself. If you submit guesswork then that would actually be a waste of your time.

    Checking your own answers

    Coders are able to test that their own code works. This is a skill you can and should start developing now.

    If you write a function and it takes arguments then think about all the different arguments you could pass it. Try to come up with strange situations and make sure that your function works in those situations. For example if your function takes in a number then can it handle positive numbers, negative numbers and zero? If your function takes in a string then what happens if the string is empty? And what happens if the string is really long?

    Think about how your code is meant to work and test drive it yourself before handing it in.

    Hand in code that you believe in. Show pride in your work!

    Understanding the bot’s feedback

    The bot works by passing a bunch of different values to your functions and then expecting your functions to do very specific things. It will test your code against a lot of different inputs.

    If your code fails a test then the bot will give you an example of the kind of input it is testing things against. Consider it a hint. Try to think of other things you can do to test your code out before asking the bot for another review.

    We are looking for people who can think for themselves. If you need the bot to do your thinking for you and tell you all the different ways you can test your code out then this bootcamp would not be a good test of your abilities.

    We do keep track of the number of times negative reviews are left for each person in the bootcamp. People who are more able to test their own code do better in this career. So please be prepared to think!

    What order should you do things in?

    We have organized the tasks from the easiest to the hardest. So it would make sense to try to do them in order. But you can really do them in whatever order you want.

    Your final score

    Your final score will be calculated according to how many tasks you finish. That means that if the code doesn’t do what it is meant to then it doesn’t count.

    If you get feedback on a task it would be really good for you to address that feedback and resubmit that project before starting anything else.

    By addressing feedback as quickly as possible you learn as quickly as possible. And learning from feedback will stop you from making the same mistakes over and over.

    Good luck!

    Check your understanding!

    • What happens when you choose to start one of your coding challenges?
    • How many repos will you have if you start 5 coding challenges?
    • How do you submit your code for a coding challenge?
    • What happens if your code doesn’t work?
    • What are some things you should consider when writing code?
    • Why is it important to be careful about naming things exactly as required?
    • Why is it important to be able to run your own functions on your own device?
    • What is the order of the tasks in the coding challenges?
    • How is your final score calculated in the coding challenges?
    • What is the benefit of addressing feedback as quickly as possible?
    • What does the bot do?
    • Why is it important to write code in a thoughtful way?
    • What should you do before submitting your code?
    • How can testing your own code help you?
    • What does the bot’s feedback mean?
    • Why is it important to address feedback on a task?

    RAW CONTENT URL