Display Bilingual:

00:00
[THEME MUSIC] 00:00
00:13
>> DAVID J. MALAN: Can you hear me, world? 00:32
So in next week's episode we'll talk about microphone technology. 00:34
But for now, let's begin. 00:38
Hello, world, we are back, as is my voice. 00:40
And this is CS50 Live. 00:42
>> And boy, do we have a good show for you this week. 00:44
In particular, we've got the Heartbleed bug 00:47
that's been all over the news of late, some stories from students, 00:49
a trip to Vegas, a behind the scenes tour of Dropbox. 00:52
And I'm hearing, yes, CS50's own Ramon Galvin is back. 00:56
CS50's Ramon Galvin is in the studio again today. 01:00
>> But first, some desk lamps. 01:03
Of course desk lamps have been a bit of a thing this semester in CS50. 01:05
And you may recall Ahmad, from a previous episode, who 01:08
submitted a video making his case for why 01:11
he'd like to receive his own CS50 desk lamp. 01:13
Well, we sent a desk lamp ultimately to Ahmad. 01:16
And he kindly sent us this photo of himself 01:18
in Pakistan with a CS50 desk lamp. 01:21
>> Meanwhile, you may recall Lamp Story, submitted by Eggers in Latvia. 01:24
We sent over a desk lamp to Latvia as well. 01:27
And pictured here is that desk lamp. 01:29
Finally, you may recall Philip who didn't just submit a photo, 01:32
but also submitted a video via which to thank us 01:35
for his desk lamp, which we sent all the way to Germany. 01:38
Let's take a look. 01:42
>> PHILLIP: Hi. 01:43
Dear David, and dear all of you amazing people at CS50. 01:44
I'm Phil and I want to thank you so much for this incredible gift. 01:47
It is unbelievable to me that you actually 01:52
sent this all the way over here to Germany. 01:54
But you know what? 01:57
Why don't I thank you personally? 01:58
>> Hey, David, I want to thank you so much for this CS50 desk lamp. 02:01
You can not imagine what this means to me. 02:05
>> DAVID J. MALAN: Desk lamp? 02:08
>> PHILLIP: Right. 02:10
OK, I'm going to leave, but, yeah, thanks. 02:11
DAVID J. MALAN: Now, two of your classmates actually traveled 02:17
to us to have a chat of late. 02:19
In particular, Amy from Massachusetts and Jack from Dublin, Ireland, 02:21
came all the way to Sanders Theater to sit down and talk about CS50 02:25
past and present. 02:28
02:30
>> This is Sanders Theater. 02:33
So this is where CS50's lectures are held. 02:34
Thanks so much for coming to campus. 02:38
Shall we start with the introductions? 02:40
I'm David. 02:41
>> AMY: I'm Amy. 02:42
I work on the web and I live here in Cambridge. 02:43
>> JACK: I'm Jack and I'm from Dublin, Ireland. 02:46
I'm a junior in high school. 02:49
>> DAVID J. MALAN: And what brings you here today in particular from so far away? 02:50
JACK: For a visit to Boston. 02:53
>> AMY: How has CS50 evolved as you've been teaching it? 02:55
>> DAVID J. MALAN: It's definitely gotten more dramatic over the years. 02:58
We've been filming since 2007, so we can literally go back in time 03:02
and watch past years, first lectures in particular. 03:05
And I think the first lecture in 2007 was pretty much 03:08
me, coming out in front of the class. 03:11
Saying, hello, this is CS50. 03:13
And we dove into the day's material. 03:16
>> All right, so welcome to Computer Science 50, 03:18
Introduction to Computer Science 1. 03:21
My name is David Malin and I will be your instructor this-- 03:23
>> Now there's music. 03:26
The lights go down. 03:28
We drop down a huge screen. 03:29
There may or may not be Muppets in a given year. 03:30
03:33
And it's funny, because this has all happened very gradually 03:38
over the years, just a little bit more each year. 03:42
But the delta, now, between the first year and the last year 03:44
is actually rather atrocious, just how different the first five minutes are. 03:47
>> AMY: I'm curious, what do you see as the differences between the edX 03:51
version and the live course? 03:56
>> DAVID J. MALAN: So curricularly and technologically CS50 03:59
on campus and CS50x off campus are fundamentally the same. 04:02
What does differ between the two is the level of support 04:06
that we're able to provide. 04:09
Even though CS50 has a huge team of some 100 teaching fellows, course 04:11
assistants, myself, and our production team-- 04:15
we can just barely keep up with the 700 students on campus 04:18
and the 150 Extension School students who are local or online themselves. 04:22
So for CS50x, we simply don't have the support structure of office hours, 04:27
for instance, four nights a week for several hours. 04:30
JACK: And what do you guys talk about in office hours that will be different to, 04:33
say, what you have on lectures, or on sections, or shorts? 04:36
DAVID J. MALAN: On campus office hours are really 04:39
opportunities for students to pose questions, one on one, 04:41
with a member of the teaching staff or even a classmate of theirs nearby. 04:44
And generally wrestle with bugs that they're having in their codes. 04:48
>> AMY: I think Reddit kind of gives a reasonable facsimile of an office 04:51
hours. 04:55
>> DAVID J. MALAN: Agreed, agreed. 04:55
I've been really impressed, though, with the Reddit community 04:56
and the newcomers to the group, too-- just 04:59
how eager and hopeful people have been. 05:01
And Reddit definitely lends itself better, I think, to posting of code 05:03
and having threaded discussions. 05:06
>> JACK: And do you think people should try, 05:08
if they know they're doing something wrong 05:10
or it's like, they've implemented-- spent too much time on it, 05:12
think they should stop and start again? 05:15
Or look for help? 05:17
Or how should they-- 05:18
>> DAVID J. MALAN: Take a break, minimally. 05:20
Sometimes, especially for me at least, as your stress level starts to rise you 05:22
start hacking away and copying and pasting, forgetting 05:26
what you've already tried. 05:29
It's just time to go to sleep, or go take a jog, 05:30
or go shower, and just kind of get some distance. 05:32
And this has happened many, many times to me 05:35
where I'll be lying there in bed even, or even driving to work, 05:39
or walking somewhere, kind of debugging in my head. 05:42
>> And only once you have that distance and a lot less stress on your shoulders, 05:44
I think, can you realize, like, oh, I'm an idiot. 05:47
I forgot to call this function, or initialize some variable. 05:49
>> So as a little surprise if you'd like to take a look under your CS50 seat 05:54
cushion, a little something awaits you. 05:58
06:00
Those were good looks. 06:07
Did we get those looks? 06:08
>> Under their seat cushions, of course, was a bit more Dropbox space. 06:11
Now you may recall we recently traveled to Saint Louis, Missouri, 06:14
where we had a unique opportunity to actually blow glass 06:17
at the Third Degree Glass factory. 06:20
Our host for the day made this beautiful bowl of glass 06:22
by spinning and spinning it until you got this beautiful wavy effect. 06:26
And this now lives in our offices here in Cambridge. 06:29
>> I, on the other hand, made this big ball of orange glass 06:32
that now sits on my desk. 06:35
But we were in Saint Louis, of course, for the CS50 hackathon 06:37
in Saint Louis with Launchcode, where we had an opportunity 06:39
to sit down with a number of your classmates and hear their CS50 stories. 06:42
>> EZRA: Once I saw computer coding and the kind of-- that's 06:48
the career that I want to be in. 06:55
And I think that I would be very good at it. 06:56
>> CHARLES: Well, I've been job hunting for a while. 07:00
Bachelor of Science, biomedical engineering. 07:02
It hasn't been going too well. 07:04
So I thought maybe I'd look into a different field. 07:06
>> KIMBERLY: In Green Bay, Wisconsin I was a school counselor. 07:09
And I really knew I wanted to change careers. 07:12
>> SAM: I've heard a lot of people saying, like, everyone 07:16
should learn how to code. 07:19
Everyone should be exposed to it. 07:20
And before I was just kind of like, eh, whatever. 07:22
>> AUSTIN: I had taken a semester off. 07:25
And I'm now doing the CS50x program. 07:27
>> KELLI: It's very accessible to anyone at all. 07:30
>> LEANNE: I've been a developer in the past. 07:34
But I had a situation and I wanted to kind of increase my confidence, 07:37
and I wanted to learn C, and I wanted to learn 07:41
PHP, which I saw that CS50 was teaching. 07:44
AUSTIN: People are really helpful. 07:47
There's definitely more of a community than you 07:49
would think from an online course. 07:50
>> KELLI: I'm working on my problem set five, that I just started. 07:52
So I get to do a little forensics. 07:55
>> CHARLES: It has been challenging. 07:59
It's definitely meant to stretch your limits. 08:01
I'm working on problem set five. 08:04
>> KIMBERLY: My classmate and I are working on our final project. 08:06
>> SAM: I'm working on my final project. 08:09
I've got two other people working with me, we're the tri-force of power. 08:11
>> LEANNE: I'm attempting to work on an iOS app that is a calendar agenda 08:15
application that I wanted to create, just for my own use, to start out with. 08:21
>> AUSTIN: My final project is going to be a website that 08:26
is an image and visual repository. 08:28
Basically it's going to have a listing of helpful phrases 08:31
and sign language for medical personnel. 08:35
>> EZRA: Let's say my final project was a puppet doing a dance, 08:38
and they asked me, can you make this puppet to do this dance twice as fast? 08:42
I would be able to go to my code, change it, save it, compile it, upload it, 08:49
and show them right away that I can-- that not only did I 08:55
make this final project, I understand. 08:58
I can tweak it however they want me to tweak it. 09:01
>> CHARLES: I figure once I get my final project completed 09:03
and some potential employers have a chance 09:06
to look at that they'll have a better assessment of whether they 09:08
think I'll be a good fit for them. 09:11
SAM: Now I'm very confident and I'm learning new stuff all the time. 09:12
And it's great. 09:17
It's changed my life. 09:18
>> EZRA: This is really hard material, especially 09:20
if you're doing this and also working, and maybe also have a family, 09:24
and maybe also have children, and maybe also have a mortgage. 09:31
But it's so worth it if you just put the effort in. 09:35
What you get out is so much more valuable than the time that you put in. 09:41
DAVID J. MALAN: And now, this week in tech. 09:47
Odds are you've heard of the so-called Heartbleed 09:49
bug, which has affected web servers throughout the world. 09:51
But what is this bug, exactly? 09:53
Well, turns out that many web servers run software called open 09:55
SSL, where SSL of course is Secure Sockets Layer. 09:59
And this is the technology that encrypts traffic between a web browser, 10:02
or client, and a web server. 10:05
Now unfortunately, in December of 2011, a programmer 10:07
introduced an accidental bug into the source code for open SSL. 10:10
>> And open SSL unfortunately is used in so many other products, 10:14
among them the Apache web server, and others, 10:17
that are hugely popular on the internet for hosting websites. 10:20
The result of this was that the following attack is possible. 10:23
As part of open SSL there's a so-called heartbeat feature, 10:29
whereby a client like a browser can send a message or a payload, 10:32
which is really just a string, like hello, to a server. 10:36
And in addition to that payload it sends a number 10:38
which should be the length of that payload. 10:40
In the case of hello, it should be five. 10:43
>> Unfortunately, the bug in open SSL operated as follows. 10:45
It ignored that number. 10:49
And so if you-- rather, it trusted that number. 10:50
So if you, the client, sent a message like hello, and not the number 5 10:55
but the number 100, what would happen is that the server would blindly 10:59
respond to that payload by echoing back not only hello, 11:03
those 5 bytes, but 95 additional bytes thereby trusting 11:06
that you were telling the truth when you said that the payload was in fact 100 11:10
bytes. 11:14
Now why is that problematic? 11:14
>> Well, you may recall from CS50, of course, 11:16
from memory management that on the stack and the heap 11:18
are remnants of data paths, when you've called a function, used a variable, 11:20
those values stay in memory even if you're no longer actively using 11:24
those chunks of memory. 11:28
So when the server responds not with 5 bites but with 100 bytes, 95 of which 11:29
are not technically supposed to go back to the client, 11:34
those 95 bytes could contain passwords, or the server's 11:37
security certificates, or the servers secret keys, so to speak, all of which 11:40
are used for encryption. 11:45
>> And so ultimately your information could be handed back 11:46
to some random adversary on the internet simply 11:49
because your password, or credit card information, 11:52
or something else that's sensitive happened 11:54
to be in the web server's memory at that particular location. 11:56
Now this was a big deal, because this bug 11:59
affected web servers throughout the world. 12:01
Among them Amazon Web Services, Box, Dropbox, Etsy, Flickr, GitHub, Gmail, 12:03
Go Daddy, Google, Instagram, Minecraft, Netflix, OKCupid, Pinterest, 12:08
SoundCloud, Tumblr, Twitter, Venmo, Wikipedia, WordPress, Yahoo, 12:11
YouTube-- and those are just the companies, just some 12:15
of the companies that actually disclosed that their servers had been running 12:19
the afflicted software and had only recently, as this past week, 12:22
been updated. 12:26
>> Now it turns out the fix, in source code for, this Heartbleed bug is actually 12:27
remarkably simple. 12:31
It pretty much boils down to these two lines of code. 12:32
If payload is greater than the actual length, return 0. 12:35
Do not return some potentially disclosing bits. 12:39
Now in reality the lines of code were a little more complex. 12:42
It looked a bit more like this. 12:45
But this is just some additional arithmetic 12:47
and there were a few other lines of code, 12:48
but the fix really was that simple. 12:50
>> And so if you've never believed in lectures 12:52
when we say that you should always check the boundaries of your array 12:54
and make sure to check the lengths of any chunk of memory 12:57
before blindly traversing through your computer's memory, 13:00
this is what can happen. 13:03
And truly it's been a globally impactful bug. 13:05
Now what can you yourself do to learn more and protect yourself? 13:08
Well, head to heartbleed.com, which is a terrific website that 13:11
explains in a bit more detail exactly what the threat is, how folks have 13:14
responded, what software's been affected, 13:18
and how you can defend yourself. 13:20
But it pretty much boils down to this-- change your passwords, 13:21
arguably on most any website you know if unsure 13:25
whether that particular website was affected. 13:27
>> Because one of the scariest things about this bug 13:29
is that it's not so much auditable. 13:31
It's not clear if, even over the past two years, 13:33
a server was vulnerable, if your information was indeed compromised. 13:36
So as is the case generally with security, 13:39
the best approach is paranoia and change any passwords 13:42
on websites that are particularly sensitive to you. 13:45
But head to that URL there for even more detail. 13:48
>> Now in other news, Mark Zuckerberg recently posted this. 13:50
I'm excited to announce that we've agreed 13:53
to acquire Oculus VR, the leader in virtual reality technology. 13:55
Now virtual reality is an interesting thing 13:59
that's beginning to gain a bit more traction. 14:01
It generally involves putting on a pair of goggles 14:03
that might look like these inside of which are a pair of lenses that 14:05
allow you to see a computer screen right up close to your face. 14:08
And on that computer screen could be anything, the inside of a house, 14:12
the outside of the house, a virtual world inside of a game. 14:15
And the result is an incredibly immersive opportunity 14:18
to feel as though you're actually someplace that you're actually not. 14:22
I, for instance, might be in a conference room 14:25
when really I think I'm in a Tron-like virtual world. 14:27
And indeed, I had an opportunity. 14:31
I haven't personally played with Oculus, but I did visit our friends 14:32
in Seattle, Washington, recently at Valve software, who 14:35
were working on a very similar VR technology. 14:38
And I was very fortunate to have the opportunity 14:40
to put on their pair of goggles for 60 seconds of this. 14:43
>> [MUSIC PLAYING] 14:47
>> Now, CS50's own Dan Coffey also had an opportunity 15:48
to take a trip recently to Mountain View, California, 15:51
where he sat down with our friends at Dropbox, among them 15:53
CS50's own former head teaching fellow Thomas Carriero, 15:56
who's been responsible for all of that Dropbox space 15:59
underneath your seat cushions. 16:02
Thomas very kindly opened the doors of Dropbox and gave us an exclusive 16:03
behind the scenes of what it's like to work at Dropbox 16:07
and daresay live at Dropbox. 16:10
>> THOMAS CARRIERO: Hi, I'm Thomas Carriero, former CS50 head TF. 16:14
We're here at the Dropbox headquarters in San Francisco, California. 16:19
Welcome. 16:21
I'm going to show you on a tour. 16:22
Come with me. 16:23
16:24
Cool. 16:26
So this balloon right here, this green check mark, 16:27
is the balloon that we put on your desk when you first join the company. 16:30
And the idea is that the balloon will stay kind of up there as long 16:34
as you're a new hire. 16:37
So the balloon of course loses helium over time and by the time 16:38
the balloon is dead you're no longer a noob. 16:42
This takes a couple of months to happen because these are really, really 16:47
expensive balloons. 16:51
We think we might keep the green check mark balloon business in business. 16:52
>> Cool, so this right here is AT&T Park. 16:57
This is where the San Francisco Giants play. 17:00
We actually have a Dropbox box suite, one of our other awesome amenities, 17:02
just across the way. 17:08
So I'm standing by this really cool light display. 17:09
So what's going on here is we're getting real time data 17:11
about what's happening in our Mailbox app. 17:13
Each of the colors corresponds to a different action. 17:16
>> And so as users are doing these actions, these lights 17:19
are lighting up with those colors to kind of let us know what's going on. 17:23
Sometimes if stuff is going wrong, the colors will all start to be one color 17:26
and we know that something bad is happening. 17:30
So this is kind of one of the ways that we 17:33
keep track of what's going on in Mailbox. 17:34
17:36
>> Cool, so let's see what's for dinner tonight. 17:39
Looks like we have eight hour smoked beef brisket right here. 17:42
And right here is my favorite station, the Indian station. 17:46
It's an open face samosa chop today. 17:49
Well, I guess that was my favorite station 17:53
but this is my other favorite station. 17:55
>> This is the pizza station. 17:57
So they always make different kinds of pizza with our pizza oven right there. 17:58
Looks like they're making a Sicilian pizza, which is one of my favorites. 18:02
All right, so the chef told me that they are freshly made Ho Hos. 18:06
I told him I was going to wait until after I'd eaten my dinner 18:10
but I'm definitely going to have one of those tonight. 18:13
OK, I'm going to have mine now. 18:15
Real good. 18:19
18:19
>> So this is kind of the bonus station that's outside of the tech shop. 18:23
For lunch we have Mexican food here and sushi here. 18:26
And for dinner we have some kind meat delicious. 18:29
Looks like roasted pork loin tonight. 18:34
Get a close up on that. 18:37
Cool, so this is our design area. 18:40
This is where we design a bunch of the products. 18:42
We have lots of fun poster boards and stuff, 18:44
with kind of all the mocks that we're working on. 18:47
We also have along the ground a bunch of the mocks 18:50
that we've been working on over the years. 18:53
So you can get a close up of that in a second. 18:56
>> But this sign is one of my favorite things about Dropbox. 18:58
So this sign actually came from the old office. 19:01
And our slogan is, it just works. 19:03
But if you look closely, there's a subliminal message in the sign. 19:05
>> So one of my favorite parts about Dropbox are these vending machines. 19:10
Instead of having chips or soda or anything like that, 19:14
we actually have electronics. 19:17
So if you need a new trackpad, or a new keyboard, or some headphones, 19:19
all you need to do is swipe your badge right here. 19:24
Type in the number and then the out comes your electronics. 19:27
Pretty awesome. 19:30
Thanks so much for joining me on this tour of Dropbox. 19:30
It's been really fun showing you around. 19:33
>> I'm going to close this out with the way we close out 19:35
all of our all hands meetings. 19:37
This is a special chant we do. 19:40
Can I get some help here? 19:41
One, two, three-- Dropbox! 19:44
It's usually much cooler than that. 19:47
19:49
DAVID J. MALAN: Now if you'd like to visit Dropbox, 19:57
head to Mountain View, California, hop on Route 101 north to San Francisco, 20:00
where they actually are. 20:04
Now we've also had an opportunity recently 20:06
to travel to Las Vegas, Nevada for the NAB show, 20:07
the National Association for Broadcasters show, 20:11
which brings together some 100,000 people interested 20:13
in audio and video and technology more generally 20:16
to talk about the very latest and greatest. 20:18
>> CS50's own Ramon Galvin took this trip and brought with him 20:21
a camera crew in order to this footage from the show's floor. 20:24
RAMON GALVIN: Hello, world. 20:28
OK, I got it. 20:29
Hello, world. 20:31
Do I have to say my name? 20:32
>> CAMERAMAN: Correspondent in the field . 20:34
RAMON GALVIN: Can I get a lower third of that? 20:37
Correspondent in field. 20:39
>> CAMERAMAN: Senior. 20:43
RAMON GALVIN: There you go. 20:44
20:45
I know, but I have to do it. [INAUDIBLE]. 20:53
20:55
I'm clueless. 21:08
21:09
>> Now's my prima donna pose. 21:14
21:16
DAVID J. MALAN: And they keep mentioning 4K. 21:35
What is 4K exactly? 21:37
>> RAMON GALVIN: That's a really good question. 21:40
Very basically-- 21:42
>> DAVID J. MALAN: Cut to a clip explaining 4K. 21:43
21:46
Hello, world. 21:53
My name is David Malan. 21:54
RAMON GALVIN: I'm Ramon Galvin. 21:55
DAVID J. MALAN: And we're here at NAP, the National Association 21:57
of Broadcasters conference in Las Vegas, Nevada. 21:59
But why are we here? 22:01
RAMON GALVIN: I don't know. 22:02
I don't know, David. 22:03
>> DAVID J. MALAN: That was pretty good. 22:05
Is this usable? 22:07
>> RAMON GALVIN: Probably not. 22:08
DAVID J. MALAN: We're back, as is CS50's own Ramon 22:10
Galvin, who you may recall from last week's episode. 22:12
Ramon, so glad you are indeed back. 22:16
>> RAMON GALVIN: I'm glad I still have a job, David. 22:17
>> DAVID J. MALAN: So let's address the elephant 22:19
that was in the room in Las Vegas, namely 4K. 22:21
I've heard about this in the context of TVs and computer monitors, 22:22
but what is 4K? 22:25
>> RAMON GALVIN: So it's a resolution. 22:27
Whenever you're watching a walk through video or a lecture 22:28
you get what we call 1080p video. 22:31
What that means that the video is 1,000 pixels tall. 22:33
>> DAVID J. MALAN: Or 1080. 22:37
>> RAMON GALVIN: Or 1080. 22:38
Or roughly 2,000 pixels wide. 22:39
Now 4K is 4,000 pixels wide, roughly, and roughly 2,000 pixels tall. 22:42
DAVID J. MALAN: OK. 22:49
So that's kind of like having a grid of four 1080p monitors 22:50
right in front of you. 22:53
>> RAMON GALVIN: Exactly. 22:55
DAVID J. MALAN: OK, so that's all fine and good but why is this useful? 22:55
>> RAMON GALVIN: I'm glad I asked you to ask me that question, David. 22:59
>> DAVID J. MALAN: It's on the teleprompter. 23:01
>> RAMON GALVIN: So there's a documentarian named 23:03
Errol Morris that actually makes use of 4K technology. 23:04
Ordinarily to shoot an interview, which he usually does, 23:08
he would have to either use multiple cameras to get a zoomed in shot 23:10
or a zoomed out shot, or shoot the interview twice 23:14
to get the same zoomed in, zoomed out shot. 23:17
However, now he's using a 4K camera to shoot one huge 4K shot. 23:19
And then when he's editing, artificially cropping that shot. 23:25
DAVID J. MALAN: And zooming in, essentially, 23:30
to give you still 1080p but only some of the pixels from the 4K image. 23:31
>> RAMON GALVIN: Exactly, giving him multiple camera shots 23:35
out of that one original camera shot. 23:38
DAVID J. MALAN: Interesting. 23:40
So how could we make use of this for CS50? 23:41
>> RAMON GALVIN: I'm glad you asked me that question, too, David. 23:43
Because I shot the walk through videos with Zamyla last semester. 23:46
And for those videos we would have to run through the walk 23:50
through once with a zoomed out shot. 23:53
And then I'd have to adjust the camera to get a zoomed in shot. 23:55
And then we'd run through it again, running through it two times. 23:59
With a 4K camera we can cut our production time in half. 24:03
DAVID J. MALAN: I see. 24:05
So that should be quite exciting for us, then, this fall. 24:06
RAMON GALVIN: Exactly. 24:09
DAVID J. MALAN: Well, from the looks of the video 24:10
it sounds like it was a pretty exhausting trip. 24:11
It sounds like you didn't really have much time to relax. 24:13
RAMON GALVIN: Not one bit. 24:16
24:17
DAVID J. MALAN: Well, that's it for CS50 Live. 24:20
Thanks so much to this week's contributors. 24:22
Thanks so much to the team behind the camera. 24:23
Thanks so much to our correspondent-- 24:25
RAMON GALVIN: Senior. 24:27
DAVID J. MALAN: Senior correspondent in the field. 24:28
This was CS50. 24:30
>> RAMON GALVIN: And this is something, I don't know what. 24:32
>> DAVID J. MALAN: It was our dress rehearsal. 24:35
So that all sounds great. 24:38
Bigger TVs, more pixels, more resolution. 24:39
But why is this actually useful? 24:42
>> RAMON GALVIN: I'm glad you asked that question, David. 24:43
>> DAVID J. MALAN: I'm glad you asked-- I'm glad I asked you to ask me that. 24:45
>> RAMON GALVIN: No, I say I'm glad you asked me the question. 24:48
And then you say, well it's in the prompter. 24:50
I'm glad I asked you to ask me that question. 24:52
DAVID J. MALAN: Well, it's in the prompter there. 24:54
RAMON GALVIN: I'm glad you-- 24:56
DAVID J. MALAN: I think it's funnier if you just say, 24:56
I'm glad I asked you to ask me that question. 24:57
Because it's kind of a play on what you would expect. 24:59
>> RAMON GALVIN: OK. 25:02
I'm glad you asked me to ask that question, David. 25:02
There's a documentarian. 25:05
>> DAVID J. MALAN: I'm glad I asked you to ask me. 25:06
RAMON GALVIN: I'm glad I asked you to ask me that question. 25:08
>> [MUSIC- CAKE, "THE DISTANCE"] 25:11

