Assignment

profileJohn199
Safari-Aug12019at811PM.pdf

CMPSC 201, Section 621: … Assignments General Discussion Forum…!

Submission Details Grade: / 100

General Discussion Forum (Participation; 10 posts + 10 replies; article/video summaries (5 posts; 5 to 10 sentences), questions, comments, etc) Ahmed Al Jashmi submitted Aug 1 at 12:08pm

General Discussion Forum (Participation; 10

posts + 10 replies; article/video summaries (5

posts; 5 to 10 sentences), questions, comments,

etc)

1 2 3

"

This is a graded discussion: 100 points

possible

due Aug 1

General Discussion Forum (Participation; 10 posts + 10 replies;

article/video summaries (5 posts; 5 to 10 sentences), questions,

comments, etc) 134 300

Search entries or author

# Reply

Minimum of 10 posts and 10 replies (total = 20) are required by end of semester.

At least 5 posts (of the 10) must be 5 to 10 sentence summaries of articles or

videos related to computer science or computer technology (Example topics:

robotics, AI, machine learning, driver-less cars, Arduino/Raspberry Pi projects,

programming tutorials, etc). Include link to article or video using hyperlink tool.

Do not post entire HW solutions (working or not working) on this forum -- email

HW questions directly to instructor and attach program. You may ask general

questions about HW and other technical issues from lectures on this forum as

well. Most students post greater than 20 posts and replies over the semester. Do

not post any quiz or exam questions, answers or comments.

Note: At least 5 posts must be summaries of article or youtube videos. The other

5 posts may also be summaries of articles or youtube videos -- or -- they might be

discussions of other programs you have written (beyond HW), or detailed

explanations or discussion of course-related topics. Typically most students

summarize 10 articles or youtube videos. Each summary must be 10 - 15

sentences. Replies to other posts can be 3 to 5 sentences.

To post a message to this forum, hit the "Reply" button under the search box.

Include a meaningful title in the first line of the posts.

Unread $ % & Subscribed

Sheikha Almaamari

Jun 25, 2019

Edited by Sheikha Almaamari on Jun 25 at 2:11am

# Reply

"

Tesla autopilot

I am very interested in Elon Musk’s projects especially Tesla, so I will start

my posts with this one and I will explain what I know from my readings

about the autopilot that comes with Tesla cars. The new models of Tesla cars

come with autopilot so that the user can choose to insert it in their car and

almost everyone with Tesla get the autopilot because it is very interesting

technology. First, most people think that Tesla autopilot makes the car self-

driving, but Tesla does not like using the word “self-driving” because it is not

precise because the driver’s assistance is required. The autopilot controls

the breaks and the accelerator to keep the car safe on the street. Tesla has

about 8 cameras and 12 Ultra sensors that works on keeping the car on the

lane between the white lines by using the car in front of Tesla and behind

Tesla to guide the autopilot. The autopilot can also change lanes when it is

safe to do so and can find itself a parking spot and park. In addition, you can

also drive Tesla out of your garage to the edge of your driveway using Tesla

smartphone app! This autopilot is very interesting and fun especially for

those who like to have an electric car and a fancy high performance one at

the same time.

If you want to read more about the Tesla autopilot, please visit this Lin k

Nora Hamidaddin

Jul 7, 2019

# Reply

"

Shaikha,

Thank you for sharing this! I found the smartphone app to be very

interesting and unreal to some extent. It's amazing the level of

technology we have reached.

I did not understand the distinction between "self-driving" and "auto-

pilot". Does it not drive itself? It can navigate and park - isn't this

considered driving?

Nora H.

Sheikha Almaamari

Jul 8, 2019

# Reply

"

Thanks for your reply, Nora. I think self driving car is something that Tesla wants to achieve soon,currently Tesla autopilot needs its drivers to be aware of whats is going on and to what the car is doing, so the car does drive itself but the driver is also there. It's kind of similar to the aircraft autopilot, you can turn it on any time but the pilot has to be there and aware of what the aircraft is doing.

I hope this helps!

Hamad Almarzooqi

Jul 14, 2019

# Reply

"

Shaikha,

It is unreal how advanced this technology is!

Tesla has been very careful in explaining how the auto-pilot works and

how it is not "driverless", nevertheless, people will keep interpreting

things the way they want to. In my personal opinion, I believe that the

