Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple Lessons: Update notes #26445

Merged
merged 3 commits into from
Oct 9, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions databases/databases/databases_and_sql.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,9 +72,11 @@ A close cousin of `SELECT`, for if you only want unique values of a column, is `

If you want to get all the posts created by a given user, you need to tell SQL which columns it should use to zip the tables together with the `ON` clause. Perform the "zipping" with the `JOIN` command. But wait, if you mash two tables together where the data doesn't perfectly match up (e.g. there are multiple posts for one user), which rows do you actually keep? There are four different possibilities:

_(__note:__ the "left" table is the original table (the one that the `FROM` clause was `ON`), e.g. "users" in examples below.)_
<div class="lesson-note lesson-note--tip" markdown="1">

*See ["A Visual Explanation of SQL Joins"](http://blog.codinghorror.com/a-visual-explanation-of-sql-joins) by Jeff Atwood for good visuals.*
The "left" table is the original table (the one that the `FROM` clause was `ON`), e.g. "users" in examples below.

</div>

1. `INNER JOIN`, aka `JOIN` -- Your best friend and 95% of what you'll use. <span id='inner-join'>Keeps only the rows from both tables where they match up</span>. If you asked for all the posts for all users (`SELECT * FROM users JOIN posts ON users.id = posts.user_id`), it would return only the users who have actually written posts and only posts which have specified their author in the `user_id` column. If an author has written multiple posts, there will be multiple rows returned (but the columns containing the user data will just be repeated).
2. `LEFT OUTER JOIN` -- keep all the rows from the left table and add on any rows from the right table which match up to the left table's. Set any empty cells this produces to `NULL`. E.g. return all the users whether they have written posts or not. If they do have posts, list those posts as above. If not, set the columns we asked for from the "posts" table to `NULL`.
Expand All @@ -83,6 +85,8 @@ _(__note:__ the "left" table is the original table (the one that the `FROM` clau

Joins naturally let you specify conditions too, like if you only want the posts from a specific user: `SELECT * FROM users JOIN posts ON users.id = posts.user_id WHERE users.id = 42`.

*See ["A Visual Explanation of SQL Joins"](http://blog.codinghorror.com/a-visual-explanation-of-sql-joins) by Jeff Atwood for good visuals.*

Read through [W3 Schools' Joins lesson](http://www.w3schools.com/sql/sql_join.asp) for a better explanation.

#### Using functions to aggregate your data
Expand Down
18 changes: 15 additions & 3 deletions foundations/installations/installations.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,11 @@ In the **Hardware** section of the installation you want to set your **Base Memo

For example, if you have 8 GB (8192 MB respectively) of RAM, you could allocate up to 4096 MB (1024 MB to 1 GB) to your VM’s operating system. If you do not know how much RAM is available to you, [please run this Google query](https://www.google.com/search?q=how+to+find+out+how+much+ram+you+have) to learn how to find this out. If the VM runs a bit slow, try allocating more memory!

_(__note:__ Difficulty converting your **G**iga**B**ytes into **M**ega**B**ytes? 1 GB of RAM is equal to 1024 MB. Therefore, you can say that **8 GB = 8 x 1024 = 8192 MB.**)_
<div class="lesson-note lesson-note--tip" markdown="1">

Difficulty converting your Gigabytes (GB) into Megabytes (MB)? 1 GB of RAM is equal to 1024 MB. Therefore, you can say that <b>8 GB = 8 x 1024 = 8192 MB.</b>

</div>

As for **Processors** you want this to be at 2 and no more. Leave **Enable EFI (special OSes only)** as it is - that is **unchecked** - and click **Next** to continue.

Expand Down Expand Up @@ -300,7 +304,11 @@ wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb

- Enter your password, if needed

_(__note__: You might see a notice starting with `N: Download is performed unsandboxed (...)`. You don't need to worry about it. [Read this reddit post for more information.](https://www.reddit.com/r/linux4noobs/comments/ux6cwx/comment/i9x2twx/))_
<div class="lesson-note lesson-note--tip" markdown="1">

You might see a notice starting with `N: Download is performed unsandboxed (...)`. You don't need to worry about it. [Read this reddit post for more information.](https://www.reddit.com/r/linux4noobs/comments/ux6cwx/comment/i9x2twx/))_

</div>

#### Step 3: Delete the installer file

Expand All @@ -319,7 +327,11 @@ You can start chrome in two ways,
google-chrome
~~~

_(__note__: Chrome is going to use this terminal to output various messages and won't let you run other commands. Don't worry about those messages. If you want to use the same terminal that you run Chrome in for other commands, use `google-chrome &` instead.)_
<div class="lesson-note lesson-note--tip" markdown="1">

Chrome is going to use this terminal to output various messages and won't let you run other commands. Don't worry about those messages. If you want to use the same terminal that you run Chrome in for other commands, use `google-chrome &` instead.)_

</div>

</details>

Expand Down
6 changes: 5 additions & 1 deletion foundations/installations/text_editors.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,11 @@ sudo apt install ./code-latest.deb

- If prompted, enter your password

_(__note__: You might see a notice starting with `N: Download is performed unsandboxed (...)`. You don't need to worry about it. [Read this reddit post for more information.](https://www.reddit.com/r/linux4noobs/comments/ux6cwx/comment/i9x2twx/))_
<div class="lesson-note lesson-note--tip" markdown="1">

You might see a notice starting with `N: Download is performed unsandboxed (...)`. You don't need to worry about it. [Read this reddit post for more information.](https://www.reddit.com/r/linux4noobs/comments/ux6cwx/comment/i9x2twx/))_

</div>

#### Step 3: Delete the installer file

Expand Down