レベルをチェック。私の場合はBeginnerがちょうどいいと思った。certificationがあった方が何かの役に立つかなぁなんだろうと思いながら、とりあえずやってみる。前回のコース(Introduction to Computer Programming)がなかなかやりごたえがあったから、期待をして・・・
Abstraction is key to how we understand computers.
だそうです。
なんと動画の中でクイズが!
この機能は嬉しいな・・・どうやって作るんだろう、
You can really pick out the important features of what’s going on in the mechanism.
In computer science terms,
Vermeer is giving you the full billion numbers, everything that is there.
Humans are very good at understanding images.
So, the picture is fine.
But if we’re talking about a billion numbers on a computer chip instead of an image, it would be way too much for us to understand.
On the other hand, Modigliani with his abstraction is simplifying it down to some key features, so that we can understand what’s going on in the picture without having to deal with those whole billion numbers worth of detail, and that’s what abstraction in computer science tries to do.
A lot of understanding how software works, is understanding which states it has, and what effect they have.
ソフトウェアを理解するときに重要。
So, the cursor has three states, absent, typing, and selection.
マウスのカーソルのstateには3種類?ある。
One of the biggest problems with internet connected applications is that they can get stuck in states, if the internet connection fails.
ネットに繋がっているstateと、繋がっていないstate online,offline.
Amazonで買い物をしている時、ウェブサイトのstateは?と言われたら。
siteが進んでいく、プロセスの一つ一つがstateであるような。
When we first encounter the website, we’re probably just looking for something and we’ll go to the default homepage of that website.
The first thing you probably want to do is search for a particular product that you’re looking for.
That puts the site into a second state, which is the search page that shows a number of results, possible products that you might be looking for.
You next click on one of those to look more carefully.
That’s the third state, looking at a particular product.
If you choose to buy that product, then you might add it to your shopping cart.
The shopping cart is another example of a state.
You go from a state where you haven’t chosen anything to a state where you have something in your shopping cart.
You will be ready to buy the product, but you haven’t bought it yet, it’s just sitting there in your shopping cart.
This is an example of a change of state that’s less about what you see and more about the data the website is holding about us.
stateは星の数よりも多い? Your computer memory can store billions of numbers, and you can think of changing any of those numbers as changing the state of the computer. If you think about it that way, the number of possible states your computer can have is really astronomical. In fact, it’s more than astronomical. It is more than the number of atoms in the universe.
Well, most of the time,
when you start a program,
it goes back to its default state and forgets about the last state it was in.
So what is the notional machine? According to Ben, it is a way of teaching about the computer, as implied by the programming language. Ben says it is “telling the best lie that conveys what the computer does”. It is not necessarily the same as a mental representation. It was an attempt to defuse what was called a “superbug” by Roy Pea.
Partly, the notional machine consists of stories we will about computing (see du Boulay, O’Shea, Monk (1981)). The real machine is pretending to be the notional machine.
The real machineは理解を超えているから、理解できる範囲で、人間が利用することに差し支えがない範囲で適切に説明されるmachineをnotional machineと呼んでいる、と理解しておこう。
But having different types of network is a major obstacle if computers on one network can’t communicate with computers using a different type of network.
That is where the Internet comes in.
bandwidthはnetworkの転送スピード?
One is bandwidth which is the amount of data that can be sent over the network within a given time.
We commonly talk about how fast a network is and that refers to its bandwidth.
High bandwidth networks are obviously better particularly if you’re using a lot of data for example by streaming video.
Wi-Fi networks are often has high bandwidth as many wired networks, but mobile networks can have fairly low bandwidth.
reliabilityはネットワークの安定性
Another factor in the performance of networks is reliability.
How sure can we be that a message sent over the network will get to its destination?
Wired networks are pretty reliable because there’s
a solid wire taking the messages from one computer to another.
But wireless networks, particularly phone networks can
be unreliable due to bad signal strength,
walls and other obstacles getting in the way of
the signal or too many people trying to use them at the same time.
protocolはネットワークで使われる言語?
コンピューター同士がやり取りする言語。
The languages used for network communication are called protocols.
Protocols aren’t like human languages.
To be understood by computers, they have to follow very strict rules.
A protocol defines the rules that say how you communicate, when you send messages and what they contain.
If two computers follow the same protocol, they can understand each other.
If they don’t, the communication will go wrong.
インターネットとルーター(外国ではアメリカ読みのラウター)
異なるネットワーク同士を繋いだものもネットワークと呼ばれる。
インターネットは別々のネットワークを繋いだもの。
インターネットはラウター
The Internet is a network of networks.
It connects together different networks, and allows computers to communicate with other computers across these different networks.
It works because of devices called routers.
This is actually a word that’s pronounced differently in British and US English.
In the UK, we call them routers, but in the US, they’ll call them routers.
I will try to use the US pronunciation because it’s more common internationally.
いくつものラウターを通って、ネットワークを駆け回って、目的地にたどり着く。
ISPとは?ネットワークの要所にあるInternet serviceのprovider
Most of us will connect to a local network in our home, our work, or a public space,
like a library or an Internet cafe.
These networks don’t generally communicate directly with each other, but
connect via big networks called Internet service providers, or ISPs.
These networks can span whole countries,
and are normally an evolution of the old wired telephone networks.
National ISPs are connected to international ISPs,
often called the Internet backbone.
So if I were to send a message from my home in London to a learner in an Internet
cafe in Nairobi, the message would pass from my home network to my UK ISP.
And on to the Internet backbone, passing through many countries, and
under the sea until it connects to a Kenyan ISP,
and eventually with the Internet cafe’s network.
IPとは?数あるprotocolの一つ: Internet Protocol
wifi のprotocolとInternet protocolは別物。
I’ve talked as if you only ever use one protocol at a time, but in fact, Internet communications use a lot of protocols at the same time.
I might use the Wi-Fi protocol to communicate across my home network, but I also use another protocol to communicate across the Internet.
This protocol is called the Internet Protocol, or IP.
The Internet works because all computers and routers understand the same Internet Protocol, and so can communicate even though they may be on different networks and in different countries.
There is a message sent using Internet Protocol, but to be carried across actual network, this message needs to be wrapped up in envelopes, or packets, that use the protocols of each specific network.
In fact, it’s even more complex than that.
The messages that are inside the IP envelope will often have their own protocols,depending on the application they use.
For example, email messages use the sendmail protocol, and web pages use the HTTP protocol.
IPアドレスとは?the Internet
To carry on with the envelope analogy, if you want a letter to arrive at its destination, you need to include an address.
The same goes for the Internet.
Every computer on the Internet has what is called an IP address.
Knowing the IP address of a computer is what allows routers to know how to reach any other computer on the Internet.
同じくアドレスを表すURLは人間にやさしくて、機械にはやさしくない。
なので、DNS(Domain Name System)というサービスを使って、URL形式で書かれたアドレスをIP形式で書かれたアドレスに書き直すのだそうです。
But hang on a sec, you might be thinking, doesn’t an Internet address look more like this?
That is a more user-friendly type of address that we’re used to.
It’s called a URL, or uniform resource locator.
URLs make it easy for humans to remember and type in Internet addresses, but they’re more complex for routers to use.
This middle part of a URL is called the domain name, and
it tells you the name of the server where the website is stored on.
This domain name is converted to an IP address,
using an Internet service called a domain name service, or DNS.
serverとは?
メールサーバーと呼ばれているサーバーはメールアドレスの@の後に書かれているアルファベット。
送り先のドメインを見ると、このメールがどこのサーバーに送られるかわかるらしい。
the Internetをつかって、まず自分のメールサーバーに、相手に送るメールが届いて、そのサーバーから、the Internetを使って、相手の使っているメールサーバーに届いて、そこから、相手の受信ボックスに送られる。
There’s one last thing I have to mention before we finish this lesson on networks.
Up to now, I’ve been talking as if I send messages from my computer to another person’s computer, but it generally doesn’t work that way.
When I send an email, it first goes to an email server.
This is a big computer somewhere on the Internet that handles a lot of people’s emails.
If I’m using my company email, the server might belong to my company, but if I’m using a public email service, like Gmail, the server would belong to Google or whoever runs the service.
Similarly, my email server would send a message to the email server that my receiver of my message uses.
It uses the second part of the email address of the receiver, the part after the @ sign, towork out which server it should send the message to.
When I receive emails on my phone, it first has to contact the email server to download the new email that it’s received for me.
So most of the time, we’re communicating with servers.
The same goes for websites.
I get a person’s web page from a web server, not from an individual’s computer.
packetとは?
I have an actual message I want to send, perhaps an email.
I put that message into an envelope, which implements a protocol.
With physical posts, the protocol is that I need to put on a name, an address, and
a stamp.
With those three things, the postal service will deliver my message.
With Internet Protocol, I do something similar, putting my message into a virtual envelope called a packet, which includes an Internet address and other information.
So my email to Nairobi would include the Internet address of the learner.
What makes a good password for computer is not necessarily always a good password for a human.
Very often, we will end up trying to create a really long password because we know that feels quite secure.
But what we’ll end up doing is putting patterns that we as humans recognize.
security
virusにはスパイウェアとトロイの木馬がある。
A virus is a piece of software that copies itself from one computer to another without your knowledge, and it’s normally and damaging your computer in some way.
This could mean that it slows it down or interferes in other ways with the working of your operating system or it could perform specifically harmful actions like stealing your data or hacking of the machines on your network.
One example of this is spyware which records what you do on a computer
and sends the information to a third party that can include recording what you type on your keyboard as a way of getting your password.
Malicious software can also take the form of a Trojan horse which appears to be legitimate software but performs harmful actions in secret.
ハッカーはサーバーを狙う。
Another is the criminals can try and hack computer systems.
That means getting access to a system that they would not normally have access to so they can steal data.
Hackers normally do this to web servers or other Internet service that can contain lots of data rather than hacking anyone’s individual computer.
フィッシング詐欺。「アカウントを変えてください」みたいな偽物のメールが届くとか。
One way hackers do this is through a phishing attack.
This is where people are fooled into giving away important data like passwords or bank details.
This normally happens to a plausible looking email or website that looks like it’s from your bank or similar sites, but is actually controlled by criminals.
Any message you send, will be passed through many computers that you don’t control or even know about, and any of those computers could read your message and reveal its contents to people you don’t want to know about it.
The answer is encryption.
Encryption means sending messages in code, so that it can only be read by the person who’s supposed to receive them.
That means we send the message in a special language or code that can’t be read unless you know the code.
algorithmとkey
Emperor Augustusが使ったencryption
Modern encryption algorithms are designed so that a message cannot be deciphered,
even if you know all the details of the encryption algorithm as long as you don’t know the key.
That’s great, because it means that encryption software can be publicly available, but we can still communicate safely if we keep our key secret.
In fact, there were some encryption techniques called public key encryption, where different keys are used to encrypt a message and to decrypt it.
That means the encryption key can be public and anyone can use it to create an encrypted message, but only people with decryption key, can read those messages.
So, my bank can give me the public key, and I can encrypt my message to the bank and be sure that only my bank can read the message.
To defend against this kind of attack, you need some way of validating that you’re using the correct key.
This is done through certificates.
Every public key has certificate that demonstrates its validity.
The keys and certificates are issued by a number of trusted security companies.
Your web browser can check whether the certificate of the key has been issued by someone trustworthy.
If it hasn’t, that could be a sign that someone is trying to trick you into using the wrong key.
certificateはよくわからない。
antivirus software, a firewall, and access control
There is as many ways of protecting against security threats as there are types of threat.
Viruses and other malicious software are combated using antivirus software, which includes information about all known viruses and searches your computer for them.
Another good defense for your computer is a firewall, which will stop any suspect looking messages from coming in or out of your computer.
That’s a good way of preventing people who try to directly hack your computer.
One of the most important ways of protecting both personal computers and Web servers is access control, where only certain people can have access to a computer or a server.
アクセスコントロールとは・・・
ログイン画面とか。
All of these access control methods rely on passwords,
which are very important.
Passwords are always encrypted,
so no one can read them,
but some can be easy to guess.
One common hack is to use a computer program
to automatically try millions of common passwords.
For example, all the words in the dictionary.
This is why websites want you to choose unusual passwords and try
to get you to do it by asking you to choose a password with lowercase letters,
uppercase letters, and numbers.
あと、電話番号聞かれたりとか、メアドに暗証番号(パスコード)を送るとか。
Unfortunately, good passwords are hard to remember.
So, people often use ones that are easy to
remember like small variations of common words,
but these are also easy for programs to guess.
That’s why a lot of sites are starting to use two-factor authentication,
which includes a password,
but also requires you to enter a code that the site sends you on your mobile phone.
The Internet describes the underlying network that connects computers together across the world.
The World Wide Web is a way of communicating and sharing information that uses the Internet.
It consists of web pages that are viewed through a web browser like Chrome, Firefox, Safari, or Edge.
Almost anything you would view through a web browser is part of the World Wide Web.
The Internet is a network that connects computers together.
The web consists of pages connected by links.
SkypeはURLを送ったらWWWになる?
The web is the most popular use of the Internet, but there are many other uses of the Internet.
Email is not distributed via the web, although you can access your Email through a webpage, the Emails themselves are sent through a different protocol.
Another popular use of the Internet is video and audio conferencing, which happens via applications like Skype, not via the web.
The World Wide Web is a way of communicating and sharing information that uses the Internet. It consists of web pages that are viewed through a web browser, like Chrome, Firefox, Safari, or Edge. Almost anything you would view through a web browser is part of the World Wide Web.
The Internet is a network that connects computers together.
The web consists of pages connected by links.
A web page is a single document on the web which is loaded into your browser at a given time.
A website is a collection of pages, for example, all the web pages for Goldsmiths.
The web is the most popular use of the Internet, but there were many other uses of the Internet.
Email is not distributed via the web. Although you can access your email through a web page,the emails themselves are sent through different protocol. Another popular use of the Internet is video and audio conferencing, which happens for applications like Skype, not via the web.
websiteをnotionalmachineとして理解する
答え方に自信がない。
他の人はどんな答えを書いていた?
webをnotional machineとして説明すると、networksだという。
We’ve learned a lot of computer science concepts in this course: state,
modularity, networks, and security.
Let’s see how they can be applied to creating a notional machine of a website.
The most obviously applicable of these ideas to the web is networks.
The web works over the Internet.
So, it’s a technology that is fundamentally about communicating over networks.
The web is not so much about individual people communicating with each other, but much more about people getting information from organizations.
HTTPは、プロトコルの名前だった!!!!
WWWは」、HTTPというプロトコルを使ったあらゆるものだと言っても良いらしい。
As we’ve seen before, communication over the Internet happens by sending messages called packets from one computer to another.
These packets buy a protocol that allows them to communicate.
So, how does this work with websites?
Like any communication over the Internet, web applications use the Internet Protocol or IP, but they also use another protocol on top of IP called HTTP,short for Hypertext Transfer Protocol.
In fact, a more technical definition of the World Wide Web is that it’s anything that uses HTTP.
To access a website, your browser sends an HTTP request.
This is a packet that asks for a web page.
HTTPという文書形式(プロトコル)でURLを要求する。
An HTTP request consists mostly of a URL like this one.
The first part is HTTP, which means that it’s using the HTTP protocol.
The next part is the domain name.
You can think of this as the name of the website.
(URLの最後に書き込まれる)queryは、cliantが欲しい情報をserverに伝えるもの
The next part tells us exactly what page of the website you want.
One good example of the use of a query is a web search.
When you perform a search, you enter a particular words, which are your search terms.
These terms become parts of your query and allow the search engine to create a page of results that is specifically designed for your needs.
Cookieとは??
Web servers where websites is stored mostly have no state.
They always respond to the same request in the same way and don’t change based on what you do with them.
How’s that possible?
How can your interaction with websites have so much state if the servers themselves have no state?
Some of the states as we’ve said is based on which page you’re viewing.
As we make requests for new pages, the state of our view of the site changes even if the site doesn’t.
But they’re also states that change within a single page.
The most important way that websites keep track of state is something called cookies.
Cookies are small amounts of data that websites store on our computers as we use those sites.
They’re stored by our browser software on our computer, not on the server, and they’re designed to keep track of the state of the websites.
Cookies are how websites track whether we’re logged in or not and how they know our browsing history.
databaseとは?webpageのtemplateに入れるcontentのデータ置き場
A database is a software platform designed to store data in a structured way that’s easy to access for computer.
Databases make it possible to extend the information available on a website without anyone having to create new pages.
The pages we see are created by the server using data from database.
Instead of having a webpage stored on the server, the website will store template page which contains formatting for webpage such as a social media profile.
The template page contains a lot of empty spaces for example, spaces for name, age, and gender which are filled with data from the database.
The Web server software combines the templates with the data from the database to create pages that are then transmitted to your browser.
Template might be stored as a file just like a traditional webpage.
Webpage formatting is done using a type of file called HTML, which is the basic language of the Web and is typically used together with another formatting language called CSS.
peer assessmentで見たこの人の回答がすごかった。
embedとは?APIとは???
youtubeの動画の埋め込みをするとき、コードにembedと書いてある。
他のwebpageの機能、情報を移植することをembedというらしい。
Web pages can make use of little bits of information or functionality provided by other websites.
The web page you’re seeing the video on contains instructions that tells your browser to make a request to YouTube to display the video.
Another example of embedding is advertising.
Online payments are also typically handled with embedding.
I wouldn’t trust a small online shop to create its own secure online payment system,
but I don’t have to because the payment systems used by
commerce sites are provided by specialist services like PayPal.
APIは他のサイト?のデータベースを利用する窓口(インターフェイス)
APIを使ってembed()する、ということらしい。
youtubeの動画を他のサイトに貼り付けるときのガイドを見ると。
embedは、埋め込むという意味です。
Another way that a website can gain data from other servers is via an API, short for Application Programming Interface.
You can think of an API as a version of a website that’s designed not for humans to look at, but for computer programs.
Another web server can access data from an APIand combine it with other elements to create a whole new website.
APIs or how we can have different versions of the same application.
Almost all major online applications whether they’re social networks,
online shopping sites or travel booking platforms are available both as
a website and as a mobile app that can be accessed on your phone or tablet.
In fact, there’ll be different versions of the mobile app for Apple,
Android or Windows devices.
オンラインショップサイトでcliantの情報を取得する機能もembedされている
Because modern websites can include content from many places through embedding an APIs, this means that there are lots of services that can track you without you knowing about it.
This is particularly controversial with advertising.
An advertising service can track your behavior across many sites that is used by.
The adverts you see on websites are not just images, they’re little embedded programs that can track what you’re doing on the web page they’re embedded in.
That’s why looking at something on one side can result in you getting targeted ads for the same product in a completely unrelated sites.
I’m not saying that own data collection is bad.
The web wouldn’t work without it, and many websites fund themselves throughadvertising.
So, they wouldn’t be able to do what they do without it.
But it’s worth trying to be more aware of all the ways data is collected about you.
At least so you can do something about it in cases where you don’t want your own data collected.
For example, you could use private mode in your browser.
Knowing more about how websites work will help you do that.
A website I regularly use is YouTube. Youtube is composed of many technologies like UI, advertising, super chat, and so on.
First, a user searches YouTube for keywords. A client-side server calls the URL with the query and receives a response from a YouTube server. At the same time, YouTube recommends the user for videos they may concern. State changes from default to watching the video.
The database includes videos, profiles of YouTube channels, thumbnail, and texts describing the videos.
The security is secured because a channel user must log in when one edits, analyzes one’s channel, or use one’s records of watching.
As a service, YouTube allows users to share videos by embedding API or iframe. Users record their favorite on their accounts as well.YouTube app is also available by API.
Youtube collects our data, a genre of videos we watch so that YouTube earns better information to recommend us for more videos.
すごい人がいた。ここまで書けるのか・・・
今までに学んできたことで、心の中にのこっているものを書き出した。
I learned many words which enables me to understand what computer is doing as a notional machine. I did not know database is connected to a sever and interact with client’s request. There are many protocols like languages in the world. When I am in trouble with a computer, I can try to find which one gets wrong: CPU, software, network or so on.
コメント