person driving the car should be in full control no matter what

technologies we come to reach in the future (unless every car in the

street is fully automated).

What do you think?

Hamad

Sheikha Almaamari

Jul 14, 2019

# Reply

"

Thank you for your comment Hamed.

I agree with you because even if the car became fully autonomous it

still at the end a machine that does not understand everything that a

human driver could experience on the road.

Sheikha

Clifford Stueck

Jul 21, 2019

# Reply

"

I see what you are both saying here, but at the same time what

happens if we are able to develop artificial intelligence to the point

where we can make a self driving car think and act like a human? I

know that you will probably argue that it is still a machine and

machines make mistakes, but with artificial intelligence the machine

would be able to learn from its mistakes and possibly make better

choices the next time a similar scenario comes around.

I think a big issue with driverless cars is more the fact that there will

be scenarios where the car must choose who is to die. Whether that

be between pedestrian and pedestrian or pedestrian and passenger,

the choice will have to be made. This would be a very very rare

occurrence, but who is to decide who should die and who should live?

Sheikha Almaamari

Jul 22, 2019

# Reply

"

you have a good point Clifford! artificial intelligence in these cars

can improve by learning from it mistakes which makes it able to

tackle what a driver can do and even more efficiently. However, I

still think that the person has to monitor what the car is doing and

be able to make the right choices and not to let the car do all

choices. Mistakes in making decisions could arise from technical

problems for example if the car system is not functioning correctly

and needs maintenance, and since self driving cars cannot fix

themselves in the meantime, the driver has to watch what the car

is doing. However, we never know what the future of self driving

cars be, so thank you for your point.

Jenna Cooper

Jun 26, 2019

# Reply

"

Xcode for Mac

Hi everyone,

I wanted to share this video about using Xcode on a Mac with you. I have a

Mac and wanted to download a C++ compiler instead of rely on an online

compiler. I chose to download Xcode since it has worked well for students in

the past.

Initially, I was having trouble trying to figure out what steps to take to open a

cpp file in Xcode. I ended up coming across this video that walks you through

how to set up Xcode on a Mac. I hope that some of you will find this useful!

How to Create First C++ Hello World Project using Xcode Mac OS X

Abdullah Albriakan

Jul 8, 2019

# Reply

"

Thanks Jenna for sharing this video with us,

although my PC is Microsoft surface, I will be purchasing a mac book next

week and was hesitant about it

due to the C++ launch, and was thinking of completing the rest of the

course with online compiler (which made me think twice since it is not

recommended for use of the entire course).

I found that very helpful, thanks for sharing :).

David Reimold

Jul 15, 2019

# Reply

"

Thank you for showing us this video. I have a mac so I was planning on

using xcode however; I also have Bootcamp which allows me to load

windows on my mac. In order to more easily take part in the class, I

have been using dev c but this video was very informative

Thanks again Jenna

Nora Hamidaddin

Jul 7, 2019

# Reply

"

Interesting pointers in Lectures 1-5

This is my first post of the semester, and I thought I can start it off by listing

some of the confusing points that need proper attention, some of which I

referred to the professor for guidance. For ease of reading, I will list them as

bullet points.

1. #include <iostream>:

This is a must in all programs (along with using namespace std;). These

statements ensure the necessary/relevant libraries are accessed so that we

can run our code.

2.Decimal Place

Example: pow(9, 1/2) vs pow(9, 1.0/2.0), vs sqrt(9)

They all should accomplish the same purpose, only that the first will yield = 1

(notice decimal place).

3. Parenthesis Effect

Example: double 1/2 vs double (1/2)

The first will output the correct value of 0.5 because the statement is

executed in the following order: double 1 > 1.0 > 1.0/2 > 0.5

The second will not yield the correct output, but instead it will be 0. The

presence of parenthesis will make the statement execute in the following

order: (1/2) > 0 > double 0 > 0.0

4. return 0;

Sometimes the program will execute without it, but it is always a safer option

to include it.

5. Declaring a variable twice - inside and outside loops

If we declare "int i" outside FOR loop, DO NOT DECLARE IT AGAIN INSIDE.

What happens if we do declare it again inside FOR loop?

An example of a wrong method:

int i;

for (int i = 0; i <10; i++)

>>>> output for i is independent of the for loop, and will yield "1" (wrong)

