Hey! This is the Daily Overpass! My name is Eric and I make apps!
Today, let's ask the question what bugs are worth fixing?
Okay, so a couple of days ago, we did a video about troubleshooting live applications and how difficult it
can be with mobile, with analytics and everything like that. And there was a
really good comment that came in on that video from Bojan Orama who said, "Nice
episode. In my first app I didn't put analytics and was so happy my app was
hardly crashing. After - after solving analytics, I found out that
Google Console only reports a small percentage of crashes and had to fix a
substantial amount of bugs." Ok, I didn't know that about only being the small
percentage. "Anyway, I'm curious about two things here:
What is your policy for fixing bugs? For example, in my apps, I have some bugs that
I don't fix because they are hard to reproduce and they happen on less
popular devices. Nmber 2, what is your take on exceptions? For example, I prefer
the apps crash instead of going into unpredicted behavior. I discussed this
with some other devs and some share a similar opinion but some are strongly
into your - into strongly believe that your app should never crash no matter
what." So, the first one what are the my policies on fixing bugs as a software
developer, I always fix bugs, but as a business owner, not so much. So, it depends
on if it's like - if it's a client application and they come to us with the
bug, it has to be within a certain period. They can't come back like 2 years
later and say, "Oh, this one person has this issue." They have to accept the
fact that maybe it might not be working on a certain Android version or there
might be upgrades and everything like that. If they want us to look at it,
then they have to pay for it, but there's like a warranty period after it goes
live. We'll do it there then. And it's also professional pride as a software
developer. If you - if you've ever - if you've ever worked for any software
development company, you know there's gonna be times where you put something
live and like within two hours you think, "Oh, that was that one little thing though,
yeah and you can fix it in two seconds." And sometimes, you're lucky enough that
you just can. You just go in there do that it depends on the policies of
wherever you working okay so there's that but as a
business owner when I have apps live on the market and they're making money it
really depends on on how well they're doing and how many people it affects so
like there's either two Trello board with a bunch of things that I need to
fix on some of the smaller applications and they're not really very urgent
because the apps don't really make a lot of money and I could spend you know undo
these days I'm just going to spend an entire day and go through there and just
do those and re-release them and but it's not really on the urgency scale
it's like it's the whole 8020 thing like say if you never would I'm a big
believer in Minimum Viable products right so the if you've ever read the
Lean Startup I mean I think that this is one it popularized the Minimum Viable
Product however if you say MVP I hate it when people say MVP a so many developers
say yeah Rick we need to do an MVP and I'm thinking that means most valuable
player right so if you ever say that to me and I winced that's why so I believe
in the Minimum Viable Product I believe a lot of developers spend too much time
trying to make their apps perfect before they ever go live and sometimes they
never go live so for me I'm thinking we don't know anything until the users
start using it so let's get something out there and if we find a bug at the
time we'll evaluate it then right and sometimes the app just tanks and what's
not really worth doing so so that's that's where we'll go with it
so but if it's for a client then that's that's different because you know
they're paying for the work otherwise I'm paying for the work if you if you if
you hear what I'm saying there so I know what is your take on exceptions this is
a really good one because my entire career has been your app should never
crash right your your whatever it is website whatever like if you get to a
page that says you know like a stack trace error or something like that your
app has failed it should always be handled every error should always be
handled that's my my take on it however and I talked about this with our
developers too however you have the you can't see the stack trace right it only
really works if you're handling everything so if you have like a global
exception Handler and you're taking that final stack trace like if that stack
trace bubbles up and then it's actually getting reported someplace so you know
what to do with it then that makes sense and then you could like show your user
something like we're having trouble with this application now or something like
that rather than it just crashes but it's really hard to do on mobile and I
think and that's also the case like you were
saying you could have something that's behaving the way you don't expect it to
because your app is handling it so well so let's say let's say your app needs
internet access and you haven't handled that properly right so would you want to
just crash if it tries to access the internet and it can't or would you want
it to say you need to access the inner you need to be able to access the
internet etc but there's always gonna be things that you don't know so the
crashing should only happen for the totally unanticipated errors like you
just didn't know it was coming right and I still like the idea of it coming up
saying there's a problem with this applications now please call back or
something or reporting back to a logging system but I think it's this kind of
goes both ways I could see both sides of the argument for me like for some of the
apps that we put out there like I just you know I'm fine with it just crashing
but I mean well nobody's fine with the crashing if it's crash means something's
gone wrong that you did not anticipate but it's better doing that that you can
see what it is rather than it just it just sits there and floats and like it's
they're still clicking around on stuff but for some reason it's just not
working right yeah and that's my thing but I'd be really interested to hear
what you guys have to say about this because this is a really good question
right is it better for an app to crash or is it better to get an error and then
well to get an error silently which obviously I don't think it is or to
report back to analytics server someplace and if you have a really cool
solution that you're using let us know in the comments because I'd like to hear
about that too so anyway some really good questions today that's it for today
I will talk to you guys again tomorrow