diff --git a/Week1/README.md b/Week1/README.md index 6c240965..4a45c1f5 100644 --- a/Week1/README.md +++ b/Week1/README.md @@ -14,8 +14,6 @@ These are the topics for week 1: - Chaining - Benefits 3. [The Event Loop](https://study.hackyourfuture.net/#/the-internet/event-loop) -4. [Career Training II (Interview preparation)](https://github.com/HackYourFuture/interviewpreparation) - ## Week goals @@ -25,9 +23,6 @@ In this module we are going to learn how to connect our applications with data s Lastly, as we now know everything about asynchronicity, we can look at the browser's [Event Loop](https://study.hackyourfuture.net/#/the-internet/event-loop) which every browser implements. This will help you understand how and when your code gets executed in the browser. This will help you decide where to link up your code with the DOM so that it does what you expect. -## Career training II (Interview preparation) -Finally it is time to continue with developing your soft skills to ace those job interviews. For that, have a look at the [interview preparation repo](https://github.com/HackYourFuture/interviewpreparation). It is a lot to get through, so you may need some time next week as well. There is no assignments for this week, but there is some assignments for the career training next week, you can already have a look at it if you find these things difficult. - ## Finished? Are you finished with going through the materials? High five! If you feel ready to get practical, click [here](./MAKEME.md). diff --git a/Week2/README.md b/Week2/README.md index 5c54dfaf..a05fd1c4 100644 --- a/Week2/README.md +++ b/Week2/README.md @@ -7,10 +7,11 @@ These are the topics for week 2: 1. [Application Programming Interface (API)](https://study.hackyourfuture.net/#/the-internet/api) - Public/private APIs - Connecting with APIs -2. [Fetch API](https://study.hackyourfuture.net/#/the-internet/fetch) -3. [Async/Await](https://study.hackyourfuture.net/#/javascript/modern-js) +2. [Fetch API](https://study.hackyourfuture.net/#/the-internet/fetch) +3. [CORS](https://study.hackyourfuture.net/#/the-internet/cors) +4. [Async/Await](https://study.hackyourfuture.net/#/javascript/modern-js) - Catching errors with try/catch -4. [Interview preparation](https://github.com/HackYourFuture/interviewpreparation) +5. [Career Training I](https://github.com/HackYourFuture/yourpersonalbrand): Not all at once! ## Week goals @@ -22,11 +23,14 @@ There are many ways to request data from an API, initially everything was done u Last week we learned about Promises and with the increased use of promises, modern JavaScript introduced some new syntax that can be used with those promises. Have a look at the section on Async/await in the modern JavaScript page of your study book [here]((https://study.hackyourfuture.net/#/javascript/modern-js)) now that you know what promises are so that you know what it does. -You will probably ask yourself now which way is best to handle asynchronous code and the answer is that there is no best way. Generally callbacks are great for simple applications, but get into callback hell if stuff gets too complicated. Promises with `.then` chains are great for more complex situations where the chaining can be very powerful, but can be a little hard to follow for people who do not have much experience with them. Using async/await makes the code look a little more synchronous again and that can make it easier to follow. It does, however, make it a little more complex to handle errors or situations where something absolutely needs to be done (a `finally` is invaluable in these situations). So, it is up to you to decide based on the situation what to use. +You will probably ask yourself now which way is best to handle asynchronous code and the answer is that there is no best way. Generally callbacks are great for simple applications, but get into callback hell if stuff gets too complicated. Promises with `.then` chains are great for more complex situations where the chaining can be very powerful, but can be a little hard to follow for people who do not have much experience with them. Using async/await makes the code look a little more synchronous again and that can make it easier to follow. It does, however, make it a little more complex to handle errors or situations where something absolutely needs to be done (a `finally` is invaluable in these situations). So, it is up to you to decide based on the situation what to use. -## Career training II (Interview preparation) -If you haven't finished all the material yet, then continue with it this week. +## Career Training I (Your personal brand) -## Finished? +Since you completed Browsers, you now have a first project to write down on your CV! You will add many more in the future, as you progress in your abilities. It is therefore time to start thinking about all of the steps required to start the job search and to get accepted to your first programming job. The first step will be handled in the Career Training I: _your personal brand_. We will cover how to present your CV, GitHub, LinkedIn, etc. to that they stand out. These are the first things employers will look at, so they convey a first impression of you and has to be great! We have compiled a big list of information about how to go about creating your personal brand in [this repo](https://github.com/HackYourFuture/yourpersonalbrand). -Are you finished with going through the materials? High five! If you feel ready to get practical, click [here](./MAKEME.md). +### Career Training I: Planning + +You don't have to do all of this immediately. Somewhere this week you will receive a message in your cohort channel from Giuseppina to plan the Career Training I. *Before* that session, make sure to have: +- Read the whole [personal brand repository](https://github.com/HackYourFuture/yourpersonalbrand). +- Done the [assignment](https://github.com/HackYourFuture/yourpersonalbrand/blob/main/yourcurriculum.md#4-submitting-your-cv-to-the-hyf-team) for the repository. diff --git a/Week3/README.md b/Week3/README.md index a743733f..43b63a04 100644 --- a/Week3/README.md +++ b/Week3/README.md @@ -2,13 +2,13 @@ In the final week of the Using API's module you will put everything you have learned to good use and build your own single page application that is connected to an API! What you build is totally up to you. Maybe you already had an idea in your head for a while, or maybe you will get inspired by all the open API's that are available. -This is quite a big undertaking, so during the project one of the mentors for this module will be assigned to you. Feel free to ask them for help if you are stuck or unsure, but they have been instructed to not write any code for you :). +This is quite a big undertaking, so you will have a mentor assigned to you to assist you in the project. Feel free to ask them for help if you are stuck or unsure, but they have been instructed to not write any code for you :). ## Project requirements We want you to get excited and be free to build something you are passionate about, but there are some things that we need to see you have mastered. This means there are a few requirements: - The app needs to be responsive. -- The app needs to be a single page application. That means there should be only one `index.html` file and JavaScript needs to update the html using DOM manipulation. +- The app needs to be a single page application. That means there should be only one `index.html` file and JavaScript needs to update the HTML using DOM manipulation. - The app needs to interact with an API to grab data. - The app needs to have loading/error handling for the interaction with the API and needs to show this to the user, not just a `console.log`. - The app needs some user interaction such that you need to grab different data from the API. So you cannot just grab everything from the API and store it locally with one fetch. @@ -19,9 +19,10 @@ We want you to get excited and be free to build something you are passionate abo There are many APIs that are open to get data from, have a look at the following lists to see if there is a topic that interests you: - [publicapi.dev](https://publicapi.dev) -- [public api repo](https://github.com/public-apis/public-apis) +- [public API repo](https://github.com/public-apis/public-apis) - [API list](https://apilist.fun/) -- [Public APIs](https://public-apis.io/) +- [Public APIs](https://publicapis.io/) +- [RapidAPI](https://rapidapi.com/hub) When looking to see if an API is suitable for you there are a couple of questions to check: 1. Is the API rated, and if so how? @@ -44,10 +45,10 @@ If you really are stuck and have no inspiration, have a chat with your project m Something like [this extension](https://chrome.google.com/webstore/detail/json-viewer/gbmdgpbipfallnflgajpaliibnhdgobh) will make it easier to work with an API. If your request returns JSON, which the API's do, it will format it nicely in your browsers so that you can easily navigate what the API is giving you. ## Final product -The final product (the repository is the product, not just the application) should be something that you can show off on your CV. So have a look at our technical assignment guidelines [here](https://github.com/HackYourFuture/ta_guidelines) and our design guidelines [here](https://github.com/HackYourFuture/design_guidelines) to see what it entails. By following those guidelines your app AND your code will look great, making it a great thing to show off to employers. You will also get into the habit of doing this with all the technical assignments you will get during your job search. +The final product (the repository is the product, not just the application) should be something that you can show off on your CV. So have a look at our technical assignment guidelines [here](https://github.com/HackYourFuture/ta_guidelines) and our design guidelines [here](https://github.com/HackYourFuture/design_guidelines) to see what it entails. By following those guidelines your app _and_ your code will look great, making it a great thing to show off to employers. You will also get into the habit of doing this with all the technical assignments you will get during your job search. ## Planning and deadlines -There are only 2 deadlines in the project, how you divide your time for the rest is up to you. +There are only two deadlines for the project; how you divide your time for the rest is up to you. ### Deadline 1: Project definition By *Thursday 18:00PM CET* (but the earlier the better) you should send a short description of what your app will be as well as the name of the company whose brand/colour palette you will be mimicking to your project mentor. @@ -74,5 +75,3 @@ _Note: following the technical assignment guidelines will also be a part of the As you are all working on the projects this week there will not be a Q&A session on Sunday. Enjoy getting practical! - -