Hey! this is Overpass insights my name is Eric and I make apps now today I want to
have a little rant I guess about the most difficult bugs to troubleshoot
alright! hey everybody, I'm out for a walk because I've been sitting at my desk all-day
trying to fix a bug in an application so this is a legacy app so I'll give
you a little bit of background although it's kind of right it's a legacy application which
is like an ionic version one it's using enterprise distribution through app store
everything works fine in debug mode everything works fine on a local machine everything works
fine on a test device like an actual physical device but once you package and deploy it and
sign it and everything it installs but you just get like a white screen of death right there's
no log errors there's no there's nothing in the logs there's nothing there's no crashes it's just
a white screen right you can't connect to it through a browser because it's already been
compiled and it's been distributed and for some reason it's just driving me crazy and for times
you'll get things like this the worst type of bugs to actually try to fix are the ones where you get
very little feedback and have a well they have a very big feedback loop and you get and you get no
no logs or no nothing to actually no hints no clues so you get to the point where you're
basically just all right let's change something let's disable some stuff let's just start
tearing the code apart and inspecting it line by line to figure out what could this
possibly be is it an environmental issue is it a framework issue is it something in the code
what is it because everything was working before but it ain't working now right this
one this is what makes software development hard sometimes this is the kind of thing where
so try to explain to the client I'm gonna need a few more days on this because it was like a
small thing it was like a label change or whatever you know the small kind of change with application
I quoted like an hour on it and it was like you know days later I'm like you know
this was to make software development difficult from time to time so if any of you guys have been
doing this for a while you know that the best way to solve a bug or troubleshoot something is
to know where the logs are to know how to read and to filter on Logcat on Android and how to read
on the bug logs of the logging on IOS if you're using native if you're using a framework
you know sometimes it might be in a different place but just to know where different stuff
is back in the windows days it was always like knowing where event viewer was
knowing how to look in the registry learning how to look for log files that just might happen to be
on the file system somewhere and there's been many times where i've been brought in to fix something
where lots of other developers have had gone in and they just couldn't figure out what it was
but they didn't know where to look right that's one of the key things right when you're writing
code you have to know where to log how often you got to log where you're going to put things
you're going to have like an a distributed server and you just crash a Linux give
you something like that and there are times where you just get nothing back and you're just poking
the box right let me just disable this line let me just move this page let me just do this let's see
if I can get something different to happen and it's a long feedback loop that drives me crazy
when everything's going well with software you're just like you know you make a
change you render it cool make a change check it out cool this is one of those ones because
it's only in the compiled application I have to actually, compile it upload it to a server wait
for that server to have it ready clear the cache on the web browser that we downloaded from because
it's an enterprise-distributed application so it's actually using over-the-air web deployment
and then you download it and you get that stupid white screen the white screen of death is driving
me a bit crazy so I'm out for a walk a lot of times when you have these kinds of issues and
you're just banging your head against the wall it's going for a walk or just getting up
and going to the bathroom whatever that the ideas appear to you I could try that
maybe I should try this maybe I should try a different you know maybe I should try to remove
all the pages or just put like a hello world in there maybe let that know we'll see if it renders
but it can be tough from time to time those are the worst type of bugs to fix by the way
the ones where you get very little feedback and the feedback loop is just really long so you
have to do a lot of setup for a little bit of execution and then you can see whether or not
it actually works anyway it's been a while since I put a video out there I've been AWOL for the
the last couple of weeks I just thought I'd have a little rant because it's driving me crazy today
and a lot of you guys coming from come up with issues like this from time to time
sometimes I'll get people send me some people through the channel they'll send me their
their bugs or the error message they're getting so Eric what does this error mean
and I'm always like dude I'm not gonna figure this out for you like the hard bit about being
a software developer is that sometimes you just have days where things just don't work there's
a dependency of a dependency of a dependency some Cordova library somewhere is probably out of date
and I got to update all those and that's going to have clashed with other things and
sometimes software development can just be really really messy anyway just wanted to
check in on you guys hope you guys are having a great week I'll follow up on this let you
guys know I mean it's you know this is a bread and butter this kind of stuff happens you know
you always end up in this state at some point-like where you just had that feeling of
all right I'm gonna say you have that feeling of impotence like why can't I figure this thing out
but then it's usually some something stupid some library's out of date you got a stray semicolon
somewhere of variables named incorrectly but anyway sometimes software development just be
difficult anyway I hope you guys having a great day hope you have a great week that's it for
today in fact let me know if you guys how much you guys struggle with this kind of stuff because a
a lot of times when you have trouble troubleshooting it's because you don't know where to look where
the logs are and all that kind of stuff but when there's nothing in the logs there's nothing
anywhere just drives you crazy anyway that's it for today I'll talk to you guys again next time