An example for a correct method:

int i;

for (i = 0; i<10; i++)

>>>>> output for i is dependent of the FOR loop, and will yield 10 in this

case

6. Tables and Columns

To set a table, include:

#include <iomanip> //at the top - outside int main ()

cout.setf(ios::fixed); //outside loop but inside int main ()

setw(n) //inside cout statement to specify empty spaces

For example

#include <iomanip>

int main () {

cout.setf(ios::fixed);

FOR LOOP {

cout << "Feet" << setw(10) << "inches" << endl;

cout << "-------" << setw(10) << "--------" << endl;

cout << ft << setw(10) << in << endl;

}

>>>>>> output

Feet inches

------- ----------

ft in

ft in

ft in

That's all I have for now. If I come across interesting and/or confusing points ,

I'll include them in another post

Sheikha Almaamari

Jul 8, 2019

# Reply

"

Thank you for this post Nora! I found it really helpful

Abdullah Albriakan

Jul 8, 2019

# Reply

"

Thank you Nora for sharing, that was helpful and summarized all the key

points,

a quick question, I noticed that my program does not run without the

return 0;

although it says that after compiling that there were no errors,. any

thought?

thanks again for sharing :)

Jenna Cooper

Jul 13, 2019

# Reply

"

Thank you Nora! I found this very helpful to highlight some topics that

have been confusing me as well. The example with the pow(x,y) function

and decimal was useful. I wondered what would happen with integer

divide within a function like that. The tables and columns example is very

insightful to see how to properly set up a table.

Not sure which compiler you are using, but I noticed that Xcode on my

Mac seems to run with or without the "return 0;" statement depending

on the circumstance as well.

Abdulaziz Almasrahi

Jul 14, 2019

# Reply

"

Thank you Nora for sharing this very helpful post. It helped me

understand an error that I did while practicing different codes which is

the 5th points (Declaring a variable twice - inside and outside loops).

Thus yielding incorrect values. Keep up the great work!

David Reimold

Jul 15, 2019

# Reply

"

Thank you very much for this post. For the previous homework

assignments I was very confused about how to set up tables and columns

so this post vastly improved my understanding of the topic. You also

helped me clear up some confusion about declaring a variable twice

because my program was returning the wrong number for me.

Nora Hamidaddin

Jul 7, 2019

# Reply

"

Satellite Programming Languages

I was interested in how the satellites and spacecraft are programmed, and

what programs are used.

One of the main important aspects when developing a satellite is not only to

know how to program, but also to know how to maximize the use of existing

algorithms and how to approach a real-world problem and properly

translate it into codes. It is like what we are currently being introduced to:

logical thinking and how important it is to plan before starting the code. I

found it interesting that such basic skills become essential in advanced levels

of programming – like programing a satellite!

According to NASA, some of the current programming languages include the

following:

Java PathFinder (JPF) – this program is able to detect bugs that may be

missed when testing

Robot Application Programming Interface Delegate (RAPID) – this program

allows remote operations

I also found it interesting that, just as we have learned recently, NASA uses

infinite loops to make a satellite/spacecraft behaves autonomously. But one

can't help but wonder, does NASA only use new programming languages and

has it abandoned old languages? It appears that that is not the case with

NASA. One example is Voyager 1 and 2. They are two spacecraft that were

used since the 1970s, the first two spacecraft to detect the hydrogen wall in

outer space (in case you’re not familiar with space terminology, this is a huge

discovery!). Voyager is run on a very old programming language, based on

assembly language, Fortran, and COBOL. A side-note fun-fact, NASA

declared that currently, communication with Voyager satellites is becoming

very challenging, as they are at a distance of 12 billion miles away, and

perhaps still drifting further. It is interesting and astonishing that 60-year-

old programming language is still properly functioning!

You can read more about this topic using these links : Voyager Satellite,

NASA current program languages, What do I need to learn to program a

satellite, and Satellite Mission Programs

Sheikha Almaamari

Jul 8, 2019

# Reply

"

Nora, this topic is very interesting for me! I always wonder about

satellites and how do they work in a very high altitudes (No internet!).

Also, I don't know that much about the Hydrogen wall but this gave me

something to go and read about, thanks for mentioning that! I have one

question, how could NASA, spaceX or any other space agency receive the

