0:00:23
welcome back guys to another episode of
0:00:26
buildbreaking fix brought to you by the
0:00:29
raw coders and today we have
0:00:34
how we doing finesse
0:00:36
hey everyone hey saying um
0:00:38
yeah good as always um
0:00:41
let's see would like to hear about what
0:00:42
you guys got up to as well
0:00:46
from the other day but yeah yeah
0:00:49
great yep that's brilliant i'm
0:00:56
let's get the party started by first for
0:00:59
for respecting awareness of the past
0:01:01
present and future
0:01:06
i begin today by acknowledging the
0:01:08
traditional custodians of the land on
0:01:10
which we gather today and pay my
0:01:12
respects to the elders past present and
0:01:15
future i extend their respect to
0:01:17
aboriginal and torres strait islander
0:01:22
fantastic so that was smoothly done
0:01:26
uh yeah still a little screen get there
0:01:29
haven't got around to it
0:01:38
finishes a really busy man kind of a vip
0:01:44
things happening all around the clock
0:01:47
yeah i just been busy over the last week
0:01:51
yeah that makes sense man completely as
0:01:54
life does get busy as you can see grow
0:01:59
and um once you hit 30 young you're
0:02:04
you're gonna be craving that why can't
0:02:07
the time just stop
0:02:10
yeah man i feel that way already
0:02:16
yeah i guess that happens with having up
0:02:19
um being in full-time work and also
0:02:23
doing things here and there
0:02:25
which really interes interests you
0:02:29
which isn't good though because
0:02:31
as they always say that
0:02:33
time flies when you're having fun so
0:02:35
that's true that's true
0:02:39
all right cool so just a bit of progress
0:02:42
since yes today so
0:02:46
did well mainly he i heated the front
0:02:50
he he smashed it out so
0:02:53
what we're going to be doing is we we're
0:02:56
going to be wiring up the
0:02:59
backhand with what he has done with the
0:03:03
i'll just really take you briefly to
0:03:08
you might need to merge his code
0:03:11
because he creates a pull request
0:03:19
so that's essentially working in
0:03:24
we haven't tested him because the back
0:03:28
isn't done yet so that's what we um
0:03:31
we're planning to do today
0:03:34
but with the front end the
0:03:40
we didn't test it in the browser by kind
0:03:44
um hard coding the values in the console
0:03:47
and see if that is overall logic works
0:03:53
yeah so just share my screen really
0:03:57
and first of all basically
0:04:07
i'd have to merge his per request first
0:04:10
because then we're gonna get his changes
0:04:21
yeah book's been pretty busy and
0:04:24
i also like family commitments as well
0:04:28
between work and family it's been
0:04:35
what they've added a authentication of
0:04:39
the device as well
0:04:40
interesting i didn't know that
0:04:45
i'm not going to open up the email on my
0:04:49
laptop i'm just stuck on my mobile and
0:04:54
yeah well interesting
0:04:57
this is really unexpected to be honest
0:05:01
i think they've had this
0:05:02
previously as well saying i mean if you
0:05:06
if you've cleared your history and um
0:05:16
now i probably haven't done anything
0:05:19
with my history of cash finally just
0:05:23
probably because i kind of
0:05:32
okay yeah makes sense anyway
0:05:36
but yeah um let's go to
0:05:43
oh it's a pull request here
0:05:47
popular board after get one click
0:05:51
nope uh feature at
0:06:13
and compared okay cool i'll just merge
0:06:47
okay yes so i'll just kind of merge it
0:06:52
going into depth straight away
0:07:00
i forget how to manage it that is not
0:07:06
you can also my roof is blocked
0:07:21
okay one pending reviewer
0:07:26
voice request is for review
0:07:28
merge without waiting for requirements
0:07:33
emergency blog emerging can be performed
0:07:35
also automatically with one proven
0:07:38
review and this one program is quite
0:07:42
most requests into dev
0:07:46
all right comparison yeah
0:07:56
from real quarters yeah
0:08:00
cool so that is done pull request
0:08:03
successfully merging closed
0:08:06
fantastic so now what we need to do is
0:08:16
i should turn on the music
0:08:25
do you want to choose letter
0:09:08
new branch okay so
0:09:32
what do i have depending
0:09:42
just one thing no i don't need that
0:09:52
okay so this is what basically
0:10:00
uh we added this function
0:10:03
okay so basically all this checks is
0:10:11
latest column length
0:10:16
to the previous columns
0:10:32
column in the array
0:10:35
have been called names
0:10:45
my phone is vibrating and it's
0:11:04
name in the column
0:11:12
in their index oh okay yes i understand
0:11:16
if it does then every would return true
0:11:20
and hence this all uh seven will return
0:11:28
this function will return true that
0:11:31
yes columns are the same
0:11:42
if they are not the same then we are
0:11:44
basically posting the columns in the
0:11:49
okay as in i'm starting them
0:11:53
we're checking that if the
0:11:57
okay so with the status 200 then we are
0:12:01
basically saying this message and then
0:12:07
no further execution
0:12:11
yeah okay i understand does that make
0:12:14
sense yes yes looks pretty yeah
0:12:20
so basically this is what he did and
0:12:31
yeah this is one we
0:12:33
created so another
0:12:39
created to do those to do the push
0:12:43
yeah so this is basically what we're
0:12:47
today and test as well
0:12:50
okay cool all right that makes sense
0:13:36
has asked you a question do you use
0:13:38
github it works in
0:13:41
or do you just edit text files in the
0:13:44
with notepad plus plus
0:13:53
accurate and azure devops
0:13:59
what is uh what's the middle one sorry
0:14:04
okay is it like what does that do
0:14:07
so that's basically this similar to
0:14:15
github has reap um
0:14:19
accurate has streams
0:14:26
yeah i don't know how to explain it
0:14:28
properly but i'll just
0:14:39
and it's a software configuration
0:14:41
management application developer
0:14:46
what is the use of acura
0:14:54
designed for use uh by
0:14:58
team of people who are developing a set
0:15:05
i haven't used uh accurate
0:15:08
before as well so this was my best
0:15:13
and at first i thought that
0:15:22
sofa because they didn't trust
0:15:26
tools so they made their one of
0:15:32
i realized that hang on it's actually a
0:15:39
which was good yeah
0:15:49
okay so we need to go
0:16:01
yeah that's the one
0:16:35
okay aiming to get this backhand done
0:16:40
today so let's see how we go
0:16:44
um okay it's a board name we need a post
0:16:48
request create a board
0:16:59
yeah we can just basically copy this one
0:17:11
we shouldn't copy that one we can copy
0:17:14
some other one that has the
0:17:21
okay so this is all for thank you why
0:17:24
not use the one be
0:17:30
i wanted to have the post as in
0:17:33
the code in front of in front of me but
0:17:39
i would have to go to this function to
0:17:44
which is what i was thinking um no i
0:17:47
don't wanna do that
0:17:50
and that's one option
0:17:57
just copy and paste it into a notebook
0:18:09
oh my god i didn't know i was that
0:18:17
create a note for specific okay again
0:18:36
only board id is that one yeah yeah yeah
0:18:46
would need both columns
0:18:54
columns is fine i don't want to
0:18:56
bring it that much
0:19:09
columns or columns
0:19:11
yeah that's your columns
0:19:32
that would be an array
0:19:34
first is coming up
0:19:36
as got this board id here
0:19:40
yes i have so we need to do them both
0:19:50
boy why are you declaring the
0:19:55
way declaring it up here saying column
0:20:00
because we need to use as a variable
0:20:07
declare that array and then use it
0:20:14
how is it being populated column names
0:20:27
what i was thinking
0:20:37
oh no no no no no no no don't you do you
0:20:40
mean column names and then
0:20:43
the request body ah yeah
0:20:46
you're right you're right
0:20:49
i don't want thinking
0:21:03
so how is this spelled in the front end
0:21:19
where's my other one
0:21:23
i need my other one
0:21:27
alexander gamer man
0:21:33
after 10 years good to see you
0:21:37
do you know who that is say no
0:21:50
is someone you know in real life or
0:21:53
this is someone you know in real life
0:21:57
are there follow up the show
0:22:00
what's the what's the background you
0:22:02
don't don't mind sharing
0:22:06
that's right oh okay what's that you
0:22:14
yeah he's uh he's one of the um
0:22:17
first viewers that we had as in every
0:22:22
oh really okay yeah one of the first
0:22:25
when i actually started this stream
0:22:34
yeah we have a long memories together on
0:22:44
um so this is there are column names i
0:22:51
jesus been living under a big mac
0:22:55
i don't understand
0:23:02
columns all right cool perfect
0:23:05
so this is how we gonna do this one
0:23:09
so here's our columns that's the body um
0:23:13
so the columns are basically coming from
0:23:20
objects and then um
0:23:24
and then then we don't really need do we
0:23:27
need this yes we do we want to make sure
0:23:30
that the board id is valid
0:23:38
and then what we wanted to see if this
0:23:40
is the way i didn't want to
0:23:45
why don't we just um
0:23:47
i don't know maybe i don't know if it's
0:23:49
ideal or not but create a
0:23:51
a new function for
0:23:55
that for the columns
0:23:58
to do that to essentially do the same
0:24:00
thing but i don't know
0:24:02
it's kind of a repetition if you want to
0:24:09
let's save columns one by one
0:24:16
that should do it this is really bad
0:24:21
but i want to be bad
0:24:23
for one day come on
0:24:27
um okay cool so now we can
0:24:34
we're actually duplicating the code we
0:24:36
shouldn't be doing that no no no
0:24:45
there's pro there's definitely a better
0:24:55
team collins okay so
0:24:58
alexander asks um do you guys have new
0:25:04
we don't do it say
0:25:06
still the t-shirts
0:25:12
the t-shirt uh but
0:25:14
we will hopefully gain some
0:25:27
i've been buying my
0:25:35
from streamyard um
0:25:41
it's the rock tune from
0:25:49
500 lines of code in one
0:26:04
should we have broken this up a little
0:26:06
bit more saying like in different
0:26:10
yes but we're not going to do in the
0:26:12
first situation release has to happen
0:26:18
and we can basically do
0:26:20
whatever we factoring we want one after
0:26:23
the mvp is out there
0:26:31
because to be honest the code can always
0:26:34
be improved always
0:26:36
there's no doubt about that
0:26:42
yeah what are you doing
0:26:51
write a post request here
0:27:02
instead of creating the function
0:27:09
yeah i guess yeah why don't we do that
0:27:14
i'm gonna check how is that one done
0:27:20
because the prime key condition okay
0:27:27
so we're getting the board first
0:27:31
right we're gonna get the board first
0:27:46
so this would basically be closed on
0:28:25
yeah it was in that way
0:28:28
but we can go up around here
0:28:33
ah this is annoying
0:28:38
um turn the ear slings off
0:28:59
and then the key is
0:29:02
and we need the key
0:29:21
alrighty once we have this then what do
0:29:26
just want to get the board itself
0:29:30
why do we have this one key condition
0:29:33
expression board id
0:29:36
and anyway i'll just focus on that
0:29:43
okay that one's done and then we will do
0:30:06
promise okay so this will hopefully give
0:30:12
expected why are you expecting that for
0:30:28
but but not helpful too
0:30:34
look i can help you out with this
0:30:53
now you have to add a comma then
0:31:03
that feels good now
0:31:09
okay cool so once we have the board then
0:31:21
if the board exists
0:31:25
if the iron board nor present in the
0:31:28
database we need to do this as well
0:31:33
these all can go into functions and then
0:31:35
we can call the functions everywhere but
0:31:38
we're not going to
0:31:40
go down that route at the moment
0:31:44
these board items yeah um
0:31:47
if it's empty then board no isn't
0:31:54
not present in the database cool
0:31:58
and if it is present then what do we
0:32:01
want to do we want to just insert the
0:32:06
so we will basically do um
0:32:36
at the moment am i
0:32:41
for the notes one i think you guys
0:32:45
object first before
0:32:53
so it would basic because we are
0:33:00
notes uh we know inserted the columns as
0:33:04
in notes inside the columns which would
0:33:07
make a lot easier so
0:33:10
what we basically need to do is
0:33:15
what we would have to do kind of
0:33:36
and then you want to do
0:33:40
you're saying won't you be able to
0:33:41
follow the same logic because it's like
0:33:45
you know treating columns like
0:33:50
um i think you're looking in the wrong
0:33:52
i don't probably doesn't matter too much
0:33:56
that's you're looking at the
0:34:00
different area right
0:34:06
speak a bit louder because i could have
0:34:10
um i'm just saying i think you're
0:34:13
not in the right area
0:34:22
update single note
0:34:30
ah so note will come from the body a
0:34:34
column will come from the body right
0:34:38
so we can basically save that from the
0:34:44
we can just insert it in
0:35:27
for no present okay so now we can
0:35:35
column is equal to
0:36:12
and now what we need to do is basically
0:36:17
key body and insert in there
0:36:24
actually there was a better way to do
0:36:35
columns are being saved within bullets
0:36:55
update set or name
0:36:59
to that one okay cool we can use this
0:37:08
now that this is updating we want to
0:37:13
because every time we are inserting it
0:37:15
we are getting getting rid of the
0:37:18
existing value and reinserting the
0:37:20
entire thing again
0:37:34
okay now mine i will do this one
0:37:46
okay that one comes there
0:38:00
expression board id
0:38:05
excess energy drink
0:38:13
gecko says i need the excess energy
0:38:16
drink that's what you drink right zane
0:38:37
can dab if you wanna we can talk about
0:38:40
that off the stream
0:39:01
how hard can a operation be
0:39:20
saying what like you know
0:39:23
can we use the same logic essentially
0:39:26
from the same safe notes just
0:39:29
changing around the
0:39:34
we can do that here because i already
0:39:39
and i'm thinking that we just have to
0:39:51
and then it would work
0:40:02
don't we want to create the specific end
0:40:05
point right so that we can call
0:40:09
you think just for this initial save
0:40:14
i know you're right i'm just talking
0:40:18
you shouldn't do this
0:40:28
it's always the notes one
0:40:49
single notes would be this one
0:40:53
and then all with we're getting the
0:41:07
so we are updating your hair update
0:41:14
if we use that this one
0:41:34
board to order the set board notes so in
0:41:38
this one we can say accept columns
0:41:47
it's a column would be a list
0:41:51
list yeah yeah yeah it would be so that
0:41:54
would be fine so here we just have to
0:42:03
call them hair as well
0:42:21
columns and then this one would be
0:42:28
and then all we need to do is basically
0:42:59
but he has an exception
0:43:25
in the first part of the try saying um
0:43:32
res dot sen so to send the response so
0:43:51
that all looks alright and
0:43:57
coming coming from the body and
0:44:16
uh not that matters too much but you
0:44:19
res dots and jason
0:44:52
okay that should do the trick
0:44:59
let's deploy this and test it
0:45:04
let's see where we failed
0:45:08
okay i'm just gonna
0:45:19
you shouldn't use the
0:45:25
should be using the second param
0:45:29
rejected for fatal errors
0:45:35
second prong rejected
0:45:37
oh no he says this isn't a promise never
0:45:46
so here we are doing that one if board
0:45:50
isn't in the params then bring in
0:46:01
give you the board id and the columns as
0:46:05
and then we're checking if the
0:46:08
board id is alpha numeric
0:46:11
actually it will be alpha matter because
0:46:18
no no never mind i'm not gonna go down
0:46:24
board id falls so if there's no
0:46:27
married then the board id is not valid
0:46:29
it's brilliant look at this one don't
0:46:35
getting the board it's itself
0:46:42
we're checking if the board
0:46:47
if it doesn't have items in here which
0:46:50
is is empty then we are saying
0:46:53
board is not present in the database
0:46:57
and then we're getting the columns from
0:47:02
updating the board with table board
0:47:07
setting the columns of the
0:47:15
database column name column
0:47:23
let's see if that works because i've got
0:47:25
a bit of a strong feeling that this
0:47:28
a bit confused about that
0:47:53
columns column in the dynamodb
0:48:04
set whatever's in this one
0:48:12
and this is the key
0:48:18
think of it as this column is the key
0:48:21
and this column is the value
0:48:25
oh okay let's see okay
0:48:28
so in download db this is how we declare
0:48:35
okay okay okay so essentially this is
0:48:44
take the value of this variable which is
0:48:50
which is coming from
0:49:00
value for this variable
0:49:04
at the end of the columns
0:49:13
the dynamodb columns column
0:49:18
and then this thing sets all um so
0:49:22
because this will be a list
0:49:28
append the columns
0:49:37
this information in
0:49:40
at the end of this columns column
0:49:48
i don't know how good of a job i'm doing
0:49:51
in explaining if you sound
0:49:54
you sound really confused at the moment
0:50:00
and i thought i was getting grasp of it
0:50:02
and then i lost it in the end
0:50:05
how about if you tell me what have you
0:50:09
understood by this part here so i think
0:50:15
4 in 5 404 you are defining the key in
0:50:24
please say that this is the variable
0:50:28
and this is the value of the variable
0:50:36
and then in five four two
0:50:48
maybe yeah maybe we should rename some
0:50:50
of this to be a bit clearer
0:50:56
uh board columns actually let's
0:51:00
make it both columns instead okay yeah i
0:51:03
think they'll be better
0:51:19
actually i'm gonna move this one columns
0:51:26
so essentially what this is saying now
0:51:37
column which is in dynamodb
0:51:43
but right at the end
0:51:46
that's what list append does
0:51:52
hmm okay yes so save for example this is
0:52:01
and at the moment in db you have called
0:52:16
this was essentially say
0:52:30
array are you with me
0:52:33
yes yes i understand okay
0:52:38
basically will essentially say at six
0:52:43
okay that makes sense yeah
0:52:51
request we're only passing the change
0:52:53
that happens right are we
0:52:55
are we passing the whole column list or
0:52:58
only the change yes we're passing the
0:53:02
list because that's what we decided that
0:53:06
because it's only a few column
0:53:09
column names we can actually
0:53:15
from it totally and then re-insert it
0:53:17
which is the part that we still need to
0:53:23
so in this case when the
0:53:26
won't all the column names be appended
0:53:30
am i missing something
0:53:33
like if this works now this code will it
0:53:36
append all the column names in that case
0:53:40
it will append the all the column names
0:53:42
but it won't get rid of the
0:53:53
if it doesn't get rid of the previous
0:53:56
they could be overlapped right
0:54:01
which is when we would have to insert
0:54:05
functionality that
0:54:08
leave whatever value is in the column
0:54:12
column as in board columns column
0:54:16
and insert this one in
0:54:27
hmm okay i know it might be a bit
0:54:34
might not be right here but that's what
0:54:37
my understanding is how about if you run
0:54:42
yeah yeah sounds good
0:55:07
there you go perfect
0:55:13
let's run this and check it how it works
0:56:14
always get roasted in the chat
0:56:17
we always get roasted in the chats
0:56:22
obviously you should choose right now as
0:56:26
gang gang namo of the roast because i'm
0:56:30
already as soon as he can get dev
0:56:35
i'm not all right it's gonna happen
0:56:38
no one can stop it
0:56:41
tori is here as well by the way
0:57:20
were gonna send what
0:57:28
column so we were going to send here
0:57:52
come back and say tomorrow
0:57:55
yeah hopefully i'm thinking of this week
0:57:58
we'll smash this functionality out
0:58:01
and then be back for
0:58:03
testing from next week
0:58:28
a play of doing the honors as always
0:58:34
um cool thanks guys for joining us on
0:58:37
another episode of field break fix
0:58:41
um in today's episode we
0:58:43
were working on the back end um
0:58:46
creating functionality for
0:58:49
to post the columns into the to the db
0:58:56
got the majority of it out just need to
0:59:00
uh deploy it and then we can see if it
0:59:02
works so hopefully that's uh
0:59:05
that's something we can do tomorrow and
0:59:08
something that works as well so if
0:59:10
you're keen to um looking to join us and
0:59:15
make sure you come tomorrow and we'll
0:59:20
join us tomorrow same time
0:59:29
thanks for joining and we'll just