– English Lyrics

💥 Jamming to "" but don’t get the lyrics? Dive into the app for bilingual learning and level up your English!
By
Viewed
15,496
Language
Learn this song

Lyrics & Translation

[English]
...
[THEME MUSIC]
...
>> DAVID J. MALAN: Can you hear me, world?
So in next week's episode we'll talk about microphone technology.
But for now, let's begin.
Hello, world, we are back, as is my voice.
And this is CS50 Live.
>> And boy, do we have a good show for you this week.
In particular, we've got the Heartbleed bug
that's been all over the news of late, some stories from students,
a trip to Vegas, a behind the scenes tour of Dropbox.
And I'm hearing, yes, CS50's own Ramon Galvin is back.
CS50's Ramon Galvin is in the studio again today.
>> But first, some desk lamps.
Of course desk lamps have been a bit of a thing this semester in CS50.
And you may recall Ahmad, from a previous episode, who
submitted a video making his case for why
he'd like to receive his own CS50 desk lamp.
Well, we sent a desk lamp ultimately to Ahmad.
And he kindly sent us this photo of himself
in Pakistan with a CS50 desk lamp.
>> Meanwhile, you may recall Lamp Story, submitted by Eggers in Latvia.
We sent over a desk lamp to Latvia as well.
And pictured here is that desk lamp.
Finally, you may recall Philip who didn't just submit a photo,
but also submitted a video via which to thank us
for his desk lamp, which we sent all the way to Germany.
Let's take a look.
>> PHILLIP: Hi.
Dear David, and dear all of you amazing people at CS50.
I'm Phil and I want to thank you so much for this incredible gift.
It is unbelievable to me that you actually
sent this all the way over here to Germany.
But you know what?
Why don't I thank you personally?
>> Hey, David, I want to thank you so much for this CS50 desk lamp.
You can not imagine what this means to me.
>> DAVID J. MALAN: Desk lamp?
>> PHILLIP: Right.
OK, I'm going to leave, but, yeah, thanks.
DAVID J. MALAN: Now, two of your classmates actually traveled
to us to have a chat of late.
In particular, Amy from Massachusetts and Jack from Dublin, Ireland,
came all the way to Sanders Theater to sit down and talk about CS50
past and present.
...
>> This is Sanders Theater.
So this is where CS50's lectures are held.
Thanks so much for coming to campus.
Shall we start with the introductions?
I'm David.
>> AMY: I'm Amy.
I work on the web and I live here in Cambridge.
>> JACK: I'm Jack and I'm from Dublin, Ireland.
I'm a junior in high school.
>> DAVID J. MALAN: And what brings you here today in particular from so far away?
JACK: For a visit to Boston.
>> AMY: How has CS50 evolved as you've been teaching it?
>> DAVID J. MALAN: It's definitely gotten more dramatic over the years.
We've been filming since 2007, so we can literally go back in time
and watch past years, first lectures in particular.
And I think the first lecture in 2007 was pretty much
me, coming out in front of the class.
Saying, hello, this is CS50.
And we dove into the day's material.
>> All right, so welcome to Computer Science 50,
Introduction to Computer Science 1.
My name is David Malin and I will be your instructor this--
>> Now there's music.
The lights go down.
We drop down a huge screen.
There may or may not be Muppets in a given year.
...
And it's funny, because this has all happened very gradually
over the years, just a little bit more each year.
But the delta, now, between the first year and the last year
is actually rather atrocious, just how different the first five minutes are.
>> AMY: I'm curious, what do you see as the differences between the edX
version and the live course?
>> DAVID J. MALAN: So curricularly and technologically CS50
on campus and CS50x off campus are fundamentally the same.
What does differ between the two is the level of support
that we're able to provide.
Even though CS50 has a huge team of some 100 teaching fellows, course
assistants, myself, and our production team--
we can just barely keep up with the 700 students on campus
and the 150 Extension School students who are local or online themselves.
So for CS50x, we simply don't have the support structure of office hours,
for instance, four nights a week for several hours.
JACK: And what do you guys talk about in office hours that will be different to,
say, what you have on lectures, or on sections, or shorts?
DAVID J. MALAN: On campus office hours are really
opportunities for students to pose questions, one on one,
with a member of the teaching staff or even a classmate of theirs nearby.
And generally wrestle with bugs that they're having in their codes.
>> AMY: I think Reddit kind of gives a reasonable facsimile of an office
hours.
>> DAVID J. MALAN: Agreed, agreed.
I've been really impressed, though, with the Reddit community
and the newcomers to the group, too-- just
how eager and hopeful people have been.
And Reddit definitely lends itself better, I think, to posting of code
and having threaded discussions.
>> JACK: And do you think people should try,
if they know they're doing something wrong
or it's like, they've implemented-- spent too much time on it,
think they should stop and start again?
Or look for help?
Or how should they--
>> DAVID J. MALAN: Take a break, minimally.
Sometimes, especially for me at least, as your stress level starts to rise you
start hacking away and copying and pasting, forgetting
what you've already tried.
It's just time to go to sleep, or go take a jog,
or go shower, and just kind of get some distance.
And this has happened many, many times to me
where I'll be lying there in bed even, or even driving to work,
or walking somewhere, kind of debugging in my head.
>> And only once you have that distance and a lot less stress on your shoulders,
I think, can you realize, like, oh, I'm an idiot.
I forgot to call this function, or initialize some variable.
>> So as a little surprise if you'd like to take a look under your CS50 seat
cushion, a little something awaits you.
...
Those were good looks.
Did we get those looks?
>> Under their seat cushions, of course, was a bit more Dropbox space.
Now you may recall we recently traveled to Saint Louis, Missouri,
where we had a unique opportunity to actually blow glass
at the Third Degree Glass factory.
Our host for the day made this beautiful bowl of glass
by spinning and spinning it until you got this beautiful wavy effect.
And this now lives in our offices here in Cambridge.
>> I, on the other hand, made this big ball of orange glass
that now sits on my desk.
But we were in Saint Louis, of course, for the CS50 hackathon
in Saint Louis with Launchcode, where we had an opportunity
to sit down with a number of your classmates and hear their CS50 stories.
>> EZRA: Once I saw computer coding and the kind of-- that's
the career that I want to be in.
And I think that I would be very good at it.
>> CHARLES: Well, I've been job hunting for a while.
Bachelor of Science, biomedical engineering.
It hasn't been going too well.
So I thought maybe I'd look into a different field.
>> KIMBERLY: In Green Bay, Wisconsin I was a school counselor.
And I really knew I wanted to change careers.
>> SAM: I've heard a lot of people saying, like, everyone
should learn how to code.
Everyone should be exposed to it.
And before I was just kind of like, eh, whatever.
>> AUSTIN: I had taken a semester off.
And I'm now doing the CS50x program.
>> KELLI: It's very accessible to anyone at all.
>> LEANNE: I've been a developer in the past.
But I had a situation and I wanted to kind of increase my confidence,
and I wanted to learn C, and I wanted to learn
PHP, which I saw that CS50 was teaching.
AUSTIN: People are really helpful.
There's definitely more of a community than you
would think from an online course.
>> KELLI: I'm working on my problem set five, that I just started.
So I get to do a little forensics.
>> CHARLES: It has been challenging.
It's definitely meant to stretch your limits.
I'm working on problem set five.
>> KIMBERLY: My classmate and I are working on our final project.
>> SAM: I'm working on my final project.
I've got two other people working with me, we're the tri-force of power.
>> LEANNE: I'm attempting to work on an iOS app that is a calendar agenda
application that I wanted to create, just for my own use, to start out with.
>> AUSTIN: My final project is going to be a website that
is an image and visual repository.
Basically it's going to have a listing of helpful phrases
and sign language for medical personnel.
>> EZRA: Let's say my final project was a puppet doing a dance,
and they asked me, can you make this puppet to do this dance twice as fast?
I would be able to go to my code, change it, save it, compile it, upload it,
and show them right away that I can-- that not only did I
make this final project, I understand.
I can tweak it however they want me to tweak it.
>> CHARLES: I figure once I get my final project completed
and some potential employers have a chance
to look at that they'll have a better assessment of whether they
think I'll be a good fit for them.
SAM: Now I'm very confident and I'm learning new stuff all the time.
And it's great.
It's changed my life.
>> EZRA: This is really hard material, especially
if you're doing this and also working, and maybe also have a family,
and maybe also have children, and maybe also have a mortgage.
But it's so worth it if you just put the effort in.
What you get out is so much more valuable than the time that you put in.
DAVID J. MALAN: And now, this week in tech.
Odds are you've heard of the so-called Heartbleed
bug, which has affected web servers throughout the world.
But what is this bug, exactly?
Well, turns out that many web servers run software called open
SSL, where SSL of course is Secure Sockets Layer.
And this is the technology that encrypts traffic between a web browser,
or client, and a web server.
Now unfortunately, in December of 2011, a programmer
introduced an accidental bug into the source code for open SSL.
>> And open SSL unfortunately is used in so many other products,
among them the Apache web server, and others,
that are hugely popular on the internet for hosting websites.
The result of this was that the following attack is possible.
As part of open SSL there's a so-called heartbeat feature,
whereby a client like a browser can send a message or a payload,
which is really just a string, like hello, to a server.
And in addition to that payload it sends a number
which should be the length of that payload.
In the case of hello, it should be five.
>> Unfortunately, the bug in open SSL operated as follows.
It ignored that number.
And so if you-- rather, it trusted that number.
So if you, the client, sent a message like hello, and not the number 5
but the number 100, what would happen is that the server would blindly
respond to that payload by echoing back not only hello,
those 5 bytes, but 95 additional bytes thereby trusting
that you were telling the truth when you said that the payload was in fact 100
bytes.
Now why is that problematic?
>> Well, you may recall from CS50, of course,
from memory management that on the stack and the heap
are remnants of data paths, when you've called a function, used a variable,
those values stay in memory even if you're no longer actively using
those chunks of memory.
So when the server responds not with 5 bites but with 100 bytes, 95 of which
are not technically supposed to go back to the client,
those 95 bytes could contain passwords, or the server's
security certificates, or the servers secret keys, so to speak, all of which
are used for encryption.
>> And so ultimately your information could be handed back
to some random adversary on the internet simply
because your password, or credit card information,
or something else that's sensitive happened
to be in the web server's memory at that particular location.
Now this was a big deal, because this bug
affected web servers throughout the world.
Among them Amazon Web Services, Box, Dropbox, Etsy, Flickr, GitHub, Gmail,
Go Daddy, Google, Instagram, Minecraft, Netflix, OKCupid, Pinterest,
SoundCloud, Tumblr, Twitter, Venmo, Wikipedia, WordPress, Yahoo,
YouTube-- and those are just the companies, just some
of the companies that actually disclosed that their servers had been running
the afflicted software and had only recently, as this past week,
been updated.
>> Now it turns out the fix, in source code for, this Heartbleed bug is actually
remarkably simple.
It pretty much boils down to these two lines of code.
If payload is greater than the actual length, return 0.
Do not return some potentially disclosing bits.
Now in reality the lines of code were a little more complex.
It looked a bit more like this.
But this is just some additional arithmetic
and there were a few other lines of code,
but the fix really was that simple.
>> And so if you've never believed in lectures
when we say that you should always check the boundaries of your array
and make sure to check the lengths of any chunk of memory
before blindly traversing through your computer's memory,
this is what can happen.
And truly it's been a globally impactful bug.
Now what can you yourself do to learn more and protect yourself?
Well, head to heartbleed.com, which is a terrific website that
explains in a bit more detail exactly what the threat is, how folks have
responded, what software's been affected,
and how you can defend yourself.
But it pretty much boils down to this-- change your passwords,
arguably on most any website you know if unsure
whether that particular website was affected.
>> Because one of the scariest things about this bug
is that it's not so much auditable.
It's not clear if, even over the past two years,
a server was vulnerable, if your information was indeed compromised.
So as is the case generally with security,
the best approach is paranoia and change any passwords
on websites that are particularly sensitive to you.
But head to that URL there for even more detail.
>> Now in other news, Mark Zuckerberg recently posted this.
I'm excited to announce that we've agreed
to acquire Oculus VR, the leader in virtual reality technology.
Now virtual reality is an interesting thing
that's beginning to gain a bit more traction.
It generally involves putting on a pair of goggles
that might look like these inside of which are a pair of lenses that
allow you to see a computer screen right up close to your face.
And on that computer screen could be anything, the inside of a house,
the outside of the house, a virtual world inside of a game.
And the result is an incredibly immersive opportunity
to feel as though you're actually someplace that you're actually not.
I, for instance, might be in a conference room
when really I think I'm in a Tron-like virtual world.
And indeed, I had an opportunity.
I haven't personally played with Oculus, but I did visit our friends
in Seattle, Washington, recently at Valve software, who
were working on a very similar VR technology.
And I was very fortunate to have the opportunity
to put on their pair of goggles for 60 seconds of this.
>> [MUSIC PLAYING]
>> Now, CS50's own Dan Coffey also had an opportunity
to take a trip recently to Mountain View, California,
where he sat down with our friends at Dropbox, among them
CS50's own former head teaching fellow Thomas Carriero,
who's been responsible for all of that Dropbox space
underneath your seat cushions.
Thomas very kindly opened the doors of Dropbox and gave us an exclusive
behind the scenes of what it's like to work at Dropbox
and daresay live at Dropbox.
>> THOMAS CARRIERO: Hi, I'm Thomas Carriero, former CS50 head TF.
We're here at the Dropbox headquarters in San Francisco, California.
Welcome.
I'm going to show you on a tour.
Come with me.
...
Cool.
So this balloon right here, this green check mark,
is the balloon that we put on your desk when you first join the company.
And the idea is that the balloon will stay kind of up there as long
as you're a new hire.
So the balloon of course loses helium over time and by the time
the balloon is dead you're no longer a noob.
This takes a couple of months to happen because these are really, really
expensive balloons.
We think we might keep the green check mark balloon business in business.
>> Cool, so this right here is AT&T Park.
This is where the San Francisco Giants play.
We actually have a Dropbox box suite, one of our other awesome amenities,
just across the way.
So I'm standing by this really cool light display.
So what's going on here is we're getting real time data
about what's happening in our Mailbox app.
Each of the colors corresponds to a different action.
>> And so as users are doing these actions, these lights
are lighting up with those colors to kind of let us know what's going on.
Sometimes if stuff is going wrong, the colors will all start to be one color
and we know that something bad is happening.
So this is kind of one of the ways that we
keep track of what's going on in Mailbox.
...
>> Cool, so let's see what's for dinner tonight.
Looks like we have eight hour smoked beef brisket right here.
And right here is my favorite station, the Indian station.
It's an open face samosa chop today.
Well, I guess that was my favorite station
but this is my other favorite station.
>> This is the pizza station.
So they always make different kinds of pizza with our pizza oven right there.
Looks like they're making a Sicilian pizza, which is one of my favorites.
All right, so the chef told me that they are freshly made Ho Hos.
I told him I was going to wait until after I'd eaten my dinner
but I'm definitely going to have one of those tonight.
OK, I'm going to have mine now.
Real good.
...
>> So this is kind of the bonus station that's outside of the tech shop.
For lunch we have Mexican food here and sushi here.
And for dinner we have some kind meat delicious.
Looks like roasted pork loin tonight.
Get a close up on that.
Cool, so this is our design area.
This is where we design a bunch of the products.
We have lots of fun poster boards and stuff,
with kind of all the mocks that we're working on.
We also have along the ground a bunch of the mocks
that we've been working on over the years.
So you can get a close up of that in a second.
>> But this sign is one of my favorite things about Dropbox.
So this sign actually came from the old office.
And our slogan is, it just works.
But if you look closely, there's a subliminal message in the sign.
>> So one of my favorite parts about Dropbox are these vending machines.
Instead of having chips or soda or anything like that,
we actually have electronics.
So if you need a new trackpad, or a new keyboard, or some headphones,
all you need to do is swipe your badge right here.
Type in the number and then the out comes your electronics.
Pretty awesome.
Thanks so much for joining me on this tour of Dropbox.
It's been really fun showing you around.
>> I'm going to close this out with the way we close out
all of our all hands meetings.
This is a special chant we do.
Can I get some help here?
One, two, three-- Dropbox!
It's usually much cooler than that.
...
DAVID J. MALAN: Now if you'd like to visit Dropbox,
head to Mountain View, California, hop on Route 101 north to San Francisco,
where they actually are.
Now we've also had an opportunity recently
to travel to Las Vegas, Nevada for the NAB show,
the National Association for Broadcasters show,
which brings together some 100,000 people interested
in audio and video and technology more generally
to talk about the very latest and greatest.
>> CS50's own Ramon Galvin took this trip and brought with him
a camera crew in order to this footage from the show's floor.
RAMON GALVIN: Hello, world.
OK, I got it.
Hello, world.
Do I have to say my name?
>> CAMERAMAN: Correspondent in the field .
RAMON GALVIN: Can I get a lower third of that?
Correspondent in field.
>> CAMERAMAN: Senior.
RAMON GALVIN: There you go.
...
I know, but I have to do it. [INAUDIBLE].
...
I'm clueless.
...
>> Now's my prima donna pose.
...
DAVID J. MALAN: And they keep mentioning 4K.
What is 4K exactly?
>> RAMON GALVIN: That's a really good question.
Very basically--
>> DAVID J. MALAN: Cut to a clip explaining 4K.
...
Hello, world.
My name is David Malan.
RAMON GALVIN: I'm Ramon Galvin.
DAVID J. MALAN: And we're here at NAP, the National Association
of Broadcasters conference in Las Vegas, Nevada.
But why are we here?
RAMON GALVIN: I don't know.
I don't know, David.
>> DAVID J. MALAN: That was pretty good.
Is this usable?
>> RAMON GALVIN: Probably not.
DAVID J. MALAN: We're back, as is CS50's own Ramon
Galvin, who you may recall from last week's episode.
Ramon, so glad you are indeed back.
>> RAMON GALVIN: I'm glad I still have a job, David.
>> DAVID J. MALAN: So let's address the elephant
that was in the room in Las Vegas, namely 4K.
I've heard about this in the context of TVs and computer monitors,
but what is 4K?
>> RAMON GALVIN: So it's a resolution.
Whenever you're watching a walk through video or a lecture
you get what we call 1080p video.
What that means that the video is 1,000 pixels tall.
>> DAVID J. MALAN: Or 1080.
>> RAMON GALVIN: Or 1080.
Or roughly 2,000 pixels wide.
Now 4K is 4,000 pixels wide, roughly, and roughly 2,000 pixels tall.
DAVID J. MALAN: OK.
So that's kind of like having a grid of four 1080p monitors
right in front of you.
>> RAMON GALVIN: Exactly.
DAVID J. MALAN: OK, so that's all fine and good but why is this useful?
>> RAMON GALVIN: I'm glad I asked you to ask me that question, David.
>> DAVID J. MALAN: It's on the teleprompter.
>> RAMON GALVIN: So there's a documentarian named
Errol Morris that actually makes use of 4K technology.
Ordinarily to shoot an interview, which he usually does,
he would have to either use multiple cameras to get a zoomed in shot
or a zoomed out shot, or shoot the interview twice
to get the same zoomed in, zoomed out shot.
However, now he's using a 4K camera to shoot one huge 4K shot.
And then when he's editing, artificially cropping that shot.
DAVID J. MALAN: And zooming in, essentially,
to give you still 1080p but only some of the pixels from the 4K image.
>> RAMON GALVIN: Exactly, giving him multiple camera shots
out of that one original camera shot.
DAVID J. MALAN: Interesting.
So how could we make use of this for CS50?
>> RAMON GALVIN: I'm glad you asked me that question, too, David.
Because I shot the walk through videos with Zamyla last semester.
And for those videos we would have to run through the walk
through once with a zoomed out shot.
And then I'd have to adjust the camera to get a zoomed in shot.
And then we'd run through it again, running through it two times.
With a 4K camera we can cut our production time in half.
DAVID J. MALAN: I see.
So that should be quite exciting for us, then, this fall.
RAMON GALVIN: Exactly.
DAVID J. MALAN: Well, from the looks of the video
it sounds like it was a pretty exhausting trip.
It sounds like you didn't really have much time to relax.
RAMON GALVIN: Not one bit.
...
DAVID J. MALAN: Well, that's it for CS50 Live.
Thanks so much to this week's contributors.
Thanks so much to the team behind the camera.
Thanks so much to our correspondent--
RAMON GALVIN: Senior.
DAVID J. MALAN: Senior correspondent in the field.
This was CS50.
>> RAMON GALVIN: And this is something, I don't know what.
>> DAVID J. MALAN: It was our dress rehearsal.
So that all sounds great.
Bigger TVs, more pixels, more resolution.
But why is this actually useful?
>> RAMON GALVIN: I'm glad you asked that question, David.
>> DAVID J. MALAN: I'm glad you asked-- I'm glad I asked you to ask me that.
>> RAMON GALVIN: No, I say I'm glad you asked me the question.
And then you say, well it's in the prompter.
I'm glad I asked you to ask me that question.
DAVID J. MALAN: Well, it's in the prompter there.
RAMON GALVIN: I'm glad you--
DAVID J. MALAN: I think it's funnier if you just say,
I'm glad I asked you to ask me that question.
Because it's kind of a play on what you would expect.
>> RAMON GALVIN: OK.
I'm glad you asked me to ask that question, David.
There's a documentarian.
>> DAVID J. MALAN: I'm glad I asked you to ask me.
RAMON GALVIN: I'm glad I asked you to ask me that question.
>> [MUSIC- CAKE, "THE DISTANCE"]

