Sheri what's up? How is it going so far? >> Hi Danny, how's it going? >> Good. >> Why don't you have a seat? >> All right. >> I've actually thrown away a bunch of code and I haven't really written anything useful. >> So are we talking like blowing the schedule for the week then? That doesn't sound good. >> Well I wouldn't say that. I think this is actually fairly normal. >> Okay. >> I've been working on a pretty complicated approach these past couple of days and I've just recently decided that I'm going to trash it all. >> Okay. >> I'm going to go for more of a decouple approach. This relates to an idea called YAGNI, do you know what that is? >> I don't is that some sort of acronym? >> Yeah, YAGNI actually stands for You Aren't going to Need It. It's basically the idea that a programmer shouldn't add any functionality unless they know it's absolutely necessary. >> Got it. >> Think of it like you're working on a pretty complicated business plan and you need to make a lot of assumptions. >> Sure. >> You shouldn't make those assumptions unless you know that you're going to need them. >> Okay. Well, I appreciate that analogy because that helps me out. >> Well, I don't know too much but I just wanted to throw that in. [LAUGH] >> No, that was good. >> But we have been doing a few things good actually. We've been getting billed automation up and testing. And I've actually written a few unit tests which for some of the functions in the code. >> Cool, user tests. I learned about those in business school. >> Did you? Do you know what unit tests are? >> Unit tests, unit tests. I thought you said user test. What is, no I actually have no idea what a unit test is. I'm kind of new to software development as he can tell by the lack of knowledge on yagni, can you explain what a unit test is to me? >> Yeah. A unit test is actually when you're testing individual parts of the code. >> Okay. >> Later on we're going to be doing functional testing which is when we're going to be looking at whether the individual parts of the code work with the overall system. >> Okay. So, I know I keep harping on schedule but Marla's kind of chomping at the bit to sit down, figure out what kind of progress we've been making. I've been able to fend her off so far. But I kind of told her maybe we'd be able to sit down by the end of the week. Is this really something that is necessary for us to tackle this particular week? >> I'm going to say it is, actually Denny. >> Okay. >> I think that it's a really good idea that we tackle it this week for two reasons actually. One of them would be that when I don't write unit tests I end up making a ton of mistakes and I end up having to spend so much more time debugging. And I don't end up finishing any faster either. The second reason would actually be that we end up in a ton of technical debt. >> Okay. >> And the more we skip now, the more time we're going to waste later trying to write unit tests after the codes already done and it's really hard to scale back. >> Got it. Well, if I run into Marla again, I'll pass that along and I think she'll appreciate that. >> Okay, that's great. But later on this week, I'm going to need your help with functional testing, is that okay? >> Yeah sure, happy to help. >> Okay. Good. >> By the way, also, we want to expand the team to include that tester later on. >> Okay. >> And I think that we should automate the functional testing, if that's a good idea. I think it'll be great because it'll be less to deal with. >> Sure. >> It'll be less scary for the developers in the long-run too. >> Now, look, I'm all for any kind of automation we can add. I think it's going to lead to faster scalability so that sounds great. >> Okay, great. >> I hope you have some good luck with Marla. >> I appreciate it, me too.