Placeholder Image

Subtitles section Play video

  • all right, Tell the world this is CS 50 Live.

  • My name is Colton.

  • Ogden sees 50 unfamiliar for watching this on YouTube on twitch on Facebook and you're not familiar with CS 50 seats.

  • 50 Is Harvard's Injured, a computer science stop by David Malin.

  • My name is Colton Ogden.

  • This is an offshoot of that, and this is sort of a live interactive Siri's where we do a whole bunch of different things.

  • We program things from scratch projects from scratch.

  • I typically do games and Web stuff.

  • We also talk about technologies and libraries, all kinds of stuff.

  • But this is a new thread where we're actually trying out an experiment where we have the sort of the twitch chat coating for me.

  • I'm sort of acting as a proxy.

  • And so what the sort of system is that we have in place now is, and I'm just gonna go over and, uh, write this in the chat here.

  • Just that everyone knows if anybody is a newcomer to this idea.

  • If you're on twitch, you can enter Smiley's Emojis, and there's a bunch of different emojis of unfamiliar with twitch that are very common on twitch and sort of ah, hallmarks of the platform.

  • One of them is the Mr Destructor emoji.

  • And so right there you can see it.

  • There's three of them.

  • That is the marker for you to tell me that you want to write a line of code in the script today or amend somebody else's line of code.

  • Just basically the participation marker on DSO right now.

  • You can go ahead and start doing that.

  • But if I see those three robots, that tells me, Okay, add so and so is named to the roster.

  • And we will.

  • We'll get started.

  • Now I'm gonna switch to my computer and you can see that a couple of folks actually put the emojis in the chat before the stream began while we were doing the music.

  • So as the tea and so has or are the first people that are going to be participating in today's experiment Now, last week, what we ended up doing is kind of a couple of different things.

  • We did a chaos sort of run, which is almost sounds like a game thing.

  • We did a chaos project where there was no goal.

  • We essentially just said you know in order of whoever wants to participate, just say a line or an amendment and we will run the script when we get to a point at which is run Herbal.

  • And we finally got that run herbal and it was It was crazy.

  • It was Mihm's all over the place.

  • But then we finally got after that to a more goal oriented project where we actually implemented in asking Square.

  • And that was cool because we had the sort of witness is the assumption that some people are going to take it seriously and some people are not gonna take it seriously.

  • And that's why it's entertaining.

  • Um, and I get to sort of sit back, sort of referee the situation, but, like, kind of enjoy the process.

  • And it's funny to see people take the sort of the troll sort of submissions.

  • You know, where it's obvious that they're tryingto kind of steer the project away from completion for the sake of good intended humor, of course.

  • But then to see, like other people who want to see the project completed, actually amend lines or add lines in order Thio make those lines not work in the project.

  • And so you kind of get to experiment with what you're capable of and python and how you can sort of fix any code base given any sort of unfortunate situation.

  • Now, some people just went ahead and submitted the robots as well.

  • So I'm gonna go ahead and write them in.

  • So the Choco kid 21 we have and I apologize if I type of your screen name.

  • Some of these are a little bit tricky.

  • Colin.

  • Poor Ross, Uh, for us.

  • And what of zero and can Ah, Zhu, are we gonna be able to comment outlines in the stream?

  • That was another thing that came up.

  • That was interesting.

  • So I don't think so.

  • So no, no commenting outlines because that's a very easy way to sort of get rid of somebody's work.

  • So what I think we're going to do is, instead of doing that, we will.

  • There are definitely ways that you can take somebody's line out of the equation using python constructs like if statements, air loops or function definitions, all kinds of things, that actually introduces more interesting ways of using what people have built up later in the project.

  • So No, no commenting out, no deleting lines.

  • You can amend the line.

  • You can make a small change to a line that will sort of be up to my discretion, whether that's a valid amendment, because obviously you could say I amend this line to be completely deleted, completely gone.

  • That will not be a valid amendment.

  • But if you want to change something small about somebody else's line, you can propose an amendment.

  • So make sure you specify your amendment, specify your line and, um, no commenting up.

  • And I think that's roughly all the rules that we decided on that we would take this time.

  • Just that we make sure everybody's work gets sort of equally valid sort of cryonic credence.

  • But consideration?

  • Uh, cool.

  • We just make sure meeting the chat.

  • Some folks are potentially saying this.

  • Problems with Stream.

  • I know Facebook is having some issues today, for some reason.

  • Hopefully, if you're on watching on Facebook and it's having issues, go to twitch twitch dot tv Sisy SVT TV so that you can participate in the in the chat and actually be part of the part of experiments, because this is a particularly bi directional day because a lot of time we do have a bi directional, but it's more of a project that I'm building or someone else's building, and we'll take sort of input and will answer questions.

  • But it's not nearly as bi directional est today streams air work by.

  • You're literally writing everything that goes on in the script today.

  • And, uh, I was also doing some research on twitch bots, and there might be a way to turn this turn at least the robot side of things into a twitch baht, if not the entire script writing process.

  • But I have to take a lot of have to take a lot closer of a look at that and actually experiment with it and test it because I have no idea whether that's one completely safe and to as possible and streamlined as I'd like it to be for this channel.

  • How do you use procedures and functions?

  • Uh, you would just do right, a function like deaf, some function, which could take in some argument.

  • And then you would say, you know, some function called some other function call right.

  • This would be a function, and, uh, this is would be the definition, This would be the body of the function.

  • So what is the goals?

  • That's interesting, because good question, True Guineas.

  • The goal today, I think what we would do.

  • Some people actually propose Project Oiler last time.

  • And I think Brian actually in a prior stream, uh, suggested Project Oiler was one of the sites that he liked for problem solving.

  • And so I think that might be an interesting way for us to create a goal for today Stream unless you want a brainstorm, something else.

  • We want to decide on a goal collaboratively.

  • But chaos was a little bit.

  • If people want to do a chaos, I'll leave it up to the stream.

  • But it ended up being kind of like the goal was more interesting because we actually had something that everyone is fighting for.

  • We had this tension between, you know, people that wanted to prolong the stream, people that wanted Thio, people that wanted to actually solve the problem.

  • So and then wolves, I will add you as well.

  • So But if there is overwhelming consensus, that chaos is what we want to dio, especially if we have a lot of people that didn't that weren't here for the first time.

  • We did the stream, then, uh, I'm certainly open to that.

  • I ultimately want this to be entertaining for everybody.

  • So So how's your?

  • The goal of the goal was to essentially make a, uh, make a box that looks like this, you know, but actually square.

  • But to actually have this be, like an input from the user of the user input, like five.

  • And it would draw a five by five square.

  • So it was a pretty simple goal.

  • We were gonna do Mario eventually, but people proposed that that might, you know, be against academic dishonesty guidelines, which is completely valid.

  • So we will we'll stay away from anything.

  • CS 50 problems that related and just do custom problems here with their infinite problems we could come up with So we don't have toe.

  • We don't have to stick with purely CS 50 problems.

  • So when you do the streams, typically they are Wednesday, Thursday, Friday, For now, because Mondays and Tuesdays.

  • This room is sort of in use for other purposes.

  • But you can expect Wednesday, Thursday, Friday, sometimes not Friday.

  • It really depends on what's going on here at the office.

  • You know, there's we have a lot of other projects, but we unfortunately have to spend a lot of time on, and this takes up a good amount of time.

  • So we try to get this in as much as possible, but we don't do it.

  • You know, as much as your average full time twitch streamers, for sure.

  • Um so why don't we go ahead and take a look at first?

  • I'm gonna save the names so far and cut this music, actually, and, uh, let's go ahead and take a look at Project Oiler.

  • So I don't remember the name of the website or the website domain actually dot net and they have an archive section here, and there's a lot of a lot of problems.

  • There's, you know, this is page 50.

  • There's 14 at least 14 pages 100 there, 655 problems.

  • So the we could start with something fairly easy, like the first problem, which is, if we list all the natural numbers below 10 that are multiples of three or five, we get 356 and nine.

  • So we need some way.

  • Thio identify whether a number is a multiple of three or five, not three and five foot three or five and then add the multiply at the multiples.

  • In that case, if you add all those multiples becomes 23 The problem here is do the same thing.

  • But for all the multiples of three or five below the number 1000 So we could we could use this use.

  • This problem is the basis for our stream.

  • We could also look at other problems.

  • But there are so many problems on Project Oiler that I'm not sure if you want to spend too much time digging into reading all these problems when we actually started writing code.

  • So if you want to try the multiples of three or five Oh, and also another rule and this is this is good for for what we're hearing from Unknown Boy Act Now in the chat, you cannot do compound statements in python so you could not do something like, uh which was what they did, which is a four loop for in 0 26 We should actually be range, I think Rain.

  • Oh, can you do four in topple?

  • Does that work?

  • I'm actually not sure, but basically, this has to be.

  • It's its own lines submitted by somebody.

  • You can't do this and then do another if statement and then d'oh another line after that, it needs to be, um it needs to be a, um It needs to be just the first part.

  • Surreal CS is what happened to the stream.

  • So are people seeing people are seeing the twitch stream, right?

  • Technically, but it will just give you zero in 26.

  • Okay.

  • Yeah, I've never seen I've never seen a couple syntax used in in a four live in python.

  • I always see range for numeric adoration.

  • But there are so many things that I don't know.

  • Um okay, so so, so sorry for folks that are watching.

  • And people on other platforms that are seeing weird stuff on your hair.

  • And YouTube or Facebook come to twitch.

  • Probably because switches the stabilised platform right now, and we'll, we'll figure out the other situation later.

  • Did I go dark?

  • Uh, cold went dark.

  • What does that mean?

  • But does it work?

  • Really?

  • Just make sure I'm reading the chat and make sure I see everything.

  • Okay, So why don't we?

  • I want him quite light.

  • Yes.

  • Good.

  • That's generally how I am.

  • You're disconnecting from real life.

  • So what I think we'll do, We'll probably will.

  • Probably just 2% since the very first.

  • The very first Ah, problem on Project Oiler.

  • And this is the first time we've done a project.

  • Everything.

  • Let's just do the very first problem and save ourselves the time of actually going through all the problems finding one.

  • And, you know, because we've already spent a few minutes with the technical difficulties that we're having today.

  • So, um yeah, let's do this.

  • Let's do the list.