📺 Develpreneur YouTube Episode

Video + transcript

Breaking Down Problems: Simplifying Solutions and Getting Things Done

2025-01-16 •Youtube

Detailed Notes

In this episode of Building Better Habits, hosts Rob Broadhead and Michael Meloche explore the art of breaking down complex problems, simplifying tasks, and mastering productivity. Whether you’re a developer, a project manager, or simply someone looking to boost efficiency, these insights are practical, actionable, and transformative.

Read more... https://develpreneur.com/breaking-down-problems-simplifying-solutions-and-getting-things-done/

*Challenge Yourself: Breaking Down Problems Every Day*

Rob proposes a simple challenge to help build this habit: for the next week, before starting any task, write down the steps required to complete it. Whether it’s a 15-minute errand or a multi-day project, this exercise will improve your focus and efficiency.

*Stay Connected: Join the Develpreneur Community*

We invite you to join our community and share your coding journey with us. Whether you’re a seasoned developer or just starting, there’s always room to learn and grow together. Contact us at [email protected] with your questions, feedback, or suggestions for future episodes. Together, let’s continue exploring the exciting world of software development.

*Additional Resources*

* Solving Problems Without Solving the Problem (https://develpreneur.com/solving-problems-without-solving-the-problem/) * Breaking Things Down for Success: How Developers Can Build Better Habits (https://develpreneur.com/breaking-things-down-for-success-how-developers-can-build-better-habits/) * Revisit Problems To Provide Better Solutions (https://develpreneur.com/revisit-problems-to-provide-better-solutions/) * The Developer Journey: Key Lessons for Career Growth and Consistency (https://develpreneur.com/the-developer-journey-key-lessons-for-career-growth-and-consistency/)

*Follow-us on:*

* https://develpreneur.com/ * https://www.youtube.com/channel/UCZOuFN_LhczvGyT2KSItH_g/featured * https://facebook.com/Develpreneur * https://twitter.com/develpreneur * http://linkedin.com/develpreneur

Transcript Text
[Music]
have we talked about breaking things
down
um because this kind of made me as we're
talking about this one and we're talking
about
scope one of the things I see a lot of
developers having bad habits on is just
taking a ticket and running with it and
not taking a pause and looking at what
they're supposed to do and breaking it
down and making sure that it
is uh that they understand what the task
is actually that I like that that
actually fits very well with the idea of
sort of like leveling out your calendar
your you know your Daily Grind kind of
stuff because it's it is it's the same
thing it's like taking that that big
project and breaking it down into the
little steps that are going to be
required to get you to that you know to
to completion basically so I like that
as
a I don't know where we'll get from a
from a title but basically the idea of
like um you know avoiding you know too
high a high or too low of lows avoiding
getting stuck in something that you you
know that's basically just too big
buying off more than you can chew um I
think just simplifying your
task understanding the
problem yeah it's it does go by it's
like a little bit like we talked about
it's like actually spend a little time
on design kind of thing is like what you
know where we at and and stuff like that
as oppos to diving in and figure out how
that's going to
go so let's I think that works oh by the
way welcome back everybody I we are
recording we just sort like so at some
point
here Michael's going to edit in and
it'll be like hey we're restarting
because we had stuff we were running for
too
long not like bonus bad thing not like I
did the other day where I've somehow
left a zoom meeting and didn't leave the
zoom meeting and so it ran for like 16
hours it was recording and it
was yeah so we had to edit that sucker
down quite a bit because it was taking
up a lot of space and was very useless
as far as a you know to anybody that
would ever want to see it it's like why
did you just let me see 10 hours of a
dark office you know and stuff like that
that is exactly what we run into and
that is how you kill your Zoom account
yes it does Zoom doesn't like that they
will tell you by the way that it's like
hey we are not going to record well
unless you're on the unlimited account I
guess there is an unlimited somewhere
but in uh in our situation we were not
on the unlimited and guess what they
said hey we are not going to record
anymore until you clean some of that
crap up because you are blowing through
your quota because a lot of you know
hours and hours a day of of video it
takes up some space so yeah we to the
wise kill your get yourself out of your
Zoom meetings uh it's just like one of
those things it's like when you
when you think you're on mute make sure
you are on mute before you get into it
too far because sometimes that will
cause some problems you don't want to
end up in the situation where you left
the oven on left the house and your
house burned down exactly even if it is
the figurative you left the house you
let the House burn down because you
thought you were on mute and you were
saying bad things about your boss and
then your boss now fired you because
they didn't like what you had to say or
similar kinds of things so beware be
wise out there there so we will dive
into H we just call it simplifying
things or whatever it's going to be
we'll get into that one here three two
one well hello and welcome back we are
continuing our season of building better
habits we're building better developers
we are the developing nor podcast I am
Rob Broadhead one of the founders of all
of the four mentioned also a founder of
RB Consulting where we help you figure
out how to take technology and make it
your Workhorse is allows you to you know
become better as a company as a boss or
whatever it is you do is doing your
business better is taking technology
leveraging that through simplification
automation integration and even research
and some of the things we'll do so we
can help you figure out where do you
need to be not just today to be more
productive but what are the trends what
are the things that you need to do so
that you don't have to come back and
hire consultants and teams every year
and redo all of this stuff instead you
have a road map for the future that
allows you to Serious put a serious
budget to it that doesn't have all kinds
of wild estimations you know where your
growth is and you know that your systems
are going to be there when you need them
and they're going to be I don't know
reliable in some of those kinds of
things that people like to have as far
as habits go this time around I want to
talk about because I've talked about
Pomodoro probably a little bit too much
uh in
those one of the ones that's really been
good uh that I've made some adjustments
on which actually goes to our one of our
prior most recent prior episodes is the
list is figure out where my priorities
are and it's really been a challenge
because I have a lot of priorities
everything's a priority I have a big
list of things that I have to do but in
doing so I've basically take I've I've
been able to adjust a little bit with my
list habit of looking at that list and
taking one item for the couple of things
that have to be touched for the projects
that have to be touched for the
customers I have to reach out to things
like that and least one thing in each of
those so it's a little bit of a
different different approach from
prioritizing stuff as much as it's
saying these things are all critical but
I want to make sure that I at least get
these things done and it's sort of you
know really refining and pushing to the
why what is it what do I need to do to
take a step forward in each of these
areas and so that's helped me quite a
bit from the The Habit side of
things um in the good things bad
things of come through like I think
maybe a lot of you have come from a lull
and it was a little bit of a struggle
getting through the holidays to make
sure that I was like I was taking
advantage of what I need to Tak
advantage of and that is going to get a
little bit into our topic today but it
was making sure that I wasn't just
sitting there twiddling my thumbs and
things like that and so I was like
struggling a little bit because it was
hard to start the day when I didn't
necessarily know what I had and I had to
go look for work to do to some extent
it's not really that I had to look for
work to is I had to had to figure out
what is it that I want to attack next it
was I had many options essentially so a
little bit of a challenge the good news
is I made it through there and then as
we start into the year it's like bam
slammed with everything so I don't have
to worry about that I got so much stuff
to do I'm having to figure out what I
can't do today to build my list it's
basically my list is huge and I'm having
to just whack away at that to get it
down to something that I can get done in
a reasonable amount of time one of the
big items on my list today is to pass
this over to Michael and let him
introduce himself so I'm going to let
him introduce himself while I go check
that off my
list hello everybody my name is Mike
malash I'm one of the co-founders of
building better developers develop andur
I'm also the founder of Envision QA
where we are your software development
and quality assurance partner we build
tailored software to meet the needs of
healthc Care Professionals and small to
midsize e-commerce businesses we work
with you we figure out what your
business needs and we help identify the
systems that you need to have built for
you or to customize what you have to
work for you so that your software works
for you you aren't working for your
software good and bad uh good I'm
getting a little more sleep uh like Rob
I'm hacking things off my list I'm
actually uh kind of getting back on
track from the holidays so things are
getting back into more of a grind a
routine uh bad thing it took me a good
portion of the week to get back to that
routine uh lost a couple days of sleep
and and just trying to get back into
normal habits after the holidays and
with that talking about the habits
so this past week what I've really been
working on a lot is trying to break
things down a little bit which will kind
of lead into this episode and also
talking about uh or working on my lists
and trying to focus on what needs to be
done in the near future to make sure
that all the projects I'm working on are
on track where they need to be and make
sure that we meet those deadlines that
are coming up in the next few
months and that really gets to I think
what I want to focus on is it's there's
a couple ways we can look at the the
topic this time around and it could be
the idea of um leveling out your your
schedule your work schedule because so
you know we tend to have sort of a feast
or famine kind of thing where there's a
lot of work that needs to be done and
then there's not as much work that needs
to be done and you know it's the it's
sort of the it that you'll you'll have
like a regular steady little home and
then the next thing you know we've got
to crank everything out for production
release and things going wrong and all
this kind of stuff and so now we you
know we're working late nights we're
working through the weekends and we're
exhausted and the stuff that really is
not helpful in the grand scheme of
things it's not as productive it's not
healthy and finding ways to level that
out but but part of that
is is really making sure that we can
break things down in a way that then we
can you know sprinkle it across the days
and the weeks to get to that point so
like Michael said is that there's going
to be things that we know are coming up
that we need to be we really there it's
going to be a lot of work so we need to
start chipping away at that now versus
waiting until it becomes critical and
then dealing with it it's sort of like
if you're you know it's the death by a
Thousand Cuts kind of thing it's like if
you know if you're you know like sort of
addressing stuff as it goes then
everything's a little thing but if you
let too many of them go then then next
thing you know it's now you're bleeding
to death and you're trying to patch all
that stuff up at once as opposed to
taking the little things as they go now
this is not uh firefighting and just
being like okay I'm just going to fix
the thing that's broken right now and
everything else is going to be awesome
it is looking at the things that are
going to come up that are going to need
maintenance that are going to need to be
addressed and making sure that you have
plotted out a way to get those things
done in a a timely manner and that's
really where we're going to get into the
the habit and the ch challenge is it is
it's sort of for lack of better term it
is it goes to you know some of the
longer term scheduling stuff that we've
talked about we've we've talked about
some habits related to daily scheduling
but within that I think we also need to
look at some of the longer term things
because yes we don't want to spend all
day you know we don't want to spend all
day every day talk thinking about what
we're going to do six months from now or
a year from now or two years from now
but what we do want to do when we're
building our list for today is our
prioritization should have as part of it
the idea of what are the things that I
need to get done because I need to be
making progress on this versus the
things it's like I really could like if
I don't do this today it's not going to
matter and it does get into the idea
of the thing that if I don't do it today
it's not going to matter that much so
I'm going to push it tomorrow at some
point it raises in priority that's like
I need to get that done it's the idea of
a of building habits a lot of times I've
heard that you can miss a day if you're
doing a daily habit but don't miss two
days in a row and that's sort of where
we want to get with this and it's the
idea of taking something
big and then looking at it and breaking
it down to how do I get that thing
complete instead of looking at it as a
whole instead it's like how do I break
this down and that's a little bit what
we're going to talk about as well so
it's how do I go from this huge honking
elephant of a project to break it down
and realizing that okay it's got legs
it's got a trunk it's got ears it's got
a tail it's got you know a midsection
and and then looking at those sections
and saying okay well how do I tackle the
foot how oh well with then the foot
maybe there's like a knee and there's a
foot and there's toes and legs and stuff
like okay well then how do I break that
down that's the kind of stuff we want to
do is we want to take in order to do
this we have to be able to look at the
big problem which may be like in a you
know agile sense like an epic or
something like that it's like how do I
for example how do I build let's say
billing functionality for my customer
for their app they've got this huge
application and now I get to be I'm
assigned as a developer billing well and
it's like let's look at what is what are
the pieces what are included in Billing
now maybe you got something put together
where you've got uh you've got user
stories and you got very specific
requirements or families of requirements
so you can now break that down so for
example billing maybe like
uh sending it out like invoicing but
then it's also receiving payments and
then it's applying payments and then
it's reconciling those so maybe those
are like four areas right there so now
you've already broken that down a little
bit so if you have to get this billing
thing done in six months well okay I've
got these four areas well let's look a
little bit deeper into those so we can
figure out are they equally the same
amount of work so I need to get like
about a month and a half to get each of
them or is there one that's going to
take half the time and the others can
get done very quickly and so I basically
just rinse and repeat so I go into like
say for example the invoicing piece so
now I've I've gone into that I'm like
all right I need to be able to send
invoices out well that's like okay well
what do I need to do to be able to send
invoices well I need to be able to
attach all of the bills or charges that
are for that customer for that invoice
period so I need to be able to have some
way to enter an invoice period and then
have it go you know either have a list
of customers or just grab all customers
then for a customer I need to be able to
get all of the charges that are related
to them during a time frame and then I
need to have maybe there's some
calculations so I've got to take all of
that and maybe now I've got to uh add in
maybe some interest charges or maybe I
need to figure out is there a past due
and you what does an invoice look like
what am I actually telling them that
adds up to this is what you owe and this
is what I need you to pay me by whatever
the due date is so now you've broken
that into these smaller pieces and you
can estimate what it's going to take to
each of those and then now you know once
you've done that you can sort of roll
that back up and you now have have a
rough idea it's going to take x amount
of time to do the billing or to do the
invoice part of the billing okay now I
can move on to for example receiving
payments well what's involved with that
do I need to set up an integration with
the system because now I'm going to be
taking you know credit card payments do
I need to have some sort of a system
that allows for taking cash in like some
sort of POS or something like Point of
Sales system or something along those
lines do I need to um can I take partial
payments do I need to be able to support
payments like from checks and then if
they're checks do I need to have some
way to make sure that those checks have
actually been deposited at the bank now
I've built these pieces out and I can
estimate all those and I can roll that
up and that is the receiving payment
side and we keep doing that and so what
we'll do is we'll break it down to
certain you know a few pieces and
ideally every time you break it down
it's I don't know three five maybe a
half dozen pieces and then you break
that in and break that down and break
that down and eventually you may have to
go several layers deep and have hundreds
or maybe thousands heaven forbid of
pieces but then those are all bite-sized
chunks that you can figure out what what
is it going to take to do that you can
roll that stuff back up and now you know
for example this is Project planning 101
it's going to take me six months of work
to do this and lo and behold I have a
six-month deadline okay I need to make
sure what work am I getting done each
month each week each day to keep on on
my track to keep that thing going to hit
that 6month goal so that's part of what
we're talking about say how do we do
that and this is where we're going to
get into the challenge but first i'm
going to let Michael give his two cents
and then some worth on how we do
this thanks Rob so you've laid out at a
very good high level from like a project
manager a high level view of breaking
the problem down I want to kind of flip
it a little bit and take it more from
the developers perspective as we start
taking those pieces and looking at them
even further before we actually start
working on them so as you as developers
we essentially take these tickets or
take these tasks like Rob broke down and
once you have them at the small pieces
it's time to start working on them so we
create the tickets we do the Sprints and
we lay these out but as developers a lot
of times we get into the habit of okay
we have a ticket we jump in and we just
start working uh the problem the problem
may be in the fact that the problem
itself isn't broken down enough the
problem hasn't been simplified so what
you might be doing is you might be
working on a feature and blowing it out
beyond what it needs to be so what you
really need to do and how I want to
tackle this is as a developer as you
start to do your work look at the task
you have been given and read through it
again now you may have gone through the
ceremonies of the high level pointing
and all that but
still typically we are busy typically
those meetings go quickly and you got to
go through very fast and everyone just
ask the questions as they can but
sometimes you don't get to that work
right away sometimes that work doesn't
get reviewed or doesn't get started for
weeks and while it was in your mindset
at the time you did the pointing things
may have changed by the time you get to
that ticket things in the system may be
different so it's always a good idea
when you sit down to start a problem or
a task read through the whole process
again read through your ticket and make
sure that you are tackling one problem
that your focus is on one feature and
that that feature or the piece that
you're trying to work on isn't really
multiple pieces doesn't need to be
broken down further because if you get
into it and you find out oh this needs
this this needs this this needs this
your task that may have been agreed to
that hey this is going to take a couple
of days to do may now mean it's going to
take a couple weeks now if you don't do
this if you don't take the time to read
through this now you could be at the end
of your Sprint and be like oh why is
this one two day task taking me two
weeks if you had taken the time day one
to reread your ticket take 15 minutes
hey even take a half an hour if it's a
very complex ticket read through it read
through it again and then kind of
visualize what it is that you're
building if you get to the the point
where this task as you're reading
through it's like wait this doesn't make
sense anymore because we made this
change but the ticket says it wants this
well that you you have a conflict you
need to raise that now before you start
the work because you could be removing
or that requirement might have changed
so what is always in our mind that we
have to get stuff done we have to get
work done we have to show that we're
productive make sure that the work doing
is the right work even though it's in a
ticket it doesn't necessarily mean it is
the right thing to do always review your
work before you start your work is kind
of going to be my Mantra on this
one you want to simplify the problem but
you also want to make sure that you are
getting the problem done right that you
are solving the problem in the right way
so again to break it down further make
sure that when you take your task read
through the task make sure that it fits
within the big picture also make sure
that it is one concise piece of that
feature and not multiple pieces because
if it's multiple pieces you might need
to break it down further and it might
need to require more tickets or more
features that need to be flushed out
so before again before you work read
through your pro read through your
requirements read through your tickets
make sure you understand the problem
make sure that the ticket addresses that
problem and make sure that the problem
that is being addressed is still
relevant to the big
picture so what are your thoughts on
that
Rob first I have to unmute myself see
it's like making sure you put your task
as you're thinking through that this is
I think this goes back to something that
we have talked about before from a a
coding and documentation point of view
is the idea of instead of just writing
code it start out with like essentially
pseudo code is use some comments that
say I'm solving this problem and this
actually is very near and dear to my
heart because I'm spending a lot of time
essentially doing some code reviews and
refactoring and things like that where
there are these very complex uh
functions and methods and figure out is
there a better way to do this that is
more readable that breaks this down so
it's smaller chunks of work and thus
probably easier to uh to reuse those
chunks of work and I think that's a way
to do is we can take a a problem and
have a you know a main or a primary
application whatever it is we want to
think about that we start out where it's
just all it is is a bunch of comments of
in order to solve this problem I need to
do this I need to do this I need to do
this I need to do this and so that may
not be the the be all and endall but
this is where it goes to what Michael's
talking about is now You' thought
through it a you're spinning spending
some time dare I say designing your
solution a little bit and saying this is
the approach I'm going to take and then
as you get into each of those steps
you'll probably find you may find some
additional things you're like oh shoot I
need to break this into two steps or I
forgot that because I have this that
means there's this other step I'm going
to have to do you there's things like
that but what it is doing is it's giving
us our sort of like our outline of what
it really is I guess it comes down to
it's an outline of what is it going to
take to get this thing solved now we've
broken it into smaller steps and even
with each those as we're thinking about
them that may help us break it into
other steps or the reason we try to want
to do this sooner rather than later is
it may bring up questions because we'll
say wait a minute I don't have all the
information I need to complete this step
because now that I'm thinking about it I
don't know how to do that I'm not sure
what that's going to be so I'm going to
have to go um you know reach back out to
a customer or my manager or I'm going to
have to go back and spend some time
thinking about this design or whatever
it is to be able to actually figure out
what needs to be done to complete that
task and in so doing so I think you're
going to write smaller easier to
understand easier to maintain code it
goes to like there's all kinds of
lenters and stuff out there that'll tell
you that you know there's like these
code complexity scores and all this kind
of stuff that
are in a general sense they're just
trying to simplify stuff and sometimes
it's too much it's too granular but
sometimes it's not so it is very much A
good rule of thumb to say okay I
shouldn't have you know thousands of
line of code in a function I should be
breaking that thing down where possible
and so it should be it really shouldn't
be that much it should be there's maybe
a series of steps and if if that has too
many steps then maybe I can group some
of those steps so that it is readable
that it's understandable it's easier to
maintain it's easier to document it's
easier for somebody else to come behind
you and say oh this is what I'm doing
and this is how I'm doing it before I
give the challenge I want to throw that
back to you Michael and see if there's
anything that that that popped up in
your head anything else to discuss yeah
so the other thing Bas because of how
you laid it out I like that um which
goes back to my test rriv development
model is when you sit down with a ticket
the best way to this works great for
test development is start the ticket
essentially write out the steps on how
you would or how you would essentially
test this ticket from the end user and
as you walk through you start finding
out okay I get to this step here I get
to this step here oh wait I now have
multiple choices on this step well if
you are writing a feature you should not
have multiple choices unless that's
defined in the ticket if you get to a
step and it's like oh well I could go
here I could go here I could go here I
could go here you you need to stop and
go ask for direction because you should
have a straight path from the user's
expectation to the solution you should
not have multiple paths to get there
unless it is an if then scenario and
that if then should be laid out within
the ticket so if you again write it out
or kind of do it as a test driven
approach first you're going to catch a
lot of this a lot of
these I guess open-ended questions in
tickets where they're not flushed out
they're not well defined or if the
feature has changed as you're going
through this process you'll get to a
step and say wait the system doesn't do
this anymore so why am I being asked to
do this in this
ticket I think that combination of the
why the thinking through it and the why
is really going to solve a lot of your
problems it's it's amazing how those are
very simple steps they are a little bit
hard to to build the habits to get there
but once you do they will make a big
difference they will help you stay
focused and help you really comes back
down to like leveling out stuff so
you're not you're not going to be
surprised as not you're going to be able
to estimate better you're going to be
able to plan better and the the bumps
and bruises that generally come with
softer development will be smaller and
very manageable so from a habit point of
view this is again this is one of those
very similar to a couple of our sort of
a theme we have as we're we're starting
this year it feels like with a couple of
these episodes and and building better
habits is
it with each item that you're doing on a
daily basis this your challenge for the
next week when you start a task the
first thing you do is actually start the
task is it's like look at your to-do
list and say I'm going to focus on this
task so this is what I'm going to do
right now
and first thing you do with that is what
you know we've talked about in PR like
what does it mean to complete it okay
now I know what it means to compl
completed so I know what I need to get
there so walk through what am I going to
do to get that done now it could be as
simple as like for example I want to get
my laundry done okay how do I get that
done well I need to first I need to go
to my laundry hamper maybe first I have
to pick up all my dirty clothes and put
it into the hamper then I have to take
the hamper to the washing Place wherever
that happens to be and then I have to do
some number of loads of wash and some
number of loads of drying and then when
I'm done I need to gather all that crap
up and I need to fold it iron it put it
away whatever it is depending on what's
your your tasks how you want to Define
that but now what I've done is said okay
in order to be done with washing doing
my laundry these are the steps I need to
do and of course in doing so you're
going to do exactly what I just did is
you're going to say well first I just
have to get my clothes to the to the
washing place but as I said it's like oh
wait maybe first I need to gather my
clothes into someplace so I can then
take them somewhere so for example if
I'm going to you know do a garbage run
first I need to what are all the garbage
cans I need to empty into wherever I'm
you know the device the transportation
thing that is going to do the garbage
run and then I need to run dump it all
out and come home those kinds of things
when you start laying out those steps I
think you'll be amazed at how often
you're like oh yeah there's another step
I need to think about that may have been
a pain in the butt had you gotten into
doing the process and then had to adjust
and add that step versus you thinking
about that step from the start in
particular things where it's like maybe
it's like making dinner well if I'm
going to slow cook dinner first I need
to prep it and get the slow cooker going
because if I wait until 5 minutes before
I'm going to eat dinner that slow cooker
hence the name slow cooker is not going
to have my food ready for me so there's
things like that that I need to do to
plan out my day and if I think about
those steps it's going to help me so the
advanced thing would be to look at all
the steps you need to do to get the
things that you have to get done let's
organize those but we're going to start
simple with your habit I just want to do
a habit of attacking a task and that the
first thing I do is I write down how am
I going to get to that task what am I
going to do what are the steps to
complete that task as I'm thinking about
this I think this is going to be really
fun for me to do because I don't do it
this way but I'm going to be very anal
retentive about it and try to do it in
the next week and let's see what this
works out for me as far as habits go so
first step for you send us an email at
info developer order.com and let us know
how you're doing how do you think about
these habit building things are working
for you is this a great use of is this
is this getting you towards being a
better developer we building a better
developer by building better habits and
if not I'm more than welcome to happy to
hear from you what would be a better way
if it's just a matter of like tell Rob
to shut up and Michael needs to do
everything cool because my schedule just
got a lot easier so but don't do that
just to make my schedule easier but
whatever it is we have topics coming up
we have new seasons we are not even
close to done maybe you're like oh sadly
so but no we're going to be around for a
while we have a lot of things that we
can cover and so we want to hear from
you what is the best thing what is the
best use of your time what are the best
topics for us to cover whether they're
timely whether they're more career uh
you know span of your career kinds of
things whether it's just how to tie your
shoes I don't know what it may be but
it's the things that you come bring to
us and say this is what I don't think
you're giving us enough of and I'd like
to hear more of it because that's what
we want to do we want to give you as
much that you want as we possibly can
and if not we'll fake it because hey we
got
skills that being said there's so many
ways you can contact us I'm not even
going to waste your time you can listen
to the next episode or you can go to the
one before us go out there and have
yourself a great day a great week and we
will talk to you next
time bonus
material so was interesting you threw
out the slow cooker at the end because
one of the best ways to think about
simplifying the problem or breaking it
down is
cooking if the task you're essentially
even as developers we need to think of
our tasks as a recipe the ticket needs
to identify what the problem is what it
is that we're going to cook we need to
have the end product what it is that
we're trying to deliver and then we need
to hopefully have the steps broken down
as to what we need to solve the problem
if we don't have what we need to solve
the problem then we can't write really
useful code we can write code but it may
not solve the problem so we need to make
sure that not only do we have the what
it is we're trying to do and the end
product but as developers when we look
at our tickets we need to make sure that
we have the steps we have what we need
to solve this problem if the pro if the
steps basically could lead to multiple
Solutions then we have not refined the
or defined the problem or the solution
in a clear enough way for you to get
from A to
B I'm trying to think of a good I really
it comes down to as I've thought about
as I sort of like out of the blue came
up with this
um this habit
challenge I'm really liking this idea of
even like the simplest things I'm doing
because I do have some of these tasks
that are like the 15minute tasks kind of
thing but even within those and probably
even more so with those is to spend a
sec you know spend a a minute basically
saying okay how am I going to get this
done so that when I get to the task it's
just like Bam Bam Bam Bam Bam knock
those things out very much like a
Pomodoro kind of thing is a taking that
and it's and which has been effective to
me is that I have often taken a smallish
kind of task you know a 20 to 30 minute
kind of task and made that one of my
pomodoros for the day saying I'm going
to just like go heads down get this done
and usually I do start it with what am I
going to get done in this next little
bit because I don't want to be in the
middle of a Pomodoro and then be sitting
there thinking okay what is my next step
I want to be able to get in and just
like crank through it so I frontload
that and I think that's maybe a really
good combo to help you guys get started
with this is if you think of these in
like pomodoros or mini Sprints within
the days is what needs to be done with
that and maybe you do start each one is
just like like in a Pomodoro maybe you
add something say in the first two
minutes I going to plan out what am I
doing in the next 23 minutes of my
Pomodoro or something like that I mean
this may be some sort of modified thing
that we'll call it a a developer or
something like that we'll figure
something out that'll be some little
branded name but it's like we can maybe
we can tweak that and find a way to make
that more effective to us so thing about
that as you're going into it is like
where can I spend just a little bit of
time thinking through this and
particularly complex tasks but even
honestly some of the things that are uh
wrote like dishes or laundry or
groceries or cooking or some of those
kinds of things like where can I maybe
spend a little time with that and maybe
performance tune that a little bit do it
a little bit better that being said we
will wrap this one up and let you get to
your day because we got crap to do too
so go out there and have yourself a
great one we are still chugging along we
we are getting towards the end probably
another month is or so of habits and
then we'll get into the next season
which we still haven't figured that one
out so we need better habits of maybe
how to figure out where we're going to
get to with our upcoming seasons and
what our topics are going to be uh
feedback is always welcome developer.com
Facebook site X email smoke signals you
name it we're good for it t telepathy
whatever it is you figure it out we'll
find a way to receive it and we want to
take that feedback and do something with
it go out there and have yourself a
great one and we will talk to you next
time
[Music]
Transcript Segments
1.35

[Music]

28.32

have we talked about breaking things

29.72

down

34.399

um because this kind of made me as we're

37.079

talking about this one and we're talking

38.32

about

39.559

scope one of the things I see a lot of

43

developers having bad habits on is just

44.879

taking a ticket and running with it and

47.32

not taking a pause and looking at what

50.52

they're supposed to do and breaking it

52.44

down and making sure that it

54.879

is uh that they understand what the task

58.559

is actually that I like that that

61.68

actually fits very well with the idea of

63.92

sort of like leveling out your calendar

66.04

your you know your Daily Grind kind of

67.96

stuff because it's it is it's the same

69.56

thing it's like taking that that big

71.52

project and breaking it down into the

73.08

little steps that are going to be

75

required to get you to that you know to

77.479

to completion basically so I like that

81.4

as

85.479

a I don't know where we'll get from a

87.72

from a title but basically the idea of

90.4

like um you know avoiding you know too

95.04

high a high or too low of lows avoiding

97.479

getting stuck in something that you you

99.88

know that's basically just too big

101.439

buying off more than you can chew um I

104.84

think just simplifying your

107.2

task understanding the

109.56

problem yeah it's it does go by it's

112.439

like a little bit like we talked about

113.399

it's like actually spend a little time

114.479

on design kind of thing is like what you

117.52

know where we at and and stuff like that

119.439

as oppos to diving in and figure out how

122.28

that's going to

126.399

go so let's I think that works oh by the

129.84

way welcome back everybody I we are

133.28

recording we just sort like so at some

135.319

point

137

here Michael's going to edit in and

139.16

it'll be like hey we're restarting

140.56

because we had stuff we were running for

142.319

too

143.12

long not like bonus bad thing not like I

146.84

did the other day where I've somehow

148.519

left a zoom meeting and didn't leave the

150.239

zoom meeting and so it ran for like 16

152.959

hours it was recording and it

155.4

was yeah so we had to edit that sucker

158.72

down quite a bit because it was taking

160.159

up a lot of space and was very useless

162

as far as a you know to anybody that

164.159

would ever want to see it it's like why

166.12

did you just let me see 10 hours of a

168.72

dark office you know and stuff like that

171.68

that is exactly what we run into and

175.08

that is how you kill your Zoom account

177.44

yes it does Zoom doesn't like that they

179.28

will tell you by the way that it's like

181.159

hey we are not going to record well

182.599

unless you're on the unlimited account I

183.879

guess there is an unlimited somewhere

185.92

but in uh in our situation we were not

188.12

on the unlimited and guess what they

189.72

said hey we are not going to record

191.239

anymore until you clean some of that

192.84

crap up because you are blowing through

194.319

your quota because a lot of you know

196.64

hours and hours a day of of video it

200.12

takes up some space so yeah we to the

204.08

wise kill your get yourself out of your

206.599

Zoom meetings uh it's just like one of

208.799

those things it's like when you

210.48

when you think you're on mute make sure

212.4

you are on mute before you get into it

214.319

too far because sometimes that will

216.799

cause some problems you don't want to

219.08

end up in the situation where you left

220.48

the oven on left the house and your

222.2

house burned down exactly even if it is

224.959

the figurative you left the house you

226.68

let the House burn down because you

228.2

thought you were on mute and you were

229.28

saying bad things about your boss and

230.92

then your boss now fired you because

233.079

they didn't like what you had to say or

236.12

similar kinds of things so beware be

239.239

wise out there there so we will dive

243.04

into H we just call it simplifying

245.2

things or whatever it's going to be

246.4

we'll get into that one here three two

250.079

one well hello and welcome back we are

253.159

continuing our season of building better

254.64

habits we're building better developers

256.079

we are the developing nor podcast I am

258

Rob Broadhead one of the founders of all

260.199

of the four mentioned also a founder of

262.32

RB Consulting where we help you figure

265.68

out how to take technology and make it

268.52

your Workhorse is allows you to you know

272.6

become better as a company as a boss or

276.72

whatever it is you do is doing your

278.919

business better is taking technology

280.479

leveraging that through simplification

282.12

automation integration and even research

285.039

and some of the things we'll do so we

286.199

can help you figure out where do you

287.479

need to be not just today to be more

289.199

productive but what are the trends what

291.12

are the things that you need to do so

292.52

that you don't have to come back and

294.039

hire consultants and teams every year

296.4

and redo all of this stuff instead you

299.4

have a road map for the future that

301.44

allows you to Serious put a serious

303.919

budget to it that doesn't have all kinds

305.36

of wild estimations you know where your

306.96

growth is and you know that your systems

308.8

are going to be there when you need them

310.8

and they're going to be I don't know

312.12

reliable in some of those kinds of

313.52

things that people like to have as far

315.68

as habits go this time around I want to

318.56

talk about because I've talked about

319.84

Pomodoro probably a little bit too much

322.6

uh in

323.52

those one of the ones that's really been

325.84

good uh that I've made some adjustments

327.8

on which actually goes to our one of our

329.96

prior most recent prior episodes is the

332.639

list is figure out where my priorities

335.24

are and it's really been a challenge

337.84

because I have a lot of priorities

339.56

everything's a priority I have a big

341.479

list of things that I have to do but in

344.919

doing so I've basically take I've I've

346.68

been able to adjust a little bit with my

348.4

list habit of looking at that list and

351.4

taking one item for the couple of things

354.039

that have to be touched for the projects

355.4

that have to be touched for the

356.479

customers I have to reach out to things

358.24

like that and least one thing in each of

361.12

those so it's a little bit of a

362.36

different different approach from

364.44

prioritizing stuff as much as it's

366.319

saying these things are all critical but

369.039

I want to make sure that I at least get

371

these things done and it's sort of you

373.72

know really refining and pushing to the

375.88

why what is it what do I need to do to

377.56

take a step forward in each of these

379.319

areas and so that's helped me quite a

381.199

bit from the The Habit side of

385.039

things um in the good things bad

388.24

things of come through like I think

390.599

maybe a lot of you have come from a lull

392.199

and it was a little bit of a struggle

393.599

getting through the holidays to make

394.919

sure that I was like I was taking

397.08

advantage of what I need to Tak

398.44

advantage of and that is going to get a

400.16

little bit into our topic today but it

402.52

was making sure that I wasn't just

403.84

sitting there twiddling my thumbs and

405.28

things like that and so I was like

406.44

struggling a little bit because it was

407.599

hard to start the day when I didn't

408.84

necessarily know what I had and I had to

410.4

go look for work to do to some extent

412.96

it's not really that I had to look for

414.28

work to is I had to had to figure out

416.84

what is it that I want to attack next it

418.759

was I had many options essentially so a

421.479

little bit of a challenge the good news

423.039

is I made it through there and then as

425.199

we start into the year it's like bam

427.56

slammed with everything so I don't have

429.479

to worry about that I got so much stuff

431

to do I'm having to figure out what I

432.56

can't do today to build my list it's

435

basically my list is huge and I'm having

436.44

to just whack away at that to get it

437.84

down to something that I can get done in

439.52

a reasonable amount of time one of the

442

big items on my list today is to pass

444.759

this over to Michael and let him

445.96

introduce himself so I'm going to let

447.199

him introduce himself while I go check

449.56

that off my

451.52

list hello everybody my name is Mike

453.879

malash I'm one of the co-founders of

455.36

building better developers develop andur

457.639

I'm also the founder of Envision QA

459.84

where we are your software development

461.84

and quality assurance partner we build

464.479

tailored software to meet the needs of

466.479

healthc Care Professionals and small to

468

midsize e-commerce businesses we work

470.68

with you we figure out what your

472.759

business needs and we help identify the

475.8

systems that you need to have built for

477.96

you or to customize what you have to

480.4

work for you so that your software works

482.319

for you you aren't working for your

484.879

software good and bad uh good I'm

488.639

getting a little more sleep uh like Rob

491.319

I'm hacking things off my list I'm

493.319

actually uh kind of getting back on

495.479

track from the holidays so things are

498.36

getting back into more of a grind a

501.319

routine uh bad thing it took me a good

504.8

portion of the week to get back to that

506.36

routine uh lost a couple days of sleep

509.28

and and just trying to get back into

511.039

normal habits after the holidays and

514.88

with that talking about the habits

517.599

so this past week what I've really been

520.719

working on a lot is trying to break

523.2

things down a little bit which will kind

524.72

of lead into this episode and also

527.399

talking about uh or working on my lists

531.68

and trying to focus on what needs to be

534.519

done in the near future to make sure

537.16

that all the projects I'm working on are

539.8

on track where they need to be and make

541.64

sure that we meet those deadlines that

543.56

are coming up in the next few

546.44

months and that really gets to I think

549.12

what I want to focus on is it's there's

551

a couple ways we can look at the the

552.92

topic this time around and it could be

554.48

the idea of um leveling out your your

558.56

schedule your work schedule because so

560.16

you know we tend to have sort of a feast

561.56

or famine kind of thing where there's a

563.279

lot of work that needs to be done and

564.839

then there's not as much work that needs

566.279

to be done and you know it's the it's

568.16

sort of the it that you'll you'll have

571.56

like a regular steady little home and

573.68

then the next thing you know we've got

575.76

to crank everything out for production

577.72

release and things going wrong and all

579.36

this kind of stuff and so now we you

580.76

know we're working late nights we're

581.88

working through the weekends and we're

582.88

exhausted and the stuff that really is

584.76

not helpful in the grand scheme of

586.56

things it's not as productive it's not

588.12

healthy and finding ways to level that

590.48

out but but part of that

592.72

is is really making sure that we can

596.279

break things down in a way that then we

599.44

can you know sprinkle it across the days

601.839

and the weeks to get to that point so

603.88

like Michael said is that there's going

605

to be things that we know are coming up

606.8

that we need to be we really there it's

609.16

going to be a lot of work so we need to

611.12

start chipping away at that now versus

613.56

waiting until it becomes critical and

615.68

then dealing with it it's sort of like

617.72

if you're you know it's the death by a

620.2

Thousand Cuts kind of thing it's like if

621.839

you know if you're you know like sort of

623.64

addressing stuff as it goes then

625.76

everything's a little thing but if you

627.64

let too many of them go then then next

629.48

thing you know it's now you're bleeding

630.68

to death and you're trying to patch all

632.16

that stuff up at once as opposed to

634.12

taking the little things as they go now

636.44

this is not uh firefighting and just

639.12

being like okay I'm just going to fix

640.48

the thing that's broken right now and

641.72

everything else is going to be awesome

643.279

it is looking at the things that are

644.88

going to come up that are going to need

646.24

maintenance that are going to need to be

648.959

addressed and making sure that you have

651.72

plotted out a way to get those things

653.44

done in a a timely manner and that's

656.36

really where we're going to get into the

658.2

the habit and the ch challenge is it is

661.2

it's sort of for lack of better term it

663.16

is it goes to you know some of the

665.519

longer term scheduling stuff that we've

667

talked about we've we've talked about

668.6

some habits related to daily scheduling

670.88

but within that I think we also need to

674

look at some of the longer term things

676.639

because yes we don't want to spend all

679.76

day you know we don't want to spend all

681

day every day talk thinking about what

682.24

we're going to do six months from now or

683.56

a year from now or two years from now

685.48

but what we do want to do when we're

686.76

building our list for today is our

689.6

prioritization should have as part of it

692.279

the idea of what are the things that I

694.399

need to get done because I need to be

697.279

making progress on this versus the

699.24

things it's like I really could like if

700.839

I don't do this today it's not going to

702.8

matter and it does get into the idea

706.36

of the thing that if I don't do it today

709.079

it's not going to matter that much so

710.519

I'm going to push it tomorrow at some

712.44

point it raises in priority that's like

714.399

I need to get that done it's the idea of

717

a of building habits a lot of times I've

718.839

heard that you can miss a day if you're

721.44

doing a daily habit but don't miss two

723.56

days in a row and that's sort of where

725.56

we want to get with this and it's the

726.88

idea of taking something

729.519

big and then looking at it and breaking

732.36

it down to how do I get that thing

734.959

complete instead of looking at it as a

737.72

whole instead it's like how do I break

740.44

this down and that's a little bit what

742.36

we're going to talk about as well so

743.68

it's how do I go from this huge honking

746.839

elephant of a project to break it down

749.56

and realizing that okay it's got legs

751.24

it's got a trunk it's got ears it's got

752.68

a tail it's got you know a midsection

754.72

and and then looking at those sections

756.88

and saying okay well how do I tackle the

759.079

foot how oh well with then the foot

760.92

maybe there's like a knee and there's a

762.199

foot and there's toes and legs and stuff

764.519

like okay well then how do I break that

766.76

down that's the kind of stuff we want to

768.92

do is we want to take in order to do

771.76

this we have to be able to look at the

773.519

big problem which may be like in a you

776.639

know agile sense like an epic or

778.839

something like that it's like how do I

780.519

for example how do I build let's say

784.639

billing functionality for my customer

787.32

for their app they've got this huge

789.48

application and now I get to be I'm

791.279

assigned as a developer billing well and

794.519

it's like let's look at what is what are

796.92

the pieces what are included in Billing

799.279

now maybe you got something put together

800.959

where you've got uh you've got user

802.76

stories and you got very specific

804.36

requirements or families of requirements

806.079

so you can now break that down so for

807.68

example billing maybe like

809.639

uh sending it out like invoicing but

811.56

then it's also receiving payments and

813.12

then it's applying payments and then

814.399

it's reconciling those so maybe those

816.72

are like four areas right there so now

818.36

you've already broken that down a little

820.199

bit so if you have to get this billing

821.959

thing done in six months well okay I've

824.199

got these four areas well let's look a

825.72

little bit deeper into those so we can

827.24

figure out are they equally the same

830

amount of work so I need to get like

831.399

about a month and a half to get each of

832.92

them or is there one that's going to

834.88

take half the time and the others can

836.24

get done very quickly and so I basically

839.16

just rinse and repeat so I go into like

840.959

say for example the invoicing piece so

843.639

now I've I've gone into that I'm like

845.199

all right I need to be able to send

846.68

invoices out well that's like okay well

848.44

what do I need to do to be able to send

849.759

invoices well I need to be able to

852.48

attach all of the bills or charges that

855

are for that customer for that invoice

856.8

period so I need to be able to have some

858.92

way to enter an invoice period and then

860.839

have it go you know either have a list

862.48

of customers or just grab all customers

864.759

then for a customer I need to be able to

866.839

get all of the charges that are related

868.6

to them during a time frame and then I

870.68

need to have maybe there's some

871.759

calculations so I've got to take all of

873.199

that and maybe now I've got to uh add in

875.36

maybe some interest charges or maybe I

877.24

need to figure out is there a past due

879.399

and you what does an invoice look like

881.92

what am I actually telling them that

883.639

adds up to this is what you owe and this

885.8

is what I need you to pay me by whatever

887.6

the due date is so now you've broken

889.759

that into these smaller pieces and you

892.6

can estimate what it's going to take to

893.959

each of those and then now you know once

896.68

you've done that you can sort of roll

898

that back up and you now have have a

899.279

rough idea it's going to take x amount

900.759

of time to do the billing or to do the

902.8

invoice part of the billing okay now I

904.759

can move on to for example receiving

907

payments well what's involved with that

909

do I need to set up an integration with

910.6

the system because now I'm going to be

911.959

taking you know credit card payments do

914.44

I need to have some sort of a system

916.079

that allows for taking cash in like some

918.04

sort of POS or something like Point of

920.199

Sales system or something along those

922.079

lines do I need to um can I take partial

925.959

payments do I need to be able to support

927.959

payments like from checks and then if

930.279

they're checks do I need to have some

931.44

way to make sure that those checks have

932.759

actually been deposited at the bank now

935.04

I've built these pieces out and I can

937.079

estimate all those and I can roll that

938.519

up and that is the receiving payment

940.279

side and we keep doing that and so what

941.959

we'll do is we'll break it down to

943.68

certain you know a few pieces and

945.839

ideally every time you break it down

947.6

it's I don't know three five maybe a

949.56

half dozen pieces and then you break

951.839

that in and break that down and break

953.48

that down and eventually you may have to

954.92

go several layers deep and have hundreds

957.12

or maybe thousands heaven forbid of

959.519

pieces but then those are all bite-sized

962.48

chunks that you can figure out what what

964.399

is it going to take to do that you can

966.079

roll that stuff back up and now you know

968.36

for example this is Project planning 101

972.12

it's going to take me six months of work

973.639

to do this and lo and behold I have a

976.56

six-month deadline okay I need to make

978.839

sure what work am I getting done each

981.24

month each week each day to keep on on

985.639

my track to keep that thing going to hit

988.24

that 6month goal so that's part of what

990.12

we're talking about say how do we do

992.16

that and this is where we're going to

993.079

get into the challenge but first i'm

994.639

going to let Michael give his two cents

997.12

and then some worth on how we do

1000.24

this thanks Rob so you've laid out at a

1004.079

very good high level from like a project

1006.04

manager a high level view of breaking

1007.8

the problem down I want to kind of flip

1009.92

it a little bit and take it more from

1012.24

the developers perspective as we start

1014.92

taking those pieces and looking at them

1017.72

even further before we actually start

1019.519

working on them so as you as developers

1023.399

we essentially take these tickets or

1025.319

take these tasks like Rob broke down and

1028.36

once you have them at the small pieces

1030.039

it's time to start working on them so we

1032

create the tickets we do the Sprints and

1033.64

we lay these out but as developers a lot

1036.679

of times we get into the habit of okay

1038.959

we have a ticket we jump in and we just

1041.079

start working uh the problem the problem

1045

may be in the fact that the problem

1046.72

itself isn't broken down enough the

1049.28

problem hasn't been simplified so what

1051.48

you might be doing is you might be

1052.84

working on a feature and blowing it out

1055.44

beyond what it needs to be so what you

1057.799

really need to do and how I want to

1059.799

tackle this is as a developer as you

1063

start to do your work look at the task

1066.6

you have been given and read through it

1069.36

again now you may have gone through the

1070.88

ceremonies of the high level pointing

1072.48

and all that but

1074.48

still typically we are busy typically

1077.4

those meetings go quickly and you got to

1079.6

go through very fast and everyone just

1081.96

ask the questions as they can but

1084.88

sometimes you don't get to that work

1086.679

right away sometimes that work doesn't

1088.64

get reviewed or doesn't get started for

1091.72

weeks and while it was in your mindset

1094.799

at the time you did the pointing things

1097.36

may have changed by the time you get to

1099.12

that ticket things in the system may be

1101.799

different so it's always a good idea

1104.159

when you sit down to start a problem or

1107.679

a task read through the whole process

1111.44

again read through your ticket and make

1114.2

sure that you are tackling one problem

1117.559

that your focus is on one feature and

1120.52

that that feature or the piece that

1122.919

you're trying to work on isn't really

1125.12

multiple pieces doesn't need to be

1126.679

broken down further because if you get

1129

into it and you find out oh this needs

1130.64

this this needs this this needs this

1132.44

your task that may have been agreed to

1135.4

that hey this is going to take a couple

1136.76

of days to do may now mean it's going to

1139.2

take a couple weeks now if you don't do

1142.6

this if you don't take the time to read

1144.36

through this now you could be at the end

1146.32

of your Sprint and be like oh why is

1148.679

this one two day task taking me two

1151.159

weeks if you had taken the time day one

1155

to reread your ticket take 15 minutes

1158.4

hey even take a half an hour if it's a

1160.12

very complex ticket read through it read

1162.96

through it again and then kind of

1165.48

visualize what it is that you're

1167.12

building if you get to the the point

1169.2

where this task as you're reading

1170.799

through it's like wait this doesn't make

1173.159

sense anymore because we made this

1174.84

change but the ticket says it wants this

1177.88

well that you you have a conflict you

1180.52

need to raise that now before you start

1183.799

the work because you could be removing

1186.919

or that requirement might have changed

1190.36

so what is always in our mind that we

1193.28

have to get stuff done we have to get

1194.919

work done we have to show that we're

1196.48

productive make sure that the work doing

1199.64

is the right work even though it's in a

1202.039

ticket it doesn't necessarily mean it is

1204.88

the right thing to do always review your

1207.96

work before you start your work is kind

1210.4

of going to be my Mantra on this

1212.52

one you want to simplify the problem but

1215.4

you also want to make sure that you are

1217.44

getting the problem done right that you

1220.159

are solving the problem in the right way

1223.88

so again to break it down further make

1227.88

sure that when you take your task read

1230.4

through the task make sure that it fits

1232.76

within the big picture also make sure

1235.6

that it is one concise piece of that

1239.08

feature and not multiple pieces because

1241.28

if it's multiple pieces you might need

1242.919

to break it down further and it might

1244.48

need to require more tickets or more

1247.6

features that need to be flushed out

1250.52

so before again before you work read

1254.44

through your pro read through your

1255.96

requirements read through your tickets

1259

make sure you understand the problem

1261.88

make sure that the ticket addresses that

1264.039

problem and make sure that the problem

1266.2

that is being addressed is still

1268.32

relevant to the big

1271.24

picture so what are your thoughts on

1273.2

that

1277.24

Rob first I have to unmute myself see

1279.919

it's like making sure you put your task

1282.48

as you're thinking through that this is

1284.36

I think this goes back to something that

1285.84

we have talked about before from a a

1289.24

coding and documentation point of view

1291.6

is the idea of instead of just writing

1295.12

code it start out with like essentially

1297.08

pseudo code is use some comments that

1298.72

say I'm solving this problem and this

1301.72

actually is very near and dear to my

1303.08

heart because I'm spending a lot of time

1305.159

essentially doing some code reviews and

1307.48

refactoring and things like that where

1308.76

there are these very complex uh

1310.84

functions and methods and figure out is

1312.88

there a better way to do this that is

1314.48

more readable that breaks this down so

1316.4

it's smaller chunks of work and thus

1319.32

probably easier to uh to reuse those

1321.76

chunks of work and I think that's a way

1324.2

to do is we can take a a problem and

1326.679

have a you know a main or a primary

1329

application whatever it is we want to

1330.36

think about that we start out where it's

1332.12

just all it is is a bunch of comments of

1336.039

in order to solve this problem I need to

1337.919

do this I need to do this I need to do

1339.679

this I need to do this and so that may

1342.64

not be the the be all and endall but

1345.039

this is where it goes to what Michael's

1346.4

talking about is now You' thought

1347.559

through it a you're spinning spending

1348.72

some time dare I say designing your

1351.4

solution a little bit and saying this is

1353.679

the approach I'm going to take and then

1356.64

as you get into each of those steps

1359.32

you'll probably find you may find some

1361.039

additional things you're like oh shoot I

1362.679

need to break this into two steps or I

1365

forgot that because I have this that

1366.36

means there's this other step I'm going

1367.72

to have to do you there's things like

1369.799

that but what it is doing is it's giving

1371.64

us our sort of like our outline of what

1376.279

it really is I guess it comes down to

1377.76

it's an outline of what is it going to

1379.08

take to get this thing solved now we've

1381.2

broken it into smaller steps and even

1382.96

with each those as we're thinking about

1384.799

them that may help us break it into

1387

other steps or the reason we try to want

1390.32

to do this sooner rather than later is

1392.52

it may bring up questions because we'll

1394.24

say wait a minute I don't have all the

1396.24

information I need to complete this step

1398.32

because now that I'm thinking about it I

1399.64

don't know how to do that I'm not sure

1401.2

what that's going to be so I'm going to

1402.679

have to go um you know reach back out to

1405.679

a customer or my manager or I'm going to

1407.48

have to go back and spend some time

1408.799

thinking about this design or whatever

1410.44

it is to be able to actually figure out

1412.96

what needs to be done to complete that

1415.039

task and in so doing so I think you're

1418.48

going to write smaller easier to

1421.799

understand easier to maintain code it

1424.64

goes to like there's all kinds of

1426.44

lenters and stuff out there that'll tell

1428.279

you that you know there's like these

1429.52

code complexity scores and all this kind

1431.279

of stuff that

1433.279

are in a general sense they're just

1435.679

trying to simplify stuff and sometimes

1437.88

it's too much it's too granular but

1440

sometimes it's not so it is very much A

1441.799

good rule of thumb to say okay I

1443.48

shouldn't have you know thousands of

1446.72

line of code in a function I should be

1449.12

breaking that thing down where possible

1451.12

and so it should be it really shouldn't

1452.679

be that much it should be there's maybe

1454.679

a series of steps and if if that has too

1457.84

many steps then maybe I can group some

1459.559

of those steps so that it is readable

1462.279

that it's understandable it's easier to

1463.88

maintain it's easier to document it's

1465.6

easier for somebody else to come behind

1467

you and say oh this is what I'm doing

1469.64

and this is how I'm doing it before I

1472.399

give the challenge I want to throw that

1473.919

back to you Michael and see if there's

1475.039

anything that that that popped up in

1476.919

your head anything else to discuss yeah

1479.84

so the other thing Bas because of how

1483.799

you laid it out I like that um which

1486.279

goes back to my test rriv development

1488.52

model is when you sit down with a ticket

1492.08

the best way to this works great for

1494.559

test development is start the ticket

1499.44

essentially write out the steps on how

1501.88

you would or how you would essentially

1504.08

test this ticket from the end user and

1506.679

as you walk through you start finding

1509.279

out okay I get to this step here I get

1511.84

to this step here oh wait I now have

1514.12

multiple choices on this step well if

1517.48

you are writing a feature you should not

1519.32

have multiple choices unless that's

1520.88

defined in the ticket if you get to a

1523.48

step and it's like oh well I could go

1525.2

here I could go here I could go here I

1526.96

could go here you you need to stop and

1529.279

go ask for direction because you should

1533.08

have a straight path from the user's

1537.24

expectation to the solution you should

1539.36

not have multiple paths to get there

1541.32

unless it is an if then scenario and

1543.84

that if then should be laid out within

1545.559

the ticket so if you again write it out

1549.799

or kind of do it as a test driven

1551.64

approach first you're going to catch a

1553.52

lot of this a lot of

1555.76

these I guess open-ended questions in

1558.799

tickets where they're not flushed out

1560.84

they're not well defined or if the

1562.96

feature has changed as you're going

1564.6

through this process you'll get to a

1565.799

step and say wait the system doesn't do

1567.96

this anymore so why am I being asked to

1570.2

do this in this

1573.72

ticket I think that combination of the

1577.24

why the thinking through it and the why

1578.919

is really going to solve a lot of your

1580.679

problems it's it's amazing how those are

1582.72

very simple steps they are a little bit

1586.12

hard to to build the habits to get there

1587.88

but once you do they will make a big

1589.399

difference they will help you stay

1591.08

focused and help you really comes back

1593.52

down to like leveling out stuff so

1595.12

you're not you're not going to be

1596.48

surprised as not you're going to be able

1597.84

to estimate better you're going to be

1599.52

able to plan better and the the bumps

1603.12

and bruises that generally come with

1604.679

softer development will be smaller and

1606.32

very manageable so from a habit point of

1609.76

view this is again this is one of those

1612.279

very similar to a couple of our sort of

1614

a theme we have as we're we're starting

1616.48

this year it feels like with a couple of

1617.919

these episodes and and building better

1619.559

habits is

1621.2

it with each item that you're doing on a

1624.48

daily basis this your challenge for the

1626.279

next week when you start a task the

1629.32

first thing you do is actually start the

1631.48

task is it's like look at your to-do

1633.24

list and say I'm going to focus on this

1635.64

task so this is what I'm going to do

1637.279

right now

1638.679

and first thing you do with that is what

1642.799

you know we've talked about in PR like

1644.36

what does it mean to complete it okay

1646.399

now I know what it means to compl

1648.159

completed so I know what I need to get

1649.48

there so walk through what am I going to

1651.279

do to get that done now it could be as

1653.72

simple as like for example I want to get

1656.039

my laundry done okay how do I get that

1659.36

done well I need to first I need to go

1661.36

to my laundry hamper maybe first I have

1663.64

to pick up all my dirty clothes and put

1665.159

it into the hamper then I have to take

1666.84

the hamper to the washing Place wherever

1669.48

that happens to be and then I have to do

1672.96

some number of loads of wash and some

1675.159

number of loads of drying and then when

1677.32

I'm done I need to gather all that crap

1679.36

up and I need to fold it iron it put it

1682.32

away whatever it is depending on what's

1683.679

your your tasks how you want to Define

1686.08

that but now what I've done is said okay

1687.88

in order to be done with washing doing

1689.84

my laundry these are the steps I need to

1691.799

do and of course in doing so you're

1693.6

going to do exactly what I just did is

1695.12

you're going to say well first I just

1696.2

have to get my clothes to the to the

1698.36

washing place but as I said it's like oh

1700.84

wait maybe first I need to gather my

1702.559

clothes into someplace so I can then

1704.08

take them somewhere so for example if

1706.279

I'm going to you know do a garbage run

1707.799

first I need to what are all the garbage

1709.919

cans I need to empty into wherever I'm

1713.76

you know the device the transportation

1715.96

thing that is going to do the garbage

1717.36

run and then I need to run dump it all

1719.279

out and come home those kinds of things

1721.84

when you start laying out those steps I

1724.399

think you'll be amazed at how often

1726.519

you're like oh yeah there's another step

1728.6

I need to think about that may have been

1730.6

a pain in the butt had you gotten into

1733.24

doing the process and then had to adjust

1735.799

and add that step versus you thinking

1737.559

about that step from the start in

1739.72

particular things where it's like maybe

1741.72

it's like making dinner well if I'm

1743.12

going to slow cook dinner first I need

1744.799

to prep it and get the slow cooker going

1746.76

because if I wait until 5 minutes before

1748.559

I'm going to eat dinner that slow cooker

1751.559

hence the name slow cooker is not going

1753.84

to have my food ready for me so there's

1755.559

things like that that I need to do to

1757.799

plan out my day and if I think about

1759.72

those steps it's going to help me so the

1762.519

advanced thing would be to look at all

1765

the steps you need to do to get the

1766.159

things that you have to get done let's

1767.64

organize those but we're going to start

1769.6

simple with your habit I just want to do

1772.2

a habit of attacking a task and that the

1775.36

first thing I do is I write down how am

1777.84

I going to get to that task what am I

1779.519

going to do what are the steps to

1780.72

complete that task as I'm thinking about

1782.64

this I think this is going to be really

1783.76

fun for me to do because I don't do it

1785.84

this way but I'm going to be very anal

1788.399

retentive about it and try to do it in

1789.72

the next week and let's see what this

1791

works out for me as far as habits go so

1794.919

first step for you send us an email at

1797.279

info developer order.com and let us know

1799.279

how you're doing how do you think about

1801.48

these habit building things are working

1803.72

for you is this a great use of is this

1806.12

is this getting you towards being a

1808.32

better developer we building a better

1809.799

developer by building better habits and

1811.679

if not I'm more than welcome to happy to

1813.76

hear from you what would be a better way

1816.84

if it's just a matter of like tell Rob

1818.679

to shut up and Michael needs to do

1820.08

everything cool because my schedule just

1822.32

got a lot easier so but don't do that

1824.84

just to make my schedule easier but

1828

whatever it is we have topics coming up

1830.12

we have new seasons we are not even

1832.519

close to done maybe you're like oh sadly

1835.519

so but no we're going to be around for a

1837.399

while we have a lot of things that we

1838.96

can cover and so we want to hear from

1840.72

you what is the best thing what is the

1842.36

best use of your time what are the best

1843.799

topics for us to cover whether they're

1845.72

timely whether they're more career uh

1848.399

you know span of your career kinds of

1850.08

things whether it's just how to tie your

1851.96

shoes I don't know what it may be but

1853.48

it's the things that you come bring to

1854.96

us and say this is what I don't think

1856.519

you're giving us enough of and I'd like

1859.039

to hear more of it because that's what

1860.399

we want to do we want to give you as

1861.799

much that you want as we possibly can

1866

and if not we'll fake it because hey we

1868.72

got

1869.559

skills that being said there's so many

1872.279

ways you can contact us I'm not even

1873.72

going to waste your time you can listen

1875.039

to the next episode or you can go to the

1876.84

one before us go out there and have

1878.88

yourself a great day a great week and we

1881.159

will talk to you next

1883.76

time bonus

1886.039

material so was interesting you threw

1888.399

out the slow cooker at the end because

1890.039

one of the best ways to think about

1892.279

simplifying the problem or breaking it

1894.32

down is

1895.84

cooking if the task you're essentially

1899

even as developers we need to think of

1901.08

our tasks as a recipe the ticket needs

1904.519

to identify what the problem is what it

1906.399

is that we're going to cook we need to

1908.48

have the end product what it is that

1910.24

we're trying to deliver and then we need

1912.279

to hopefully have the steps broken down

1914.36

as to what we need to solve the problem

1917.32

if we don't have what we need to solve

1918.88

the problem then we can't write really

1921.24

useful code we can write code but it may

1923.679

not solve the problem so we need to make

1926.159

sure that not only do we have the what

1929.32

it is we're trying to do and the end

1931.039

product but as developers when we look

1933.32

at our tickets we need to make sure that

1935.039

we have the steps we have what we need

1939

to solve this problem if the pro if the

1942.159

steps basically could lead to multiple

1944.12

Solutions then we have not refined the

1946.88

or defined the problem or the solution

1949.279

in a clear enough way for you to get

1951.279

from A to

1954.96

B I'm trying to think of a good I really

1957.559

it comes down to as I've thought about

1958.96

as I sort of like out of the blue came

1960.519

up with this

1962.279

um this habit

1965.76

challenge I'm really liking this idea of

1968.519

even like the simplest things I'm doing

1970.519

because I do have some of these tasks

1971.88

that are like the 15minute tasks kind of

1973.679

thing but even within those and probably

1975.08

even more so with those is to spend a

1977.36

sec you know spend a a minute basically

1979.639

saying okay how am I going to get this

1981.44

done so that when I get to the task it's

1983.6

just like Bam Bam Bam Bam Bam knock

1985.32

those things out very much like a

1987.039

Pomodoro kind of thing is a taking that

1989.6

and it's and which has been effective to

1991.72

me is that I have often taken a smallish

1995.08

kind of task you know a 20 to 30 minute

1996.919

kind of task and made that one of my

1999.12

pomodoros for the day saying I'm going

2000.76

to just like go heads down get this done

2002.88

and usually I do start it with what am I

2005.88

going to get done in this next little

2007.08

bit because I don't want to be in the

2008.799

middle of a Pomodoro and then be sitting

2010.48

there thinking okay what is my next step

2012.36

I want to be able to get in and just

2013.639

like crank through it so I frontload

2016.36

that and I think that's maybe a really

2019.72

good combo to help you guys get started

2021.96

with this is if you think of these in

2024.88

like pomodoros or mini Sprints within

2027.32

the days is what needs to be done with

2030.12

that and maybe you do start each one is

2031.799

just like like in a Pomodoro maybe you

2033.88

add something say in the first two

2035.12

minutes I going to plan out what am I

2037.12

doing in the next 23 minutes of my

2038.88

Pomodoro or something like that I mean

2040.24

this may be some sort of modified thing

2041.639

that we'll call it a a developer or

2044.24

something like that we'll figure

2045.279

something out that'll be some little

2046.519

branded name but it's like we can maybe

2048.2

we can tweak that and find a way to make

2051.2

that more effective to us so thing about

2054.96

that as you're going into it is like

2056.159

where can I spend just a little bit of

2058.8

time thinking through this and

2061.44

particularly complex tasks but even

2063.56

honestly some of the things that are uh

2066.399

wrote like dishes or laundry or

2070.679

groceries or cooking or some of those

2072.72

kinds of things like where can I maybe

2074.76

spend a little time with that and maybe

2076.879

performance tune that a little bit do it

2078.48

a little bit better that being said we

2080.96

will wrap this one up and let you get to

2082.56

your day because we got crap to do too

2084.839

so go out there and have yourself a

2086.2

great one we are still chugging along we

2089.159

we are getting towards the end probably

2090.52

another month is or so of habits and

2093.399

then we'll get into the next season

2094.679

which we still haven't figured that one

2096.359

out so we need better habits of maybe

2098.52

how to figure out where we're going to

2099.599

get to with our upcoming seasons and

2101.72

what our topics are going to be uh

2103.92

feedback is always welcome developer.com

2107.079

Facebook site X email smoke signals you

2110.76

name it we're good for it t telepathy

2114.28

whatever it is you figure it out we'll

2116.839

find a way to receive it and we want to

2118.76

take that feedback and do something with

2120.16

it go out there and have yourself a

2121.72

great one and we will talk to you next

2123.96

time

2129.91

[Music]