Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 616ee50

Browse files
committed
reorganised 4 weeks into 3 and cut out the things that were in the explore module
1 parent feee4ef commit 616ee50

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+128
-567
lines changed

Week1/MAKEME.md

Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,38 +3,46 @@
33
## **Todo list**
44

55
1. JS Tutor
6-
2. Prep exercises
7-
3. Practice the concepts
6+
1. Practice the concepts
7+
1. Prep exercises
8+
1. Practice practice practice
89

910
## **1. JS Tutor**
1011

1112
Practice, practice, practice. This week you are not handing in any homework, but are going to practice as much javascript as you can. Play around with the exercises mentioned below, remember that you can copy the code into [JS Tutor](http://pythontutor.com/javascript.html#mode=edit) to step through the code. Or look at it in the debugger in the browser/vscode.
1213

13-
## **2. Prep exercises**
14+
## **2. Practice the concepts**
1415

15-
> Prep exercises are exercises that you should work on _before_ the session on Sunday. These are a little more difficult or show an important concept and as such are a great exercise to talk about with your class and your Q&A mentor. Have a solution ready by Sunday as you may be asked to show what you did.
16+
In this section you will be doing interactive exercises, that will allow you to practice with the concepts you've learned about this week! We provide a lot of possible exercises here and you probably can't do everything, but do as many as you need to feel comfortable with the concepts. Also feel free to come back to them later.
17+
18+
- Do all parts of [Codecademy: Arrays](https://www.codecademy.com/courses/introduction-to-javascript/lessons/arrays) (Signup required!)
19+
- Do 5 exercises of [FreeCodeCamp: Basic data structures](https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-data-structures)
20+
- [Codecademy: Functions ](https://www.codecademy.com/courses/introduction-to-javascript/lessons/functions)
21+
- [JSchallenger](https://www.jschallenger.com/) - Do all of the Javascript Basics section except for `scope` and `asynchronous javascript`.
22+
- There is a practice-exercises folder in this week's repository that is filled with exercises to try out. The solutions are in a separate folder so you can check if you did it correctly. Clone this repository to your computer and have a go!
1623

17-
Inside your `JavaScript` fork, go to the folder `Week1`. Inside of that folder, navigate to `/prep-exercises`. For each exercise, you will find a separate folder. The `README` explains what needs to be done. There will also be some questions at the bottom to think about. Go through them _before_ the session on Sunday as it will be covered then.
24+
## **3. Prep exercises**
1825

19-
## **3. Practice the concepts**
26+
> Prep exercises are exercises that you should work on _before_ the session on Sunday. These are a little more difficult or show an important concept and as such are a great exercise to talk about with your class and your Q&A mentor. Have a solution ready by Sunday as you may be asked to show what you did.
2027
21-
Before we learn how to build actual applications, we first need to gain experience using JavaScript in a computational way. This teaches us how to think like a programmer, and gives us more experience with the language itself.
28+
Inside your `JavaScript` fork, go to the folder `Week2`. Inside of that folder, navigate to `/prep-exercises`. For each exercise, you will find a separate folder. The `README` explains what needs to be done. There will also be some questions at the bottom to think about. Go through them _before_ the session on Sunday as it will be covered then.
2229

23-
In the following exercises you'll learn how to use different JavaScript concepts to solve common computational problems.
30+
## **4. Practice practice practice**
2431

25-
- [Learn-js](https://www.learn-js.org/). Do all the `Learn the basics` exercises.
26-
- [Codecademy: Introduction to JavaScript](https://www.codecademy.com/learn/introduction-to-javascript/modules/learn-javascript-introduction). Do all the exercises (#1 to #10).
27-
- [jshero.net](https://www.jshero.net/en/success.html). Do the first 5 exercises.
32+
Done with the above? Then it is time to practice practice practice! Below you will find huge lists of practice exercises to keep practicing. The better you get at JavaScript, the easier the rest of the curriculum is so try to do as much as you can. Some of these solutions use some of the concepts of next week so if something looks weird, have a quick look at next week's topics to see what it means:
2833

29-
The above should give you a nice basis. If you have extra time and are still a little unsure, have a look at the following:
34+
- [W3Resource Basic exercises](https://www.w3resource.com/javascript-exercises/javascript-basic-exercises.php) _(Note that the given solutions to these exercises use old JS syntax, we will learn more about this later. Most important now is that we don't use `var` anymore, so make sure you use `let` or `const`!)_
3035

31-
- [FreeCodeCamp: Introduction to JavaScript](https://learn.freecodecamp.org/javascript-algorithms-and-data-structures/basic-javascript). Do at least 20 exercises, you can choose whichever ones you feel are challenging enough.
32-
- There is a practice-exercises folder in this week's repository that is filled with exercises to try out. The solutions are in a separate folder so you can check if you did it correctly. Clone this repository to your computer and have a go!
36+
There are also multiple websites that provide constant challenges to practice your skills. These go from beginner to advanced and you should bookmark them and return every once in awhile. In some interview processes these kinds of exercises are given nowadays. We suggest to start with Edabit as they are more geared to beginners, the others start at a higher level:
37+
38+
- [Edabit](https://edabit.com/challenges) - You can choose JavaScript as a language and then try solving as many challenges as you can. If you find the level too easy then you can choose a higher difficulty.
39+
- [leetcode](https://leetcode.com/) - Sign up and start solving!
40+
- [Code Wars](https://www.codewars.com/) - Once you feel comfortable with the JavaScript syntax sign up for code wars to practice. It is a website where you can solve exercises and rank up! When signing up, only choose JavaScript to really focus the problems on learning to solve problems in it. You can later change it to other technologies when you get more familiar.
3341

34-
## No homework to hand in
42+
## No homework to hand in (for now)
3543

36-
For the first 2 weeks of JavaScript there is no homework to hand in as the exercises already give you all the feedback you need. Go through the first 3 weeks at your own pace, and feel free to ask questions about any of the 3 weeks for the Q&A sessions.
44+
For the first week of JavaScript there is no homework to hand in as the exercises already give you all the feedback you need.
3745

3846
## Done early?
3947

40-
Try to do more exercises in the links above. The first weeks of the JavaScript modules are very important as understanding the basics will make the rest of the curriculum that much easier to follow. So keep reading and writing code! If you are done early, go on to week 2!
48+
Try to do more exercises in the links above. The first weeks of the JavaScript modules are very important as understanding the basics will make the rest of the curriculum that much easier to follow. So keep reading and writing code!

Week1/QA.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Q & A Session
22

3-
The first 2 weeks of JavaScript we do not have homework and we encourage students to follow all the material at their own pace. So students can ask questions about any week. Expect questions about:
3+
The first week of JavaScript we do not have homework and we encourage students to follow all the material at their own pace. So students can ask questions about any week. Expect questions about:
44

55
- Basic JavaScript blocks (let/const, operators, loops, if/else, functions)
66
- The Debugger (both browser/vscode) and how to debug

Week1/README.md

Lines changed: 30 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,41 +1,44 @@
1-
# Reading Material JavaScript Week 1
1+
# Reading Material JavaScript1 Week 1
22

33
## Agenda
44

5-
These are the topics for week 1.
6-
7-
1. [What is programming?](https://study.hackyourfuture.net/#/programming/README)
8-
- Software
9-
- What is a programming language?
10-
2. [What is web development?](https://study.hackyourfuture.net/#/the-internet/web-development)
11-
- Web development vs. software development
12-
- Web development vs. web design
13-
- Website vs. web application
14-
3. [What is JavaScript?](https://study.hackyourfuture.net/#/javascript/README)
15-
4. [What are variables?](https://study.hackyourfuture.net/#/javascript/variables)
16-
- The keywords: let, const, var
17-
5. [What are values?](https://study.hackyourfuture.net/#/javascript/values)
18-
6. [Statements vs. Expressions](https://study.hackyourfuture.net/#/javascript/statements-vs-expressions)
19-
7. [Operators](https://study.hackyourfuture.net/#/javascript/operators)
20-
8. [Debuggers](https://study.hackyourfuture.net/#/tools/debuggers)
21-
9. Testing code
5+
These are the topics for week 1:
6+
7+
1. [Refresher on JavaScript building blocks](https://github.com/HackYourFuture/explore/tree/main/Week3)
8+
- Variables
9+
- Values
10+
- Statements / Expressions
11+
- Operators
12+
- Conditional Statements
13+
- [Functions](https://study.hackyourfuture.net/#/javascript/functions)
14+
1. [Refresher on debuggers](https://study.hackyourfuture.net/#/tools/debuggers)
15+
1. [Loops](https://study.hackyourfuture.net/#/javascript/loops)
16+
1. [Naming conventions](https://study.hackyourfuture.net/#/programming/naming-conventions)
17+
1. [Testing code](https://www.ministryoftesting.com/articles/e463d4ba?s_id=14519957)
2218
- [Assertion](https://study.hackyourfuture.net/#/testing/assertion)
23-
10. [Career training I (Your Personal Brand)](https://github.com/HackYourFuture/yourpersonalbrand)
2419

2520
## Week goals
26-
All of the detailed information about every concept is in your study book. The following goal explanation will link you to the correct place to get studying. Read through the goal description once to get an idea of what you will be learning, then go through the different links (either from the agenda or this goal list).
2721

28-
This week is all about getting you started in the world of JavaScript. For that we have to go a little broad and first explain the difference between what you have been doing until now (very visual, one line does one thing coding) to actually programming. Start by opening your study book to the [What is programming](https://study.hackyourfuture.net/#/programming/README) section and reading through it to get a feel for the world you are going to embark into. Once you know what programming is it is time to learn about the programmer niche this curriculum is built for which is [Web development](https://study.hackyourfuture.net/#/the-internet/web-development). Now let's talk about JavaScript, which is the programming language the whole rest of the curriculum will be done in. First read up on what JavaScript is in your studybook [here](https://study.hackyourfuture.net/#/javascript/README).
22+
All of the detailed information about every concept is in your study book. The following goal explanation will link you to the correct place to get studying. Read through the goal description once to get an idea of what you will be learning, then go through the different links and look at them in detail.
2923

30-
Time to start learning the language with the first building blocks: variables! Have a look at what variables are [here](https://study.hackyourfuture.net/#/javascript/variables) and what values are [here](https://study.hackyourfuture.net/#/javascript/values). Then let's go over some syntax with the difference between statements and expressions [here](https://study.hackyourfuture.net/#/javascript/statements-vs-expressions). And finally let's look at what we can do with variables and values by using what's called operators. Read about them [here](https://study.hackyourfuture.net/#/javascript/operators).
24+
Welcome to week 1 of JavaScript! Time to get coding, let's start with refreshing the things we learned during the explore module. Have a look at [week 3](https://github.com/HackYourFuture/explore/tree/main/Week3) there again to remind yourself what the following concepts mean again:
3125

32-
To help learn the language we also want to introduce you to some tools that you can use to look under the hood of your code in the section about [debuggers](https://study.hackyourfuture.net/#/tools/debuggers). You won't understand everything of what's there yet, but debugging is so important we want you to look at it early. Read through it once and play around a bit in the debugger. We will be telling you to revisit the debugging section over the next few weeks as you start learning more and more about what is possible.
26+
- Variables
27+
- Values
28+
- Statements / Expressions
29+
- Operators
30+
- Conditional Statements
3331

34-
Lastly we want to introduce the first steps to testing code with some code you will find in your exercises. Have a look at what assertion is [here](https://study.hackyourfuture.net/#/testing/assertion), the `console.assert` lines in your practice exercises uses this to check that your code does the right thing.
32+
Then have a look at functions again over [here](https://study.hackyourfuture.net/#/javascript/functions).
3533

36-
## Career training I (Your personal brand)
37-
During this module, you will also learn about the different components that make your personal brand (CV, GitHub, LinkedIn, etc). We have compiled all important info for you in [this repo](https://github.com/HackYourFuture/yourpersonalbrand). Be sure to read the full repo for the Career Training session that will happen in Week 2 of this module and start working on your personal brand which you will have to hand in at the end of JS week 4!
34+
This week we are going to go a little deeper and get some extra building blocks to work with. Another cool thing we can do in JavaScript is repeat actions, we can do that using a concept called loops, read more about that [here](https://study.hackyourfuture.net/#/javascript/loops).
35+
36+
You now have all of the basic building blocks that form the basis of all code! You will undoubtedly already have encountered the difficulty of reading code, and combining everything this week will make it even more difficult to follow. It is a good idea to revisit the debugger section with this new knowledge [here](https://study.hackyourfuture.net/#/tools/debuggers). Although it is called debugging, a lot of the process of finding 'bugs' in your code is trying to understand what is happening in the code. So keep using the debugger to understand pieces of code that you are not 100% comfortable with yet!
37+
38+
This is also the week we are going to start learning about best practices surrounding programming. These are general rules programmers follow so that code remains readable for others. The first will be about naming conventions, read more about that [here](https://study.hackyourfuture.net/#/programming/naming-conventions) and try to make it a habit to follow them.
39+
40+
Lastly we want to introduce the first steps to testing code. Let's first have a look at what software testing is and why we do it [here](https://www.ministryoftesting.com/articles/e463d4ba?s_id=14519957). The simplest form of testing is using assertions, have a look what that is [here](https://study.hackyourfuture.net/#/testing/assertion), we will introduce this more in your homework so you will see how it works.
3841

3942
## Finished?
4043

41-
Are you finished with going through the materials? You're doing great! If you feel ready to get practical, click [here](./MAKEME.md). If you have finished the exercises, then start working on week 2! The first 3 weeks of this module cover all the basic building blocks of JavaScript and getting familiar with them is of the utmost importance!
44+
Are you finished with going through the materials? You're doing great! If you feel ready to get practical, click [here](./MAKEME.md).

Week1/practice-exercises/1-hello-world.js

Lines changed: 0 additions & 12 deletions
This file was deleted.

Week1/practice-exercises/2-syntax-error.js

Lines changed: 0 additions & 6 deletions
This file was deleted.

Week1/practice-exercises/3-log-number.js

Lines changed: 0 additions & 23 deletions
This file was deleted.

Week1/practice-exercises/4-log-string.js

Lines changed: 0 additions & 23 deletions
This file was deleted.

Week1/practice-exercises/5-round-number.js

Lines changed: 0 additions & 17 deletions
This file was deleted.

Week1/practice-exercises/6-log-animals.js

Lines changed: 0 additions & 25 deletions
This file was deleted.

Week1/practice-exercises/7-log-string-length.js

Lines changed: 0 additions & 9 deletions
This file was deleted.

Week1/practice-exercises/solutions/1-hello-world.js

Lines changed: 0 additions & 11 deletions
This file was deleted.

Week1/practice-exercises/solutions/2-syntax-error.js

Lines changed: 0 additions & 1 deletion
This file was deleted.

0 commit comments

Comments
 (0)