From 299d3aa690c201c5d7c5aceeb564fd3eb87f37f9 Mon Sep 17 00:00:00 2001 From: Your Name Date: Wed, 19 Jul 2023 13:00:38 -0700 Subject: [PATCH 01/17] Changed 'auth' to 'of' in sentence; also, added comma after 'Typically' --- reading/apis.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/apis.livemd b/reading/apis.livemd index 9ec99d1b..9bc8fcbb 100644 --- a/reading/apis.livemd +++ b/reading/apis.livemd @@ -196,7 +196,7 @@ You should see a response similar to the following: ## Authentication -APIs use different forms of authentication to check if a user is authorized to access certain resources. Typically most forms auth authentication use some kind of access token to identify the user accessing the resource. Public APIs will not require any kind of access token, while private APIs will. +APIs use different forms of authentication to check if a user is authorized to access certain resources. Typically most forms of authentication use some kind of access token to identify the user accessing the resource. Public APIs will not require any kind of access token, while private APIs will. From 87cbf0cccd200f22abb2987c0fed8d8337536bf4 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 16:34:54 -0700 Subject: [PATCH 02/17] In habit_tracker, deleted typo, duplicate word ('a') --- exercises/habit_tracker.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exercises/habit_tracker.livemd b/exercises/habit_tracker.livemd index fe1d63cf..62e166a1 100644 --- a/exercises/habit_tracker.livemd +++ b/exercises/habit_tracker.livemd @@ -119,7 +119,7 @@ Enter your answer below. ## Progress Bar -Users define a a `goal` number of points to earn each day. Determine what percentage progress have they made if they would like to earn `40` points and have completed a `small` and a `medium` habit. +Users define a `goal` number of points to earn each day. Determine what percentage progress have they made if they would like to earn `40` points and have completed a `small` and a `medium` habit. Remember that you can calculate percentage with $\frac{points}{goal} * 100$ From 8add6d0c88e0fb17e996dc7eba955bfba1c43734 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 16:37:21 -0700 Subject: [PATCH 03/17] In Mazes, deleted duplicated word ('use') --- exercises/mazes.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exercises/mazes.livemd b/exercises/mazes.livemd index 13cfd8b4..4b8ff0ea 100644 --- a/exercises/mazes.livemd +++ b/exercises/mazes.livemd @@ -95,7 +95,7 @@ maze = %{ ## The String Maze -Use use **map[key]** notation to access the maze and retrieve the `"Exit!"` string. +Use **map[key]** notation to access the maze and retrieve the `"Exit!"` string. From 991249396d1c6baf34d2a037503b52ea2329a3e8 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 16:41:48 -0700 Subject: [PATCH 04/17] In Mazes, Extra Bonus instructions read '...create a update'; changed to 'create and update' --- exercises/mazes.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exercises/mazes.livemd b/exercises/mazes.livemd index 4b8ff0ea..15f8e20f 100644 --- a/exercises/mazes.livemd +++ b/exercises/mazes.livemd @@ -201,7 +201,7 @@ treasure_map = %{ ### (Extra Bonus) Update The Treasure Map -Use map update syntax to create a update the original `treasure_map` such that the `"gold"` is now `"taken"`. +Use map update syntax to create and update the original `treasure_map` such that the `"gold"` is now `"taken"`.
Example solution From 5c186a3321b8c2e9a532f1a0d3ea43d7ec651ef5 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 16:45:51 -0700 Subject: [PATCH 05/17] In Modules reading, removed apostrohpe from 'it's' because meaning does not suggest verb contraction(requires apostrophe); no apostrophe indicates possession. --- reading/modules.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/modules.livemd b/reading/modules.livemd index 7042e1de..ba06529a 100644 --- a/reading/modules.livemd +++ b/reading/modules.livemd @@ -681,7 +681,7 @@ You can use this feedback to debug your exercises. ### Your Turn -Fix the failing `DoctestFailure` module so that it's doctests pass. +Fix the failing `DoctestFailure` module so that its doctests pass. From 45ca09d4a990cad56e79dddac36ed0391cee0bf5 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 16:50:32 -0700 Subject: [PATCH 06/17] Added apostrophe to 'function's' because otherwise 'functions' simply means the plural of 'function', that would be incorrect because the context suggests possession (as in, the arity belongs to the function) --- reading/modules.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/modules.livemd b/reading/modules.livemd index ba06529a..acfa8aa6 100644 --- a/reading/modules.livemd +++ b/reading/modules.livemd @@ -209,7 +209,7 @@ ThoughtfulSpeaker.speak() ## Callback Functions -Similar to anonymous functions, we can pass named functions as callback functions, however we have to explicitly provide the functions arity using the capture operator `&`. +Similar to anonymous functions, we can pass named functions as callback functions, however we have to explicitly provide the function's arity using the capture operator `&`. ```elixir defmodule HigherOrder do From 3962376710f8a22fdedde50062862445e1d6e288 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 16:53:09 -0700 Subject: [PATCH 07/17] Added apostophe to 'values' because context indicates possession; changed to '...determining a value's type' --- reading/built-in_modules.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/built-in_modules.livemd b/reading/built-in_modules.livemd index 3bbf50be..d1ea36d3 100644 --- a/reading/built-in_modules.livemd +++ b/reading/built-in_modules.livemd @@ -124,7 +124,7 @@ tuple = {0, 4, 1, 100, 5, 7} ## Checking Types -[Kernel](https://hexdocs.pm/elixir/Kernel.html) contains many functions for determining a values type such as `is_atom/1`, `is_binary/1`, `is_map/1`, and `is_integer/1`. +[Kernel](https://hexdocs.pm/elixir/Kernel.html) contains many functions for determining a value's type such as `is_atom/1`, `is_binary/1`, `is_map/1`, and `is_integer/1`. ```elixir true = Kernel.is_map(%{}) From b96bd02e9b59f42b3b06a8702519fe23c97253cb Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 16:56:29 -0700 Subject: [PATCH 08/17] In Named Number Lists exercise, deleted apostrophe (to indicate possession rather than contraction) --- exercises/named_number_lists.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exercises/named_number_lists.livemd b/exercises/named_number_lists.livemd index 16908922..3e20c8b9 100644 --- a/exercises/named_number_lists.livemd +++ b/exercises/named_number_lists.livemd @@ -32,7 +32,7 @@ Mix.install([ ## Named Number Lists -Generate a list with ten random integers from `0` to `9`. Convert each integer in this list to it's string representation so `1` would become `"one"`. +Generate a list with ten random integers from `0` to `9`. Convert each integer in this list to its string representation so `1` would become `"one"`. From 781270f8fd798e34c80331254fd4db9ae101f32e Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 16:58:32 -0700 Subject: [PATCH 09/17] Uppercase 'I' in 'If' changed to lowercase because word is mid-sentence --- reading/reduce.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/reduce.livemd b/reading/reduce.livemd index f2019213..29771a06 100644 --- a/reading/reduce.livemd +++ b/reading/reduce.livemd @@ -151,7 +151,7 @@ If there is an existing key, then it can update the map key using the existing v Map.update(updated_map, :key, "default value", fn current -> "updated: #{current}" end) ``` -When converting a string to a map of character counts, If there is no key, the value will be `1`. If there is an existing key in the map, the value will be the current value incremented by `1`. Here are the steps we want to accomplish for our [Enum.reduce/3](https://hexdocs.pm/elixir/Enum.html#reduce/3) function. +When converting a string to a map of character counts, if there is no key, the value will be `1`. If there is an existing key in the map, the value will be the current value incremented by `1`. Here are the steps we want to accomplish for our [Enum.reduce/3](https://hexdocs.pm/elixir/Enum.html#reduce/3) function. ```elixir initial_accumulator = %{} From 6c60722d00ca279f750e8514c3c58a5aa3b17d6b Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 17:01:06 -0700 Subject: [PATCH 10/17] In Reduce, removed apostrophe from 'let's' because context indicates meaning of 'allows/permits' rather than any meaning suggestion possession; contraction not needed in this word --- reading/reduce.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/reduce.livemd b/reading/reduce.livemd index 29771a06..81e57b73 100644 --- a/reading/reduce.livemd +++ b/reading/reduce.livemd @@ -169,7 +169,7 @@ step2 = Map.update(step1, "b", 1, fn current_value -> current_value + 1 end) step3 = Map.update(step2, "a", 1, fn current_value -> current_value + 1 end) ``` -Putting this all together, here's the [Enum.reduce/3](https://hexdocs.pm/elixir/Enum.html#reduce/3) function that let's us convert a string into a map with character counts. Note that we have to split the string into a list of characters first to make it enumerable. +Putting this all together, here's the [Enum.reduce/3](https://hexdocs.pm/elixir/Enum.html#reduce/3) function that lets us convert a string into a map with character counts. Note that we have to split the string into a list of characters first to make it enumerable. ```elixir split_string = String.split("aba", "", trim: true) From f732f9fc5b84113642bbe814597cc82d91d8459c Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 17:03:16 -0700 Subject: [PATCH 11/17] In Regex, added '\' character before 'W' because slash is needed in code --- reading/regex.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/regex.livemd b/reading/regex.livemd index b629302e..c4f5faa1 100644 --- a/reading/regex.livemd +++ b/reading/regex.livemd @@ -101,7 +101,7 @@ Here are a few patterns to get you started. Often capitalizing backslash characters inverts their purpose. `\D` non-digit character. -`W` non-word character. +`\W` non-word character. `\S` non-whitespace character. From 0a2be1508453f0b387aec45bb5fd4d33fe62b5a7 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 17:04:35 -0700 Subject: [PATCH 12/17] Removed apostrophe from 'it's' because context is possession rather than contraction --- reading/strings_and_binaries.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/strings_and_binaries.livemd b/reading/strings_and_binaries.livemd index 8895fe36..60aa1bdd 100644 --- a/reading/strings_and_binaries.livemd +++ b/reading/strings_and_binaries.livemd @@ -159,7 +159,7 @@ bit_size("hello") byte_size("hello") ``` -We can use [IO.inspect/2](https://hexdocs.pm/elixir/IO.html#inspect/2) with the `:as_binaries` option to display a value as it's binary +We can use [IO.inspect/2](https://hexdocs.pm/elixir/IO.html#inspect/2) with the `:as_binaries` option to display a value as its binary representation. Notice these are the code points for each character. From 155bcea97d9d3a82400092a34d0450208c0dcd76 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 17:06:49 -0700 Subject: [PATCH 13/17] Changed 'in 2 element a list' to 'in a 2 element list' for readability/word order --- reading/advanced_pattern_matching.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/advanced_pattern_matching.livemd b/reading/advanced_pattern_matching.livemd index 6922cf93..eaac33c9 100644 --- a/reading/advanced_pattern_matching.livemd +++ b/reading/advanced_pattern_matching.livemd @@ -149,7 +149,7 @@ We can use the match operator anytime we have a value bound to a parameter or va -Create a `case` statement that will return the first element in a 2 element tuple, or the first element in 2 element a list. +Create a `case` statement that will return the first element in a 2 element tuple, or the first element in a 2 element list. ```elixir From 18df2fbe3860fdc2bd10e4c9ddde2b3e17a2e070 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 17:09:37 -0700 Subject: [PATCH 14/17] In API reading, changed phrase 'cURL requests examples' to 'cURL request examples' (in this case, request is acting as an adjective modifying 'examples' and does not need to be plural --- reading/apis.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/apis.livemd b/reading/apis.livemd index 9bc8fcbb..412bdb8f 100644 --- a/reading/apis.livemd +++ b/reading/apis.livemd @@ -147,7 +147,7 @@ You can make a simple cURL request by typing the following in your command line. curl https://www.example.com ``` -It's important to understand cURL because most APIs include documentation using cURL requests examples and we can use these simple curl requests to test an API or know how to send a request in our chosen Elixir API Client. +It's important to understand cURL because most APIs include documentation using cURL request examples and we can use these simple curl requests to test an API or know how to send a request in our chosen Elixir API Client. Here, we use the [System](https://hexdocs.pm/elixir/System.html) module to simulate running a curl request from your command line and print the response for the sake of example. Notice it returns the HTML document of https://www.example.com. From e3c15f66d01ade9522ebc4648a26e0c64112b25b Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 17:12:57 -0700 Subject: [PATCH 15/17] In Group Project: Blog, changed 'Project' to 'Protect' (discussing protecting github main branch) --- exercises/group_project_blog.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exercises/group_project_blog.livemd b/exercises/group_project_blog.livemd index bd0d6b96..9d86363e 100644 --- a/exercises/group_project_blog.livemd +++ b/exercises/group_project_blog.livemd @@ -136,7 +136,7 @@ You may update your README as the project expands ## Protect Main -[Project your main branch](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule) so that no one can push directly to main without a PR review. +[Protect your main branch](https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/managing-a-branch-protection-rule) so that no one can push directly to main without a PR review. This is a common safety mechanism used on most projects to ensure no one can accidentally write to the main branch without review by another member of the project. From 8c9659d814ec721e26b706543e469b101125eed8 Mon Sep 17 00:00:00 2001 From: Your Name Date: Mon, 24 Jul 2023 17:15:44 -0700 Subject: [PATCH 16/17] In Phoenix Drills, changed spelling from 'Pheonix' to 'Phoenix' --- exercises/phoenix_drills.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/exercises/phoenix_drills.livemd b/exercises/phoenix_drills.livemd index 65bc0f4c..66c3449c 100644 --- a/exercises/phoenix_drills.livemd +++ b/exercises/phoenix_drills.livemd @@ -54,7 +54,7 @@ $ mix phx.new random_number --no-ecto ## Phoenix Navigation -Create a Pheonix application with three pages: +Create a Phoenix application with three pages: * Home * About From 8cd6b75941f5b41cff5a39d85558e4976dd0a055 Mon Sep 17 00:00:00 2001 From: Brooklin Myers Date: Tue, 1 Aug 2023 10:05:26 -0700 Subject: [PATCH 17/17] Update reading/apis.livemd Co-authored-by: phaleth <29838606+phaleth@users.noreply.github.com> --- reading/apis.livemd | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reading/apis.livemd b/reading/apis.livemd index 412bdb8f..f73b5df1 100644 --- a/reading/apis.livemd +++ b/reading/apis.livemd @@ -147,7 +147,7 @@ You can make a simple cURL request by typing the following in your command line. curl https://www.example.com ``` -It's important to understand cURL because most APIs include documentation using cURL request examples and we can use these simple curl requests to test an API or know how to send a request in our chosen Elixir API Client. +It's important to understand cURL because most APIs include documentation using examples of cURL requests. We can use these simple cURL requests to test an API or know how to send a request using our chosen Elixir API Client. Here, we use the [System](https://hexdocs.pm/elixir/System.html) module to simulate running a curl request from your command line and print the response for the sake of example. Notice it returns the HTML document of https://www.example.com.