data from the crafts that are in the outer space if there is no internet in

the space! how information get transferred!

Nora Hamidaddin

Jul 8, 2019

# Reply

"

I'm glad you found the topic interesting.

Your question is a good one, and one I don't know how to answer. I'll

do some reading and get back to you :)

Nora Hamidaddin

Jul 12, 2019

# Reply

"

Sheikha,

I found this video that helped me understand how communication

with spacecraft takes place.

Click here

Essa is a space company, and they use a dish to navigate and operate

the spacecraft as well as receive data from the spacecraft. The dish is

normally extremely large. It has a 35 meters wide antenna and weighs

about 130 tons. It is extremely accurate, that it can point with an

accuracy of 6 milli-degrees in far space! It can rotate such that it

counteracts the rotation of the earth. Go to minute 2:30 of the video;

it shows how the data is received and interpreted. I'm glad you asked

that question, now I also learned something new. Hope this helps!

Sheikha Almaamari

Jul 14, 2019

# Reply

"

This answer my question, thank you Nora!

Mansoora Al Rawahi

Jul 15, 2019

# Reply

"

Hey Nora. Thank you for sharing this information. I found your post

informative and interesting. I personally think that, mostly, big programs

are built with old programming languages, and many of the new ones are

built based on the old. I guess we should rely on the old programming

languages depending on the purpose.

Jenna Cooper

Jul 19, 2019

# Reply

"

Hi Nora,

The Voyager mission is one of my favorite NASA missions since the two

spacecraft were able to photograph the outer planets for the first time,

and now they're crossing into interstellar space! I never considered what

happens to the older software on satellites like these. It's very interesting

that NASA is still able to transmit data from outside the solar system with

an older language like Fortran. I'm excited to learn more about robotics

applications in this course, since this may give us more insight into how

the same techniques can be used to program complex systems like a

satellite.

Anthony Su

Jul 8, 2019

# Reply

"

PSA about benefits of multiple monitors in this course

Programmers are often known to use dual monitors, so this gave my the idea

to try using a second monitor. For me, using a second monitor has been

especially convenient and helpful in this course, even if the second monitor

is an old junky one I pulled out of the basement (as evidenced by the legacy

4:3 aspect ratio on the left screen). Without a second monitor, it would be

very difficult for me to take notes; either I would have to take notes

physically on paper, or pause the video and switch windows to take notes

digitally. Obviously, pausing the video to take notes is not ideal. However,

taking programming notes by hand is very difficult, especially when denoting

the subtleties of syntax that require precise handwriting lest future me

interprets a colon as a semicolon.

That's why I highly recommend anyone with a second or spare monitor of

any kind to hook it up. There is also the added benefit of being able to split

one monitor into half notes and half code editor, enabling live testing of

lecture examples and labs.

Of course, this specific layout is not the only way to use dual monitors in this

course; the possibilities are endless. You could replace the code editor with a

copy of the lecture PowerPoint, or make the notes full-screen on a

touchscreen laptop to take notes with a stylus.

Nora Hamidaddin

Jul 12, 2019

# Reply

"

Anthony, that is a smart move. I would normally split my screen between

the video and word. That isn't always comfortable as it does not give me

enough space and ease of pausing and writing at the same time. Since I do

not have another computer screen, your suggestion gave me another

similar idea. I can connect my computer to the TV screen, and instead of

duplicating the screen, I can use it as another screen! In the first few

weeks, though, I used to take notes on paper, but I soon learned it would

be very hard to access relevant information easily during a quiz. So I

shifted to taking notes on the computer, making sure my notes fit a 3-

page limit only so I can use it for the quiz.

Anyway, thanks for the suggestion!

Cheers,

Nora H.

Mansoora Al Rawahi

Jul 15, 2019

# Reply

"

Antony, that was really a good idea to have a second monitor. I usually

have two laptops when I am at work and that really helps taking notes or

even searching for any information that I do not understand without the

need to close the lecture video. That is really a piece of good advice you

gave.

Robert Avanzato

Jul 8, 2019

"

These are all really good posts and comments so far -- please keep moving

Re-submit Assignment

2195 - 201819S1

Home

Announcements

Assignments

Discussions

Grades

People

Syllabus

Quizzes

Modules

Chat

Collaborations

173

5

8/1/19, 8'11 PM Page 1 of 1