Key Vocabulary

Start Practicing
Vocabulary Meanings

bug

/bʌɡ/

A2
  • noun
  • - a mistake or flaw in a computer program

encryption

/ɪnˈkrɪpʃən/

C1
  • noun
  • - the process of converting data into a code to prevent unauthorized access

payload

/ˈpeɪloʊd/

C2
  • noun
  • - the data transmitted in a network packet or exploit

vulnerable

/ˈvʌlnərəbl/

C1
  • adjective
  • - susceptible to being harmed or attacked

certificate

/sərˈtɪfɪkət/

C1
  • noun
  • - a digital document that proves the identity of a server or user

algorithm

/ˈælɡərɪðəm/

C1
  • noun
  • - a step‑by‑step procedure for solving a problem

memory

/ˈmeməri/

B2
  • noun
  • - the part of a computer that stores data temporarily or permanently

heap

/hip/

C1
  • noun
  • - a region of memory for dynamic allocation

stack

/stæk/

C1
  • noun
  • - a region of memory that works on a last‑in‑first‑out basis

server

/ˈsɜːrvər/

B1
  • noun
  • - a computer that provides services to other computers

client

/ˈklaɪənt/

B1
  • noun
  • - a program or device that accesses a service provided by a server

compile

/kəmˈpaɪl/

