COMP6080 | Week 9 Live — Transcript
Full transcript
- 0:01[music]
- 0:06[bell]
- 0:08[music]
- 0:15[music]
- 0:26[music]
- 0:43[music]
- 0:53I [music] love you.
- 1:10[music]
- 1:12Heat.
- 1:17[music]
- 1:23[music]
- 1:28Heat. [music]
- 1:33[music and bell]
- 1:55>> [music]
- 2:00[music]
- 2:40[music]
- 2:54[music]
- 3:00[music]
- 3:06[music]
- 3:11[music]
- 3:18[music]
- 3:23[music]
- 3:28[music]
- 3:36>> Hi everyone. How are you? Hope you're
- 3:38well. Uh look,
- 3:43let's get straight into it today.
- 3:46So um today's lecture is really just
- 3:51about the exam in particular and then
- 3:53any spare time we have will be spent
- 3:56talking about basically just more of
- 3:59react and things like that. So for this
- 4:01particular term, the exam's quite a
- 4:03straightforward thing to explain purely
- 4:06because it's a theory exam just like
- 4:08your quizzes. And it's important to
- 4:09remember the purpose of the quizzes
- 4:12throughout the term wasn't just to
- 4:14improve the way that we assess you. It
- 4:16was also to prepare you for the exam
- 4:19because you know one way or another
- 4:21these exams that are increasingly
- 4:23heading offline
- 4:25uh were always going to be difficult to
- 4:28make people do programming offline
- 4:29regardless of AI. So there was an
- 4:31intention to to have them be like theory
- 4:33based anyway. Uh but rather than slay
- 4:35you with that we've had quizzes
- 4:37throughout the term which are aimed to
- 4:38help that. So I'm here to just kind of
- 4:41give you an overview of the exam itself.
- 4:43So, first and foremost, and there's not
- 4:45really too many points here, uh it's
- 4:48just like a normal computer science
- 4:49exam, it is a fit to sit policy exam,
- 4:52and that means that uh you know, you
- 4:56turning up to the exam basically voids
- 4:58any kind of pre-existing condition that
- 5:00you might have. I always explain this to
- 5:02students every term. The crux of it's
- 5:03like you know, let's say your exam in
- 5:06the case of uh 6080 is going to be in
- 5:11the afternoon. All right. Well, then
- 5:13when you turn up to the exam in the
- 5:15afternoon, you sit down. Any issues that
- 5:17you have had uh prior to that point
- 5:21aren't allowed to be counted as special
- 5:23consideration. Things that come up
- 5:24during the exam are okay. So, you know,
- 5:26for instance, if during the exam you
- 5:28develop an illness at that point, I'm
- 5:31just pulling up the exam time table here
- 5:33uh really quickly. If you have that
- 5:36issue once the exam starts, then it can
- 5:39be grounds for special consideration. Um
- 5:41it's mostly just to point out like if
- 5:43you wake up the day of the exam and you
- 5:46do not feel well, you need to not sit
- 5:48that exam. Now I think a worthwhile
- 5:51point to make is that
- 5:54okay don't know why that didn't work. um
- 5:57being locked out of UNSW. It seems
- 6:00if you for whatever reason can't make
- 6:03the exam then um you know sorry if you
- 6:07can't make it on the grounds of special
- 6:09consideration you can sit a
- 6:11supplementary exam. Now I have to point
- 6:13this out because increasingly
- 6:15students are sitting supplementary
- 6:17exams. Um I haven't
- 6:21looked this up exact. Yeah. Okay. Um, so
- 6:24essentially, and I don't control this to
- 6:27be 100% clear. So when it comes to
- 6:29supplementary exam dates and stuff, no
- 6:30one asks me um my opinion, I'd basically
- 6:33get told the same time you do. So if if
- 6:36you do either miss this exam due to
- 6:39special consideration or alternatively
- 6:42um you start the exam but because of an
- 6:44issue that appears during the exam, you
- 6:46then sit a supplementary exam. You will
- 6:49be sitting that in the middle of
- 6:50January. Now, these T3 exams in
- 6:53particular, I think um students do not
- 6:56like sitting the supplementary exams
- 6:58because they're in an awkward time in
- 6:59the middle of January.
- 7:01If you can't make the supplementary exam
- 7:03because of another illness and you get
- 7:05more special consideration approved,
- 7:07they will grant you another
- 7:09supplementary exam. Um but typically
- 7:12this one is much closer to term, maybe
- 7:15like the first week of February or
- 7:16something like that. If you then can't
- 7:18sit that exam because of uh you know
- 7:25illness or things like that um then what
- 7:27they will often do is put you in the
- 7:30exam period for the following term. So
- 7:34in the case of COM 6080 that would be
- 7:36May of 2027. So that's kind of how the
- 7:39the cascading effect of special
- 7:41consideration and stuff like that works.
- 7:43Because this is an inerson exam.
- 7:46Everything is handled on the day. So you
- 7:48turn up on that day and uh if you have
- 7:51any issues and stuff, you talk to the
- 7:53invigilators and they will give you
- 7:54guidance on on what exactly to do. Now
- 7:58in terms of the exam itself, and I'm
- 8:00just going to double triple check
- 8:03confirm this. Um
- 8:08yep,
- 8:10triple triple triple checking. Sometimes
- 8:13they change it last minute. So, I just
- 8:14want to make sure that this is 100%.
- 8:17Okay.
- 8:22Yep. Okay, cool. They haven't changed
- 8:24it. Just good. Double checking. So,
- 8:26basically the comp 6080 exam is on the
- 8:297th of December. That's a Monday. It's a
- 8:32Monday today. The 7th of December is
- 8:34approximately 4 weeks away, right? So, 4
- 8:37weeks from today is your exam. It is a
- 8:40morning exam. CSSE run these exams
- 8:43because they are inerson individualated
- 8:45exams and they will contact you uh with
- 8:48an actual like specific exam location
- 8:50and times and stuff like that. But
- 8:52typically what you see with these exams
- 8:54they do start somewhere between 9:30 and
- 8:5610 um you know like those things can
- 9:00vary slightly but that's the kind of
- 9:02framing in which you would expect uh to
- 9:04start that exam. Now there's a few
- 9:07points to be made in terms of the exam
- 9:09time and duration.
- 9:11Firstly,
- 9:13if you have a genuine clash, if you were
- 9:15assigned an exam in another course,
- 9:18uh that is also on the morning session
- 9:22of the 7th of December. Uh you need to
- 9:26contact the school of computer science
- 9:28and if you contact me, I will just
- 9:30forward it to them because they deal
- 9:31with it. They work with the exams team
- 9:34to figure out an alternative time for
- 9:36you to sit that exam. it's nearly
- 9:38definitely always later uh usually in
- 9:41like the coming days after. Um so yeah,
- 9:45take note of that. If you have an exam
- 9:48in the afternoon on the 7th of December,
- 9:51UNSW does not consider that a clash. Uh
- 9:54every term there's students that are in
- 9:56that situation. They consider that a
- 9:59regular and reasonable thing. Um if you
- 10:02contact them and say, "Can I move my
- 10:03exam? There's too much in one day."
- 10:05Unless you have an equitable learning uh
- 10:08adjustment, they will just say that is
- 10:11just how it is. However, obviously, if
- 10:15you have a morning exam that runs over,
- 10:18then uh they will like grant you special
- 10:22consideration or or work, you know,
- 10:24they'll basically say like the reason
- 10:26you were late to the other exam, your
- 10:28afternoon exam or the reason you
- 10:29couldn't sit it was out of your control
- 10:31essentially. Um, an example of that
- 10:33could be if you turn up to start the
- 10:35exam at 10:00 a.m., but the power goes
- 10:38out for an hour and now suddenly the
- 10:40exam that was going to finish at 1:00
- 10:41p.m. finishes at 2 p.m. and your next
- 10:42exam finishes at 2 p.m. So, yeah, keep
- 10:46that in mind.
- 10:48Now, in terms of the exam structure, uh,
- 10:52it is a 3-hour exam and it is 35% of the
- 10:55course. The structure of the final exam
- 10:58really will be the same as quizzes
- 11:02with the format of here is a question.
- 11:06There is a context. There is like
- 11:09context and writing. There are
- 11:11supporting files that help explain what
- 11:14this is about followed by um
- 11:20I should just check another thing really
- 11:21quickly.
- 11:24I'm just making sure that I just got an
- 11:26email from a student having trouble with
- 11:28the lecture link.
- 11:30So, I'm just making sure this works.
- 11:36Two seconds.
- 11:39Great. Oh,
- 11:49okay. Standby. I have linked to the
- 11:50wrong thing.
- 12:02Heat. Heat. N. [music]
- 12:09[music]
- 12:20[music]
- 12:28>> [music]
- 12:36[music]
- 12:42[music]
- 12:51[music]
- 12:58[music]
- 13:08>> I love you.
- 13:14[music]
- 13:16Heat. Heat.
- 13:28[music]
- 13:36[music]
- 13:41>> [music]
- 13:47[bell]
- 14:00[music]
- 14:17>> Okay. Hi. So basically uh where I was
- 14:21getting at with the structure is that
- 14:23the structure of the exam itself is just
- 14:26the quizzes but longer right so we give
- 14:29you the supporting files we give you the
- 14:31context and then we ask you like a
- 14:34single or multi-art question uh where
- 14:36you go to answer it now we will be
- 14:39providing you with a sample of this
- 14:42final exam um it's likely that that
- 14:44sample will appear sometime in week 11.
- 14:48So about a week and a half to two weeks
- 14:49out from the exam. Right now all of our
- 14:52tutors are working on quiz 3. So we
- 14:55actually have six tutors right now who
- 14:56are working on quiz 3, triple reviewing
- 14:59everything, making sure it's ready. And
- 15:01then once quiz 3 is out and underway,
- 15:03and the marking for quiz 3 begins, which
- 15:05we usually get through quite quickly, uh
- 15:08their time and attention will then be
- 15:10diverted over to um basically to the
- 15:14final exam, right? and how it's going to
- 15:17work with the final exam. And just to
- 15:18give you full context is how we do it.
- 15:20We basically get them to write an exam
- 15:24and then once I'm happy with the exam,
- 15:27we release that as a sample and then I
- 15:30say to them do it again. [laughter]
- 15:32It's like the crux of it, right? So um
- 15:35that's the process of it. We don't have
- 15:36a sample because we are we have changed
- 15:39the content tried to make it more AI
- 15:41ready this term. Um so that content will
- 15:45trickle through in the exam
- 15:48um format basically uh a couple weeks
- 15:52out from the exam. I'd love to release
- 15:54it now. We just don't have it and I
- 15:56would feel really silly if we had it
- 15:58ready for everyone right now and no
- 16:00one's going to work on it. Um and then
- 16:02that was taking time away from from quiz
- 16:043 which for many students is right now
- 16:06where they'd prefer that we're spending
- 16:08the time and energy basically. So, um,
- 16:11yeah, that's that's pretty much in terms
- 16:13of the structure of it. Thankfully, we
- 16:15should be able to get this done really
- 16:17quickly because for a typical quiz, we
- 16:20have to produce somewhere in the realm
- 16:22of about 60 odd questions because we
- 16:25need to create variations of questions.
- 16:27However, for the final exam,
- 16:30uh, we're only going to need to be able
- 16:32to we're only going to need to create
- 16:33maybe like 18 questions, right? Because
- 16:36if a typical quiz has around about six
- 16:39questions and uh this exam is 3 hours
- 16:43long, it's probably going to be
- 16:45somewhere between 16 and 20 questions
- 16:47depending on the waiting of the
- 16:48questions, right? Like it's more like 15
- 16:50to like 22 depending on the size of it.
- 16:52So, um there's less work for us to do.
- 16:55So, we should be able to churn out that
- 16:56sample for you quite quickly, which is
- 16:58great news overall. Um and I'm super
- 17:00excited to get that uh to you as well.
- 17:03It is worth 35% of the course. And what
- 17:05isn't written on this page, this is a
- 17:07new page that we've written. Just going
- 17:08to make a quick note of this so I can
- 17:10add it to the page because it is in the
- 17:11course outline and stuff, is that the
- 17:13final exam is a hurdle exam. So that
- 17:15means you do need to pass the exam to
- 17:17pass the course just like the quizzes.
- 17:20Um the hurdle is adjusted. Sorry, not
- 17:23the hurdle, the marks are adjusted for
- 17:25the hurdle in the sense that uh
- 17:27basically
- 17:29you know a you don't have to get a raw
- 17:31mark of 50% of the exam. you have to get
- 17:33like what is a passing mark. Um, and the
- 17:36way that this literally happens all the
- 17:38time is that we go and we look at
- 17:39students and their submissions in the
- 17:41context of how difficult the quiz was or
- 17:43wasn't um the exam. When I say quiz, I
- 17:46mean exam and and that's how we assign
- 17:48uh that final mark essentially. So, uh
- 17:52you know that's good. So, don't go in
- 17:54thinking it's a raw mark. Uh I couldn't
- 17:57tell you the exact raw mark that would
- 17:58equival uh be equivalent to a pass but
- 18:01if I had to guess it's somewhere between
- 18:05you know it's somewhere between
- 18:0825 and 40%. Um
- 18:12you know the nature of these types of
- 18:14exams are that it's quite it should be
- 18:17quite easy for most students to get um
- 18:20you know basically
- 18:23uh a small chunk of marks you know. So I
- 18:26wouldn't be surprised if 40% raw mark is
- 18:28the pass mark for this exam. Um you know
- 18:31we do try and uh you know we do look at
- 18:34certain pass fail rates. So for instance
- 18:38if the exam turns out to be harder than
- 18:40expected that doesn't mean harder for
- 18:42you. It means like harder on average for
- 18:44the cohort. In those scenarios then we
- 18:46do go and tweak it um more than in cases
- 18:50where it's not because it would be very
- 18:52silly like you know these are new exams,
- 18:53these are new assessments. I I think
- 18:55it's reasonable that there is some
- 18:56adjustment because it's always very
- 18:59difficult to anticipate how students
- 19:02perform um when you're creating new
- 19:04assessment. So that's something that we
- 19:06um we do if you're joining uh live late
- 19:09cuz there was a error with the link for
- 19:11some people. Um we have already talked
- 19:13about section one and two and we've just
- 19:16finished section three which is probably
- 19:17what you heard when you were joining.
- 19:19But the crux of it for people who are
- 19:20just tuning in now is, you know, you
- 19:22don't charge the exam if you're already
- 19:24sick and you want special consideration
- 19:25for that. Uh the exam is the morning of
- 19:28Monday the 7th of December. Uh if you
- 19:30have clashes, the only genuine clash is
- 19:32if you have an exam at the exact same
- 19:33time and it's a 35% exam that emulates
- 19:36the quizzes. It's just longer and we're
- 19:38going to get a sample exam to you 2
- 19:40weeks roughly before the exam starts. So
- 19:44yes, in terms of platforms to complete
- 19:45this exam, uh because COMP 680 has
- 19:48changed its exam over the years, it's
- 19:51something that really needs to be
- 19:52emphasized. So you know, if you go back
- 19:54through COMP 680's exam history, it used
- 19:56to be online online
- 20:02in person in person online in person,
- 20:06I think, or something like that. Like
- 20:07and the inerson ones were BYOD. And so,
- 20:11you know, one of the problems we have
- 20:12with students is that sometimes students
- 20:14think a genuine defense of their
- 20:16understanding of the course is that I
- 20:18didn't read my emails. I didn't watch
- 20:19lectures. I asked my friend what
- 20:21happened in the past. So, I expected
- 20:22that. Um, this is why you should pay
- 20:25attention to why it's great you're even
- 20:26listening to this. So, good job. But
- 20:28this term, it is not an online BYOD
- 20:31exam. This is a standard CSE lab exam
- 20:35where you will turn up to a lab. You
- 20:37will use a lab machine and you will um
- 20:40type answers in that lab machine. Now, a
- 20:43really important note. [clears throat]
- 20:44Um I emailed CSSE asking them some
- 20:46questions about the the exam environment
- 20:48a few weeks ago, but they still haven't
- 20:50replied to me. I was hoping to try if I
- 20:53can to run like the the noose
- 20:57environment in the exam just so it's
- 21:00familiar to students if that makes
- 21:02sense. Um they haven't replied so
- 21:05there's a chance that I might not be
- 21:07able to do that. We might have to use
- 21:08like the cse exam environment.
- 21:12I'm going to have to make that call this
- 21:13week because if they don't um appear
- 21:17then you know that's what we're going to
- 21:18have to do. Here's how it's going to
- 21:20work with the exam environment.
- 21:23Obviously, the sample exam is there to
- 21:27help you understand the questions that
- 21:28you need to answer. That's most of the
- 21:30problem you're trying to solve is just
- 21:32getting comfortable with the questions.
- 21:33The other part though, naturally, is
- 21:37just the environment itself, like the
- 21:39experience of trying to answer questions
- 21:42within the lab environment.
- 21:45to get you comfortable with that. Um,
- 21:47there's going to be two things that
- 21:48we're going to do. One is during week
- 21:5111,
- 21:53I'm going to organize some tutors and
- 21:54some cheat rooms where students like
- 21:57yourself can drop in and using Tiger VNC
- 22:03on your own laptop,
- 22:05you can connect to the exam environment
- 22:07with the sample exam and you can
- 22:10basically play around with it, right?
- 22:12You can get a feel for it. You don't
- 22:14have to do the exam, but you can just
- 22:15like see what it's like toick click
- 22:17around and stuff like that. If for some
- 22:19reason you don't make it in during week
- 22:2111, and I wouldn't blame you. I I
- 22:24certainly might not make the commute. Uh
- 22:29what we will do is we will basically do
- 22:32a screen recording of a tutor using the
- 22:36exam environment. Just so that that's
- 22:3880% good enough. just so that you can
- 22:40see what it's like for them to use the
- 22:42exam environment. Um, so we want to make
- 22:44sure that you feel comfortable with the
- 22:46exam environment. Um, either by doing it
- 22:48yourself or getting a tutor to to look
- 22:50at it. Personally, if I was just a
- 22:53general student, I don't think it's
- 22:55something worth making a whole trip in.
- 22:57If it's like a half an hour, 1 hour trip
- 22:59just to log into a thing and look at a
- 23:00screen. Um, I think the the recording
- 23:04that we will give you will be more than
- 23:05adequate. However, if you're already on
- 23:08campus in the city at university in week
- 23:1011 for whatever reason, you might as
- 23:12well pop in if you're around. That would
- 23:14be my kind of hot take on the topic. U
- 23:17but it is on a lab machine. It is closed
- 23:20book. Um it says you may not access any
- 23:23notes, external websites or AI tooling
- 23:25during the exam. Um
- 23:29I'll need to clarify this some more as
- 23:32I'm reading it.
- 23:34I always write these pages out and then
- 23:36when I spend like an hour explaining
- 23:38them there's a few things that come up.
- 23:39Okay. So [clears throat] during the exam
- 23:43we will provide you with all of the code
- 23:47for the exercises as well as all of the
- 23:49lecture slides.
- 23:51Now I'll be totally upfront. I don't
- 23:54think that's going to be particularly
- 23:55helpful.
- 23:57uh
- 24:00like the nature of the way we write
- 24:02questions is not designed this term to
- 24:08like
- 24:10make it like if this makes sense. The
- 24:12questions are like like a question's
- 24:14worth about a mark. Sorry, a question
- 24:16might be worth two marks and if it's
- 24:17worth two marks, we typically expect you
- 24:19to spend a few minutes on it. there's a
- 24:22very high chance that the question does
- 24:24not require you to like remember
- 24:26something from a slide. It requires you
- 24:28to have an understanding of things
- 24:29generally and to apply analytical
- 24:31thinking. And if you did need to look
- 24:33something up, the amount of time you're
- 24:35going to spend looking something up is
- 24:38like, you know, there's some basic
- 24:39things we expect that you know, like if
- 24:41we said to you, can you explain exactly
- 24:44where, you know, using props in a React
- 24:47component is going to be useful?
- 24:51you know, if if you like needed to look
- 24:54something up for that, you're probably
- 24:55going to spend all the time you have for
- 24:57the question looking it up, you know. Uh
- 25:00so I I wouldn't really get too excited
- 25:03about having access to those resources.
- 25:05I do believe uh I also wrote it down
- 25:09when the school was asking
- 25:12me for things. Yes, I think I did. Um
- 25:16which is that
- 25:18you can Oh, I need to
- 25:21I need to double check that. Um, you can
- 25:24bring in notes.
- 25:27Um, just going to triple triple check.
- 25:32Just want to make sure I get this right
- 25:33cuz
- 25:36there's always some confusion
- 25:40every year.
- 25:46Sure. Okay.
- 25:49I'll also um clarify this. Um I think
- 25:54it's double-sided.
- 26:00Okay. In this exam, you are able to
- 26:03bring in a double-sided
- 26:07double-sided A4 page of handwritten
- 26:09notes. That is the only thing you are
- 26:12allowed to bring into the final exam.
- 26:19I once again
- 26:21would generally suggest that you don't
- 26:24lean too heavily on this. I think there
- 26:28is often a fairly strong correlation
- 26:30with the amount of notes people bring
- 26:32into an exam if they can bring in notes
- 26:34and them not doing particularly well in
- 26:36in the exam for a lot of exams. I'm not
- 26:39saying correlation doesn't mean it's
- 26:41causation, right? It doesn't mean it's
- 26:42going to happen. But I think I think it
- 26:44has a general correlation on account of
- 26:45the fact that like people who bring in a
- 26:47lot of notes, they bring in a lot of
- 26:49notes because they they haven't learned
- 26:51as much typically and they feel like by
- 26:53writing it down they're going to, you
- 26:54know, bypass that because they're going
- 26:56to be able to discover it in real time.
- 26:58Uh I rarely find that to be the case.
- 27:01That doesn't mean you can't do it. But
- 27:04um
- 27:07yeah.
- 27:09Yeah. I I think
- 27:15you know I I have this simple view on
- 27:17preparation in this course which is that
- 27:21what you should be doing to prepare for
- 27:24the exam and for the quizzes in this
- 27:25course quite straightforward. You watch
- 27:27the pre-recorded lectures. If you need
- 27:30help stitching ideas together you can
- 27:32watch the live lectures.
- 27:35You then go and do the mandatory
- 27:36exercises and you go and complete the
- 27:39assignments.
- 27:40The assignments in particular are okay
- 27:43to do in an AI assisted way. Not that it
- 27:46skips your understanding of stuff. You
- 27:47should generate code for things you
- 27:49already understand and feel like you
- 27:50could explain. And for things you don't,
- 27:52you probably shouldn't generate the code
- 27:54for it. If you do all of that, you're
- 27:57ready for the exam.
- 27:59If you haven't done all of that, you
- 28:01should probably do all of that first
- 28:03before you even get to writing things
- 28:04down on an A4 page.
- 28:07If you have done all of that and then
- 28:09you sit down and you do a quiz or you
- 28:12look back at your quizzes and you still
- 28:14see questions in those quizzes that make
- 28:15you think, "Huh,
- 28:20I wouldn't have uh thought of that. I
- 28:23didn't know that. I didn't think about
- 28:24that." I think they're good things to
- 28:26write down in the notes, but otherwise I
- 28:29think it can be like I wouldn't go out
- 28:32there and try and summarize a bunch of
- 28:34stuff. And also like we give you all the
- 28:35lecture slides and we give you all of
- 28:37the source code for all of the tutorial
- 28:40exercises and like there's like we give
- 28:42you all the stuff you need, you know? So
- 28:44I I just I don't mind I don't care what
- 28:46you bring in personally. It's more just,
- 28:47you know, I I know that there's there's
- 28:49someone out there who spends like hours
- 28:51upon hours upon hours handwriting all of
- 28:55these notes on on A4 page just to barely
- 28:58need them because they can't, you know,
- 29:02digest it quickly enough in the actual
- 29:03exam type of thing. Oh, sorry. There was
- 29:05the hurdle thing. I'm so crazy. I
- 29:07thought I was like, I did write the
- 29:08hurdle. My bad. I was like, why isn't it
- 29:11there? I put it in a separate section.
- 29:13Okay, so we covered the hurdle already.
- 29:15To prepare for the exam, I also just
- 29:16covered this. Please complete all
- 29:17exercises, old assignments, and the
- 29:19sample quiz. Um yeah, obviously on Noose
- 29:22you can see your quiz questions which is
- 29:24pretty cool. So you can like just go
- 29:25back and take a look at that anytime uh
- 29:27and get comfortable with it. Really
- 29:29really easy. And yeah, any questions
- 29:33about the exam? Um
- 29:37post them in the chat. That would be
- 29:40great.
- 29:51We'll see how busy the chat is. I'll
- 29:52give everyone 30 seconds just to see if
- 29:54they have questions.
- 30:11Very quiet.
- 30:15Hello all the people watching.
- 30:20I Oh, there's so many hearts. Oh, that's
- 30:22sweet. Okay, I'm going to assume if
- 30:23someone's spamming the but I mean
- 30:25there's one person probably spamming it.
- 30:29You know, I get I run this podcast. I
- 30:32don't run the podcast. I'm on the
- 30:33podcast and I get in trouble for
- 30:36drinking Coke on the podcast.
- 30:39Um, cool. Okay. Well, that's the exam in
- 30:43a nutshell. I don't think you should be
- 30:45worried. Do you know what I mean? Like,
- 30:47I think it's like you have the quizzes,
- 30:50um, we'll give you a sample exam, we'll
- 30:52give you the environment, you have the
- 30:53content, all of this. Uh, I think we're
- 30:57getting past the easy part of the
- 30:58course. And if you can make it through
- 31:00quiz 3, I think you're on the home
- 31:02stretch. And I I really can't stress
- 31:04this enough. The quizzes were there to
- 31:07help you get comfortable. So like if
- 31:09you're scoring because the quizzes have
- 31:10been scaled, right? So if you're scoring
- 31:12marks in the quiz of greater than
- 31:16you know
- 31:19like eight out of 15, like you're good.
- 31:23You're sweet. You know what I mean? Like
- 31:26just keep doing what you're doing. And
- 31:27if you're getting marks less than 8 out
- 31:28of 15, don't panic. Like if you're
- 31:30getting marks of like less than four out
- 31:32of 15, maybe you should like take things
- 31:35a bit more seriously. um like
- 31:37consistently less than that. Uh and if
- 31:40you're in between four and eight out of
- 31:4115, you're probably just in that like
- 31:44you know maybe be a bit more diligent.
- 31:46I'm just giving you round numbers. Like
- 31:47eight's not like a minimum to pass the
- 31:49course. It's more just like anyone
- 31:50getting eight out of 15. I kind of be
- 31:51shocked if they failed. There's tons of
- 31:53people that would be getting sixes and
- 31:55sevens and maybe even fives out of 15
- 31:57that you know may pass the course,
- 31:59right? Like so I can't I can't give
- 32:02numbers. It's one of the worst things.
- 32:03Students always ask me these things of
- 32:05like, "What's the number?" And then I
- 32:06tell them a number and they're like, "Oh
- 32:07my god, I'm like just below that number,
- 32:09I'm going to fail." And I'm like,
- 32:10"That's why I don't want to give you a
- 32:11number." Because if I say anything, you
- 32:13like anchor to it, you know? Um, is the
- 32:15point. But that's pretty much it on the
- 32:17exam. Easy, easy, easy. I don't have
- 32:20much more to add on that. There seem to
- 32:21be no more questions, so I'm just going
- 32:25to join this into the second part here.
- 32:29All right. Um, so
- 32:33the rest of the time we have until we
- 32:35basically run out of things to talk
- 32:36about or questions people have is uh I'm
- 32:40going to talk a little bit more about
- 32:41react as a topic. Uh mostly around route
- 32:46react routed on. Oh, we have got an exam
- 32:48question. Okay, here we go. Um
- 32:51well, I will answer this one. So Oscar,
- 32:53do your question. Uh how can I apply for
- 32:55a change of exam time if I have another
- 32:57exam in the afternoon but there is a
- 32:58part of
- 32:59There is a part of the time conflict.
- 33:04Typically, if you have an afternoon
- 33:06exam, after a morning exam, the school
- 33:08doesn't let people change it. Um, if
- 33:11there's an actual overlap, as in like if
- 33:13your afternoon exam starts at like 12 or
- 33:151, then maybe you could contact the
- 33:18school. I don't deal with that
- 33:21personally. like the the exams in
- 33:23computer science are largely abstracted
- 33:26away from me in terms of like you know I
- 33:28I essentially provide the environment
- 33:31that you have during the exam and uh
- 33:35that's and and I I come on the day to
- 33:37make sure things are okay and besides
- 33:39that it's all fairly um yeah tucked
- 33:43away.
- 33:45So yeah, if there's an actual literal
- 33:47conflict of time, contact the school of
- 33:49computer science.
- 33:51If there's not, you can try and co
- 33:53contact them. But every week a student
- 33:56emails saying, "I have an afternoon
- 33:58exam. 608 is a morning exam." And the
- 34:00school just says that's just how it
- 34:01works. Is the kind of crux of that.
- 34:10Okay. Um All right. Well, before we talk
- 34:12about React, what's going on in the
- 34:14world?
- 34:15>> [sighs]
- 34:15>> Well, last Monday we had a lecture. We
- 34:19had a a good long chat with everyone.
- 34:22Um, and then we woke up 36 hours later.
- 34:29Um, and we found out that Camber has
- 34:31laid off, [snorts]
- 34:33you know, somewhere between 20 and 25%
- 34:35of their staff. Uh, which is pretty
- 34:37wild. Um, so this just like a quick
- 34:40what's going on in the world interlude
- 34:42here for a second. I think there's a
- 34:44couple of important things to note here
- 34:46that I think is worth flagging. 22%'s a
- 34:49large number. Um
- 34:52that is a large number. Like Atlassian
- 34:54cut a similar slightly larger amount of
- 34:57people, but Atlassian was a
- 34:59significantly more distributed and
- 35:01global company. Um,
- 35:04I I think the Canva layoffs are
- 35:06potentially some of the biggest like
- 35:09Australian staff heavy layoffs I've seen
- 35:11in tech, if that makes sense, you know,
- 35:14cuz Canva was such an Australian
- 35:16company. I think there's a couple of
- 35:18silver linings to flag with people,
- 35:19though. Firstly, a significant amount of
- 35:21their layoffs didn't come from
- 35:23engineers. right now. This, you know,
- 35:27this might not necessarily be helpful
- 35:28because, you know, the the junior hiring
- 35:30in engineering has dried up a little
- 35:31bit, but um I think it's something like
- 35:34around half of all of I think it was
- 35:36reported that 70% of their designers and
- 35:3840% of their product managers got cut.
- 35:41Um anecdotally, I heard it was more like
- 35:4450% of designers and 50% of product
- 35:46managers. A lot of engineers were were
- 35:48kept relative to those roles. Um
- 35:52basically you know a way to understand
- 35:54this structurally is that Canva as an
- 35:57organization was a lot of engineering, a
- 36:00lot of software engineers but then in
- 36:02between all those software engineers
- 36:03they had a lot of project managers,
- 36:05growth managers, marketing managers,
- 36:07product managers, designers. Um, and
- 36:12you know, they've taken this approach of
- 36:13trying to like bring the company in
- 36:16together, like flatten things down a
- 36:18little bit, cut through some layers, get
- 36:20some of that startup energy back into
- 36:22it. It's a really like typical thing. As
- 36:24companies grow larger, they notice they
- 36:26they go slower and then they wish they
- 36:28were they remember the good old days
- 36:29when they were smaller and they got a
- 36:31lot more done. Um,
- 36:34now the silver lining I was going to say
- 36:36as well is that um they kept a lot of
- 36:40they kept a lot of Sydney people or some
- 36:43of the people that they let go. They
- 36:46didn't actually let them go. They said
- 36:49to them, "You don't live in Sydney.
- 36:52You have two choices. Move to Sydney or
- 36:56take a redundancy." That was what
- 36:58happened to a bunch of of people. Um, so
- 37:01there were two things going on. One was
- 37:02like they were like there's roles we
- 37:03don't need and the other one was we want
- 37:05to Sydneyify maybe it was Melbourne too
- 37:07but like they want to like really
- 37:08Sydneyify the the company. So this is
- 37:10like good news in terms like software
- 37:12engineers generally weren't that badly
- 37:15hurt compared to other roles and um
- 37:17people in Sydney were less impacted than
- 37:19other roles and particularly people
- 37:21working on important things were less
- 37:22impacted. So, you know, I think it can
- 37:24be really easy to be like, "Oh my god,
- 37:26Canva lost all this stuff, but if you
- 37:29actually really look at it from the
- 37:31perspective of a computer science
- 37:32graduate, um, it's it's not as bad as
- 37:36like 22%. It might I don't know the
- 37:39actual numbers. I'm I literally don't
- 37:40know, but like it might be more like 10%
- 37:42or or something like that. It could even
- 37:44be slightly less." Um, so you know, if
- 37:47if you're an engineer and you're in
- 37:49person and you're motivated, you know,
- 37:52you're you're relatively well protected
- 37:54compared to some of the news and the
- 37:56media um that you see essentially. So
- 38:00that's just an important silver lining
- 38:02to add. Um, but for sure it's a
- 38:06tricky time. Um, but I also wouldn't
- 38:10read into Canva too much as
- 38:13a problem with software engineering per
- 38:15se. It's just the tricky business model
- 38:18that they have, you know, like
- 38:23and again, oop, sorry. Uh, Canva as an
- 38:27organization
- 38:30is is is a I don't know what to call it
- 38:33like it's like an unprotected
- 38:34application. It's just a consumer app.
- 38:36It's like Dolingo. It's like you sign up
- 38:38to it, you can use it, you can just stop
- 38:39using it at any time. If you compare
- 38:41that to another company such as like
- 38:43Atlassian, for example, you know, people
- 38:46say AI is killing these SAS companies.
- 38:49AI is like there used to be a moat
- 38:52around building software which was like
- 38:54if a company like Atlassian built Jura
- 38:56or Confluence, it would be so difficult
- 38:59to build that like so difficult that no
- 39:01one else could bother. But if you and me
- 39:03sat down together and said we're going
- 39:04to build confluence, impossible, take
- 39:07years, decades maybe. However, AI has
- 39:10meant that that's not really the thing.
- 39:11But what companies like Atlassian have
- 39:14in particular, and this is also true for
- 39:16other like Salesforce,
- 39:18uh, is they have clients, you know, they
- 39:22have banks, they have organizations,
- 39:24they have Telra, these large companies.
- 39:27Like when you look at a company like
- 39:28Telra, they're not likely to go and say,
- 39:31"Why don't we just
- 39:34run our own ticketing? We'll build our
- 39:36own ticketing system. We'll vibe code
- 39:39it." They're not going to do that. Even
- 39:40if they could, it's just
- 39:42organizationally like really
- 39:43complicated. You know, it's like, why
- 39:45don't you go and fix your own car? You
- 39:48know, you could save $250 a year. You
- 39:52buy $100 of parts, you do it yourself,
- 39:54you save 150 bucks a year, maybe. Uh
- 39:57well, why not? Because that's not the
- 39:58business you're in. That's not like what
- 40:00you do for a living. So, you just
- 40:03delegate that problem to someone else
- 40:05who's going to take responsibility for
- 40:07the problem. [snorts] And if it turned
- 40:08out that a mechanic ended up being able
- 40:10to fix your car in 4 seconds instead of
- 40:13like 2 hours, and you could learn it to
- 40:16do it in like 2 hours instead of 2 days,
- 40:19you're still probably just going to pay
- 40:20someone to do it because that's not the
- 40:21business you're in, you know? Uh so
- 40:24there are other companies out there that
- 40:26have this like strong protection due to
- 40:28the fact that it's not just code it is
- 40:31um all the relationships that they have
- 40:35you know uh Benjamin uh Benjamin Ben
- 40:37Delaney sorry he did the guest lecture a
- 40:40few weeks ago and a lot of people saw
- 40:41that and in that guest lecture he had
- 40:43this title I loved I think it was him it
- 40:45said coding is solved now what you know
- 40:47and it kind of highlights this point
- 40:48that like you're no longer protected
- 40:50just because you built something and it
- 40:52took time So companies like Atlassian
- 40:54their products whatever their ecosystems
- 40:57and their relationships very powerful
- 41:00very protected. So that'll protect a
- 41:02company like that over a long period of
- 41:04time. Canvas in a trickier boat
- 41:07um because they're not tackling they
- 41:10don't have a ton of relationships with
- 41:11businesses. They have a lot of regular
- 41:13people and regular people are very
- 41:15unsticky and uncommitted. In particular
- 41:17most of those users I think don't even
- 41:19pay for camber. So like they don't even
- 41:21they're not even willing to spend money
- 41:23on it. That makes it very challenging
- 41:24for a company like Canva. I'm not being
- 41:26negative to Canva, right? Like I don't
- 41:28think there's a problem with this. Like
- 41:30it's not like they've done something
- 41:31wrong. It's just the nature of the
- 41:32business they're in. You know, the
- 41:35second like an AI prompt can make a
- 41:37design slide better than Canva. Like
- 41:39it's really quick for that value
- 41:40proposition to disappear. Especially
- 41:43when people are finding a lot of value
- 41:44in AI and might already be paying for AI
- 41:47when they weren't already paying for
- 41:48Canva. or maybe they're paying for
- 41:49Canva. Now they're paying for AI and
- 41:50they think I might just, you know, do
- 41:53stuff with AI. Now, that doesn't mean
- 41:56that Canvas is useless or anything.
- 41:57Canvas got this incredible thing called
- 41:59a brand. You know, um Warren Buffett has
- 42:02a great quote which is like if you made
- 42:05a drink
- 42:07that tasted better than Coke, was
- 42:09healthier than Coke, and cheaper than
- 42:11Coke,
- 42:13it probably wouldn't sell as well as
- 42:14Coke. That's cuz what you have is you
- 42:16have like brand moes. you have these
- 42:18like companies that people just love and
- 42:20over time build loyalty to it that means
- 42:24that it's kind of irrelevant about the
- 42:26quality of the product and canvas done
- 42:27an exceptional job in that. So, you
- 42:32know, these are all just things to
- 42:33consider. And I think this is really
- 42:34important as young people who are about
- 42:37to go out into the world is you need to,
- 42:39you know, I think when people used to
- 42:40look at companies, they used to look at
- 42:43them in terms of salary or perks and
- 42:44things like that. And they're all still
- 42:46relevant, sure, but I think you should
- 42:48really look at things in terms of like
- 42:49what's your view on how this is going to
- 42:52go, you know, like how does this
- 42:54business look like in five years? And I
- 42:58think that's an important thing for you
- 42:59to weigh up um when you look at certain
- 43:03things too, you know, and that doesn't
- 43:05mean um that doesn't mean it's you know,
- 43:07canvas is necessarily bad. Canvas is
- 43:09also very small in the grand scheme of
- 43:11things and that means that they're
- 43:12quick, right? Small companies can be
- 43:14dramatic and they can often adapt to
- 43:16change much quicker. So there's lots of
- 43:18there's lots of pros and cons out there,
- 43:20but um yeah, tricky time. I only wanted
- 43:24to address that because I know there's a
- 43:25lot of angst within the student body
- 43:27still and I know that seeing 1,200
- 43:30Australian
- 43:31developers get dumped into the job
- 43:33market is going to make some people
- 43:36uh naturally a little anxious or
- 43:38worried, you know, like if we're only
- 43:39graduating, you know, it's it's a lot of
- 43:41people. Um
- 43:43[sighs]
- 43:44so yeah. Um anyway, any questions about
- 43:47that? Cuz otherwise I I'll just jump
- 43:48into React stuff. We'll talk about React
- 43:50a little bit just to just not super deep
- 43:53stuff, just to try and clarify a few a
- 43:55few concepts for maybe the people that
- 43:57have fallen behind a tiny bit. So, I'll
- 44:00just wait 30 seconds for the YouTube
- 44:02live chat latency um to see if there's
- 44:05anything
- 44:19more more react emojis. Okay, cool. It's
- 44:23a good idea. I should say if you don't
- 44:25have anything, just do a react like a
- 44:27reaction. Someone's pressing a lot.
- 44:31[laughter]
- 44:33Okay. Um
- 44:36All right. So, what I'm going to do
- 44:39is
- 44:42I'm going to go into week nine here, and
- 44:43I want to do um
- 44:46I'm going to create a little Vite app.
- 44:47Again, we kind of did something like
- 44:49this back in week seven. Uh V project.
- 44:52I'm going to call it like, you know,
- 44:53sample uh React JavaScript oxlint. Yep.
- 44:59Run it. Start it. Perfect.
- 45:07Cool. It's already running.
- 45:09Nice and easy.
- 45:12All right. Now, I'm going to go to my
- 45:14code here, and I'm going to start um
- 45:15just deleting a bunch of stuff. I want
- 45:17to really strip this down for you all.
- 45:18Again, I'm going to delete the CSS file.
- 45:21I don't need that.
- 45:24I'm going to delete the other CSS file.
- 45:29I don't want any of this.
- 45:32I need to remove the imports for it as
- 45:34well. Uh in the app file, I'm going to
- 45:36get rid of nearly everything except I'll
- 45:38just say hi here and then get rid of
- 45:42that. Perfect. And then I don't need any
- 45:44of these images. So, I'll delete this
- 45:46whole folder. Delete folder. Great.
- 45:49Okay. So, now we've got a really, really
- 45:50basic app. Now, during week seven, we we
- 45:54kind of talked about React a little bit,
- 45:56but we really did only talk about it in
- 45:58the context of um
- 46:01uh
- 46:04like a single page.
- 46:07Now,
- 46:08React follows, I guess you could call it
- 46:11the component pattern where you can make
- 46:13a page up with other components.
- 46:17So, in CSS, you might be used to, you
- 46:19know, creating a div and then creating
- 46:20like three divs inside of it. But, you
- 46:22know, what happens if I want to create
- 46:24like a few boxes? So, let's imagine here
- 46:27like let's just do old school stuff,
- 46:28right? Um, div uh style.
- 46:34Trying to remember how to do the old
- 46:35school style.
- 46:38What is it? React old school style
- 46:40attribute
- 46:48with quotes.
- 46:53Oh, okay. Anyway, it doesn't really
- 46:56matter. Let's say you want to uh you
- 46:58know create a box and it's going to have
- 46:59a it's going to be 100 100 pixel box.
- 47:03I'll do this on separate lines. 100
- 47:06pixels. Height 100 pixels. Um,
- 47:09background blue, right? Margin 10
- 47:12pixels.
- 47:18My bad. Uh, div. Hello.
- 47:21So, I got a little
- 47:24box here that I apparently uh don't know
- 47:26how to write code.
- 47:29Um,
- 47:35what have I done wrong?
- 47:38I'm actually confused.
- 47:45Hey,
- 47:47what's wrong with me? Someone in the
- 47:48chat might know. Having a moment.
- 47:52Let's find out together.
- 47:55Um,
- 48:02should give me a really quick answer. I
- 48:04feel like I just haven't written React
- 48:05code in in [laughter] a while now and
- 48:08I'm getting something basic. Um, the
- 48:10height line. Oh, freaking hell. I
- 48:12thought I looked at that. I remember
- 48:13looking like, "Oh, you surely you missed
- 48:15a trailing comma." Oh, okay. Text align
- 48:18center.
- 48:20Sure. Okay. Now, you might look at
- 48:23something like this and be like, well,
- 48:24if I want to create a few of them, what
- 48:26I would do is I would copy and paste it,
- 48:27but then I would abstract all of this
- 48:28away into a class, you know, like that.
- 48:32Sure, you can do that. However, what you
- 48:35can also do in React is above this, I
- 48:38can create a new component and I can
- 48:40call this one box. And what it can do is
- 48:42it can just return
- 48:47this. Nice and easy. But here's the fun
- 48:51part of React. I can now replace these
- 48:54ones here with just box like this. And
- 48:58this is where the kind of composable
- 49:00nature of React becomes really powerful.
- 49:02And why these things like Angular and
- 49:04React really do kind of stand out over
- 49:07old school HTML and CSS is you can
- 49:09actually create components and then pair
- 49:12those components together. So you know
- 49:14in React we have this notion of a page
- 49:16but if you really think about it in
- 49:18React a page is not anything um special
- 49:22right like a page in these contexts is
- 49:25just a component that happens to cover
- 49:28the screen. If you actually think about
- 49:29React what React is is this is the main
- 49:31page of React. This is the whole HTML
- 49:34all of it. And then this is a component
- 49:37which we sometimes refer to as a page.
- 49:39and this component is loaded and then
- 49:40inside that component there's more
- 49:42components and then this is a component.
- 49:44So it's really just a way to kind of
- 49:46like abstract core parts of HTML CSS and
- 49:48build pages with them. Uh which is
- 49:51pretty cool. Now this is the idea of a
- 49:54component.
- 49:55However, there's also another idea which
- 49:57is how do you pass information from one
- 50:00component into another? And the answer
- 50:03to that is that everything that you pass
- 50:05in is captured in this uh variable
- 50:08called props. This is all in the
- 50:09pre-recorded lectures and I can console
- 50:11log props if I want to console log props
- 50:16like this. Okay, it's an empty object.
- 50:20It's being printed twice for each
- 50:21element. That's just cuz we're in like
- 50:23development mode. But let's say I add
- 50:25random things here. A equals B,
- 50:28C= D, E= F. Okay, so now what I have is
- 50:34my first component props as an object
- 50:37with key A and value B. In my second
- 50:40component, props as an object with key C
- 50:43and value D. And my third component key
- 50:46E value F. Now what if I want to
- 50:48standardize all of these? Instead of
- 50:50that, I can say name or title. Something
- 50:53like this. Okay, cool. Well, now what I
- 50:55can do is if instead of saying hello
- 50:57here, I can actually say props.title.
- 50:59And suddenly I'm able to kind of create
- 51:01these dynamic reusable components in my
- 51:05React apps if I want to. Now there's two
- 51:08ways people typically do this. There's
- 51:10this way right where people come here
- 51:12and they might say and I'll kind of give
- 51:13you a sense of how people actually write
- 51:16this most commonly is they won't often
- 51:17put props there because what someone
- 51:19might want to do normally is say title
- 51:22equals props.title like this. By the
- 51:24way, when I hit my keyboard and stuff,
- 51:26can you hear it in the microphone? Am I
- 51:28creating like bad sounds in the
- 51:30microphone
- 51:34just for people in the chat? I feel like
- 51:37I remember slightly. Okay, I'll try and
- 51:38be careful with it.
- 51:43Um,
- 51:48yeah, maybe I'll
- 51:53maybe I'll [snorts] put my laptop on a
- 51:54little cushion. See if that helps.
- 51:59Oops.
- 52:02Oh no.
- 52:04Only the best for you all.
- 52:07[laughter] Okay.
- 52:09I have no idea if this will help, but
- 52:10we'll find out.
- 52:13Um, sorry, I just lost everything.
- 52:16Where's the chat gone?
- 52:20All right. Anyway, oh yeah, this will
- 52:22definitely be better, I think. Maybe.
- 52:25Okay. So what people would normally do
- 52:27here is they'll normally write like
- 52:28const title equals props.title and then
- 52:31they'll just put title here on the page.
- 52:33However, if you really think about it,
- 52:35const title equals props.title is
- 52:37actually the equivalent line of code to
- 52:40saying const title equals props. So this
- 52:43is a dstruructuring line in React that
- 52:46basically just helps you say go and get
- 52:48the props object which contains many key
- 52:51value pairs and I want you to extract
- 52:53out the the key values that I list here
- 52:56which in this case is just title. Great.
- 52:59Okay. So now I have title that I can
- 53:01use. Perfect. However, if I can write
- 53:05props like this, then I can literally
- 53:07just take title and put it here. And
- 53:10that's basically where we end up with
- 53:12this pattern of how we write props in
- 53:14React, which is saying I know that title
- 53:16is a thing um
- 53:20in props. So I want to extract that. And
- 53:22if someone came along too and said, I
- 53:23want the color to be, you know, blue. I
- 53:25want the color to be red like this. I
- 53:28want the color to be yellow like that.
- 53:31Um then what you could do is you could
- 53:32add a second property here to capture
- 53:35and simply put it here like that. And
- 53:37now,
- 53:39oops, I meant color. My apologies. That
- 53:42was silly. Uh, now I have that right.
- 53:45Make that one orange. Sure. So, that is
- 53:49that like that is React props and
- 53:53components in a nutshell. Uh, super
- 53:56simple and cool. Really, really e easy
- 53:58to use to be totally honest.
- 54:01Um, now typically what you'll see people
- 54:04do in React to keep good style is they
- 54:06will take components they write and they
- 54:08will try and follow a one component per
- 54:11file approach where they'll go create
- 54:14another component like this and another
- 54:16file box.jsx and then they will import
- 54:19inside app.jsx they will import box from
- 54:23box the box file and then they'll use it
- 54:26that way. And I probably did that wrong.
- 54:30Oh yeah. Um what each your file needs of
- 54:34course if you've seen the lectures is
- 54:36this export. So in node and you would
- 54:38know this from a lot of you would know
- 54:39it from 1531. You know your file is just
- 54:43a file in isolation and um everything in
- 54:46the file is treated separately. So like
- 54:48the the name space of a file is
- 54:52protected from other files. And that's
- 54:53really helpful because it means you
- 54:54could have five different files that all
- 54:56use the same function names and things
- 54:58like that and they don't kind of
- 54:59conflict when it's all trying to be
- 55:01transpiled together. Uh however, if you
- 55:03want something to be available to
- 55:05another file, you need to export it. And
- 55:07in this case, by exporting it as the
- 55:08default, we can simply import it like
- 55:11this. If I was to simply say export box,
- 55:14then I would need to import it like this
- 55:16because box is just one of the things
- 55:18that I could be exporting. Um that
- 55:21should work.
- 55:23What do I need to put the export there?
- 55:26Right.
- 55:29Sure. That's another way you could do
- 55:31it. But this is only really something
- 55:33you would do if you have multiple things
- 55:34to export in a file. Typically with like
- 55:37a React component file like this
- 55:39app.jsx, you try and keep the whole file
- 55:41to just be one exportable thing, which
- 55:43is the component itself, you know, and
- 55:47and that's really components and props
- 55:49there. Um, I got to untw this as well.
- 55:55Perfect. Okay, any questions about that?
- 55:59Is that boring? Everyone like this
- 56:02sucks. I already know this. Are people
- 56:04like I'm confused.
- 56:06Need some haptic feedback. Getting more
- 56:09Getting more emojis. Quietest bunch this
- 56:11time.
- 56:16I'll give everyone 20 seconds to see if
- 56:18it comes up in the chat.
- 56:33All right. Well, let me just show you
- 56:35something separate then. I want to talk
- 56:36about routing.
- 56:38So, um I want you to
- 56:42enrich
- 56:44sample a little with react routerdom
- 56:50library just two sample routes. I also
- 56:53want you to create a next app
- 56:57as sample next
- 57:01go install it and stuff
- 57:04and have two routes in that after
- 57:07stripping away all the other
- 57:11crud. try and keep it really simple just
- 57:14like how I've trimmed down the VI
- 57:17example.
- 57:19We'll let that run for like that'll
- 57:21probably take
- 57:23a moment or two. Um
- 57:27so bear with me
- 57:32lots of stuff here. Um, on that note, so
- 57:36uh,
- 57:38you know,
- 57:40I was talking to a graduate today.
- 57:43It seems like it's going to be quicker
- 57:45than I think,
- 57:48but I was talking to that graduate about
- 57:51um, how to integrate into the workplace.
- 57:53And
- 57:55I was thinking about this thing I read
- 57:57from a fairly senior person in tech who
- 57:59says they don't even read all the code
- 58:02that they write anymore. They use AI to
- 58:05read their code. And I think it was just
- 58:07a reminder of the same stuff I've been
- 58:09saying for the last month or two, which
- 58:11I won't bore you with again. But a way I
- 58:13think that you as a young computer
- 58:15science graduate should think about
- 58:16stuff is not I need to know everything
- 58:19about code necessarily because I got to
- 58:22read through every line of code. Your
- 58:23job is to know enough about code to
- 58:26figure out how to use AI to check code
- 58:30to some extent. And I'll just I'll
- 58:32reiterate this till the cows come home.
- 58:34The only difference between you building
- 58:36something and someone else building
- 58:38something that isn't an engineer is not
- 58:41necessarily going to be whether it works
- 58:42or not. It's going to be that you should
- 58:45be the one that feels confident saying
- 58:47it works and betting money on the fact
- 58:48that it works because you have the
- 58:50tools, the capabilities, the confidence
- 58:52or the mindset to be able to just figure
- 58:56out that you think it's robust.
- 58:58Sometimes that can be as much as just
- 58:59more prompting and asking it more
- 59:01interesting questions. you know, you're
- 59:03an engineer, you know, things. You've
- 59:04built stuff before, you've broken stuff,
- 59:07you know, and I think at this point, if
- 59:09you're not building something every
- 59:10week,
- 59:12um, I think it's a tricky time. Uh, oh,
- 59:16cool. I got a question. Is the product
- 59:18topic accessible in quiz 3? Uh, yes,
- 59:24we do assess potentially a little bit of
- 59:28the UIUX producty stuff, though it's
- 59:30fairly small. I would say the biggest
- 59:32things for quiz 3 are definitely like
- 59:34week seven and eight react lectures. Um,
- 59:39and
- 59:41feeling like you've at least had a had a
- 59:42stab. Like you should feel like you're
- 59:44like halfway through assignment four for
- 59:46doing the quiz. I would say,
- 59:49you know, that's not a requirement, but
- 59:52I think that would make you very
- 59:53comfortable. Um, cool. Okay, let's have
- 59:56a quick look here. So what I've got
- 1:00:02is you'll see here on my little sample
- 1:00:04app with Vite, I've got this like home
- 1:00:06and about. Let's have a look at how
- 1:00:08Vite's done it. So in my app.jsx,
- 1:00:12it's gone and added this browser router.
- 1:00:14Now browser router is basic and this is
- 1:00:16a common thing you'll see with React
- 1:00:17code is sometimes to create a capability
- 1:00:20you basically need it's like the
- 1:00:21equivalent of wrapping everything in a
- 1:00:23giant div. you need to like wrap your
- 1:00:25entire website or a whole section of it
- 1:00:26in this like capability which in this
- 1:00:29case is like a router to route between
- 1:00:31pages
- 1:00:32and then this is an actual element at
- 1:00:34the top of the page which is my
- 1:00:36navigation bar where I simply have two
- 1:00:39links to different routes and what
- 1:00:41happens is when I click on those what it
- 1:00:43does is without reloading the page it
- 1:00:46basically updates the URL of a website.
- 1:00:50Now this is really important to
- 1:00:51understand um this concept uh JavaScript
- 1:00:56history update push versus replace. So
- 1:01:00as of like HTML 5 a decade ago
- 1:01:04JavaScript developed the ability to
- 1:01:06dynamically change the URL from the
- 1:01:09website. It can't change the domain. So
- 1:01:11this website here chatgvpd.com is
- 1:01:13allowed to change anything after the.com
- 1:01:16slash anything. It can't change the chat
- 1:01:19GPT part though. This was enabled by a
- 1:01:22fairly simple piece of JavaScript which
- 1:01:24is history. History is a basically a
- 1:01:27global object in JavaScript where what
- 1:01:29you can do is you can push um a
- 1:01:35you know push a new URL
- 1:01:38to the URL. So you notice here when I
- 1:01:41landed on this website I was on
- 1:01:42chatgpbd.com and then after I searched
- 1:01:45my query it said u6a17
- 1:01:49and this looks like a u uu ID format
- 1:01:52I'll ask it is this a uu ID
- 1:01:58kind of looks like one
- 1:02:00maybe it's not
- 1:02:02thinking real hard these free them free
- 1:02:05AI versions sure
- 1:02:07okay so are UU ID universally unique
- 1:02:11identifier
- 1:02:14is basically like a standard um for how
- 1:02:18to um make
- 1:02:22uh I don't know like a random number
- 1:02:25basically like a random unique
- 1:02:26identifier um so you know it's made up
- 1:02:29of I don't think it's anything special
- 1:02:35version okay
- 1:02:37variant Nothing particularly
- 1:02:39interesting. I guess
- 1:02:42a few things, but this is like a thing,
- 1:02:43you know, I I I don't know what this is.
- 1:02:44I mean, I know what a UIU ID is, but I
- 1:02:46don't know what they're made up of. I
- 1:02:47know you there are just functions that
- 1:02:48you can use to create UYU IDs. And you
- 1:02:51know, this is a good example sometimes
- 1:02:52of like where basic like I've been
- 1:02:56saying this to people recently like
- 1:02:58we're going to get to a world where
- 1:02:59computer scientists
- 1:03:02I don't want to say that they can't
- 1:03:05build stuff
- 1:03:08as that they build better stuff. I I
- 1:03:11think I think they'll be able to build
- 1:03:13better stuff in the same amount of time
- 1:03:16or they'll be able to build the same
- 1:03:17thing quicker than nontechnical people.
- 1:03:19And I think the way that comes up is
- 1:03:21like if you're building a system and you
- 1:03:22say I want to create a um I want to
- 1:03:25create a system where people can ask
- 1:03:26questions
- 1:03:28and um
- 1:03:30you know if you just do that AI might go
- 1:03:33and generate a
- 1:03:36random number between like one and 50
- 1:03:39you know or one and 10,000 but if you
- 1:03:42say to it up front I want the random
- 1:03:44thing to be a UYU ID um that could be
- 1:03:47extremely useful if the thing you're
- 1:03:49making is potentially going to get like
- 1:03:50millions of requests a minute, you know,
- 1:03:53um that might save you having to like
- 1:03:56migrate stuff or add more code or more
- 1:03:58complexity and you know there is the
- 1:04:00reality that the more complexity your
- 1:04:02code has uh the you know uh the the
- 1:04:06finitely higher the chances that it
- 1:04:07fails. So I do think in a lot of ways
- 1:04:09you know and I think this is where um
- 1:04:11you know I was talking to some staff
- 1:04:13about this again. I think where I want
- 1:04:15to go with this course again and I think
- 1:04:16this is where you should go with your
- 1:04:18education is on still having a much
- 1:04:20broader knowledge of uh basic things
- 1:04:24basic architectural things like I don't
- 1:04:26think you really need to know how to
- 1:04:27write SQL as much as like I should be
- 1:04:30able and this is an example of a quiz
- 1:04:31question I want to have next term maybe
- 1:04:34not yeah maybe in this course but like
- 1:04:36saying to someone like give me the
- 1:04:38really quick summary of the difference
- 1:04:39between MySQL postgrSSQL and SQite and
- 1:04:42NoSQL or something like that or like
- 1:04:47at what point is something like a UYU ID
- 1:04:50actually beneficial? Tell me in a
- 1:04:52sentence. Uh that stuff's really
- 1:04:54important, you know,
- 1:04:58and the reason it's important is because
- 1:05:00people say, "Oh, well, why would I learn
- 1:05:02that when AI can tell me, bro,
- 1:05:06literally then who are you and why are
- 1:05:08you important?" Do you know what I Like
- 1:05:10I think that's such it's a question I
- 1:05:11just want to thrash into the brains of
- 1:05:14of the 20-year-old students at
- 1:05:16university is like if you're if your
- 1:05:18view on something is why do we need to
- 1:05:20know this because AI can know it. Um
- 1:05:24particularly if it's something that AI
- 1:05:25doesn't get right 100% of the time. I
- 1:05:27think that's the important caveat cuz
- 1:05:29like obviously sure you don't need to
- 1:05:30know all the details of coding but like
- 1:05:32AI might still not use a UU ID in the
- 1:05:36right spot because it doesn't have the
- 1:05:37context. it doesn't know what you're
- 1:05:39trying to do with it. So like knowing
- 1:05:41what that is even just at the highest
- 1:05:44level equips you to understand the
- 1:05:46landscape of what you're developing, you
- 1:05:49know. So in a way I think I think like
- 1:05:52what's going to happen for a lot of us
- 1:05:53is that we basically kind of become
- 1:05:54these like
- 1:05:56massive broad-based
- 1:05:59you know key understanding machines as
- 1:06:02humans because like all the
- 1:06:04specialtities like abstracted away. Um,
- 1:06:09who knows, maybe that'll even become
- 1:06:11less useful in 12 months. I've given up
- 1:06:13guessing. But anyway, that was a random
- 1:06:15side note just about UU IDs. So, the
- 1:06:17point is here, CGPD updated that URL
- 1:06:20because it called history.push state.
- 1:06:22And the important thing is if I go to my
- 1:06:24browsing history, right? Um, what have I
- 1:06:28got here?
- 1:06:30See this here? how
- 1:06:34chatchp.com
- 1:06:37came up like this.
- 1:06:41Push state and replace state are
- 1:06:42different. If I press back on my
- 1:06:44keyboard,
- 1:06:46I go back to before I went to
- 1:06:47chatgpt.com.
- 1:06:49Right? So, the way a browser works is
- 1:06:51every time you change the URL, it like
- 1:06:53adds something onto the stack. So I go
- 1:06:56I'm like here then I go to chatchpd.com
- 1:06:58and then I hit enter and then or I go to
- 1:07:00a new page and then it's a new page. If
- 1:07:02you do push state what you're doing is
- 1:07:05you're emulating to go to another page.
- 1:07:08So if chatgptt.com said push state to
- 1:07:10this URL my browsing history would have
- 1:07:13catchgp.com with the UU ID then it would
- 1:07:15have chatgpd.com nothing and then the
- 1:07:18previous website I was on. But in this
- 1:07:20case, they would have used replace
- 1:07:21state. And what replace state does is it
- 1:07:23looks at the last URL you're at on that
- 1:07:25page, which might be chatgbd.com. And it
- 1:07:28replaces that browser history with
- 1:07:30chatgd.com/u/uyu
- 1:07:33ID. Now, why do you care about the
- 1:07:35difference between those two? It's
- 1:07:37fairly simple. Every time you push
- 1:07:40something, it allows you to go back is
- 1:07:43is like one of the simplest examples.
- 1:07:44So, I'll give you the example with
- 1:07:46Google. I go to maps.google.com.
- 1:07:48Look at history. It's there. Watch what
- 1:07:50happens when I click on Eping.
- 1:07:53Now there's Eping. Watch what happens
- 1:07:54when I click on Eastwood Heights Public
- 1:07:56School. Now that's there. Here's the
- 1:07:59cool thing. Now watch what happens when
- 1:08:00I hit back. Back. I have to click it
- 1:08:03twice. Sometimes I go back to Eping. I
- 1:08:05hit it again. I'm back to Google Maps.
- 1:08:07Right? So like
- 1:08:09Google every time you do anything even
- 1:08:12if you zoom out sometimes
- 1:08:15maybe not zooming out
- 1:08:20maybe not zooming out it like keeps a
- 1:08:23log of stuff and that's why Google's
- 1:08:24really really easy to use to unwind
- 1:08:26stuff cuz each thing I did there not
- 1:08:28maybe not every single thing but every
- 1:08:30time I kind of add more it's like
- 1:08:32recording all those different steps and
- 1:08:35it's encoding it in the URL. So what
- 1:08:37Google's basically doing if you imagine
- 1:08:39it as a react app is that it's
- 1:08:40dynamically pushing or replace or
- 1:08:42pushing not replacing new stuff to the
- 1:08:44URL whilst then updating the page in
- 1:08:48real time. And this idea of state is
- 1:08:50another really really simple highle
- 1:08:52concept to understand because if you're
- 1:08:54trying to build an application someone
- 1:08:57who's like non-technical it's not going
- 1:08:59to occur to them the difference between
- 1:09:01those two things. That is like actually
- 1:09:03a prime example of where literally I'm
- 1:09:06going to write that down actually.
- 1:09:07Sorry. This bear with me. I'm trying to
- 1:09:10get better at taking notes. Uh push
- 1:09:12replace and what was the other one we
- 1:09:14talked about that was important.
- 1:09:17Ah doesn't matter. So that's such an
- 1:09:20important concept to understand. So if
- 1:09:21we come back to our code here on these
- 1:09:23websites, what happens is when that URL
- 1:09:25is updated,
- 1:09:27it basically triggers a state refresh in
- 1:09:30React. And how this route section works
- 1:09:32is that it only renders whichever route
- 1:09:36has a URL that matches the path there.
- 1:09:39So when I click home and about all
- 1:09:40that's happening is that like that
- 1:09:42they're taking turns in rendering like
- 1:09:46that's all that's kind of happening.
- 1:09:48It's a very simple concept. That's the
- 1:09:51way it's done um with Vite because Vite
- 1:09:53uses an external library called React
- 1:09:55Router DOM. And there's it's actually
- 1:09:59very straightforward. Uh where's yeah
- 1:10:02there's home and about. These two
- 1:10:03components were included on this
- 1:10:04particular page. Easy. If we contrast
- 1:10:07that with Nex.js which is a more like
- 1:10:08industrial framework. The way Next works
- 1:10:11is that um
- 1:10:16I haven't used Next in a while.
- 1:10:20Um what am I looking for?
- 1:10:26feel like there's something I'm missing.
- 1:10:33No, they've just changed it since I I
- 1:10:35haven't I haven't looked at next code in
- 1:10:36a couple years, so I was just slightly
- 1:10:38different. So,
- 1:10:44just going to run it. Just going to run
- 1:10:47it on another port so I can show you.
- 1:10:55That costs 500 tokens. How much is a
- 1:10:58token again? How much is 500 cord opus
- 1:11:025.5 output tokens? The irony of probably
- 1:11:05spending 500 tokens asking how much it
- 1:11:07is. 1 cent.
- 1:11:10How did you connect Claude in your
- 1:11:12terminal? Okay, so if you pay for a
- 1:11:15service like uh OpenAI chat GPT or
- 1:11:19Claude um you can install a tool for
- 1:11:21OpenAI it's called Codeex. or Claude,
- 1:11:24it's called Claude Code and it's
- 1:11:26basically a CLI tool. Um, Claudos has a
- 1:11:30version of it called Cowwork, which is
- 1:11:32kind of more like for non-technical
- 1:11:35people. Uh, yeah, it's pretty useful.
- 1:11:39Generally, it's really cool cuz unlike
- 1:11:42the chat, you can also get it to do
- 1:11:43things on your computer if you want
- 1:11:45because you can give it a lot of
- 1:11:46privileged access if you trust it.
- 1:11:50Okay, so I got this running on port 3001
- 1:11:53now. So it looks really similar to my
- 1:11:55Vite app, right? Uh which I guess is not
- 1:11:59running anymore.
- 1:12:01Oh, different. Sorry.
- 1:12:05Looks pretty similar to the Vite app,
- 1:12:07but the difference is the way Nex.js
- 1:12:09works is that it's got this file in the
- 1:12:13app folder called layout.js. And that
- 1:12:15particular file literally just contains
- 1:12:18the fundamental HTML code. In fact, if I
- 1:12:20have a look at the page source, you'll
- 1:12:23see here
- 1:12:25it it has it right here. HTML like this
- 1:12:29uh we have the body somewhere. Sure,
- 1:12:30it's gone and added a whole bunch of
- 1:12:31cruff there, but largely like if I
- 1:12:33wanted to, for instance, like I'll show
- 1:12:35you. I can insert something in here if I
- 1:12:36want to. Like I could put like div high
- 1:12:39right there and it's probably gonna
- 1:12:41render in. See div high. it rendered
- 1:12:44itself straight in. So, you know, next
- 1:12:46is a little bit more literal in that
- 1:12:48regard. But here's the cool thing about
- 1:12:49Nex.js. It's got the same thing about
- 1:12:51like link. Instead of link 2, it's link
- 1:12:53href. Sure. But Nex.js does its routing
- 1:12:57based on folder structure. So, I have a
- 1:13:00thing here called uh
- 1:13:04page. And what page is is in a folder
- 1:13:08called app.
- 1:13:11Anything that's called page.js JS is is
- 1:13:14like so in this case think of app as
- 1:13:16like slash so page is like the main app
- 1:13:20slash and then inside my about folder
- 1:13:23that is about like like plainly like
- 1:13:25that and if I want to create for
- 1:13:27instance a new I could create a new file
- 1:13:29here called like um you know test.js JS.
- 1:13:34I call this one test. Now, this URL is
- 1:13:38just about slash.
- 1:13:40Would it be about slash test?
- 1:13:43I thought it would be about slash test.
- 1:13:49I really haven't used this in long
- 1:13:50enough. Let me check. How do I make
- 1:13:53about test URL work?
- 1:13:56Uh, I thought that would have been okay.
- 1:14:09routes come from folders. Add a page.
- 1:14:12Okay. Yeah. Okay. So, they have changed
- 1:14:13this slightly on me. That's all right.
- 1:14:15Still makes a lot of sense. So, the way
- 1:14:16they just have this now, this is
- 1:14:18probably a lot more scalable is like if
- 1:14:20you want to make a new route, you
- 1:14:21basically just make a new folder called
- 1:14:24test and then inside that you just make
- 1:14:26a new file called page.js.
- 1:14:30So now I've got this thing called test.
- 1:14:32So the way that like Nex does routing is
- 1:14:34they basically built in their own
- 1:14:35routing engine that just infers it from
- 1:14:38the folder structure if that makes
- 1:14:40sense. Whereas like lightweight
- 1:14:42frameworks like uh Vite need to install
- 1:14:46React Router DOM um to manage it that
- 1:14:48way. Is it better or worse? Don't know.
- 1:14:51Kind of moot at this point because of
- 1:14:53how much code is generated. Um but
- 1:14:56interesting nonetheless and just
- 1:14:58highlighting that you know there are
- 1:14:59some subtle differences between these
- 1:15:00frameworks. Uh are there any questions
- 1:15:03so far? Any questions about any of this?
- 1:15:04Is there anything you guys want me to
- 1:15:05cover? You've all been very light on
- 1:15:09your curiosities again
- 1:15:12this week. So um I'm starting to fairly
- 1:15:15quickly run out of things on my bucket
- 1:15:17list of fill the gaps. So I'll give you
- 1:15:19all just another 20 seconds to see if
- 1:15:22you have any questions about this or
- 1:15:23about other topics. Um okay we can talk
- 1:15:27about so uh Darren when you talk about
- 1:15:29maybe a bit more on UIUX like which
- 1:15:32aspects of it if that makes sense
- 1:15:37like give me a slightly more elaborate
- 1:15:40answer
- 1:15:43if that's okay.
- 1:15:51Oh, okay. Um, I get that. So, Darren
- 1:15:53says, "I'm designing my own app. That's
- 1:15:55why AI can't help."
- 1:15:59Nvidia. Um
- 1:16:06[snorts]
- 1:16:07uh
- 1:16:10I'm I'm going to pessimistically assume
- 1:16:12you're talking about the Nvidia news
- 1:16:15from Monday the 9th of November. Um all
- 1:16:18right. Well to this question of well
- 1:16:22look firstly the UIUX content in the
- 1:16:24course I think is fairly light and
- 1:16:25straightforward. I don't know what to
- 1:16:27elaborate much on that because we have
- 1:16:29these great little lectures where they
- 1:16:30just talk about some fundamental
- 1:16:32principles and things like that.
- 1:16:34Uh
- 1:16:40what I would say about UI and UX more
- 1:16:42generally is that
- 1:16:46so accessibility as a topic
- 1:16:50I think is going to become less critical
- 1:16:52because a lot of accessibility
- 1:16:55improvements in websites aren't matters
- 1:16:58of opinion per se. They're just things
- 1:17:01you need to do. So things like alt tags,
- 1:17:04things like area labels and all that
- 1:17:07stuff from the lectures and and
- 1:17:08exercises
- 1:17:10like an AI could really easily iner to
- 1:17:14do that. You know, like if I got 10
- 1:17:16smart people in a room and I asked them
- 1:17:17to solve accessibility problems, it's
- 1:17:20likely that they would end up being
- 1:17:21solved in in remarkably similar ways.
- 1:17:24Um, then when it comes to UIUX,
- 1:17:28this one's a bit trickier because I
- 1:17:31think AI is obviously going to be quite
- 1:17:33good at solving some very basic
- 1:17:35problems. So, for instance, on a web,
- 1:17:38like let me tell you just some basic
- 1:17:39things on a web page, you have idea of
- 1:17:42contrast, right? I don't know. I don't
- 1:17:44know what an example of a bad website
- 1:17:46is. Um, maybe if I Google bad website
- 1:17:48contrast, right? Like these might be
- 1:17:51typical things that you um like that's
- 1:17:54bad contrast, that's bad text, that's
- 1:17:56bad text there. This is terrible. All of
- 1:17:59these things are bad. But the thing
- 1:18:00about them, and I think this is
- 1:18:01important, is like they're universally
- 1:18:03bad.
- 1:18:05Like they are testably bad. Like anytime
- 1:18:09that you could run a checker to check
- 1:18:12something,
- 1:18:13AI can do it pretty well. Do you know
- 1:18:15what I mean? Like there there are fairly
- 1:18:16defined rules and principles and
- 1:18:19thresholds for what good and bad
- 1:18:20contrast is. Like look even here it's
- 1:18:22like contrast ratio. It's like I don't
- 1:18:25know what it is but like you know
- 1:18:26someone might be like you need a
- 1:18:27contrast ratio of at least 5 to1 or
- 1:18:29something like that. I don't know the
- 1:18:30exact number but anything like that AI
- 1:18:32is really good at area labels all that
- 1:18:34kind of stuff.
- 1:18:36Um it's also I think where where like
- 1:18:41where you need to spend not you
- 1:18:43personally uh Darren but like where
- 1:18:46people want to spend times on anything
- 1:18:47where there's not a clear answer where
- 1:18:50like a set of different people may come
- 1:18:52to different outcomes and examples where
- 1:18:55this might be useful
- 1:18:59um you know could be like uh I don't
- 1:19:03know what car is a Hey Canva, it's kind
- 1:19:06of funny. Um,
- 1:19:10thank you Canva for giving me this
- 1:19:12moment. Um,
- 1:19:15oh, let me just take a step back. Why
- 1:19:17does Canva have this? Well, it's really
- 1:19:18simple. I come here. I've never heard of
- 1:19:21Canva. This was useful. Then I say, I
- 1:19:24wouldn't mind designing something. And
- 1:19:26then I go to this page. And
- 1:19:28I think that's bad design, by the way. I
- 1:19:30should be able to click on design and go
- 1:19:32somewhere because like I'm overwhelmed
- 1:19:34at this. That's just my opinion. I'm not
- 1:19:36I'm not I'm not trying to be
- 1:19:37pretentious. Um, you know, because I'm
- 1:19:40just like I don't know. Just I want to
- 1:19:42design something. Okay. If I click
- 1:19:45business cards,
- 1:19:47you know,
- 1:19:49sure business cards.
- 1:19:52These are good modes that a company like
- 1:19:54Camber has because like you know
- 1:19:55obviously it's not easy for say Claude
- 1:19:57AI to go and just um do this like they
- 1:20:01have supply chains. So back earlier when
- 1:20:03I talked about like oh you know things
- 1:20:05like Atlassian has they've got all these
- 1:20:07clients and these serious relationships.
- 1:20:09This is a serious relationship having
- 1:20:11you know what they do I think they do is
- 1:20:13it t-shirts or did I make that up in my
- 1:20:14head? Um, they do. Yeah. T-shirts, like
- 1:20:18all this kind of stuff, they partner
- 1:20:19with suppliers. So, just cuz you can
- 1:20:21vibe code, it doesn't mean that you can
- 1:20:23just go and like make a shirt appear out
- 1:20:25of nowhere. Do you know what I mean? So,
- 1:20:27uh yeah, the these are good these are
- 1:20:29like good modes. These are difficult
- 1:20:31things to uh you know, punch past
- 1:20:34essentially. Anyway, back to this color
- 1:20:37wheel. There are a bunch of concepts
- 1:20:39like if you pick a color like let's
- 1:20:41imagine you just love green, right? Like
- 1:20:43you just love like you know the like
- 1:20:46green this green. Yeah. Like brat green,
- 1:20:51right? So you love that brat green. You
- 1:20:53can basically say what colors go with
- 1:20:55that. Well, you can either look at the
- 1:20:59complimentary colors which is like green
- 1:21:00and pink and they're basically what's on
- 1:21:02like opposite sides of the color wheel.
- 1:21:04And you can see this little line here
- 1:21:06moves as I drag this around.
- 1:21:10Feel bad. This is like someone someone
- 1:21:13spent such a long time on this. You
- 1:21:15know, there's triads. Triads are kind of
- 1:21:17the same thing but in threes. So, you if
- 1:21:19you want to figure out what three colors
- 1:21:20go with that, you'll notice that like as
- 1:21:22I move this around, you probably feel
- 1:21:24like the three colors are all like
- 1:21:25you're like, "Yeah, that that kind of
- 1:21:27makes sense, you know." Um, there's
- 1:21:30tetratic, that's four colors. There's
- 1:21:32analogous, which is I don't know some of
- 1:21:35this stuff that's just like when you
- 1:21:37want colors to be similar. These things
- 1:21:39are the really interesting conversations
- 1:21:41around um UIUX.
- 1:21:44Sorry, I'm just gonna make notes for
- 1:21:46myself. I hate I'm sorry. I'm making
- 1:21:48notes for next term because I have to re
- 1:21:49I'm going to rewrite like 90% of 6080.
- 1:21:53So um
- 1:21:56I will forget stuff cuz my life's too
- 1:21:58busy. So that's these are important
- 1:22:00principles and these are the things that
- 1:22:02are really worth knowing because like
- 1:22:03the simple thing if it's if there's a
- 1:22:06test for it AI will converge and be very
- 1:22:09good at finding the answer. If there's
- 1:22:10no clear winner, AI is just going to
- 1:22:13always go to the most simple option
- 1:22:16without further prompting a lot of the
- 1:22:18time. So even just this can be a big
- 1:22:20thing. And this doesn't mean you have to
- 1:22:22be an artist. Sometimes this can just
- 1:22:23mean saying to AI, I really want to try
- 1:22:27um you know, can we try some triadic
- 1:22:31colors or can you can you give me a few
- 1:22:33examples of like triadic you know colors
- 1:22:35starting with warm or something like
- 1:22:38it's not like AI and this back this is
- 1:22:40kind of comes back to my point too about
- 1:22:45you need to see yourself as as an
- 1:22:47efficient human because a random lawyer
- 1:22:51who wants to make a pretty website could
- 1:22:53easily just sit down and be like, "Can
- 1:22:55you explain to me all of the UIUX
- 1:22:58principles? Could you teach me about
- 1:23:00color?" And they could spend a few hours
- 1:23:02that evening learning about color theory
- 1:23:05and learning about all of these like
- 1:23:07things. And then they could go to AI and
- 1:23:09say, "Hey, can you give me some demos
- 1:23:12with this color palette, with that color
- 1:23:13palette, with this color palette? I want
- 1:23:15to experiment."
- 1:23:18Like like you know the value that I have
- 1:23:21in the world. And I think you have too
- 1:23:22is just like we we're meant to have such
- 1:23:24a good general knowledge that we can
- 1:23:26just say it. Do you know what I mean?
- 1:23:28Like say it day one making a page. Give
- 1:23:31me the colors. I want the try to colors.
- 1:23:33I want to see what it looks like. 10
- 1:23:34minutes instead of an hour. When you
- 1:23:36stack all of that up, what can take
- 1:23:38other people days might take you hours.
- 1:23:41And what might take other people hours
- 1:23:42could take you minutes. And I think this
- 1:23:44is like why language is still really
- 1:23:46important and why like all of you should
- 1:23:48lean into it and communication because
- 1:23:51reluctantly whoever decided to build
- 1:23:52LLMs decided to basically create super
- 1:23:54intelligence with the English language
- 1:23:56at the center of it. So precision with
- 1:23:58language is still super important.
- 1:23:59Anyway, that was one example of UIUX
- 1:24:02principles.
- 1:24:06When I
- 1:24:09when I do an activity with my team and
- 1:24:11we're trying to come up with good
- 1:24:13design,
- 1:24:14we use references.
- 1:24:16So,
- 1:24:18one of the best things you can do from a
- 1:24:19UIUX perspective
- 1:24:22is explore the internet. Use products
- 1:24:24that give you lots of different designs.
- 1:24:26They exist. I think it's um is it Mobin?
- 1:24:29Yeah, there you go. Mobin. Um platforms
- 1:24:32like this. They just give you like tons
- 1:24:34of different designs and you can just
- 1:24:36like look through them
- 1:24:38or you can just ask AI to generate them.
- 1:24:40Maybe not the best idea. Or you can just
- 1:24:42click around the internet or you can be
- 1:24:43like show me the top 50 healthcare
- 1:24:46websites and you go through them. Show
- 1:24:48me the old school websites, the new
- 1:24:49school websites and go through them.
- 1:24:50Find the ones you like. Take screenshots
- 1:24:52of the ones you like. Document it. Feed
- 1:24:55that back to AI. Like AI can be very
- 1:24:57good at creative activities. is just
- 1:25:00can't it's it has such poor inspiration
- 1:25:03and taste and uh like outside of the box
- 1:25:06thinking. So if you can basically carry
- 1:25:09that burden of being edgy and creative
- 1:25:12and throwing these like random left of
- 1:25:14field things in that's where you get the
- 1:25:16most out of it if that makes sense. Um,
- 1:25:20sorry.
- 1:25:26Thanks for bearing with me.
- 1:25:31Uh, yeah, that's I I know that was a
- 1:25:34high level answer, but like that's the
- 1:25:36the thing Darren is all this stuff's
- 1:25:38like very high level now. Um, so I hope
- 1:25:40that gave you some pointers as to like
- 1:25:41what you might do next when it comes to
- 1:25:43um
- 1:25:46trying to work on UIUX. So I'd say the
- 1:25:48simplest thing is just like reference
- 1:25:49stuff. Um even my team's been like the
- 1:25:53best things they've gotten AI to
- 1:25:54generate when they give them a um
- 1:25:58uh
- 1:25:59reference image. Even in another course
- 1:26:01I teach, we had um
- 1:26:05one of this UNSW startups, Rhombus AI,
- 1:26:09uh they came and like did this
- 1:26:11presentation
- 1:26:13and um
- 1:26:18I thought they had a different homepage.
- 1:26:19I might be getting it confused.
- 1:26:23That was a good example of the states
- 1:26:25being weird, by the way. Right. I think
- 1:26:26this one must replace the state or
- 1:26:28something because when I go back,
- 1:26:31well, when I go back, well, this isn't
- 1:26:32actually that. What's happening here is
- 1:26:34when I go back, I go to get started. But
- 1:26:36what they've clearly done is they've
- 1:26:37added like a cookie or local storage to
- 1:26:39my website so that when this when this
- 1:26:41component loads, it tries to
- 1:26:43automatically send me to the next page,
- 1:26:45but then when I click back again, it
- 1:26:47sent me straight back. Right? So again,
- 1:26:49another good example of like, you know,
- 1:26:55I don't even want to say that having an
- 1:26:57engineering degree would help this
- 1:26:58because I think if you can describe the
- 1:27:00problem quite clearly and precisely,
- 1:27:02kind of doesn't matter if you're
- 1:27:03technical. I think the biggest thing I
- 1:27:04notice honestly with builders like
- 1:27:07yourselves is you have a really high
- 1:27:09attention to detail because you've been
- 1:27:11very intentional about how you build
- 1:27:12stuff and that makes you really good at
- 1:27:15building stuff because if you think
- 1:27:17about it like building stuff is
- 1:27:18attention to detail, you know. Um
- 1:27:23yeah. Anyway, they had a nice website. I
- 1:27:26don't know where it was.
- 1:27:40Okay,
- 1:27:42maybe it was a different page. But the
- 1:27:45point was if you really like this, you
- 1:27:46can just screenshot it and say like, I
- 1:27:48really like this. It's not stealing cuz
- 1:27:50it doesn't look like it when it gets
- 1:27:52created. It's more just like you're
- 1:27:54telling like you're you're
- 1:27:55shortcircuiting that like creative jump
- 1:27:57that AI really struggles with, you know?
- 1:28:00And again, I'm going to do this every
- 1:28:02week till they fix it.
- 1:28:12Never not funny. It's never not funny to
- 1:28:14me. This is what I do every time I think
- 1:28:17AI is going to take all our jobs is I
- 1:28:19ask it this question, then I'm like,
- 1:28:21"No, we still got a little while to go."
- 1:28:23There used to be this thing with
- 1:28:24strawberries, right? Remember the early
- 1:28:25ones?
- 1:28:27It was the strawberries one and then
- 1:28:28there was the whole like the other
- 1:28:30favorite one. What was it? Uh
- 1:28:33I I think I mentioned this last week.
- 1:28:36If it takes 3 hours to dry three towels
- 1:28:39on the line, how many hours does it take
- 1:28:42to dry nine? This used to say nine, you
- 1:28:45know, now it's probably smarter.
- 1:28:50I like the little like
- 1:28:53I am getting more intelligent [laughter]
- 1:28:57but this makes sense cuz like early on
- 1:28:59it was it was not a reasoning engine
- 1:29:01right it was a a statistical probability
- 1:29:04engine you know so like the evolution of
- 1:29:06AI was like they created an LLM that had
- 1:29:09a statistically you know reasonable
- 1:29:11output based on the input and if humans
- 1:29:13were dumb the output was dumb and then
- 1:29:14they put a reasoning engine on it which
- 1:29:16basically made it check itself and talk
- 1:29:19to itself and then wrap that in
- 1:29:20harnesses to create multi-chain things
- 1:29:22and like that's all AI is in a nutshell.
- 1:29:25So, good job AI. Just like you know how
- 1:29:28many Rs in strawberries, right? Like
- 1:29:30this one was fixed a long long time ago,
- 1:29:31but the way it ended up solving stuff
- 1:29:33like this was I could be wrong, but I'm
- 1:29:36pretty sure it actually went and like
- 1:29:38basically created like a Python script
- 1:29:41behind the scenes and ran it. Um, so
- 1:29:44this idea of like AI being able to not
- 1:29:45just, you know, be generative on text,
- 1:29:48but to actually run code behind the
- 1:29:51scenes has been quite transformational
- 1:29:53for it, too. Uh, I hope that was a good
- 1:29:55answer on the UIUX. Any other questions
- 1:29:57from people? Are we running into the
- 1:29:59limits of people's questions or are
- 1:30:01there more? Oh, I'll do this shout out
- 1:30:03just a couple more times.
- 1:30:27Uh, is it hard to get funded from UNSW
- 1:30:29fund? Okay,
- 1:30:31so
- 1:30:36UNSW has a division called the division
- 1:30:38of enterprise. Within that division,
- 1:30:42there's a section called UNSW founders
- 1:30:45which has a head of entrepreneurship.
- 1:30:48I think within the division of
- 1:30:49enterprise they also have other arms
- 1:30:52which are like a venture fund
- 1:30:56but that doesn't necessarily spend a lot
- 1:30:58of time directly with student startups
- 1:31:00per se um within the UNSW arm of like
- 1:31:05founders
- 1:31:10I would say that like for a given idea
- 1:31:14if you're a UNSW student with an idea,
- 1:31:19UNSW Founders is probably the most
- 1:31:21likely place you are to find money
- 1:31:22because of the fact that they focus
- 1:31:24pretty heavily on UNSW. So, it's a
- 1:31:26smaller set of people. Um,
- 1:31:30that being said, you know, you have to
- 1:31:32work for it. Um,
- 1:31:36type thing. Um,
- 1:31:38I would say like UNSW founders don't
- 1:31:40have to believe you're going to make the
- 1:31:42money. They just have to believe that
- 1:31:43you have potential. you and the idea
- 1:31:45that you're creating. UNSW Founders is
- 1:31:49founded really heavily philanthropically
- 1:31:51is my understanding. Uh so whilst the
- 1:31:54university does give them money and they
- 1:31:58obviously provide them with things like
- 1:32:00you know um buildings and stuff and I
- 1:32:02I'm just piecing this together from
- 1:32:04things I've been told so take it with a
- 1:32:05grain of salt. Uh a lot of the money is
- 1:32:08actually philanthropic. are basically
- 1:32:09like really really rich UNSW alumni have
- 1:32:13given UNSW money for startups and they
- 1:32:16use that to fund some small startups to
- 1:32:18hire certain staff and things like that.
- 1:32:21Um, but I would just generally say for
- 1:32:23like young students, UNSW students, uh,
- 1:32:28it's a great space to be in and you
- 1:32:31should go get involved with any UNSW
- 1:32:33founder stuff. Not only because startups
- 1:32:35are still a part of the economy that are
- 1:32:36growing,
- 1:32:38but because um
- 1:32:41if you kind of pay attention to the
- 1:32:44shift in skills going on in our industry
- 1:32:47right now, you would say that like
- 1:32:52more sought after graduates are looking
- 1:32:55increasingly like
- 1:32:58what people in startups
- 1:33:01do, if that makes sense.
- 1:33:04That doesn't mean like everyone needs to
- 1:33:06work in a startup. It's just like a good
- 1:33:08graduate looks a lot more like what
- 1:33:11a startup wants.
- 1:33:14So to some extent, you know, just
- 1:33:15approaching your life right now like I'm
- 1:33:18going to try and start a company or get
- 1:33:20employed by a startup is just a good way
- 1:33:22to prepare yourself for everything, you
- 1:33:26know? So yeah, I don't think it's like
- 1:33:28crazy hard to get funded from UNSW. But
- 1:33:31to be clear, the amount of money UNSW
- 1:33:33gives startups I think is still around
- 1:33:35like in their kind of frontier program
- 1:33:38um is still like 20 grand or something.
- 1:33:41Uh
- 1:33:44yeah.
- 1:33:45Um
- 1:33:51cute.
- 1:33:54That's nice.
- 1:33:56Well, yeah. So, it's like 20 grand. You
- 1:34:00know, I'll be honest with you. 20 grand
- 1:34:02is not a lot of money. Might sound like
- 1:34:04a lot of money
- 1:34:06to you.
- 1:34:08Um cuz you're young, but like it's just
- 1:34:12not a lot of money. It's It's like 20
- 1:34:16grand's kind of like an amount of money
- 1:34:18that's not going to transform your life.
- 1:34:20It might just help you do some things if
- 1:34:21you don't have the money for it. Like it
- 1:34:22might help you pay for Claude Max for a
- 1:34:25year or something or like Claude Max and
- 1:34:28some cloud and a bunch of 3D printed
- 1:34:30stuff. Like it's it's really
- 1:34:32it's it's really just like enough to
- 1:34:34like get a jump at things. Um it'll be
- 1:34:39very unlikely that like uh there'd be a
- 1:34:41super successful company that comes from
- 1:34:4420 grand. The hope is that the 20 grand
- 1:34:46helps them build enough to get
- 1:34:48meaningful money or that the 20 grand 20
- 1:34:51grand helps them like get over a hump to
- 1:34:53start making money if that makes sense.
- 1:34:55Um but it is still pretty small but yeah
- 1:34:57like they they do hand that out. They
- 1:34:58hand that out to you know 30 companies a
- 1:35:02year or something like that. They have
- 1:35:04different streams. They have a defense
- 1:35:05stream and a health stream and
- 1:35:09um
- 1:35:13yeah and like a normal stream somewhere.
- 1:35:16Uh but they also have lots of programs
- 1:35:18like UNSW Founders has lots of programs
- 1:35:20that are like not just that like 10X is
- 1:35:25kind of
- 1:35:27fairly serious like they obviously have
- 1:35:29the Peter Farrell Cup um female
- 1:35:32programs, Western Sydney programs. These
- 1:35:35are so great. Like honestly,
- 1:35:40I went to this this year was so good.
- 1:35:43Like if you live out in the west or the
- 1:35:45southwest, so good. There's just so much
- 1:35:47love they're giving that area.
- 1:35:50They're doing so much stuff. It's great.
- 1:35:54Love it.
- 1:35:57Anyway,
- 1:35:58uh yeah, I would I would always check it
- 1:36:00out. Um
- 1:36:05cool. Any other questions?
- 1:36:29So,
- 1:36:31just remember I have a few
- 1:36:34drop in Q&As's this week.
- 1:36:37Um,
- 1:36:39because like we've covered most of the
- 1:36:41terms content and I think students
- 1:36:43appetite for like the content needs to
- 1:36:45change. So, there's elements of like,
- 1:36:48you know, students are just not that
- 1:36:49interested in some of the content, but
- 1:36:50we've covered a lot. There's
- 1:36:51pre-recordings for tons of stuff. The
- 1:36:53rest of the Q&A sessions this week are
- 1:36:55like these drop in sessions where um
- 1:36:58students can basically drop in and ask
- 1:37:00me questions just about not like if it's
- 1:37:03something that's like I have a quiz
- 1:37:04problem, I'll be like, email me. But
- 1:37:05more just generally. Um
- 1:37:08so, if you have any questions, I'll I'll
- 1:37:11see you in some of those throughout this
- 1:37:12week. Uh, alternatively,
- 1:37:15um, this exam lecture kind of marks the
- 1:37:18end of the main content for the term.
- 1:37:22Um,
- 1:37:26yeah. So, I hope that was interesting. I
- 1:37:28thought it was fun doing some of the
- 1:37:29React stuff and just covering covering
- 1:37:31just those last really high level
- 1:37:33details around routing and props because
- 1:37:35I think I think they're just the big
- 1:37:37ticket things to get your head around.
- 1:37:40And
- 1:37:41yeah, quiz 3 on Wednesday. Good luck to
- 1:37:43everyone with quiz 3 should be fine. Uh,
- 1:37:47you know, I would expect similar things
- 1:37:48from quiz 2 in terms of like, you know,
- 1:37:51we followed a pretty similar process and
- 1:37:53gotten examples out. It's just different
- 1:37:55types of content. Otherwise, you know,
- 1:37:57exam in 4 weeks. It's actually quite a
- 1:37:59while away. It seems like it's pretty
- 1:38:00deep in the exam period. So, you got a
- 1:38:02lot of time. I'll be emailing you before
- 1:38:03then. We've obviously got to release
- 1:38:05quiz 3 results. We've obviously got to
- 1:38:06produce um
- 1:38:09sample exam questions. We got to talk
- 1:38:11about the exam. Um yes, there are
- 1:38:15practice questions coming out for the
- 1:38:17final and uh yeah, we'll figure it all
- 1:38:20out and I'll keep you updated. So, have
- 1:38:23a good evening everyone
- 1:38:26and um we'll chat soon. Cool. Thanks
- 1:38:29all.
About this transcript
This page contains the full transcript of COMP6080 | Week 9 Live by Hayden Smith Learning, generated from the public captions YouTube serves with the video. The transcript has 15,124 words across 2,254 segments, with the original timestamps preserved so you can click any line to jump to that moment in the embedded player.
What you can do with it
Use the transcript to take notes, quote the speaker, build a study guide, generate a summary with ChatGPT or Claude via the YouTube Summary tool, or export it as a timed subtitle file with YouTube to SRT. You can also re-open it in the transcriber to choose a caption track available on the video.
Free YouTube transcript tool
YouTube2Text is a free YouTube transcript generator — no signup, no daily limit. Paste any YouTube link and get the full transcript instantly, with timestamps, click-to-jump, caption language selection, AI prompts for ChatGPT, Claude, and Gemini, and exports to TXT, SRT, VTT, or Markdown.