*** shmohamud has quit (Remote host closed the connection) | 00:55 | |
*** shmohamud has quit (Ping timeout: 480 seconds) | 01:10 | |
*** thehedgeh0g has quit (Remote host closed the connection) | 04:02 | |
*** shmohamud has quit (Ping timeout: 480 seconds) | 07:26 | |
mulbahk | agenda! | 12:21 |
---|---|---|
*** scooper has quit (Ping timeout: 480 seconds) | 12:29 | |
shmohamud | Good day guys. I'm sorry to say I'm again not feeling well today | 13:00 |
ubuntourist | shmohamud, you have my sympathy. | 13:01 |
shmohamud | Thank you. I'm going to leave the chat for the day an get some rest | 13:01 |
mulbahk | I'm so sorry shmohamud | 13:01 |
mulbahk | I pray that you get well soon | 13:02 |
*** shmohamud has quit (Remote host closed the connection) | 13:02 | |
mulbahk | How are you doing Mr. Cole | 13:02 |
ubuntourist | So... I'm guessing we're still expecting tboimah? | 13:02 |
ubuntourist | mulbahk, I'm doing well. I've been feeling a bit fat and flabby but got out for some exercixe yesterday. | 13:03 |
mulbahk | Good to hear | 13:04 |
ubuntourist | mulbahk, Becoming older and feeling the effects of it more often, but good today. | 13:04 |
ubuntourist | I now have an account on the Liberian server | 13:05 |
ubuntourist | I see someone has installed mumble-server on it. | 13:05 |
mulbahk | so are we going to use it or tmate | 13:05 |
ubuntourist | mulbahk, originally, a few weeks ago, I was thinking "both" but now I'm re-thinking that. | 13:07 |
ubuntourist | mulbahk, the problem with audio communications over the 'net is that everyone needs a microphone and headphones. | 13:07 |
scooper | OK Sahnun | 13:08 |
scooper | speedy recovery for my end | 13:08 |
ubuntourist | mulbahk, Using the built-in computer speakers and microphone results in echo...echo... echo... echo 😉 | 13:08 |
mulbahk | should I type it in my terminal | 13:09 |
ubuntourist | mulbahk, because my voice comes out of the speakers (instead of headphones) and the computer microphone picks up the speech from the speakers, so it sends that back to me.... A feedback loop. | 13:09 |
*** shmohamud has quit (Ping timeout: 480 seconds) | 13:10 | |
mulbahk | oh I see that was the problem the other day | 13:11 |
ubuntourist | mulbahk, So without headphones, it's probably not worth pursuing mumble. If there are ever good headsets with mic and headphones we can change back. But there would probably need to be a set for every participant. | 13:11 |
ubuntourist | tboimah, Hi | 13:11 |
tboimah | Good morning ubuntourist | 13:12 |
ubuntourist | tboimah, We've just been discussing why mumble won't be great without headphones. | 13:12 |
ubuntourist | tboimah, (you can talk with mulbahk or check the IRC log later.) | 13:12 |
tboimah | i just login to let you know that i have some problem to handle home so i will not be with you guys today but i promise to follow the conversation later | 13:13 |
tboimah | ACTION login out | 13:13 |
*** tboimah has quit (None) | 13:13 | |
ubuntourist | mulbahk, I see tboimah listed as an administrator on the MCSS server, but you are not listed as an administrator. (You have a username, but not admin privileges.) | 13:14 |
ubuntourist | mulbahk, Are you supposed to have permissions / privileges? If so, contact jelkner, scooper, arabach, tmickelson, or tboimah and ask them to fix that. (It may be too soon for that. I'm not familiar enough with the way things are run.) | 13:17 |
mulbahk | okay | 13:17 |
ubuntourist | mulbahk, Let me start by asking if you have questions for me? | 13:17 |
mulbahk | did you receive the book that email you | 13:18 |
ubuntourist | mulbahk, Yes, thanks. I have only skimmed it, but the publisher is one of the better publishers. So, I expect it to be good book. | 13:18 |
ubuntourist | mulbahk, I haven't looked at it much yet. | 13:19 |
mulbahk | so what is the goal for today | 13:19 |
mulbahk | are we going over the book | 13:20 |
ubuntourist | Hold a moment while I open it in another window. (It will take me a minute to find it. I didn't move it to a good location when I downloaded.) | 13:20 |
mulbahk | okay | 13:21 |
ubuntourist | OK. I've got it up on my screen and am taking a quick look at the Detailed Table of Contents | 13:23 |
ubuntourist | mulbahk, Have you been reading through it? How far into the book are you? | 13:24 |
mulbahk | to chapter 7 | 13:24 |
ubuntourist | mulbahk, OK, let me scroll down to that... | 13:25 |
ubuntourist | mulbahk, I should re-read part of that myself. (the "arithmethic expansion" and "brace expansion" parts.) | 13:27 |
mulbahk | but I think if you explain the chapter briefly will be good | 13:27 |
ubuntourist | I haven't read the chapter, but, looking at the table of contents, I can already explain some of it. | 13:28 |
mulbahk | okay than let start | 13:29 |
ubuntourist | By now, you should undderstand that when you open a terminal, it automatically starts a program that is referred to as the "shell". | 13:29 |
mulbahk | yeah | 13:30 |
mulbahk | I understand it | 13:30 |
ubuntourist | Just as you have several choices for which editor (vim, emacs, nano, gedit and more) or which web browser (firefox, chromium, brave, and others), you also have | 13:31 |
ubuntourist | different choises for shells. However, almost everyone uses Bash as the shell program of choice, and that's what we'll be using. | 13:31 |
ubuntourist | That's what we ARE using. 😉 | 13:32 |
ubuntourist | Bash has a "history" that it maintains. | 13:32 |
ubuntourist | It remembers the last [many] commands you've typed. One part of the expansion it talks about is being able to use abbreviations to recall previous parts of the history. | 13:33 |
mulbahk | yeah and to check it you just use the history command | 13:34 |
ubuntourist | Another set of expansions are shortcuts for frequently-typed strings. A third type of expansion are for variables. Let's go to tmate for some examples... | 13:35 |
ubuntourist | ACTION waits for an invitation... | 13:35 |
mulbahk | okay | 13:35 |
mulbahk | ssh zHnvQynNZb2PLRBHfGvpbK2PF@lon1.tmate.io | 13:36 |
ubuntourist | So. First, variables. | 13:38 |
ubuntourist | mulbahk, Have you written computer programs in any language? | 13:38 |
mulbahk | no | 13:39 |
ubuntourist | mulbahk, Have you studied any algebra, or used variables in other mathematics classes? | 13:39 |
mulbahk | yeah | 13:40 |
ubuntourist | OK. (I am never sure who knows what. So, I want to be sure I'm not skipping things.) | 13:40 |
ubuntourist | In the terminal, type: | 13:41 |
ubuntourist | set | most | 13:41 |
ubuntourist | What you are seeing is a list of "environment variables" and their values. | 13:42 |
ubuntourist | About 2/3 down the screen, you should see several that begin "HIST..." | 13:42 |
mulbahk | what is environment variables | 13:43 |
ubuntourist | mulbahk, That's what I'm starting to explain. | 13:43 |
mulbahk | okay | 13:43 |
ubuntourist | When you login to your computer, the Bash shell sets up your personal "environment". | 13:44 |
ubuntourist | The "environment" includes your personal preferences for the way commands work, the name of your "home" directory, | 13:45 |
ubuntourist | information about your command history, the size of your terminal window (number of characters or columns, and number of lines or rows), | 13:45 |
ubuntourist | and many other things. | 13:45 |
ubuntourist | A LOT of that information is stored in a "variable". Each variable has a name, and a value or a group of values. And, | 13:46 |
ubuntourist | because "variable" means "able to vary" the values can change. Some of them change when you issue various | 13:47 |
ubuntourist | commands. Some change when you explicitly set them to new values yourself. | 13:47 |
ubuntourist | Understand so far, mulbahk? | 13:47 |
mulbahk | yeah | 13:48 |
ubuntourist | On the screen right now, we can see some that tell me things about your system | 13:48 |
ubuntourist | HOME=/home/mulbah07 | 13:49 |
ubuntourist | HOST=ASPIRE | 13:49 |
ubuntourist | When a new user is added to a computer system, normally, the system creates a directory for that user, and uses the username. | 13:50 |
ubuntourist | It creates that directory inside of a directory named "/home/" and it sets up an environment variable "HOME". | 13:51 |
ubuntourist | HOME is almost always automatically set to "/home/username" where the "username" part is the username for the person logged in. | 13:52 |
ubuntourist | Type Q to quit. | 13:52 |
ubuntourist | ls | 13:52 |
ubuntourist | cd practicss | 13:53 |
ubuntourist | Oops. Spell it right. | 13:53 |
ubuntourist | cd $HOME | 13:53 |
ubuntourist | Do you understand what happened? | 13:54 |
ubuntourist | Take a guess. | 13:54 |
mulbahk | i think because the home dir is place in the environment $HOME | 13:56 |
mulbahk | am I correct | 13:57 |
ubuntourist | Yes. Basically correct: The value "/home/mulbah07" is stored in a variable named HOME. | 13:57 |
mulbahk | Thanks | 13:58 |
ubuntourist | But, there's a tiny bit more to thie story. Try typing the command again, but without the "$" | 13:58 |
mulbahk | It say -bash: cd: HOME: No such file or directory | 13:59 |
ubuntourist | So, can you tell me what you think? | 13:59 |
mulbahk | okay | 14:00 |
mulbahk | I think the $ sing is bash and when it is not place there it will not work | 14:02 |
ubuntourist | Let's create a temporary directory. (We'll create it, and then later, we'll remove it.) | 14:03 |
ubuntourist | mkdir HOME | 14:03 |
ubuntourist | Now what would happen if you typed "cd HOME"? | 14:04 |
mulbahk | it will cd into the directory HOME | 14:04 |
ubuntourist | Yes. | 14:04 |
ubuntourist | Let's get rid of it again, because it will just be confusing later: "rmdir HOME" | 14:05 |
ubuntourist | The "$" is an "expansion. | 14:05 |
mulbahk | what do we mean by expansion | 14:06 |
ubuntourist | It means "The text that follows is not 'normal'. It is a variable. Use the value that it is set to, not the actual text" | 14:07 |
mulbahk | Oh okay | 14:07 |
ubuntourist | "Expand" HOME - change it to the value of the variable HOME and use that instead. | 14:07 |
ubuntourist | So "cd HOME" looks for a directory named HOME. "cd $HOME" looks for a directory that is whatever the value of the HOME variable is. | 14:08 |
ubuntourist | And, you can "mess it up". We're going to temporarily break it: | 14:09 |
ubuntourist | Type | 14:09 |
ubuntourist | export HOME=/var/log | 14:09 |
ubuntourist | (Well, since you are already in your home directory, the cd $HOME didn't change anything. Try this first: | 14:11 |
ubuntourist | cd /etc | 14:11 |
ubuntourist | then "cd $HOME".) | 14:11 |
ubuntourist | Put an "ls" in between so you can see the difference. | 14:12 |
ubuntourist | cd /etc | 14:12 |
ubuntourist | ls | 14:12 |
ubuntourist | cd $HOME | 14:12 |
ubuntourist | ls | 14:12 |
mulbahk | I did it | 14:13 |
ubuntourist | $HOME always "brings you home" 😉 | 14:13 |
ubuntourist | But, now we're going to temporarily confuse it and lie about where home is: | 14:13 |
ubuntourist | Type | 14:14 |
ubuntourist | export HOME=/var/log | 14:14 |
ubuntourist | cd $HOME | 14:16 |
ubuntourist | ls | 14:16 |
ubuntourist | ACTION awaits the results of those three commands... | 14:16 |
mulbahk | done | 14:18 |
ubuntourist | "export" is one way to change the value of an environment variable. Can you fix what we broke? Try it. | 14:19 |
ubuntourist | Bravo! | 14:21 |
mulbahk | I did | 14:21 |
mulbahk | Thanks | 14:21 |
ubuntourist | Tha t list we started with "set | most" showed LOTS of environment variables. | 14:22 |
ubuntourist | These environment variables can be substituted into LOTS of different commands. | 14:22 |
ubuntourist | And, you can use environment variables as parts of other values. For example: | 14:23 |
ubuntourist | ls $HOME/practics | 14:23 |
ubuntourist | (Try it) | 14:24 |
mulbahk | okay | 14:25 |
ubuntourist | No, that's not what I meant. Change it back. but then type the "ls" command I suggested above. | 14:26 |
mulbahk | I did | 14:28 |
ubuntourist | So, it "expanded" $HOME to its full value "/home/mulbah07" and then tacked "/practics" on the end to give "/home/mulbah07/practics" | 14:29 |
ubuntourist | Because $HOME is one of the more useful and common values that a user might need, it gets its own very special abbreviation: The tilde ("~") character. | 14:29 |
mulbahk | yeah | 14:29 |
ubuntourist | This is what the book means by "tilde expansion" | 14:29 |
mulbahk | i have try the ~ before | 14:30 |
mulbahk | for example | 14:30 |
ubuntourist | Yeah, everyone learns "~" very early. It is SUPER-useful !!! | 14:30 |
ubuntourist | cd ~ | 14:31 |
ubuntourist | was what you were looking for. | 14:31 |
mulbahk | yeah | 14:32 |
ubuntourist | ~ = $HOME = /home/mulbah07 | 14:32 |
mulbahk | should i type it into the terminal | 14:32 |
ubuntourist | No. That was to explain to you that the three are equal to each other. | 14:33 |
mulbahk | yeah | 14:35 |
ubuntourist | When you type "~word" (tilde followed by a word, without spaces) the Bash shell tries to expand that by looking for the home directory of a DIFFERENT user: The user whose username follows the tilde. | 14:35 |
ubuntourist | Can you show me what I mean by that, using the information in your terminal window now? | 14:36 |
ubuntourist | (use the "ls" followed by the tilde and ... something else without spaces. The info is on your screen right now.) | 14:37 |
ubuntourist | ACTION will need to leave in 20 minutes. | 14:40 |
mulbahk | okay | 14:40 |
mulbahk | They are saying No such file or directory | 14:41 |
ubuntourist | Bingo! Correct again! | 14:41 |
mulbahk | yeah | 14:42 |
mulbahk | I was typing different thing | 14:42 |
mulbahk | so I think the tilde is use for username | 14:43 |
ubuntourist | So, tilde ("~") isn't EXACTLY like $HOME. It's MOSTLY like $HOME. It's a bit more complicated and powerful, but almost all of the time that you will be using it, it will mean the same thing as $HOME -- your home directory. | 14:43 |
ubuntourist | The ~ is more than just the username, because it puts the "/home/" before the username. | 14:44 |
ubuntourist | Without any text followin it, the tilde means "the username of the user who is logged in right now". That is the "default" value. | 14:45 |
mulbahk | okay | 14:46 |
ubuntourist | "default" will come up a lot: It means "the value or behavior of a variable or command, when no additional information is provided or set". | 14:46 |
ubuntourist | That may not be clear now, but it will be clearer as you work more. | 14:47 |
ubuntourist | A default value or a default behavior is what a user typically expects and assumes. It is the most common use. | 14:48 |
ubuntourist | For example, the "default" language spoken in the US is English. That is changing, as the demographics change, and may not be true in the near future. | 14:49 |
ubuntourist | But, for now, the assuption and expectation -- unless there is information to indicate something different -- is that the person you are speaking with PROBABLY knows at least some English. | 14:50 |
ubuntourist | (It's not always right, but it's the first example I could think of.) | 14:50 |
mulbahk | okay | 14:51 |
ubuntourist | So, with Linux the default value for ~ is $HOME -- your home directory. | 14:51 |
mulbahk | it mean /home/username | 14:53 |
ubuntourist | The "set | most" list shows lots of environment variables and their values. Eventually, we may change some of those from their default values, in the same way we did with "export HOME". | 14:53 |
ubuntourist | mulbahk, yes, | 14:53 |
*** scooper has quit (Ping timeout: 480 seconds) | 14:54 | |
ubuntourist | (and adding a different username after it changes the default behavior or value or meaning) | 14:54 |
mulbahk | wow | 14:55 |
ubuntourist | mulbahk, I think that is going to be a good introduction to some of what is in Chapter 7. As I said earlier, I need to review "arithmetic expansion" and "brace expansion". | 14:57 |
ubuntourist | mulbahk, I think I have a good understanding of what the book means, but I want to be sure before I try to explain that. | 14:57 |
mulbahk | Okay | 14:57 |
mulbahk | but I understand chapter 7 good now | 14:58 |
mulbahk | using the set command | 14:58 |
ubuntourist | mulbahk, by learning how to permanently alter the values of environment variables, you can customize your user account, or eventually, your entire system so that all users are affected by the changes. | 14:59 |
mulbahk | okay | 14:59 |
ubuntourist | mulbahk, (The "set" and "export" commands share some of the same capabilities. More about that later.) | 15:01 |
mulbahk | Alright | 15:01 |
ubuntourist | mulbahk, OH one very important thing to share with tboimah and others: NEXT FRIDAY I WILL NOT BE AVAILABLE! | 15:02 |
ubuntourist | mulbahk, I'll see you on Monday, but I may forget to mention that I'm not going to be around next Friday. | 15:02 |
ubuntourist | mulbahk, Time for me to go for today. | 15:03 |
ubuntourist | mulbahk, bye! | 15:03 |
mulbahk | Okay | 15:03 |
mulbahk | thanks | 15:03 |
mulbahk | so much | 15:03 |
mulbahk | for today | 15:03 |
mulbahk | i will practice it | 15:04 |
mulbahk | ACTION singing out | 15:07 |
fkoikoi | !add Discussion on the trial test in August (15min) | 15:07 |
LittleWebster | Success: "Discussion on the trial test in August (15min)" has been added to the agenda. | 15:07 |
fkoikoi | !agenda | 15:07 |
LittleWebster | This is the agenda for the next meeting: | 15:07 |
LittleWebster | Discuss Summer schedule (10 min). (added by jelkner) | 15:07 |
LittleWebster | How to setup Class/homework on github (added by fkoikoi) | 15:07 |
LittleWebster | Discussion on the trial test in August (15min) (added by fkoikoi) | 15:07 |
*** fkoikoi has quit (Quit: Leaving) | 15:11 | |
*** mulbahk has quit (Ping timeout: 480 seconds) | 15:42 | |
*** mulbah has quit (Remote host closed the connection) | 16:07 | |
*** ubuntourist has quit (Remote host closed the connection) | 18:11 | |
*** shmohamud has quit (Remote host closed the connection) | 19:25 | |
mulbah | Hello shmohamud | 22:38 |
mulbah | How are you coming on now | 22:38 |
*** shmohamud has quit (Ping timeout: 480 seconds) | 22:39 | |
*** mulbah has quit (Quit: Leaving) | 23:21 |
Generated by irclog2html.py 2.17.3 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!