B2
  • verb
  • - to translate source code into executable machine code

debug

/diːˈbʌɡ/

B2
  • verb
  • - to find and fix errors in software

virtual

/ˈvɜːrtʃuəl/

B2
  • adjective
  • - existing in a simulated or computer‑generated environment

reality

/riˈælɪti/

B2
  • noun
  • - the state of things as they actually exist

resolution

/ˌrezəˈluːʃən/

B2
  • noun
  • - the number of pixels displayed on a screen

pixel

/ˈpɪksəl/

B1
  • noun
  • - the smallest controllable element of a picture on a screen

conference

/ˈkɒnfrəns/

B2
  • noun
  • - a formal meeting for discussion, especially one with many participants

“bug, encryption, payload” – got them all figured out?

⚡ Dive into vocabulary challenges in the app and lock in your knowledge right after jamming to ""

Key Grammar Structures

  • So in next week's episode we'll talk about microphone technology.

    ➔ Future tense with 'will' + infinitive

    ➔ The sentence expresses a planned future action. The use of 'we'll' (we will) indicates a commitment to discussing the topic. The phrase 'in next week's episode' specifies the timeframe.

  • And what brings you here today in particular from so far away?

    ➔ Indirect question with 'what' + 'brings' + subject + here

    ➔ This is a polite way of asking the reason for someone's visit, emphasizing the distance they traveled. The 'in particular' adds focus to the current occasion.

  • It's definitely gotten more dramatic over the years.

    ➔ Present perfect tense ('has gotten') to describe a change over time

    ➔ The sentence indicates that CS50 has become increasingly elaborate or visually striking over time. 'Definitely' emphasizes the certainty of this change.

Related Songs