From 4a679d3b12423c0df19fd32b5eec9f317db487f1 Mon Sep 17 00:00:00 2001 From: MSilva95 Date: Tue, 13 Jul 2021 16:07:33 +0100 Subject: [PATCH] more projects reviews --- subjects/forum/README.md | 34 ++++++++-------- subjects/forum/advanced-features/README.md | 10 ++--- subjects/forum/advanced-features/audit.md | 4 +- subjects/forum/audit/README.md | 24 +++++------ subjects/forum/authentication/README.md | 14 +++---- subjects/forum/authentication/audit.md | 2 +- subjects/forum/image-upload/README.md | 18 ++++----- subjects/forum/image-upload/audit.md | 2 +- subjects/forum/moderation/README.md | 18 ++++----- subjects/forum/moderation/audit.md | 14 +++++-- subjects/forum/security/README.md | 40 +++++++++---------- subjects/forum/security/audit.md | 6 +-- subjects/graphql/README.md | 8 ++-- subjects/graphql/audit/README.md | 8 +++- subjects/make-your-game/README.md | 5 +-- subjects/make-your-game/audit/README.md | 30 +++++++------- .../make-your-game/different-maps/README.md | 4 +- .../make-your-game/different-maps/audit.md | 10 ++--- subjects/make-your-game/history/README.md | 2 +- subjects/make-your-game/history/audit.md | 16 ++++---- .../make-your-game/score-handling/README.md | 4 +- .../make-your-game/score-handling/audit.md | 20 +++++----- subjects/mini-framework/audit/README.md | 32 ++++++++++----- subjects/netfix/audit/README.md | 10 +++++ subjects/real-time-forum/README.md | 2 +- subjects/real-time-forum/audit/README.md | 8 ++-- .../typing-in-progress/README.md | 4 +- .../typing-in-progress/audit.md | 6 +-- subjects/stock-exchange-sim/README.md | 4 +- subjects/stock-exchange-sim/audit/README.md | 22 +++++----- 30 files changed, 204 insertions(+), 177 deletions(-) diff --git a/subjects/forum/README.md b/subjects/forum/README.md index b5bdc114..cc022186 100644 --- a/subjects/forum/README.md +++ b/subjects/forum/README.md @@ -13,7 +13,7 @@ This project consists in creating a web forum that allows : In order to store the data in your forum (like users, posts, comments, etc.) you will use the database library SQLite. -SQLite is a popular choice as embedded database software for local/client storage in application software such as web browsers. It enables you to create a database as well as controlling it by using queries. +SQLite is a popular choice as an embedded database software for local/client storage in application software such as web browsers. It enables you to create a database as well as controlling it by using queries. To structure your database and to achieve better performance we highly advise you to take a look at the [entity relationship diagram](https://www.smartdraw.com/entity-relationship-diagram/) and build one based on your own database. @@ -67,7 +67,22 @@ Note that the last two are only available for registered users and must refer to #### Docker -For the forum project you must use Docker. You can see all about docker basics on the [ascii-art-web-dockerize](https://public.01-edu.org/subjects/ascii-art-web/dockerize/) subject. +For the forum project you must use Docker. You can see all about docker basics on the [ascii-art-web-dockerize](../ascii-art-web/dockerize/README.md) subject. + +### Instructions + +- You must use **SQLite**. +- You must handle website errors, HTTP status. +- You must handle all sort of technical errors. +- The code must respect the [**good practices**](../good-practices/README.md). +- It is recommended that the code should present a **test file**. + +### Allowed packages + +- All [standard Go](https://golang.org/pkg/) packages are allowed. +- [sqlite3](https://github.com/mattn/go-sqlite3) +- [bcrypt](https://pkg.go.dev/golang.org/x/crypto/bcrypt) +- [UUID](https://github.com/satori/go.uuid) This project will help you learn about: @@ -82,18 +97,3 @@ This project will help you learn about: - SQL language - Manipulation of databases - The basics of encryption - -### Instructions - -- You must use **SQLite**. -- You must handle website errors, HTTP status. -- You must handle all sort of technical errors. -- The code must respect the [**good practices**](https://public.01-edu.org/subjects/good-practices/). -- It is recommended that the code should present a **test file**. - -### Allowed packages - -- All [standard go](https://golang.org/pkg/) packages are allowed. -- github.com/mattn/go-sqlite3 -- golang.org/x/crypto/bcrypt -- github.com/satori/go.uuid diff --git a/subjects/forum/advanced-features/README.md b/subjects/forum/advanced-features/README.md index 75ded1de..4f0d85ad 100644 --- a/subjects/forum/advanced-features/README.md +++ b/subjects/forum/advanced-features/README.md @@ -2,7 +2,7 @@ ### Objectives -You must follow the same [principles](https://public.01-edu.org/subjects/forum/) as the first subject. +You must follow the same [principles](../README.md) as the first subject. In `forum advanced features`, you will have to implement the following features : @@ -21,14 +21,10 @@ In `forum advanced features`, you will have to implement the following features We encourage you to add any other additional features that you find relevant. -This project will help you learn about : - -- Data manipulation and storage - ### Instructions - The backend must be written in **Go** -- The code must respect the [good practices](https://public.01-edu.org/subjects/good-practices/) +- The code must respect the [good practices](../../good-practices/README.md) - It is recommended that the code should present a **test file** ### Allowed packages @@ -36,4 +32,4 @@ This project will help you learn about : - All [standard go](https://golang.org/pkg/) packages are allowed. - github.com/mattn/go-sqlite3 - golang.org/x/crypto/bcrypt -- github.com/satori/go.uuid \ No newline at end of file +- github.com/satori/go.uuid diff --git a/subjects/forum/advanced-features/audit.md b/subjects/forum/advanced-features/audit.md index 0ab896d1..5cf85fbe 100644 --- a/subjects/forum/advanced-features/audit.md +++ b/subjects/forum/advanced-features/audit.md @@ -40,13 +40,13 @@ #### General -##### +Are there any other feature not mentioned in the [subject](https://public.01-edu.org/subjects/forum/advanced-features/)? +##### +Are there any other feature not mentioned in the [subject](README.md)? #### Basic ###### +Does the project runs quickly and effectively (Favoring of recursion, no unnecessary data requests, etc.)? -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? ###### +Is there a test file for this code? diff --git a/subjects/forum/audit/README.md b/subjects/forum/audit/README.md index 5e927ceb..30ebd282 100644 --- a/subjects/forum/audit/README.md +++ b/subjects/forum/audit/README.md @@ -80,21 +80,21 @@ cc8f5dcf760f "./server" 6 seconds ag #### Functional -##### Enter the forum as a non-registered user. +##### Enter the forum as a non-registered user and try to create a post. -###### Are you prohibited to create a post? +###### Are you forbidden to create a post? -##### Enter the forum as a non-registered user. +##### Enter the forum as a non-registered user and try to create a comment. -###### Are you prohibited to create a comment? +###### Are you forbidden to create a comment? ##### Enter the forum as a non-registered user and try to like a comment. -###### Are you prohibited to like a post? +###### Are you forbidden to like a post? ##### Enter the forum as a non-registered user and try to dislike a comment. -###### Are you prohibited to dislike a comment? +###### Are you forbidden to dislike a comment? ##### Enter the forum as a registered user, go to a post and try to create a comment for it. @@ -102,7 +102,7 @@ cc8f5dcf760f "./server" 6 seconds ag ##### Enter the forum as a registered user, go to a post and try to create an empty comment for it. -###### Were you prohibited to create the comment? +###### Were you forbidden to create the empty comment? ##### Enter the forum as a registered user and try to create a post. @@ -110,7 +110,7 @@ cc8f5dcf760f "./server" 6 seconds ag ##### Enter the forum as a registered user and try to create an empty post. -###### Were you prohibited to create the post? +###### Were you forbidden to create the empty post? ##### Try creating a post as a registered user and try to choose several categories for that post. @@ -128,7 +128,7 @@ cc8f5dcf760f "./server" 6 seconds ag ###### Can you like or dislike the comment? -##### Enter the forum as a registered user, try liking and disliking a post and then refresh the page. +##### Enter the forum as a registered user, try liking or disliking a post and then refresh the page. ###### Does the number of likes/dislikes change? @@ -158,9 +158,9 @@ cc8f5dcf760f "./server" 6 seconds ag ###### Are all the pages working? (Absence of 404 page?) -###### Does the project handle [HTTP status 400 - Bad Requests](https://kinsta.com/knowledgebase/400-bad-request/#causes)? +###### Does the project handle [HTTP status 400 - Bad Requests](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400)? -###### Does the project handle [HTTP status 500 - Internal Server Errors](https://www.restapitutorial.com/httpstatuscodes.html)? +###### Does the project handle [HTTP status 500 - Internal Server Errors](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500)? ###### Are only the allowed packages being used? @@ -174,7 +174,7 @@ cc8f5dcf760f "./server" 6 seconds ag ###### +Does the project runs quickly and effectively? (Favoring recursive, no unnecessary data requests, etc) -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? ###### +Is there a test file for this code? diff --git a/subjects/forum/authentication/README.md b/subjects/forum/authentication/README.md index efc04045..a495f895 100644 --- a/subjects/forum/authentication/README.md +++ b/subjects/forum/authentication/README.md @@ -10,20 +10,20 @@ Some examples of authentication means are: - GitHub - Google -This project will help you learn about: - -- Sessions and cookies. -- Protecting routes. - ### Instructions - Your project must have implemented at least the two authentication examples given. - Your project must be written in **Go**. -- The code must respect the [**good practices**](https://public.01-edu.org/subjects/good-practices/). +- The code must respect the [**good practices**](../../good-practices/README.md). ### Allowed packages - All [standard go](https://golang.org/pkg/) packages are allowed. - github.com/mattn/go-sqlite3 - golang.org/x/crypto/bcrypt -- github.com/satori/go.uuid \ No newline at end of file +- github.com/satori/go.uuid + +This project will help you learn about: + +- Sessions and cookies. +- Protecting routes. diff --git a/subjects/forum/authentication/audit.md b/subjects/forum/authentication/audit.md index 6a8cbdb0..4933a715 100644 --- a/subjects/forum/authentication/audit.md +++ b/subjects/forum/authentication/audit.md @@ -36,7 +36,7 @@ ###### +Does the project run quickly and effectively (favoring of recursion, no unnecessary data requests, etc.)? -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? #### Social diff --git a/subjects/forum/image-upload/README.md b/subjects/forum/image-upload/README.md index ed48a403..18e9cd9d 100644 --- a/subjects/forum/image-upload/README.md +++ b/subjects/forum/image-upload/README.md @@ -2,21 +2,16 @@ ### Objectives -You must follow the same [principles](https://public.01-edu.org/subjects/forum/) as the first subject. +You must follow the same [principles](../README.md) as the first subject. In `forum image upload`, registered users have the possibility to create a post containing an image as well as text. - When viewing the post, users and guests should see the image associated to it. -There are various extensions for images like: JPEG, SVG, PNG, GIF, etc. In this project you have to handle at least JPEG, PNG and GIF types. +There are several extensions for images like: JPEG, SVG, PNG, GIF, etc. In this project you have to handle at least JPEG, PNG and GIF types. The max size of the images to load should be 20 mb. If there is an attempt to load an image greater than 20mb, an error message should inform the user that the image is too big. -This project will help you learn about: - -- Image manipulation -- Image types - ### Hints - Be cautious with the size of the images. @@ -25,7 +20,7 @@ This project will help you learn about: - The backend must be written in **Go**. - You must handle website errors. -- The code must respect the [good practices](https://public.01-edu.org/subjects/good-practices/) +- The code must respect the [good practices](../../good-practices/README.md) - It is recommended that the code should present a **test file**. ### Allowed packages @@ -33,4 +28,9 @@ This project will help you learn about: - All [standard go](https://golang.org/pkg/) packages are allowed. - github.com/mattn/go-sqlite3 - golang.org/x/crypto/bcrypt -- github.com/satori/go.uuid \ No newline at end of file +- github.com/satori/go.uuid + +This project will help you learn about: + +- Image manipulation +- Image types \ No newline at end of file diff --git a/subjects/forum/image-upload/audit.md b/subjects/forum/image-upload/audit.md index d5043af4..d1328205 100644 --- a/subjects/forum/image-upload/audit.md +++ b/subjects/forum/image-upload/audit.md @@ -28,7 +28,7 @@ #### Basic -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? ###### +Are the instructions in the website clear? diff --git a/subjects/forum/moderation/README.md b/subjects/forum/moderation/README.md index 36d267ef..e554cbb5 100644 --- a/subjects/forum/moderation/README.md +++ b/subjects/forum/moderation/README.md @@ -2,9 +2,9 @@ ### Objectives -You must follow the same [principles](https://public.01-edu.org/subjects/forum/) as the first subject. +You must follow the same [principles](../README.md) as the first subject. -The `forum-moderation` will be based on a moderation system. It must present a moderator that, depending on the access level of a user or the forum set-up, approves posted messages before they become publicly visible. +The `forum moderation` will be based on a moderation system. It must present a moderator that, depending on the access level of a user or the forum set-up, approves posted messages before they become publicly visible. - The filtering can be done depending on the categories of the post being sorted by irrelevant, obscene, illegal or insulting. @@ -32,18 +32,13 @@ You should implement at least 4 types of users : - Promote or demote a normal user to, or from a moderator user. - Receive reports from moderators. If the admin receives a report from a moderator, he can respond to that report - Delete posts and comments - - Manage the categories, by being able to creating and deleting them. - -This project will help you learn about : - -- Moderation System -- User access levels + - Manage the categories, by being able to create and delete them. ### Instructions - You must handle website errors, HTTPS status. - You must handle all sort of technical errors. -- The code must respect the [**good practices**](https://public.01-edu.org/subjects/good-practices/). +- The code must respect the [**good practices**](../../good-practices/README.md). - It is recommended that the code should present a **test file**. ### Allowed packages @@ -52,3 +47,8 @@ This project will help you learn about : - github.com/mattn/go-sqlite3 - golang.org/x/crypto/bcrypt - github.com/satori/go.uuid + +This project will help you learn about: + +- Moderation System +- User access levels diff --git a/subjects/forum/moderation/audit.md b/subjects/forum/moderation/audit.md index 9af52e1a..e7fa5f3f 100644 --- a/subjects/forum/moderation/audit.md +++ b/subjects/forum/moderation/audit.md @@ -20,13 +20,13 @@ ##### Try accepting a moderator using the admin user. -###### Has the moderator been promoted? +###### Was the user promoted to moderator? -##### Try using the moderator to delete a obscene post +##### Try using the moderator to delete an obscene post. -###### Can you confirm that it is possible? +###### Can you confirm that it is possible to delete the post? -##### Try using the moderator to report a illegal post +##### Try using the moderator to report a illegal post. ###### Did the admin user receive the report? @@ -44,6 +44,12 @@ ###### +Does the project present more then 4 types of users? +#### Basic + +###### +Does the code obey the [good practices](../../good-practices/README.md)? + +###### +Are the instructions in the website clear? + #### Social ###### +Did you learn anything from this project? diff --git a/subjects/forum/security/README.md b/subjects/forum/security/README.md index f61a1f23..5924fd65 100644 --- a/subjects/forum/security/README.md +++ b/subjects/forum/security/README.md @@ -2,11 +2,11 @@ ### Objectives -You must follow the same [principles](https://public.01-edu.org/subjects/forum/forum.en) as the first subject. +You must follow the same [principles](../README.md) as the first subject. For this project you must take into account the security of your forum. -- You should implement a Hypertext Transfer Protocol Secure ([HTTPS](https://www.globalsign.com/en/blog/the-difference-between-http-and-https)) protocol : +- You should implement a Hypertext Transfer Protocol Secure ([HTTPS](https://developer.mozilla.org/pt-BR/docs/Glossary/https)) protocol : - Encrypted connection : for this you will have to generate an SSL certificate, you can think of this like a identity card for your website. You can create your certificates or use "Certificate Authorities"(CA's) @@ -18,18 +18,6 @@ For this project you must take into account the security of your forum. - Clients passwords - Database, for this you will have to create a password for your database. -This project will help you learn about : - -- HTTPS -- [Cipher suites](https://www.iana.org/assignments/tls-parameters/tls-parameters.xml) -- Goroutines -- Channels -- Rate Limiting -- Encryption - - password - - session/cookies - - Universal Unique Identifier (UUID) - ### Hints - You can take a look at the `openssl` manual. @@ -39,13 +27,25 @@ This project will help you learn about : - You must handle website errors, HTTPS status. - You must handle all sort of technical errors. -- The code must respect the [**good practices**](https://public.01-edu.org/subjects/good-practices.en). +- The code must respect the [**good practices**](../../good-practices/README.md). - It is recommended that the code should present a **test file**. ### Allowed packages -- All [standard go](https://golang.org/pkg/) packages are allowed. -- golang.org/x/crypto/bcrypt -- github.com/satori/go.uuid -- github.com/mattn/go-sqlite3 -- golang.org/x/crypto/acme/autocert +- All [standard Go](https://golang.org/pkg/) packages are allowed. +- [sqlite3](https://github.com/mattn/go-sqlite3) +- [bcrypt](https://pkg.go.dev/golang.org/x/crypto/bcrypt) +- [UUID](https://github.com/satori/go.uuid) +- [autocert](https://pkg.go.dev/golang.org/x/crypto/acme/autocert) + +This project will help you learn about : + +- HTTPS +- [Cipher suites](https://en.wikipedia.org/wiki/Cipher_suite) +- Goroutines +- Channels +- Rate Limiting +- Encryption + - password + - session/cookies + - Universal Unique Identifier (UUID) diff --git a/subjects/forum/security/audit.md b/subjects/forum/security/audit.md index 0ce6524f..22aa769f 100644 --- a/subjects/forum/security/audit.md +++ b/subjects/forum/security/audit.md @@ -4,7 +4,7 @@ ###### Does the URL contain HTTPS? -###### Is the project implementing [cipher suites](https://www.iana.org/assignments/tls-parameters/tls-parameters.xml)? +###### Is the project implementing [cipher suites](https://en.wikipedia.org/wiki/Cipher_suite)? ###### Is the Go TLS structure well configured? @@ -24,7 +24,7 @@ ###### Does the session cookie present a UUID(Universal Unique Identifier)? -###### Does the project present a way to configure the certificates information, either via .env or config files or another method? +###### Does the project present a way to configure the certificates information, either via .env, config files or another method? ###### Are only the allowed packages being used? @@ -40,7 +40,7 @@ ###### +Does the project runs quickly and effectively? (no unnecessary data requests, etc) -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? ###### +Is there a test file for this code? diff --git a/subjects/graphql/README.md b/subjects/graphql/README.md index 76b7a470..8dd16733 100644 --- a/subjects/graphql/README.md +++ b/subjects/graphql/README.md @@ -21,7 +21,7 @@ Beside those sections it will have a mandatory section for the generation of sta You will have to create a profile UI where you can see your own school information. This information/data is present on the graphQL endpoint, where you will have to query it. -For the UI it will be up to you to design it. But have in mind the principles of a [good UI](https://public.01-edu.org/subjects/good-practices/).\ +For the UI it will be up to you to design it. But have in mind the principles of a [good UI](../good-practices/README.md).\ The UI will have a statistic section where you can generate graphs to see more about your journey and achievements on the school. This graphs must be done using [SVG](https://developer.mozilla.org/en-US/docs/Web/SVG). You will have to do at least **two different statistic graphs** for the data given. Using SVG you can create several [types of graphs](https://www.tutorialspoint.com/svg/graph.htm) including interactive graphs and animated graph. It will be up to you to decide what type of graphs you are going to do. @@ -114,8 +114,8 @@ Lets take for instance the table `user` and try to query it: } ``` -This simple query will return an array with the `id`s of the users. Imagine if you wanted the `login`,\ -you could just add this attribute to the query, example: +This simple query will return an array with the ids of the users. Imagine if you wanted the `login`, +you could just add this attribute to the query like so: ```js { @@ -145,7 +145,7 @@ Here is another example of a query using the table `user`: } ``` -**Note** that for this query is required the introduction of variables (arguments)\ +**Note** that for this query is required the introduction of variables (arguments), so it will return just one user, the user that has the `id` equal to `6`. You can see the result using `curl`: diff --git a/subjects/graphql/audit/README.md b/subjects/graphql/audit/README.md index 5edfb581..683726ca 100644 --- a/subjects/graphql/audit/README.md +++ b/subjects/graphql/audit/README.md @@ -30,6 +30,12 @@ ###### +Did the student generated their own GraphiQL? -###### +Does the UI respect the [good practicies](https://public.01-edu.org/subjects/good-practices/)? +###### +Does the UI respect the [good practices](../../good-practices/README.md)? ###### +Do you think in general this project is well done? + +#### Social + +###### +Did you learn anything from this project? + +###### +Would you recommend/nominate this program as an example for the rest of the school? diff --git a/subjects/make-your-game/README.md b/subjects/make-your-game/README.md index b6a31a7b..1c8d4c68 100644 --- a/subjects/make-your-game/README.md +++ b/subjects/make-your-game/README.md @@ -17,8 +17,7 @@ Here are some of the features you want to implement on your game: - Run the game at least at **60fps** at all time - You must not have frame drops! - Proper use of **RequestAnimationFrame** -- It is very hard to predict performances in JS. So measure performances, - to know if your code is fast. This will be tested +- It is very hard to predict performances in JS. So measure performances to see if your code is fast. This will be tested! - Pause menu, that includes: - Continue - Restart @@ -31,7 +30,7 @@ You must not use frameworks or canvas, the game must be implemented using just p ### Instructions -Animation must have consistent motion, so in order to have a smooth animation (without interruptions or better named: jank animation) you must achieve a special number, [**60fps**](https://blog.algolia.com/performant-web-animations/). You can see more about performance [here](https://public.01-edu.org/subjects/good-practices/) +Animation must have consistent motion, so in order to have a smooth animation (without interruptions or better named: jank animation) you must achieve a special number, [**60fps**](https://blog.algolia.com/performant-web-animations/). You can see more about performance [here](../good-practices/README.md) In order to play the game you must use only the keyboard. The usage of keyboard must be smooth, in other words you must not spam the key to move the player. But instead you must, for example maintain the key pressed and the player must continue to do the proper action. If the key is released the player should stop doing the action. diff --git a/subjects/make-your-game/audit/README.md b/subjects/make-your-game/audit/README.md index 1aad9fff..c405cf82 100644 --- a/subjects/make-your-game/audit/README.md +++ b/subjects/make-your-game/audit/README.md @@ -14,59 +14,59 @@ ###### Is the game chosen from the pre-approved list? -##### Try pausing the game while it is running +##### Try pausing the game while it is running. ###### Does the game display the pause menu, with the options: continue and restart? -##### Try pausing the game while it is running and choose the continue option +##### Try pausing the game while it is running and choose the continue option. ###### Does the game continue? -##### Try pausing the game while it is running and choose the restart option +##### Try pausing the game while it is running and choose the restart option. ###### Does the game restart? -##### Use the Dev Tool/Performance to record and try pausing the game while it is running +##### Use the Dev Tool/Performance to record and try pausing the game while it is running. ###### Does the game present any frame drops? -##### Try moving the player/element using the proper commands and keys to do so +##### Try moving the player/element using the proper commands and keys to do so. ###### Does the player obey the commands? -##### Try moving the player/element using the proper commands and keys to do so +##### Try moving the player/element using the proper commands and keys to do so. ###### Does the player move without spamming the key to do so? -##### Try playing the game +##### Try playing the game. ###### Does the game work like it should (as one of the games from the pre-approved list)? -##### Try playing the game +##### Try playing the game. ###### Does the countdown/timer clock seem to be working? -##### Try playing the game and score some points +##### Try playing the game and score some points. ###### Does the score seems to work like it should, by increasing at a certain action done by the player? -##### Try playing the game and try losing a life +##### Try playing the game and try losing a life. ###### Does the player lives seem to work like it should, by decreasing the numbers of lives of the player? -##### Try using the Dev Tool/Performance +##### Try using the Dev Tool/Performance. ###### Does it not present frame drop? -##### Try using the Dev Tool/Performance +##### Try using the Dev Tool/Performance. ###### Does the game run at or around 60fps? -##### Try using the Dev Tool/performance and the option rendering with the paint ON, if possible +##### Try using the Dev Tool/performance and the option rendering with the paint ON, if possible. ###### Is the paint being used as less as possible? -##### Try using the Dev Tool/performance and the option rendering with the layer ON, if possible +##### Try using the Dev Tool/performance and the option rendering with the layer ON, if possible. ###### Is the layers being used as less as possible? @@ -76,7 +76,7 @@ ###### +Does the project runs quickly and effectively? (Favoring recursive, no unnecessary data requests, etc) -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/README.md)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? ###### +Does the program reuses memory to avoid jank? diff --git a/subjects/make-your-game/different-maps/README.md b/subjects/make-your-game/different-maps/README.md index 5fd7ba48..33f4c6e3 100644 --- a/subjects/make-your-game/different-maps/README.md +++ b/subjects/make-your-game/different-maps/README.md @@ -2,7 +2,7 @@ ### Objectives -You must follow the same [principles](https://public.01-edu.org/subjects/make-your-game/README.md) as the first subject. +You must follow the same [principles](../README.md) as the first subject. For this project you must create: @@ -49,7 +49,7 @@ This will generate a map object that contains: - `tiles` that is an array with the grid logic - `getTile` function to get the tale position -**Note that this is an example! you can add properties that better suit your game** +**Note that this is an example! You can add properties that better suit your game** This project will help you learn about: diff --git a/subjects/make-your-game/different-maps/audit.md b/subjects/make-your-game/different-maps/audit.md index 2937390c..dcf50c7f 100644 --- a/subjects/make-your-game/different-maps/audit.md +++ b/subjects/make-your-game/different-maps/audit.md @@ -10,13 +10,13 @@ ###### Does the game generate different tile maps, not making use of tile editors? -##### Try playing the game in 3 different maps +##### Try playing the game in 3 different maps. ###### Were you able to play the game with no inconvenience? ###### Does the game avoid the use of `canvas`? -##### Check the tile map in the code and the map on the game +##### Check the tile map in the code and the map on the game. ###### Does the tile map in the code matches with the displayed map? @@ -30,11 +30,11 @@ ###### Does the game run at or around 60fps -##### Try using the Dev Tool/performance and the option rendering with the paint ON, if possible +##### Try using the Dev Tool/performance and the option rendering with the paint ON, if possible. ###### Is the paint being used as less as possible? -##### Try using the Dev Tool/performance and the option rendering with the layer ON, if possible +##### Try using the Dev Tool/performance and the option rendering with the layer ON, if possible. ###### Is the layers being used as less as possible? @@ -44,7 +44,7 @@ ###### +Does the project runs quickly and effectively? (Favoring recursive, no unnecessary data requests, etc) -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/README.md)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? ###### +Is the code using synchronicity to increase performance? diff --git a/subjects/make-your-game/history/README.md b/subjects/make-your-game/history/README.md index 84985166..a19aa32c 100644 --- a/subjects/make-your-game/history/README.md +++ b/subjects/make-your-game/history/README.md @@ -2,7 +2,7 @@ ### Objectives -You must follow the same [principles](https://public.01-edu.org/subjects/make-your-game/README.md) as the first subject. +You must follow the same [principles](../README.md) as the first subject. For this project you must take into account the creation of a **story mode**, a version of a computer game in which the player controls a character in a story. diff --git a/subjects/make-your-game/history/audit.md b/subjects/make-your-game/history/audit.md index ea5375b4..4831689e 100644 --- a/subjects/make-your-game/history/audit.md +++ b/subjects/make-your-game/history/audit.md @@ -4,27 +4,27 @@ ###### Is an introduction of the story provided in the beginning of the game? -##### Try playing the game and reach the specific score to appear the development part of the story +##### Try playing the game and reach the specific score to appear the development part of the story. ###### Does the development part of the story appear when you reach the specific score? -##### Try finishing the game (either win or lose) +##### Try finishing the game (either win or lose). ###### Is a conclusion of the story provided when the game ends? -##### Try using the Dev Tool/Performance +##### Try using the Dev Tool/Performance. ###### Does it not present frame drop? -##### Try using the Dev Tool/Performance +##### Try using the Dev Tool/Performance. -###### Does the game run at or around 60fps +###### Does the game run at/or around 60fps? -##### Try using the Dev Tool/performance and the option rendering with the paint ON, if possible +##### Try using the Dev Tool/performance and the option rendering with the paint ON, if possible. ###### Is the paint being used as less as possible? -##### Try using the Dev Tool/performance and the option rendering with the layer ON, if possible +##### Try using the Dev Tool/performance and the option rendering with the layer ON, if possible. ###### Is the layers being used as less as possible? @@ -38,7 +38,7 @@ ###### +Does the project runs quickly and effectively? (Favoring recursive, no unnecessary data requests, etc) -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/README.md)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? ###### +Is the code using synchronicity to increase performance? diff --git a/subjects/make-your-game/score-handling/README.md b/subjects/make-your-game/score-handling/README.md index d2f7076a..4bfaba35 100644 --- a/subjects/make-your-game/score-handling/README.md +++ b/subjects/make-your-game/score-handling/README.md @@ -2,7 +2,7 @@ ### Objectives -You must follow the same [principles](https://public.01-edu.org/subjects/make-your-game/README.md) as the first subject. +You must follow the same [principles](../README.md) as the first subject. For this project you must take into account: @@ -63,7 +63,7 @@ Here is an example: ### Allowed Packages -- Only the [standard go](https://golang.org/pkg/) packages are allowed +- Only the [standard Go](https://golang.org/pkg/) packages are allowed - [Gorilla](https://pkg.go.dev/github.com/gorilla/websocket) websocket This project will help you learn about: diff --git a/subjects/make-your-game/score-handling/audit.md b/subjects/make-your-game/score-handling/audit.md index 9c5d4442..8a525257 100644 --- a/subjects/make-your-game/score-handling/audit.md +++ b/subjects/make-your-game/score-handling/audit.md @@ -1,20 +1,20 @@ #### Functional -###### Has the requirement for the allowed packages been respected? +###### Has the requirement for the allowed packages been respected? (Reminder for this project: only [standard packages](https://golang.org/pkg/)) -##### Play and finish the game +##### Play and finish the game. ###### Does it asks for a name? -##### Play and finish the game +##### Play and finish the game. ###### Does the scoreboard appear? -##### Try making a GET request to the GO server API +##### Try making a GET request to the GO server API. ###### Does the request present the right information? -##### Try making a POST request to the GO server API, then make a GET request to see if the information posted is correct +##### Try making a POST request to the GO server API, then make a GET request to see if the information posted is correct. ###### Is the information correct? @@ -24,27 +24,27 @@ ###### Does the scoreboard have pagination? -##### Try to see the next page +##### Try to see the next page. ###### Does it display the next page of scores correctly? -##### Play and finish the game, then search for your name +##### Play and finish the game, then search for your name. ###### Does the scoreboard present your name and all the right information? -##### Try using the Dev Tool/Performance +##### Try using the Dev Tool/Performance. ###### Does it not present frame drop? ##### Try using the Dev Tool/Performance -###### Does the game run at or around 60fps +###### Does the game run at/or around 60fps? #### Bonus ###### +Does the project runs quickly and effectively? (Favoring recursive, no unnecessary data requests, etc) -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/README.md)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? ###### +Is the code using synchronicity to increase performance? diff --git a/subjects/mini-framework/audit/README.md b/subjects/mini-framework/audit/README.md index 41d76b12..960cdc1b 100644 --- a/subjects/mini-framework/audit/README.md +++ b/subjects/mini-framework/audit/README.md @@ -18,31 +18,35 @@ ###### Does it correctly correspond to those in the examples? -###### Can you add a todo element to the todo list? +###### Can you add a to-do element to the to-do list? -###### When you add a todo element to the list, does the footer (element with class footer) appear as in other examples? +###### When you add a to-do element to the list, does the footer (element with class footer) appear as in other examples? -###### Can you check/uncheck a todo element on the list? +###### Can you check/uncheck a to-do element on the list? -###### Can you remove a todo element off the list? +###### Can you remove a to-do element off the list? -##### Add at least 2 todos and select only one of them. +##### Add at least 2 to-dos and select only one of them. -###### If you click on the **Active** button, does it appear only the unchecked todos? +###### If you click on the **Active** button, does it appear only the unchecked to-dos? -###### And if you click on the **Completed** button, does it appear only the checked todos? +###### And if you click on the **Completed** button, does it appear only the checked to-dos? -###### Does it appear a **Clear Completed** button todos? +###### Does it appear a **Clear Completed** button to-dos? -###### When clicking on the clear completed button, does it remove only the checked todos? +###### When clicking on the clear completed button, does it remove only the checked to-dos? ###### When clicking on the **Active** and **Completed** buttons, does the URL change? -##### Add 3 todos to the list and check each one, keeping an eye on the counter of todos left to do. +##### Add 3 to-dos to the list and check each one, keeping an eye on the counter of to-dos left to do. ###### Does the counter change accordingly to your actions? -###### If you double click a todo element on the list can you edit that element? +###### If you double click a to-do element on the list can you edit that element? + +#### Basic + +###### +Does the code obey the [good practices](../../good-practices/README.md)? #### Bonus @@ -57,3 +61,9 @@ ###### +Is the code using synchronicity to increase performance? ###### +Do you think in general this project is well done? + +#### Social + +###### +Did you learn anything from this project? + +###### +Would you recommend/nominate this program as an example for the rest of the school? diff --git a/subjects/netfix/audit/README.md b/subjects/netfix/audit/README.md index 36a7f186..33d7d48e 100644 --- a/subjects/netfix/audit/README.md +++ b/subjects/netfix/audit/README.md @@ -62,6 +62,10 @@ ###### Is the list of most requested services updated with this new service? +#### Basic + +###### +Does the code obey the [good practices](../../good-practices/README.md)? + ### Bonus ###### +Is a system implemented where Customers can rate the services they have requested? @@ -71,3 +75,9 @@ ###### +Are there any other bonuses implemented? ###### +Did the student implement its own display and design? + +#### Social + +###### +Did you learn anything from this project? + +###### +Would you recommend/nominate this program as an example for the rest of the school? diff --git a/subjects/real-time-forum/README.md b/subjects/real-time-forum/README.md index cc41a51e..bfec9baf 100644 --- a/subjects/real-time-forum/README.md +++ b/subjects/real-time-forum/README.md @@ -13,7 +13,7 @@ On this project you will have to focus on a few points: As you already did the first forum you can use part of the code, but not all of it. Your new forum will have five different parts: -- **SQLite**, in which you will store data, just like in the [previous forum](https://public.01-edu.org/subjects/forum/#communication) +- **SQLite**, in which you will store data, just like in the [previous forum](../forum/README.md#Communication) - **Golang**, in which you will handle data and Websockets (Backend) - **Javascript**, in which you will handle all the Frontend events and clients Websockets - **HTML**, in which you will organize the elements of the page diff --git a/subjects/real-time-forum/audit/README.md b/subjects/real-time-forum/audit/README.md index fbee1eb7..fa0b9f1f 100644 --- a/subjects/real-time-forum/audit/README.md +++ b/subjects/real-time-forum/audit/README.md @@ -1,10 +1,10 @@ #### Functional -###### Has the requirement for the allowed packages been respected? +###### Has the requirement for the allowed packages been respected? (Reminder for this project: only [standard packages](https://golang.org/pkg/)) ###### Do you need to register/login in the forum to use it? -##### Try registering as a new user +##### Try registering as a new user. ###### Does the site asks for a nickname, age, gender, first and last name, email and password? @@ -76,12 +76,12 @@ ###### +Does the project runs quickly and effectively? (Favoring recursive, no unnecessary data requests, etc) -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/README.md)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? ###### +Does the users have profiles? ###### +Can the users send images through the private messages? -###### +Is the code using synchronicity (Promises and goroutines/channels) to increase performance? +###### +Is the code using synchronicity (Promises and Go routines/channels) to increase performance? ###### +Do you think in general this project is well done? diff --git a/subjects/real-time-forum/typing-in-progress/README.md b/subjects/real-time-forum/typing-in-progress/README.md index 4a7807e0..62b211af 100644 --- a/subjects/real-time-forum/typing-in-progress/README.md +++ b/subjects/real-time-forum/typing-in-progress/README.md @@ -2,11 +2,11 @@ ### Objectives -You must follow the same [principles](https://public.01-edu.org/subjects/real-time-forum/README.md) as the first subject. +You must follow the same [principles](../README.md) as the first subject. For this project you must create: -- A [Typing in progress](https://i.insider.com/56996788dd0895a06c8b460c?width=1100&format=jpeg&auto=webp) engine +- A [Typing in progress](https://i.insider.com/56996788dd0895a06c8b460c?width=1100&format=jpeg&auto=webp) engine. ### Instructions diff --git a/subjects/real-time-forum/typing-in-progress/audit.md b/subjects/real-time-forum/typing-in-progress/audit.md index 2c048466..405133f0 100644 --- a/subjects/real-time-forum/typing-in-progress/audit.md +++ b/subjects/real-time-forum/typing-in-progress/audit.md @@ -1,6 +1,6 @@ #### Functional -###### Has the requirement for the allowed packages been respected? +###### Has the requirement for the allowed packages been respected? (Reminder for this project: only [standard packages](https://golang.org/pkg/)) ##### Open two browsers (ex: Chrome and Firefox or private windows) and log in with different users in each one. With one user start typing. @@ -30,8 +30,8 @@ ###### +Does the project runs quickly and effectively? (Favoring recursive, no unnecessary data requests, etc) -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/README.md)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? -###### +Is the code using synchronicity (Promises and goroutines/channels) to increase performance? +###### +Is the code using synchronicity (Promises and Go routines/channels) to increase performance? ###### +Do you think in general this project is well done? diff --git a/subjects/stock-exchange-sim/README.md b/subjects/stock-exchange-sim/README.md index 4db99396..66986ffc 100644 --- a/subjects/stock-exchange-sim/README.md +++ b/subjects/stock-exchange-sim/README.md @@ -205,7 +205,7 @@ $ --- -Running the stock exchange program with error, you can see the correct file [here](https://public.01-edu.org/subjects/stock-exchange-sim/examples/simple/simple) +Running the stock exchange program with error, you can see the correct file [here](examples/simple/simple) ```console $ cat examples/simple @@ -219,7 +219,7 @@ Error while parsing `:(euro:8):(material:1):10` $ ``` -Running the checker program with error, you can see the correct file [here](https://public.01-edu.org/subjects/stock-exchange-sim/examples/simple/simple.log) +Running the checker program with error, you can see the correct file [here](examples/simple/simple.log) ```console $ cat examples/simple.log diff --git a/subjects/stock-exchange-sim/audit/README.md b/subjects/stock-exchange-sim/audit/README.md index fd3278ab..6b129b60 100644 --- a/subjects/stock-exchange-sim/audit/README.md +++ b/subjects/stock-exchange-sim/audit/README.md @@ -24,7 +24,7 @@ ###### Can that log file be used by the checker program? -##### Try to run the stock exchange program with the [simple](https://public.01-edu.org/subjects/stock-exchange-sim/examples/simple/simple) example, `"./stock examples/simple/simple 1"`. +##### Try to run the stock exchange program with the [simple](../examples/simple/simple) example, `"./stock examples/simple/simple 1"`. ```console $ go run . examples/simple/simple 1 @@ -43,7 +43,7 @@ $ ###### Does the display presents a result similar to the one above (optimizing time;client_content)? -##### Try to run the stock exchange program with the [build](https://public.01-edu.org/subjects/stock-exchange-sim/examples/build/build) example, `"./stock examples/build/build 10"`. +##### Try to run the stock exchange program with the [build](../examples/build/build) example, `"./stock examples/build/build 10"`. ```console $ go run . examples/build/build 10 @@ -67,7 +67,7 @@ $ ###### Does the display presents a result similar to the one above (optimizing time;cabinet)? -##### Try to run the stock exchange program with the [seller](https://public.01-edu.org/subjects/stock-exchange-sim/examples/seller/seller) example, `"./stock examples/seller/seller 10"`. +##### Try to run the stock exchange program with the [seller](../examples/seller/seller) example, `"./stock examples/seller/seller 10"`. ```console $ go run . examples/seller/seller 10 @@ -100,7 +100,7 @@ $ ###### Does the display presents a result similar to the one above (optimizing euro)? -##### Try to run the stock exchange program with the [fertilizer](https://public.01-edu.org/subjects/stock-exchange-sim/examples/fertilizer/fertilizer) example, `"./stock examples/fertilizer/fertilizer 1"`.(fertilizer example is self-powered and rotates indefinitely) +##### Try to run the stock exchange program with the [fertilizer](../examples/fertilizer/fertilizer) example, `"./stock examples/fertilizer/fertilizer 1"`.(fertilizer example is self-powered and rotates indefinitely) ```console $ go run . examples/fertilizer/fertilizer 1 @@ -130,7 +130,7 @@ $ ###### Does the display presents a result with a significantly shorter number of cycles comparing to the previous question output? -##### Try to run the stock exchange program with the [error1](https://public.01-edu.org/subjects/stock-exchange-sim/examples/errors/error1) example, `"./stock examples/errors/error1 1"`. +##### Try to run the stock exchange program with the [error1](../examples/errors/error1) example, `"./stock examples/errors/error1 1"`. ```console $ go run . examples/errors/error1 1 @@ -141,7 +141,7 @@ $ ###### Does the display presents a result similar to the one above, where it shows the error? -##### Try to run the stock exchange program with the [error2](https://public.01-edu.org/subjects/stock-exchange-sim/examples/errors/error2) example, `"./stock examples/errors/error2 1"`. +##### Try to run the stock exchange program with the [error2](../examples/errors/error2) example, `"./stock examples/errors/error2 1"`. ```console $ go run . examples/errors/error2 1 @@ -152,7 +152,7 @@ $ ###### Does the display presents a result similar to the one above, where it shows the error? -##### Try to run the stock exchange program with the [error3](https://public.01-edu.org/subjects/stock-exchange-sim/examples/errors/error3) example, `"./stock examples/errors/error3 1"`. +##### Try to run the stock exchange program with the [error3](../examples/errors/error3) example, `"./stock examples/errors/error3 1"`. ```console $ go run . examples/errors/error3 1 @@ -163,7 +163,7 @@ $ ###### Does the display presents a result similar to the one above, where it shows the error? -##### Try to run the checker program with the [build](https://public.01-edu.org/subjects/stock-exchange-sim/examples/build/build) and the [build.log](https://public.01-edu.org/subjects/stock-exchange-sim/examples/build/build.log) example, `"./checker examples/build/build examples/build/build.log"`. +##### Try to run the checker program with the [build](../examples/build/build) and the [build.log](../examples/build/build.log) example, `"./checker examples/build/build examples/build/build.log"`. ```console $ go run ./checker examples/build/build examples/build/build.log @@ -180,7 +180,7 @@ $ ###### Does the display presents a result similar to the one above, where it shows the last cycle and the proof that the sequence is correct? -##### Try to run the checker program with the [seller](https://public.01-edu.org/subjects/stock-exchange-sim/examples/seller/seller) and the [seller.log](https://public.01-edu.org/subjects/stock-exchange-sim/examples/seller/seller.log)example, `"./checker examples/seller/seller examples/seller/seller.log"`. +##### Try to run the checker program with the [seller](../examples/seller/seller) and the [seller.log](../examples/seller/seller.log)example, `"./checker examples/seller/seller examples/seller/seller.log"`. ```console $ go run ./checker examples/seller/seller examples/seller/seller.log @@ -206,7 +206,7 @@ $ ###### Does the display presents a result similar to the one above, where it shows the last cycle and the proof that the sequence is correct? -##### Try to run the checker program with the [testchecker](https://public.01-edu.org/subjects/stock-exchange-sim/examples/checkererror/testchecker) and [testchecker.log](https://public.01-edu.org/subjects/stock-exchange-sim/examples/checkererror/testchecker.log) example, `"./checker examples/checkererror/testchecker examples/checkererror/testchecker.log"`. +##### Try to run the checker program with the [testchecker](../examples/checkererror/testchecker) and [testchecker.log](../examples/checkererror/testchecker.log) example, `"./checker examples/checkererror/testchecker examples/checkererror/testchecker.log"`. ```console $ go run ./checker examples/checkererror/testchecker examples/checkererror/testchecker.log @@ -228,6 +228,6 @@ $ ###### +Does the project runs quickly and effectively? (Favoring recursive, no unnecessary data requests, etc) -###### +Does the code obey the [good practices](https://public.01-edu.org/subjects/good-practices/README.md)? +###### +Does the code obey the [good practices](../../good-practices/README.md)? ###### +Create your own file and run the stock exchange program with it. Does the program work like it should?