episode 113
Put Some Adventure On Your Taco, w/ Dan Battagin
episode 113
Put Some Adventure On Your Taco, w/ Dan Battagin
Today’s guest is Dan Battagin, a former program manager for Microsoft and the genius behind Adventure Taco! We’re excited to have him on the show, especially since he only agreed to appear in order to learn about Rob’s video background. But once the conversation gets going, you will realize that Dan has a wealth of inspirational stories to share.
As the conversation progresses, we also get a glimpse into Microsoft’s hiring practices of the past. Remember those brain teasers and psychological questions that used to be all the rage? We discuss how these inane questions often resulted in great candidates being passed up, simply because they didn’t fit into the expected answer patterns. Fortunately, times have changed and we get to hear the story of how Rob helped keep Dan on at Microsoft after his initial internship.
In addition, Dan brings with him stories of his internship at Microsoft and the stories of programs ending before their time. And, as frequently happens, the conversation takes a turn to DAX and unsurprisingly, Dan is another former Microsoft manager who is not a well-versed DAX user. As Rob points out, DAX is the most accessible language to come out of Microsoft which leads us to question why so few former employees embrace the magic.
All this and a few Lego and Age of Empire references you won’t want to miss. And don’t forget, if you enjoyed this episode be sure to leave us a review on your favorite podcast platform.
Also on this episode:
Brain Teasers for your next interview prep
Ways to Fix Excel Not Recognizing Date Format
Power Pivot and Power BI: The Excel User’s Guide to DAX
Episode Transcript
Rob Collie (00:00:00): Hello, friends. Today we welcome another former colleague and current friend of mine to the show by the name of Dan Battagin. Now, those of you who are in the Excel community, that name might sound familiar to you. The day that Dan retired from Microsoft, a great disturbance was felt in the force. And millions, well, maybe dozens of Microsoft Excel MVPs cried out in anguish. And then, well, they weren't silent because MVPs, Excel MVPs in particular, never really go silent.
(00:00:29): Now, Dan is an incredibly high energy individual, very cleverly disguised as laid back and mellow. I never once saw Dan moving fast or frantic or anything, which always just blew me away because he was always accomplishing three times as much as anyone else. Not to mention being seemingly spread thin across so many different interests and so many different investments of his time. When he wasn't writing incredibly gnarly and complicated detail specifications for things like Microsoft Excel, I don't know, maybe on the side, he'd be developing a software business for eBay sellers, and at the same time remodeling his house. And also, for a number of years there, basically every single mock-up we did on the Excel team, things were just done in graphics. Dan would be the one in Photoshop making all those mock-ups too. He also had a habit of basically gravitating towards the problems that almost couldn't be done. If there's something incredibly ambitious and incredibly complicated, and again, maybe only borderline possible, very often, those problems found themselves sitting on Dan's desk.
(00:01:38): To top it all off, just like previous guests Darinee and Scott Louvau, Dan is younger than I am and also retired, because of course he is. And now you can find him chronicling his family's wilderness adventures on a website called adventuretaco.com. He's a great person that I miss very much. It was really, really great catching up with him. I hope you enjoy it as well. So let's get into it.
Speaker 2 (00:02:04): Ladies and gentlemen, may I have your intention please?
Speaker 1 (00:02:08): This is the Raw Data by P3 Adaptive Podcast with your host, Rob Collie, and your co-host, Thomas LaRock. Find out what the experts at P3 Adaptive can do for your business. Just go to p3adaptive.com. Raw Data by P3 Adaptive is data with the human element.
Rob Collie (00:02:34): Welcome to the show, Dan Battagin, AKA Dan Batt. Not many people get an email alias at Microsoft being used as your name. No one called me R. Collie, but you got called Dan Batt a lot.
Dan Battagin (00:02:47): Yeah. It's really because people couldn't pronounce my last name.
Rob Collie (00:02:50): Battagin?
Dan Battagin (00:02:51): Battagin is correct, most people are Battagin or Battagin.
Rob Collie (00:02:56): They get fancy with that. I had the benefit of actually hearing you pronounce it when you first showed up.
Dan Battagin (00:03:01): That's right.
Rob Collie (00:03:03): That helped. But I've heard non-Microsofties call you Dan Batt.
Dan Battagin (00:03:06): It started back when I was in high school, probably, playing baseball. It's a pretty good name for a baseball player to have bat in your last name, so there you go. Dan Batt. Pretty quick way to differentiate me from other Dans.
Rob Collie (00:03:18): You were Dan Batt before Microsoft. Of course, at Microsoft, when I pronounced Dan Batt, I pronounced it with two Ts.
Dan Battagin (00:03:25): Tell me how you pronounce it with one T.
Rob Collie (00:03:28): It sounds the same to the untrained observer. It's very subtly textured, that second T.
Dan Battagin (00:03:34): It was really just lucky, I think, that I got danbatt@microsoft. Although frankly, the whole time I was there, I was looking... Could I change it to just Dan B? Because wouldn't that be cool to be just danb@microsoft?
Rob Collie (00:03:45): Our friend Zeke made the Zeke email address at Microsoft part of his negotiation for his job.
Dan Battagin (00:03:52): Did he really?
Rob Collie (00:03:52): He bluffed them. He bluffed them and said, "I'm not coming unless I can be zeke@microsoft.
Dan Battagin (00:03:57): Nice, nice. I think at some point, I created the alias danb@microsoft and just had it forward to Dan Batt. I was the only member of that alias of that group.
Rob Collie (00:04:07): Oh, you created an external group?
Dan Battagin (00:04:09): Yeah, yeah.
Rob Collie (00:04:10): An externally emailable distribution list.
Dan Battagin (00:04:12): And it just didn't work very well. I just went back to Dan Batt.
Rob Collie (00:04:15): Did I ever tell you the story about being in charge of a mailing list for Windows Installer? It's called Setup Support. So you'd email Setup Support and we'd answer you, right? But there was also a news group or a public folder or something like that. Some people posted there. I wanted there to be an archive of the email threads, so I had the email group archiving to the public folder. But I also was concerned that if someone went and posted in the public folder and we weren't watching the public folder, we'd miss it. So I set up a forwarding rule from the public folder to the distribution list. And one mail came in and [inaudible 00:04:57] I'd almost gone home. Actually, that's what happened. I said, "Let me test this before I go home." Just to see if it works, not testing for infinite loops.
Dan Battagin (00:05:08): This is how the first mayhem or whatever it was started, right?
Rob Collie (00:05:11): That's right. That's right.
Dan Battagin (00:05:12): Suddenly there were all these replies. "Please remove me from this list."
Rob Collie (00:05:15): You got to be very careful with things like that, as I learned. I think I caught it around the 25th loop, shut it down. You and I met at an interesting time. Did you show up during Designer?
Dan Battagin (00:05:29): I did, right at the tail end. Or I guess probably for you, what was the tail end of Designer? For me, it was smack in the middle, the beginning. I was not on the product I wanted to be on, which was FrontPage.
Rob Collie (00:05:42): You really missed out.
Dan Battagin (00:05:43): I know. Two products really that had a long life in front of them.
Rob Collie (00:05:47): FrontPage did live longer than Designer.
Dan Battagin (00:05:49): It's true. For me, I think it was maybe a year or so before the end, or at least when we knew it was the end, and went into our six months of Age of Empires. I came in, I think there was barely anything working. You guys had been working on it for probably a few years at that point, just knowing how long Office product cycles take now. I came in, I was super jazzed to be working on something having to do with the web. Cutting edge.
Rob Collie (00:06:15): Semi-structured content, it was so hot. FrontPage was pretty hot for a minute there.
Dan Battagin (00:06:22): For me, it was great fun. It was exactly what I wanted to be doing. I came in off of an internship the previous summer. On the internship, I was working on Commerce Server internationalization or something, so it was basically figuring out how to do translations of Commerce Server. It was a team of PMs essentially coordinating, at the time, some testers and some contractors. That just wasn't... To me, I like the building of software. Designer, as many problems as it had, which I had no idea about at the time, it was great because it was like, oh my God, I'm getting to build something brand new. This is amazing. I'm at a big company getting free sodas and getting to build something new.
Rob Collie (00:07:08): You don't really strike me as the sort to drink the free sodas, though.
Dan Battagin (00:07:10): Definitely at the beginning, I drank a lot more than I did at the end. At the end, it was the waters. I thought it was great.
Rob Collie (00:07:17): Tom, a few things that were reality distorting about Dan. One of them was this guy's just got all kinds of self-discipline. It's really, really hard to be around and measuring yourself against someone who's just effortlessly like, "Yeah, I'm not going to drink that sugar water." And I'm like [inaudible 00:07:37]. But also, Dan made it seem like there were more hours in the day. In one Dan day, two and a half normal people days of work gets done. It wasn't hard to do at that point in time. Actually, Dan was just amazing. Blew us all away pretty quickly.
Dan Battagin (00:07:52): I appreciate that. That's maybe how you viewed it. I viewed it as like, holy shit. Clearly, I've got a lot of work to do. Because when I was in the presence of you and Zeke and Lauren, and you'd been there what? Maybe four or five years before I got there.
Rob Collie (00:08:08): I showed up in 1996.
Dan Battagin (00:08:10): I showed up in 2004 or 2005. I don't know how long Zeke had been there. Lauren, I think, had probably been there longer.
Rob Collie (00:08:16): She had come in with an acquisition. I think she had not been there as long as me, but she'd been at another software company that got purchased.
Dan Battagin (00:08:23): Got it. Got it. I felt like I was way behind. Plus, I was working with some devs who I look back at them now and I'm like, oh my God. Igor Z was my first dev that I worked with, or Cyrus Balsara. These are people who are just clearly so much smarter than I am. I got introduced to them as like, these are just the people who work at Microsoft. I was like, oh God. I need six computers so that I can be doing stuff all the time and try and just keep up with the pace of what's going on here.
Rob Collie (00:08:49): That's right. I remember. You had more computers in your office than... That was something else. You did both a service and a disservice to me. On the one hand, your arrival and the story around your arrival led me to make some poor subsequent hiring decisions later on.
Dan Battagin (00:09:09): Interesting. I definitely want to hear more about that. I want to hear what those were.
Rob Collie (00:09:12): Sure. So later when I internalized the full lesson, I got to the other side of the issue and understood and actually absorbed some, what I think is, real wisdom. But I had to go through a downturn first. I had behind the scenes knowledge from, I think, your mentor on your internship. Mary Pat, right?
Dan Battagin (00:09:33): Yeah.
Rob Collie (00:09:33): So Mary Pat Neely, who was at the time married to Jeff Larson. She reached through the grapevine and said something like, "Our team isn't going to rehire this guy and it's because we're being dumb." Let me press the bold button on... This is after your internship. The team that you were interning with, they weren't so impressed. But now that I hear the story, why would they be impressed? You were bored as hell. What a terrible job. But boy, Mary Pat was emphatic behind the scenes. Grab this person. And so we did.
Dan Battagin (00:10:13): Thank goodness.
Rob Collie (00:10:14): Seriously. Look at what the world would've missed. Not to mention the impact on Dan's life. I took away the wrong lesson there for a little while, which was, it was our job as hiring managers to rescue underrated talent. The problem with that theory is that you go out there and you apply it, you don't find any more Dan Batts. I remember on this interview loop, a bunch of us had voted higher on someone. This is someone that you ended up meeting and knowing. We're not going to name this person.
(00:10:52): Then it got to, as appropriate, the final boss, the boss interview. The boss said no. The boss said no because he didn't think this person had sufficient passion for software. I thought that was such bullshit. I'm like, that's the kind of Microsoft arrogance. It's also because I was thinking to myself, I don't really have much passion for software, to be perfectly honest. Dan does. Dan has passion for software. Let me tell you. We'll get into that. So I went to bat for this person, fought for them, and got them hired. A year and a half in, we were all like, "Yeah, this person's got no passion for software. They've got to go." My boss just looked at me at that moment and said, "Yeah. Well, live and learn." But the other lesson, of course, it's that attribution bias thing again. We over attribute to the person when we should, equally at least, attribute to the situation.
Dan Battagin (00:11:53): Totally. I want to tell you my version of that story from Mary Pat, at least the way I remember it. And then the other thing that I've found that I think is also equally interesting, so I'll talk about it first, is the whole hiring thing. Actually, I found it very intriguing to hear through the various podcasts that I listen to with various other Microsoft folks, a conversation of hiring often comes up because it's something that we all share, the pain that we went through in the hiring process at Microsoft. I found at the beginning it to be a very nerve-wracking process for me as an interviewer, not as the person being hired. That only ever happened once, and it was maybe the scariest thing that ever happened in my life. Actually, it happened twice because I had the internship hiring, which was great, and then my actual hiring, which was horrible.
(00:12:37): But at the beginning, I was very nervous about it because I was like, how am I ever going to know if somebody's going to be good or successful? Because I feel like I'm never even as good or successful as the other people that I see, so how am I supposed to judge? It was only after years of interview loops and interview trainings with people like Joe Krawczak, who was just amazing at being able to very quickly evaluate a person and figure out, are they going to fit in this environment? He had a different approach than I had when I had started interviewing, which was the whole Microsoft Puzzler approach of, can I ask you a question that shows how smart I am and how stupid you are because you can't think on your feet? And then people like Dave, who are, as you mentioned, very analytical and schedules everything out. Dave's one of those people who really does have more hours in the day, it seems like. He's thinking as he's asleep, and so he's just got a leg up on all of us and he's processed all of this stuff.
Rob Collie (00:13:32): While Dan is off remodeling his house.
Dan Battagin (00:13:35): Talking to those guys, I realized, I think, maybe the last five years, I actually really started to enjoy interviewing. Because I realized what interviewing is about is figuring out, is this a person that I want to work with? The way that I figure out if it's a person that I want to work with, I start asking them questions about themselves and I see, are they interested in talking about things that they're interested in? Can they engage in conversation? When I say something, can they have a intelligent conversation about whatever we're talking about? If they can, the fact that they don't know how to do some specific thing having to do with a Microsoft process or they haven't worked their way through some coding question, none of that actually matters. It's the person that matters.
(00:14:14): When you can find those good people, I realized at the end that that was the great thing. It made interviewing so much nicer for me, and probably also for the people that I was interviewing, who didn't feel like they were just the dumbest people in the world when they left the room because I had tried to show them how stupid they were.
Rob Collie (00:14:30): Let me press you because I think there's one more aspect there. Go ahead.
Dan Battagin (00:14:33): Let's finish this, and then I want to go back to how I got hired because I think you'll love hearing that.
Rob Collie (00:14:39): We need a stack of topics. I completely agree with you that a big part of interviewing and screening is figuring out if they check that check box of, can we interact? And do they show an interest and curiosity and things like that? But I want to press you and say there's more than that. There's, I don't know, let's call it judgment.
Dan Battagin (00:15:01): I think you called this intuition in one of your previous podcasts. You had this intuition. Is that the same thing or this is different?
Rob Collie (00:15:08): Well, that's my style of thinking. Without showing a bias for really hyper logical Spock-like analysis versus intuition that you can then reverse engineer. In some sense, if I almost deliberately misinterpreted what you were saying before, I could come to the conclusion what Dan's saying is, can we get along? I can get along with plenty of people that I can't work with.
Dan Battagin (00:15:32): Fair enough.
Rob Collie (00:15:33): So there's another dimension to it, which was, I like you, but I'm asking you my real world architectural type design question and the things you're saying make absolutely no sense.
Dan Battagin (00:15:44): Obviously, there's always more to it than just a simple one thing that's the answer. But I think the thing that we were at the beginning taught as the way to do it, I think, was further from the right way to do it than the way at the end. Which is a much more human approach to hiring and figuring out, is somebody going to fit in on this team? You don't want to get all the people who are great at figuring out algorithms and can put a button in the right place on a poorly optimized ribbon or adaptive menu system. You want people who are human beings and are thinking through things like a human being. The details of whatever piece of software you're working on, that stuff, oftentimes I found can be learned. I've had people join the team who didn't know anything about Excel, and turned out to be just amazing people to have on the team because they could think through the process and work with others to come up with really great solutions.
Rob Collie (00:16:41): I like verb over noun every time. It's about action. Is this person capable of moving where you're at today? That's like a turnip sitting on a couch. It's not going anywhere. We're going to be moving.
Dan Battagin (00:16:56): Totally.
Rob Collie (00:16:56): So what is the behind the scenes version?
Dan Battagin (00:17:01): My recollection of getting onto the Designer team was I interviewed for a spot at Microsoft as an intern, and that was, I think, the typical interview situation. I did an on-campus interview at school, and then I got flown up for an intern loop. All of that went, actually, quite swimmingly. I did the minimal amount of research to know that there were going to be brain teasers, so when I got asked a brain teaser at school, I knew the brain teaser. And I told the interviewer, I was like, "I know the answer to this one because I've done some research. I can go through this or you can ask me another one or whatever." I think he didn't believe me that I knew the answer. He was like, "Why don't you just tell me the answer? Walk through the brain teaser. Call my bluff." And I was like, "Okay. Well, then here's the answer." And I give him the exact right answer. That interview went swimmingly because he had no other questions to ask. It was typical Microsoft interviewing and I had just aced the interview.
Rob Collie (00:18:00): Mailing it in.
Dan Battagin (00:18:01): Mailing it in. So I came up for my on-campus interview. I brought along all this project management stuff and I presented that to each of the people that I went through my internship interviews with. It was just like hitting the nail on the head every time. I couldn't believe how great it was going. This binder with a project plan in it, which of course, how many project plans actually go to schedule? But the fact that I had one, they just loved it.
(00:18:23): So I got hired. I thought a pretty good internship, though I didn't love what I was working on. I did a bunch of work that, I think, made life for that team easier and got good reviews from Mary Pat. But then when I went to go interview, I said to her, "I really want to work on FrontPage. I'm really passionate about web design. As much as I want to just be at Microsoft, FrontPage is really where I want to be, so I need to figure out how to get onto FrontPage." There were some folks on FrontPage at the time who went on to do really great things at Microsoft and are still there. Some of the architects of SharePoint were FrontPage guys. FrontPage server extensions became SharePoint server extensions. It really wasn't an evolution of that product.
(00:19:06): Anyway, so I had interviews with them. I got asked all of the questions that I look back now and I feel like, these are just not good interview questions. "How would you write a stack table class?" My answer as a program manager who's writing specifications, "I don't really know how I would write a stack table class. I would just use one that existed."
Rob Collie (00:19:25): I'd probably come and ask someone like you.
Dan Battagin (00:19:27): Still don't know how to write a stack table, Rob, so I'm going to fail that one again.
Rob Collie (00:19:31): Me too.
Dan Battagin (00:19:31): I went through all of these interviews. I could tell as we were going, I was like, this is just really not going well. I'm going to get a no hire. And of course, at lunchtime, I went back to HR. I knew that meant bad things. My HR representative asked me, "How do you think things are going?" And I said, "They're really not going very well. I'm getting asked a bunch of questions that I don't know how to answer and I don't really understand why they're relevant." So she went and talked to the AzAP. HR says, "Well, do one more with the AzAP because, of course, the AzAP should know more than all the other people, or at least that's the perception at Microsoft." I had a fine conversation with the AzAP. It was a much more non-technical conversation interview.
(00:20:09): I thought it went okay, but I still felt like this whole loop went pretty poorly. So I had a conversation with Mary Pat when I finished the loop, probably even before HR was able to get back to the loop on the no call. I was like, "That loop went really poorly," and I related it to her. She was like, "Yeah, this is going to be a problem if they don't hire you because you had this poor loop." So she went and talked to Jeff and said to Jeff, "Is there something over there in your part of the Office world?" Because she wasn't in Office. Because Jeff was on Excel at that point, not on Designer.
Rob Collie (00:20:39): That's right. Jeff had gone to Excel with Hakey. I didn't go to Excel with Hakey. I went to Designer. Excel was the old and boring thing.
Dan Battagin (00:20:48): That's right.
Rob Collie (00:20:50): That is the junction in my life where I said to a potential hiring manager that I would never go work on something like Excel. Oh my God.
Dan Battagin (00:20:59): I am eternally grateful to both Jeff and Mary Pat for sticking their necks out there, because I ended up having a great 17 years working really on something that couldn't have been... Both Designer and Excel, which were the only two things that I ever worked on there at Microsoft. Couldn't have been a better fit for me as a person and the things that I really enjoy in life. It was amazing.
Rob Collie (00:21:23): The world would've missed out on some amazing things too. Okay, fine. Microsoft's a big place. Lots of smart people. Of course, if you hadn't been there, someone else would've been called upon to fill the void. But the fact of the matter is you did a lot of those things. We live in the world, in the universe, where Dan was there to do those things. Who knows what those other universes might have helped. The first version of Excel Services, the first web version of Excel that didn't require an ActiveX control, if I recall correctly, a lot of the HTML and script for that front end, weren't you doing a bunch of that?
Dan Battagin (00:21:58): That was a great time in my career at Microsoft. So we've gone through Designer, we've gone through-
Rob Collie (00:22:04): Designer, completely annihilated. That product never went out. Before we move on to Excel Services, I have to ask you, were you devastated when Designer got canceled?
Dan Battagin (00:22:14): You know how you felt like it was such a relief and just such a gift that it got canceled?
Rob Collie (00:22:19): Yes.
Dan Battagin (00:22:20): Rob, I was so devastated.
Rob Collie (00:22:22): I believe it.
Dan Battagin (00:22:23): I couldn't believe that we were cutting this thing. Sure, it took six minutes to deploy 17 files into a solution.
Rob Collie (00:22:31): It was so bad.
Dan Battagin (00:22:33): There were eight different progress bars that came up in that time. This exchange was the future. The local store, oh my God. How could it lose out to SQL Server? SQL Server was such a dog.
Rob Collie (00:22:48): Or SharePoint, right? Those Office people with their server extensions that they're going to rename SharePoint. That's so cute. Designer is the hotness that's going to thread the needle between those two things and leave them both in the dust.
Dan Battagin (00:23:00): That's right. And you can develop against your local Outlook, which is obvious-
Rob Collie (00:23:03): Leave them both in the dust.
Dan Battagin (00:23:03): That's right. And you can develop against your local outlook, which is obviously the tool you like using the most.
Rob Collie (00:23:05): Yeah. You remember how slow it was, is that... Oh, what was the guy's name? It was Brad something. He was a tester on Designer. He sent out emails one time saying, everything's running so slow. I'm going to start writing local store haiku. Do you remember that?
Dan Battagin (00:23:20): I don't remember that, but that's great.
Rob Collie (00:23:23): I click the button, an hourglass of eternal, that's a lot of sand.
Dan Battagin (00:23:31): Oh, that's awesome.
Rob Collie (00:23:33): If you're having an email thread on your team writing haiku's about how awfully slow something is, at that point in the project, maybe it's got to go.
Dan Battagin (00:23:40): It's time to go. Man, looking back now, obviously it was the right call, but at the time, and I don't know if you remember this because we were probably deep in Age of Empires at the point that I did this, but they gave us a bunch of swag at the end. It was like, we've cut the product, so here's a big mug. Here's a bunch of other stuff that has the Designer logo on it. At the time, I made this video of various screenshots of things that were all meaningful to us on Designer.
Rob Collie (00:24:06): That's right.
Dan Battagin (00:24:07): It had this soundtrack with it and I put it on these little mini CDs and gave them to everybody. Oh, I was devastated, because I'd only been around for a year and the first thing I'm working on is just like, boom, cut.
Rob Collie (00:24:20): That's why I didn't come to work for the next day or two. I didn't want to hurt people's feelings, but also I didn't want to be judged for being the black sheep. I wanted to avoid all of that potential conflict. I didn't want to get hurt, I didn't want to hurt others, and there was no way I was going to be able to hide my delight.
Dan Battagin (00:24:38): It's great. Plus it made it seem like to everyone else that you were in mourning just like we were.
Rob Collie (00:24:42): Oh, I know. Enough time passed, those two days that I had off or whatever, I could come back and play it off.
Dan Battagin (00:24:48): Yeah. Nice.
Rob Collie (00:24:49): Yeah. It was really hard on me. I was also thinking, Dan, at this point in time, all the bad decisions I had made at the beginning of that project. I developed quite a bit as a professional on that project.
Dan Battagin (00:24:57): I can imagine. Yeah.
Rob Collie (00:25:00): At the end of the project, I had a lot of sense about my past sins that were going to be exposed if this thing went live. In addition to it sucking all the way around, I had completely punted on conflict resolution. If someone makes an edit offline and I make an edit offline, how do we resolve that? I'm like, nah, don't worry about it. Just don't worry about it, and no one stopped me. That was my official policy, don't worry about it. Yeah, that would've been a problem.
Dan Battagin (00:25:25): It's true. Everyone would've used it once and then been like, well, it's still running the first thing I tried to deploy. They would've never have been able to use it a second time.
Rob Collie (00:25:33): Just awful. All right, well, I'm glad that thing died. I'm sorry that it was traumatizing. Looking back, now you're like, oh, that thing had it coming.
Dan Battagin (00:25:40): Had it coming. Right. We should have cut it way before. So the next thing I did, I don't know if you remember this, but after that we all did various random little things. I don't know if you were working on the XML stuff at this point, but I did a thing called Solutions. It was a bunch of out of the box, line of business solutions for the thing that that is SharePoint now, the SQL server based SharePoint. So we were building these solutions for Great Plains. We were building a thing that we were like, oh, this could replace the Microsoft PAYSTUB app. They were a combination of HTML and these office web component ActiveX controls if you had them installed. Boy, those things, they were also just a complete disaster. By the time that release of Office shipped, which I think was maybe XP or 2003. I forgot
Rob Collie (00:26:29): 2003.
Dan Battagin (00:26:30): Three, yeah. We'd cut all those two.
Rob Collie (00:26:32): That's right. Oh, my god. I remember. I remember us sitting around going, oh no, poor Dan. Few in a row.
Dan Battagin (00:26:39): I was like, man, everything I work on, boom, cut, boom, cut. Now, I had some great times doing the Solutions too. I forget which show it was that I listened to where you were like, we tried to do the most expensive non-executive Microsoft business trip ever. I had one of those when I was on the Solutions team, me and another PM, who'd been there maybe just a month or two longer than I had at Microsoft.
(00:27:03): We went out to Fargo and we had three or four dinners that were, just for me, outrageous. It was like 250 bucks each for these dinners. He was like, "Don't worry about it. We just expense it. You come back, you fill out this form." Anyway, we came back and I think what I got back, Arran, who ended up being one of my two managers at Microsoft essentially, because most of the time that I spent at Microsoft, I had either Arran or Dave as a manager. Arran had just come in, we'd just acquired Maximal, and he'd been put in charge of the BI work that they were doing, plus the Solutions team, I think really to wind the solutions team down and start to spin up the BI work.
(00:27:44): Arran being who Arran is, he looks over every line item regardless of who you are or what your level is, especially coming in as a new guy and looking at these very junior people who are on a trip, he's like, "Yeah, what did you guys do?" We got a very stern talking to about this what only ended up being a thousand dollars trip, but to me felt like this is just the most opulent trip in the world.
Rob Collie (00:28:08): Well, don't worry with me choosing hotels and Danny choosing restaurants in Denmark, a thousand dollars. We spent that before breakfast.
Dan Battagin (00:28:17): I ran into that too when I was doing some of the file format stuff. We were in Geneva and it's like breakfast is 200 bucks. Everybody has a piece of fruit on their plate and maybe a half a croissant, and they leave the rest there. That trip must have cost $ 10,000 for four or five days. So it was great. Hey, I loved it.
Rob Collie (00:28:34): So that primed you, right? Having worked on a couple of completely flimsy version one misguided ideas, that'll make you appreciate something solid.
Dan Battagin (00:28:45): When I thought Excel, I was like, man, Excel is going nowhere. In fact, it's going nowhere and they're saying it's going nowhere. It's going to be there and they don't even want to make changes. So there's nothing I can do can mess it up.
Rob Collie (00:28:56): Oh, that going nowhere. It's not leaving. I thought you meant it's not going to progress at all.
Dan Battagin (00:29:01): I didn't know how cool it would be. I just knew that it'd been around for a long time, so it was going to ship again, onto the first version of, we called it, Web Excel at the time, I think. Yeah, with Arran and me, it turned out to be a horrible, horrible product. We should have cut it, but a lot of fun, because I got to do what I felt like I had wanted to do at the beginning, which is work on web stuff. I got to do it in the context of Excel, which I came to really love. I got to do it with a bunch of really, really smart people.
(00:29:30): Arran has his nuancey things that are a little bit weird, as do all of the others that came in with Maximal. If there's one thing you can say about all those guys is they're super smart. Iron, Shahar, [inaudible 00:29:42], they were all just like these super smart guys. I felt like I was in over my head with those guys. Man, we got to do some super cool stuff building out that first version.
Rob Collie (00:29:55): Let's set the scene there. I'm certainly sad in a way to hear you say that Excel Services, that first version of web-enabled Excel, even that should have been cut. I didn't come away with that impression. I still came away from it thinking it was a freaking miracle.
Dan Battagin (00:30:12): It was a first step that had to happen. It's just when you shipped it wasn't Excel, but we called it Excel.
Rob Collie (00:30:16): It had a weird mission. So Tom, this is where we're at, is we're in the early 2000's and it's been decided that Excel is going to be basically the Microsoft BI front end of choice. We're going to turn Excel into a first rate business intelligence front end, which really meant a front end for analysis services.
Thomas LaRock (00:30:39): Sure, I'm with you. Yep, I remember.
Rob Collie (00:30:42): Now, even in the early 2000s, it had become clear that you can't have a credible BI product without a web enabled front end. You have to be able to access your reports and interact with them in a browser, and ActiveX doesn't count.
Thomas LaRock (00:30:57): Right.
Rob Collie (00:30:57): Also, it already come to the conclusion that ActiveX didn't count.
Thomas LaRock (00:31:00): So how did we know this? Is this something that Microsoft was pushing, because I'm not disagreeing with you. Yes, this was the style at the time.
Rob Collie (00:31:09): Yeah.
Thomas LaRock (00:31:09): Was this something that Microsoft built and then perpetuated, or was this external to them? It is something that came from the Valley that Microsoft just figured?
Rob Collie (00:31:17): This is purely reaction. All the products we were up against had web versions, and built from scratch versions at that.
Dan Battagin (00:31:25): To be clear, these products that you're talking about, Rob, they were things like Cognos and Panorama and other BI-
Rob Collie (00:31:31): Business objects.
Dan Battagin (00:31:32): Yeah, exactly. Business objects, other BI tools, that were not only browser based, but also very visual in a way that at the time, Excel didn't have any of that yet. Conditional formatting was still the old school conditional formatting. There were no data bars or any of the new style stuff. Charts looked like they were straight out of V1 of Excel, 1985 or whatever they were. So there was this real feel that we were going to lose the BI space. It was all about Magic Quadrant and how do we get Excel up in there as the thing that's winning in the Magic Quadrant with analysis services.
Rob Collie (00:32:12): So you take these two lines of thinking, that Excel is going to be the front end for BI at Microsoft and we need a web version of whatever BI front end we've got.
Dan Battagin (00:32:20): Yeah.
Rob Collie (00:32:21): So now suddenly you need Web Excel. So we arrived at the judiciously efficient conclusion, an expedient conclusion of it's going to basically be a read only version of Excel. You're not going be able to write formulas in this. You're going to be able to edit it. Now, if you got a pivot table, you can drill down in it, click a slicer. Oh, well, we didn't have slicers.
Dan Battagin (00:32:40): No. No slicers. Oh, please.
Rob Collie (00:32:42): So you could interact with and explore a report, but you could not do anything that truly resembled editing. Even that, one of the great Herculean feats of software, Excel.XE was not ready for this. It was not written to be multi-threaded and have multiple users, but on top of all of that, we had no one laying around who truly knew what the modern web was capable of. Forget for a moment, the incredible task of rewriting the Excel machine code to be server safe and multi-user, which might not have even been possible. We couldn't really tell. Assume that you got that done, you still needed a web friendly front end that ran on different browsers and allowed all this to work.
Dan Battagin (00:33:32): Yeah.
Rob Collie (00:33:32): Again, if I recall correctly, basically all of that HTML and JavaScript and whatever else was going on in the browser to actually render the UI, Dan, you were basically the developer for that, weren't you?
Dan Battagin (00:33:44): Look, it's not fair to say that I was the developer for that. That's taken away a lot from these guys that we brought in from Maximal. [inaudible 00:33:51], Boz did some amazing work in what they did. I will say those few years that I was on Web Excel and had an enlistment to the source code and I was able to go in there and, oh, bugs in product studio. Let me take care of that. I loved it.
(00:34:06): For me, I've beaten around this bush a little bit saying that Excel was the perfect fit for me. The thing that I really love about building software, but really about anything in life, is building. I like the act of going from nothing to a solution and something that works well and does something amazing. People look at it and go, oh, my god. How can we not have had this in the past? Being able to get in there and do a little bit of essentially bug fixing and maybe a feature or two here and there in the first version of Web Excel was amazing. Come on now.
Rob Collie (00:34:39): Okay. It wasn't just you.
Dan Battagin (00:34:40): It wasn't just me.
Rob Collie (00:34:41): All right.
Dan Battagin (00:34:41): Don't try and put that on me, Rob.
Rob Collie (00:34:44): Okay. All right. Well look, I just compressed that memory to save storage space.
Dan Battagin (00:34:48): No, it's fine.
Rob Collie (00:34:49): So what clearly being burned into my brain was that, holy cow. Dan, program manager Dan, who's over there writing code in the front end, and I also think you have to be fair to you. There were some really difficult challenges. How are we even going to solve this?
Dan Battagin (00:35:04): Oh, yeah. There were. Yeah.
Rob Collie (00:35:04): You would go off and tinker and come up with, maybe not the code that was final or even the code that was checked in, but you would come up with the working prototype. We were still calling it HX back then, this interactive dynamic HTML client server solution, and it was awesome.
Dan Battagin (00:35:23): I had totally forgotten. This is my way of compressing my memories is I just forget things. I had totally forgotten about that prototype that I built that did a bunch of the stuff the end product did in a more robust way, that I had working to show the developers. When you tell me this isn't possible, and yet I have a little prototype here where I'm doing it, you must be telling me... Dave had a great saying for this that I learned later as I eventually reported to him, which was, "But this is software, right? You just write more code and then it works." In this just very innocent, incredulous way of like, well, what do you mean it can't be done?
Rob Collie (00:36:02): Extra swagger there, you being a PM and them being a dev, they're supposed to be able to code circles around you.
Dan Battagin (00:36:08): That's right.
Rob Collie (00:36:09): You just show up the unfrozen caveman lawyer saying, I'm just a simple program manager. I don't know about this code and these good development practices, but I have this little prototype and it seems to be working. Maybe you can explain to me why this is fake.
Dan Battagin (00:36:23): That's right. So I had a great time doing all that. It was a necessary step in the evolution of what became Excel Online now, but boy, it was a limited thing. It took us a long time to go from that to what we have today and really embracing the fact, if we call it Excel, it needs to be Excel and it needs to be a first class Excel citizen. It was really only as I was leaving Microsoft that that mentality was really taking hold across office. Tammy and the team in Israel have done an amazing job at really turning Excel Online into a first class Excel client. It's great.
Rob Collie (00:37:02): So I checked out of all that story before Excel Services even shipped. So that first version of Web Excel that we're talking about, the read only one, that Dan clearly wrote most of the code for the front end.
Dan Battagin (00:37:14): Yep, that's right. You heard it here.
Rob Collie (00:37:16): I was gone from Excel before that was even done, done.
Dan Battagin (00:37:19): Yeah.
Rob Collie (00:37:20): You stayed basically on webby things from that point forward, is that right?
Dan Battagin (00:37:26): I went back and forth between web and desktop Excel from that point forward. I think I did the next release. I did desktop, the release after that, again, I did desktop maybe, and then went to web again. Then at some point we combined the teams and it became one team, one Excel team across web and desktop. Boy, that was something that was really difficult, because of course, all the people working on desktop at the time were like, seriously, you're going to saddle us this with this crappy web thing? We don't really care about that. Now, obviously that we've also brought in Mac and the mobile clients. That's clearly the only way to build a product is to have a shared code base for something like Excel, otherwise you can never get calc to be right.
Rob Collie (00:38:08): Yeah. It's like play stupid games, win stupid prizes, right?
Dan Battagin (00:38:11): Yeah.
Rob Collie (00:38:11): Divide the teams and guess what?
Dan Battagin (00:38:14): Yeah.
Rob Collie (00:38:14): You get a fractured, siloed sub-quality experience.
Dan Battagin (00:38:20): It was just a lot of fun. The things that I did with Brian earlier, I really hated Brian for, so having him as a manager was a great way to get back at him.
Rob Collie (00:38:27): Oh, yeah? Yeah. Go on.
Dan Battagin (00:38:29): Okay. Well, one of Brian's big things, I think really the thing that got Brian to where he was at Microsoft was the file format work that he did.
Rob Collie (00:38:39): Yes.
Dan Battagin (00:38:40): In the 2007, 2010 release, one of those two. Boy, at the time, Microsoft was in the whole antitrust battle and we felt like open office with their ODF Open Office XML.
Rob Collie (00:38:53): Yeah, I know-
Dan Battagin (00:38:54): I think they called it Open Office XML.
Rob Collie (00:38:56): Oh, yeah. OOXML.
Dan Battagin (00:38:57): Yeah.
Rob Collie (00:38:58): It just rolled off the tongue.
Dan Battagin (00:39:00): They were going through the standardization process and we were really worried about that and how that was going to affect the Office business. I think Brian saw that and he saw this opportunity in having a new file format, and it dovetailed really nicely with the XML work. He is this big XML guy on Word as you were on Excel, so he became the spearhead for that. It gave him really a lot of visibility across a lot of, not just Office, but Microsoft, and not just Microsoft, but Industry. Of course, Microsoft put a bunch of money behind it, and he worked with a lot of guys who were just really savvy with how to work the standardization game.
(00:39:39): Anyway, I think it was really, really painful for all the teams that he had to cajole into doing work, but it was really, really great looking back on it now. It's the same kind of thing that I look back on Designer and I'm like, yeah, yeah, yeah. Should have been cut. I look back on the XML file formats and standardization and I think, that was a painful couple of years and Brian and I had many, many arguments through that time, but talk about the right thing to do.
Rob Collie (00:40:05): Yeah, that's a really interesting juncture in history as well, right?
Dan Battagin (00:40:08): Tom, this is, in a way, a terrifying moment in the history of Office where you've got Office clone, a pretty good clone, and they had made their file format completely published. The spec was published. It was all XML. There was this weird duality at Microsoft between one being afraid that Europe would adopt that file format as some W3C standard. Just some political, probably ill-informed, but you're still dead if they're making a dumb decision or not. That could be the end of Office if they just standardize and make it a official EU policy that you have to support this thing.
(00:40:51): On the flip side, there was this terror. It's almost like confirming everyone's worst fears outside of Microsoft. There were people at Microsoft, I think even including Bill Gates, who did not want to publish the file format. They wanted it to be opaque. No, that's part of the mote. Brian with his manager at the time, Chris Prattley, had I think, again, one of those verbs are more important than nouns type of stances, which was, come on everybody. The file format being opaque, being a secret, that's what's protecting us. What's protecting us is the behaviors of our applications, the things that they do.
(00:41:29): That's when we started to have the thought experiment, that's right actually. Even the Excel team couldn't rewrite Excel to be compatible. Trust me, we were trying. So why not publish the file format? Therefore put a competing set of standards in front of the W3C and get them adopted and just cut this existential threat off, which actually the whole thing was ill conceived. Making the file format open wasn't going to suddenly make everyone's dependence on Office go away. It wasn't going to deliver the egalitarian returns that the EU thought it might, but if they thought it would...
Rob Collie (00:42:05): Yeah, totally.
Dan Battagin (00:42:08): So Brian Jones, who's been on this show, we didn't even talk to him really about this, maybe not very much anyway, a little bit bit.
Rob Collie (00:42:13): A little bit.
Dan Battagin (00:42:14): Probably a lot of inside baseball he wouldn't want to talk about, but there's got to be some amazing stories from that era. Yeah, so basically Brian, with Chris Prattley looking over his shoulder, navigated these international, holy cow. He was almost at the center of international intrigue. This was a big freaking deal, completely separate from the engineering that it took to convert every Office app to a brand new open and publishable file format.
Rob Collie (00:42:42): Yeah.
Dan Battagin (00:42:43): Oh, my God.
Rob Collie (00:42:43): The thing that was difficult, the thing that just caused me so much pain was as the Excel representative into that process, one of the things that we had to do, and I think Brian mentioned this when you were talking to him, was we had this document that was the file format, 6,000 pages, but it was all stored in a database that they could then pull out into one of these new XML based Word documents to print out various sections of it.
(00:43:07): People could also submit problems as they went through and reviewed it. They would say, you've got this field here in Excel in the file format, and we think that instead of dates working the way that Excel has dates work, they should work this other way. So for instance, Excel has a bug with dates in the year 1904 where we missed a day or added an extra day or something like that. The people in the standardization process are like, look, we're specifying a file format here that deals with dates. We are not specifying a file format that deals with dates the way that Excel does. So let's fix that in the file format. We'll make dates work the right way from now on.
(00:43:47): Of course, from the Excel side, I go back and I talk to Robert Hawking or Dwayne, these super intelligent guys, and I'm like, "They want us to change the way dates work." They're like, "You're crazy. There's no way we're changing the way dates work." I go back to Brian and I'm like, "Look, these people who are the sons of Stephen Hawking are telling me that we cannot change the way that dates work in Excel." Brian's like, "Yeah, so your answer to the file format people is we're changing the way that dates work in Excel."
(00:44:19): So there was no question, there was no change request that would ever be made that we could ever say no to, which Brian totally got. He understood steering these political waters. I was always coming at it from the technical perspective of aren't we building a file format for Excel and don't we want this to work well for Excel? I didn't at the beginning really understand, maybe until the very end, I didn't really understand that the idea here is to get a thing where you're telling everybody that they're getting what they want. Then you're also making it so that you can make it work that way or the way that Excel does. Brian got that very early on. It's like, we'll define behaviors that can have multiple modes of interaction and then leave it up to the app on which one of those that they use.
(00:45:02): So it was just a very savvy way of looking at the process. But for me and the rest of the Excel team at the time, it was just very painful. We ended up spending 18 months doing a thing called milestone compliance, which was documenting the file format the way that it actually worked and doing basically nothing else. The entire team, all developers, all program managers, all testers, we'd get in conference rooms together and work on that, and it was just crazy. So it was great when I started reporting to Brian, I could just give him a hard time about everything, because I felt like he'd done that for me.
Dan Battagin (00:45:37): So that's jaw dropping when I think about it. So first of all, that date bug, I think it might have come up on one of our other podcasts with Ed Hansberry, might have been a bug that was inherited from Lotus.
(00:45:48): It was. It was a Lotus compatibility bug. Yeah.
Rob Collie (00:45:53): Yeah. This is when I made the joke that Lotus had a off by one error, right?
Dan Battagin (00:45:57): Yeah.
Rob Collie (00:45:57): They originally were called Lotus 012. The date problems are what pushed them to one, two, three.
Rob Collie (00:46:03): ... two. The date problems will push them to 1, 2, 3. So how do you handle that? They want you to go to this ISO whatever, probably date standard.
Dan Battagin (00:46:10): Exactly.
Rob Collie (00:46:11): And Excel is like, no, no. We have to preserve our bug.
Dan Battagin (00:46:14): Yeah.
Rob Collie (00:46:15): How do you resolve that in a way that everyone gets what they want? First of all, to be that ping pong ball, going back and forth between Brian and people like Robert and Duane, not envious of being in that role. That specific issue, how does that get resolved?
Dan Battagin (00:46:30): It's not even just going back and forth between Brian and Robert and Duane. It's going back and forth between the standardizations body of Japan and Robert and Duane. Because some standards body has made this comment and Brian is just there on the Microsoft side internally telling us that we have to do whatever they want. He's not the person who's the final arbitrator on is the answer good enough. He's just telling us we got to make one that's good enough for Japan. The way we ended up doing that, Excel, obviously it doesn't persist dates anywhere. Excel persists a number, an integer number. An integer number is the day, and then hours and minutes and seconds are all the decimal part of the number. This is not uncommon. This is the way I think every programming language works. .NET works this way. And then it's a conversion, it's a formatting conversion to whatever the actual date is.
(00:47:20): We had specified that dates in Excel are these floating point numbers and that the floating point number three doesn't exist or something like that because that's the leap year bug. The solution ended up being, a cell contains a value. That value, it can have a type. The type of that value we had specified to be a decimal, but the type of that value could also be an ISO date time. And if it's an ISO date time, then you'll fill out the type attribute on the XML as date time or ISO 8601 or whatever the format is. And then the string that's in the cell will be this timestamp that's essentially a Gregorian calendar year 2023-02-28-11-42-36. And Excel can parse that, no problem. And so Japan can persist out dates that they want to, but, of course, the type attribute can also be a decimal. And if it's a decimal, then there's a decimal number in here, and here's how you parse that to get a date time. And so-
Rob Collie (00:48:24): Here's the question.
Dan Battagin (00:48:24): Yeah.
Rob Collie (00:48:25): If I go into Excel today, and I type in a date, a date with a time, right?
Dan Battagin (00:48:29): Yep.
Rob Collie (00:48:29): And then I press save. I go look in the XML, which is it?
Dan Battagin (00:48:33): It's a decimal.
Rob Collie (00:48:34): Decimal.
Dan Battagin (00:48:35): Yeah.
Rob Collie (00:48:36): Okay. So the only way to get the ISO date time in there is to use another tool or to edit it by hand or something.
Dan Battagin (00:48:41): That's right.
Rob Collie (00:48:42): In theory, Excel will then read that file and do the right thing with it.
Dan Battagin (00:48:45): In theory, it will and it may with dates and times, do the right thing. There are definitely a lot of changes that we made to excel to match what the file format was so that we could read in files created by other tools. The real reality is that the vast majority of Excel files are created by Excel or by a library that Microsoft makes available.
Rob Collie (00:49:05): This ISO date format, I would submit that this probably is not a super well-tested code path today.
Dan Battagin (00:49:13): I wouldn't suggest using it. Excel has great repair functionality for files that it doesn't recognize. We had thousands of those, and every time I would come back with an answer, which is like, "Sorry, we really just can't change this behavior in Excel. It's been there forever." And backwards compatibility, it's really important that all these files that these customers have continue to work, they're going to be really upset if they don't. And every time Brian would say, "Figure out how to answer the question in the way that they want to hear it," man, hated that guy. Oh, he's such a great guy too. Such a great guy.
Rob Collie (00:49:50): Yeah. But he was the messenger of a tough reality.
Dan Battagin (00:49:53): He was, and it turned out to be a great thing. Really now looking back on it, a great thing for him, a great thing for me. I got to work with people that I hadn't worked with before. It built, for me, relationships that I continued to use through the rest of my career. Him, Tristan, who, of course, now is on, at least periphery of the Excel team in Dave's work, at least. Shawn Villaron over on PowerPoint. Shawn was the me of PowerPoint at the time we were doing the Open XML stuff, and so traveling around the world with Brian and Shawn, and Tristan, it was a painful time in my career, but also one of the most fun.
Rob Collie (00:50:31): You were doing that. That was 2007, same time that the first version of WebExcel was going on.
Dan Battagin (00:50:37): I think it might have been, we introduced the file format in 2007, but we did a lot of the standardization work in 2010 in the release where we were working on 2010. At that point, I was actually on desktop Excel, I think.
Rob Collie (00:50:51): Okay. The point is though, really, really, really hard, nasty, tangled technical problem put down on it.
Dan Battagin (00:50:58): Yeah. I loved that.
Rob Collie (00:50:59): That became a bit of a rep.
Dan Battagin (00:51:01): I did being a firefighter, it was a lot of fun and it keeps you on your toes. You're never getting into a groove.
Rob Collie (00:51:07): A bit of trivia that you'll be surprised maybe that I remember. Dan's brother is a firefighter.
Dan Battagin (00:51:12): Dan's brother is a firefighter. I am impressed that you remember that.
Rob Collie (00:51:16): You had this t-shirt that you wore quite frequently and I asked you about it. And you're like, "Yeah, my brother is a firefighter down in Santa whatever.
Dan Battagin (00:51:24): Yeah, Santa Clara down in the Bay Area. Down in Silicon Valley now. Wasn't really-
Rob Collie (00:51:29): He's got to deal with those electrical fires in the data centers. The Bitcoin miners, he's got to go in, and special gear for fighting crypto fire. So that, and then we've almost saved the best for late, which is there's this whole thing, Dan, I don't know if you know about this. There's this calm object model that was designed in the 1940s.
Dan Battagin (00:51:50): Oh, God. Are we going to talk about programmability?
Rob Collie (00:51:53): Yeah, we have to. Because this is why I think above all else, you are so loved and revered in the MVP community is the work that you did here. All that other stuff is important, and trust me, it impacted the community's lives in ways that they just really wouldn't have seen. But like in Seinfeld, the roommate switch, the unsolvable problem, the Kobayashi Maru scenario from Star Trek. There's a series of these being fed to Dan. Maybe make a web front end for itself. Maybe make the international community committee of pointy-headed file format specialists, make them happy with Excel's file format. Did he get both of those? Oh, man. We got to break this guy. Where am I going to send him? Okay, I'll tell you what. Make the programmability API for Excel web friendly cross-platform.
Dan Battagin (00:52:53): Horrible.
Thomas LaRock (00:52:53): Make it friendly. Oh, yeah. Okay. Oh, cross-platform. Oh.
Rob Collie (00:52:59): Like this will fix his little wagon.
Dan Battagin (00:53:02): How do we finally make Dan quit? That's what they wanted to figure out. How do we get this guy out of here?
Rob Collie (00:53:06): Yeah. Where's his breaking point? Yeah. And when I left Microsoft, this was still considered an unsolvable problem. You know the joke, right? We do these things, not because they're easy, but because we thought they would be easy. We had the sense that we were closer to being done with WebExcel than what we actually were.
Dan Battagin (00:53:24): Oh, totally.
Rob Collie (00:53:25): But even while we had that sense, we're like, yeah, that programmability problem, screw that. Everyone has just got to be realistic. You're not going to get the equivalent of the range object in your web interface, just forget it. Okay?
Dan Battagin (00:53:43): I think what we said at the time was, "Look, everybody, VBA was written many, many years ago, and it's never going to run on a server. So don't get your hopes up. And you can build totally useful workbooks without any code behind them. Come on. Seriously, who has code in any Excel workbook? Nobody." That's what we would tell people at the beginning until essentially we got our head beaten in by the MVPs telling us that, "No, no, I've never written a solution that didn't have some code behind it. Whether that code is in the workbook or in an add-in, it's absolutely necessary to have an object model. Otherwise, how are we supposed to fix all the things that you guys have screwed up or add all the features that you guys haven't, or make all of the customers' lives in every business in the world just way easier because we're using programmability to do that?"
(00:54:36): And, of course, they were right, and our story that we were telling them was one of fear. We were afraid of what it meant to add programmability and have essentially code that we had no control over running up on a server. By that time, the first version of WebExcel, Rob, it ran as part of your SharePoint portal server, so it ran on your own intranet. It was your resources. If somebody was going to take that server down, it wasn't going to affect everybody else in the data center. But by the time we were talking about how do we add a real object model to WebExcel, we were running it up as part of Office 365 or whatever we called that at the very beginning. I don't even remember. But now it was our data centers that were going to get taken down and millions of users who were going to be impacted by that person who wrote the infinite loop in VBA or whatever the object model was. That was scary. We didn't want to do that at all. Clearly, we needed to.
Rob Collie (00:55:31): But you did.
Dan Battagin (00:55:32): It's ongoing.
Rob Collie (00:55:33): And suddenly it was there.
Dan Battagin (00:55:34): It's ongoing.
Rob Collie (00:55:35): I promised that I would do this, and I never did. It's like, really cool.
Dan Battagin (00:55:38): I was wondering, I was going to ask you if you played around with the task pane that Tristan mentioned.
Rob Collie (00:55:43): No, I never did. But that's like the second or third broken promise on this. I was talking about a different broken promise, which was I was going to rewrite my Wheel of Inquisition to run on the web.
Dan Battagin (00:55:53): Oh, yeah.
Rob Collie (00:55:53): Are you aware of what I did here, Dan, with the pie chart?
Dan Battagin (00:55:54): I'm aware that it exists. I haven't actually seen the Wheel of Inquisition.
Rob Collie (00:55:58): It's just a pie chart with a slice for every human that's in the meeting, which by the way, I'm sure you'd find a much more effective way of getting the list of humans in there. Just do a four loop and you change the property on the pie chart, which is degree of first slice. You get this rotating wheel of fortune thing.
Dan Battagin (00:56:16): Yeah, nice.
Rob Collie (00:56:16): There's kind of a semi-realistic physics engine in there. It starts to slow down. When I was told that would work, I could write an equivalent version of that for WebExcel, I'm like, "Get out of town. No way." Right?
Dan Battagin (00:56:26): Yeah.
Rob Collie (00:56:29): But apparently, even degree of first slice is accessible in the Web API. That's just mind-blowing.
Dan Battagin (00:56:36): Yeah. They're doing a great job with that. That was only getting going as I was making my exit. Before that, we'd had a bunch of conversations about how to do it and argued the importance of doing it. We'd gotten buy-in that it was an important thing to do. It was, as any of these processes, slow at the beginning as we dipped our toes in the water and tried to figure out, okay, now that we've decided this is important, how are we going to make it work in a way that is scalable and robust and meets some number of scenarios. We had the choice of, do you put 50 people on it for one release and try and knock the whole thing out? Or do you put five people on it and get something that you try and sell into the community as being useful, but really is more of just a proof of concept that we can figure out how to develop this thing so that in the next release we can do another chunk and the next release after that, we can do another chunk.
(00:57:32): And I think now they've got enough people working on it because they have proven that all out. This is the same way co-authoring worked when we added co-authoring across Office. They've got enough people working on it now that they're getting to the point where you can really start to move solutions onto this new JavaScript-based platform. And it's amazing. Oh, it's so fabulous.
Rob Collie (00:57:53): All I needed to know is that Wheel of Inquisition was doable. I was like, oh, they've gone way beyond where I ever thought they would make it. Let's bounce around a little bit to spice things up, shall we?
Dan Battagin (00:58:03): Sure.
Rob Collie (00:58:04): Not that talking about... First of all, with you retiring from Microsoft, that's it. Now they're like-
Dan Battagin (00:58:09): Oh, they're smarter people now. There were a bunch of smarter people while I was there.
Rob Collie (00:58:13): Really? Okay.
Dan Battagin (00:58:13): Yeah.
Rob Collie (00:58:14): Well, I don't know-
Dan Battagin (00:58:14): I tried to have them always report to me so that I could play their work off as some of my own.
Rob Collie (00:58:20): I see. No, that doesn't seem like you. That doesn't seem like you. You're a high-integrity human. What was the last year that your eBay software business was operational?
Dan Battagin (00:58:32): Oh, the eBay business. Okay. Can I tell you something about the eBay business?
Rob Collie (00:58:36): Sure.
Dan Battagin (00:58:37): The eBay business, I was way ahead. I'm usually way behind, but in the eBay business, I was way ahead of the curve. I wrote this app. It used the Office Web components that I happened to be working on at the same time on the solutions team. And so when I found bugs, I could very easily get them fixed. But the way that I did my eBay app was a subscription model. It was 10 bucks a month and you could use this app to analyze sales on eBay and hopefully make more money with whatever you were selling. Anyway, I think the last real year that worked was maybe 2006 or 2007, at which point eBay realized there's actually a market here. They made their own tool to do this. And as soon as they did that, they made scraping any data off their website, which is how I was getting all the data, against their terms of use. And they introduced a bunch of blocks. Anyway, I was getting 10 bucks a month from people, and I've still got one subscriber.
Rob Collie (00:59:36): That's amazing.
Dan Battagin (00:59:37): Somebody has been subscribed for I think 15 years now.
Rob Collie (00:59:39): Do you still charge them $10 a month?
Dan Battagin (00:59:41): 10 bucks a month comes into my PayPal account.
Rob Collie (00:59:45): Okay. Well, as long as you're willing to break terms of use.
Dan Battagin (00:59:47): Oh, sorry. They can analyze whatever data they've downloaded already from 2007.
Rob Collie (00:59:52): I see.
Dan Battagin (00:59:52): Yeah.
Rob Collie (00:59:53): So you're charging someone for nothing so much for the high integrity.
Dan Battagin (00:59:56): Yeah. Thanks, Rob. The truth comes out.
Rob Collie (00:59:59): Yeah. All right. We're going to retract... Can we get that Heisman return, Reggie Bush? I was making I think maybe like $55,000 a year in this era. And Dan was making over $1,000 a month from this eBay business.
Dan Battagin (01:00:12): These side businesses have always been so much fun for me. For me, they're really just another example of what I talked about earlier, which is I love building stuff and I love dabbling in whatever technology I'm currently using at work because I feel like it can get me to a place where I'm just more useful in doing whatever I'm doing for Excel. The eBay app was a great example of that. I was using the same tools that I was using at work. Actually, I wrote it in .NET, which was relatively new at the time. And so I was getting to learn.net at the same time.
Rob Collie (01:00:43): Passion.
Dan Battagin (01:00:43): At that time, some of the same problems as designer, it'd take 45 seconds for your app to boot. They worked on that.
Rob Collie (01:00:51): Yeah. But no haiku necessary.
Dan Battagin (01:00:52): No haiku there.
Rob Collie (01:00:53): Were you part of what is now called FIRE?
Dan Battagin (01:00:57): Not from any official way. I heard about it as I was retiring from other people who were like, "Oh man, you're doing the FIRE thing." And I was like, "My brother is a firefighter. I'm not sure what you're talking about."
Rob Collie (01:01:10): It's like Financial Independence Retire Earlier or whatever.
Dan Battagin (01:01:11): Yeah. Financial Independence Retire Early.
Rob Collie (01:01:13): And clearly not on the FIRE plan. We've had Darrin Eide and Scott on who are a similar entering class at Microsoft and remind me a lot of, okay, that's how Dan was operating his life too. Doing your own work, home improvement, whatever. I'm hiring someone to redo my kitchen. Dan is like, "I'm going to redo my kitchen myself." And I wasn't running an eBay business on the side and everything. And when you think about it, people like Dave and Brian have climbed the org chart higher, and they're still there. Whereas the Darrin Eide, the Scotts, the Dans, y'all are retired. It took a lot of discipline. Again, that effortless, don't drink the Dr. Pepper type discipline. First of all, well done. Are you still in the same house that you were in?
Dan Battagin (01:01:59): I'm not. I was married. I got divorced. I'm now in Seattle in a house that's owned by another woman who was at Microsoft. And we got together at Microsoft and we've been together now 12 years.
Rob Collie (01:02:11): I had no idea. Welcome to the once divorced club.
Dan Battagin (01:02:15): Yeah, thanks, Rob.
Rob Collie (01:02:16): Yeah. I would not have predicted this of Dan. Dan just had everything so together. Dan is not going to go and end up in a starter relationship that doesn't work out. No way. Right?
Dan Battagin (01:02:24): Oh, yeah.
Rob Collie (01:02:25): I feel so much better now. Are you going to count the ones that are never married? Because that's going to drag the average down.
Dan Battagin (01:02:30): Yeah. Maybe the Microsoft average is different than the average in the population in general.
Rob Collie (01:02:35): I'm going to go with the null hypothesis here, Tom, which is that the Microsoft divorce rate and the standard baseline divorce rate are about the same.
Thomas LaRock (01:02:44): I want to be fair, there's some bias here because I do interact with a lot of sales because I work marketing, so sales and marketing, and a lot of sales guys are on their third wife right now. I might be a little biased in my data sample there, but it's just interesting to me, every time we meet somebody from Microsoft that you worked with, they are also.
Rob Collie (01:03:07): No, no, that's not true. Brian and Dave, right?
Thomas LaRock (01:03:10): Not every time.
Dan Battagin (01:03:10): Brian, Dave, Chris, I think.
Thomas LaRock (01:03:12): Okay, not every time.
Dan Battagin (01:03:13): Chris Ray I think is on number one.
Rob Collie (01:03:15): Yep. But again, I would've put you in the never divorced camp, Dan. So my worldview is not the same.
Dan Battagin (01:03:21): Things didn't work out there, but it turns out things are great here. Everything happens for a reason, I guess. I've been super happy.
Rob Collie (01:03:28): Awesome.
Dan Battagin (01:03:29): Yeah.
Rob Collie (01:03:29): Awesome. I'm glad to hear it. Same here.
Dan Battagin (01:03:31): And speaking of-
Rob Collie (01:03:32): Second time is a charm.
Dan Battagin (01:03:34): Bingo. It came up in, oh, "Dan would just work, do the work on his house, remodel his kitchen. Hey, how's that house going, Dan?" We're actually in the process now of remodeling the kitchen here.
Rob Collie (01:03:47): Not surprised.
Dan Battagin (01:03:49): A lot of fun. It'll take a little longer because we're doing it at a bit more leisurely pace. I used to have to take time off of work to do it, so I'd try and do it as quickly as possible, but now we get to do it at the pace that's a human pace instead of 18 hours a day pace.
Rob Collie (01:04:01): But 18-hour Dan day or 18-hour rob day? There's a difference. It's a conversion. It needs to go in the file format. What's our time format? Is it Rob time or Dan time? Let's talk about Adventure Taco.
Dan Battagin (01:04:15): Yeah, another hobby, another side hobby.
Rob Collie (01:04:18): Took me a half second to figure out that Taco was short for Tacoma. I am right about that. Right?
Dan Battagin (01:04:23): You are right about that.
Rob Collie (01:04:24): Not just a coincidence. What's the website?
Dan Battagin (01:04:26): The website is AdventureTaco.com. And really it started off as my family always has felt like they have no idea what I'm doing. And that's because the rest of my family all lives essentially in the Bay Area down in California. And I ran away off to Microsoft up in Seattle, and I'm not a huge one for going home and seeing them all the time. And so they always wanted to know what was going on. Early on up here, I would write them these newsletters a couple of times a year of what was going on and hoped that was good enough. As I got through working at Microsoft, I realized one of the things I really liked to do was get outside and see really cool things in places that I'd never been before, nature things, so really grand vistas, old mines, petroglyphs and pictographs that are just these amazing works of art that people did hundreds or thousands of years ago and have been sitting there since then.
(01:05:28): Anyway, I started going on these trips and I wrote up a few little like, "Oh, here's this trip I went on," and I'd send it to my family. And eventually, I ran into these guys on the internet, which is weird and creepy every time I say it. But they were also into doing the same thing. At some point, they had scheduled this two-week-long trip through Montana and Wyoming, and they'd opened it up to just anybody who wanted to join. And I was like, I'd like to do that, not really thinking through, do I really want to go out into the back woods with these guys who I've only ever met on a forum on the internet. But I did it and it was great fun. There was only one guy who was there for only a couple of days who we all thought might actually kill us all in the back woods. He never joined any future trip.
(01:06:11): But these guys, they all wrote up these amazing trip reports with tons of photos. Here's all the fun stuff we did every day. I was like, oh, that's pretty cool. And my job is as a writer, I did this right at the end of my time at Microsoft was when I went on this first trip and I was like, as a program manager, what do I really do? I dork around in meetings, wasting time. And then when I'm actually working, what I'm doing is I'm writing. I'm writing a specification for how a feature should work. I was like, I enjoy the writing part, so I started writing up my trip reports. And first I just shared it with them and they were quickly like, "Oh, well, if Dan's going to do all this work and he enjoys it, we're going to stop because we don't." Then I needed somewhere to put them because now it wasn't just that my family wanted to see them, but all these guys who have now become buddies also wanted to see them. And I was like, oh, where am I going to put these things?
(01:07:05): I started by putting them on OneDrive just as Word documents on OneDrive, and Dave Gainer was like, "Dan, what are you doing?" Because I thought, oh, I'm just being such a good Microsoft citizen. I'm using OneDrive to share out this stuff. We have such this great sharing platform, it's a win-win here for me and for Microsoft. And Dave was like, "You really need to be using some more modern technology like Medium. If you really wanted to go all the way in, you'd get WordPress and you'd do it on WordPress." And I was like, "Dave, that's just way too much work." Now I'm using WordPress.
(01:07:41): And again, it's been one of those things where it's like I get to dip my toes in and learn how it works and learn how I want it to work differently and tweak it and build it. And I love that part of it as much as anything. Again, for me, it's the building things and seeing things come to fruition. Now I've got this whole website and I'm continuing to go on these trips that I really love doing, and I've really gotten into photography as part of that, or at least this style of photography. I'm not doing weddings or anything like that, but for me, it's retire and do what you love doing. I could either sit around twiddling my thumbs or be off exploring some corner of Death Valley National Park that no one else has been to for six months. It's a ton of fun.
Rob Collie (01:08:26): Rapid fire questions about this.
Dan Battagin (01:08:28): Sure.
Rob Collie (01:08:28): The style of photography is outdoors and you can't see anyone's face ever, right?
Dan Battagin (01:08:34): You've looked at some of the pictures. It's great.
Rob Collie (01:08:36): I have. I did.
Dan Battagin (01:08:38): Yeah.
Rob Collie (01:08:39): It's very careful not to reveal their identity, but they're always facing away or at a great distance or... What? There's an actual recognizable-
Dan Battagin (01:08:48): Oh, yeah. A picture of me as a Boy Scout.
Rob Collie (01:08:50): Oh, a picture of Dan as a youngster. Okay, that didn't count. Okay, fine. You could never connect that with the current Dan.
Dan Battagin (01:08:55): Okay. You've hit on the sore spot of my entire family because, of course, they are the number one consumers of this stuff. And...
Dan Battagin (01:09:03): They are the number one consumers of this stuff. And boy, they would like all the pictures to have either me or my wife in it smiling and happy like a normal picture. Usually there are a few that have one of us in them.
Rob Collie (01:09:16): But at a distance or turned, with your back to the camera.
Dan Battagin (01:09:18): Yeah, generally. There are definitely front facing, but they're rare. They're few and far between.
Rob Collie (01:09:23): Is this some sort of security protocol or is it why mess up the picture with our mugs?
Dan Battagin (01:09:28): It's the latter. Why mess up the picture with our mugs? And so really the mug, that I try and keep out of it is mine. I try more and more to get my wife into the photos because she actually really enjoys being in the photos. She's like a normal person who wants people in pictures. I do try and take more and more with her hiking. It just turns out that when we're hiking, I'm hiking behind her. I don't know why, but I have a thing where I don't like to have people walking behind me.
Rob Collie (01:09:58): They might be sneaking up on you with that file format. They're coming for you.
Dan Battagin (01:10:04): Perhaps I read too many spy novels where they sit in the back corner of a restaurant with their back to the wall and facing all the windows. So, I hike in the back.
Rob Collie (01:10:13): You might have some trust issues. You can't handle your wife hiking behind you. There might be some corners of your psyche that could use a little daylight. All right, so moving on, do you have anything to do with Joe Cherlav's transformation into outdoorsman? That completely surprises me.
Dan Battagin (01:10:29): Yeah, man, he's really gotten into it too. He's gone to a whole another level than I have.
Rob Collie (01:10:34): He has. Holy cow.
Dan Battagin (01:10:36): That guy, I was hoping when he bought his forerunner that he would get into my style of getting out there. But he's taken it to a whole another level now. I can't even compete. It's great seeing Joe.
Rob Collie (01:10:47): Is he an adventure runner?
Dan Battagin (01:10:49): I mean, I don't know if he's got a website.
Rob Collie (01:10:50): I saw this professionally produced video of this adventure running trip that I haven't even had time to finish watching. I just can't square this with the person that I used to know. And by the way, Joe is probably most overdue of guests to be on this show. The problem is that right now he's working at Tableau. There's just this elephant in the room like, "Oh, you're working on the wrong tool." It's like, we're going to wait until that era expires. But Joe should have been on here a long time ago.
Dan Battagin (01:11:18): Man, it'll be great to get Joe on there. He's such a good guy.
Rob Collie (01:11:21): By the way, Joe also once divorced. Dan's reputation of wrecking every product that he was assigned to in the early days like, "Maybe it's me. Everyone that was close to me." No, I didn't bring down Dave.
Dan Battagin (01:11:41): The other thing about Joe is, while I might've helped to get Joe into the off-roading stuff, Joe is such a good photographer. That guy is amazing. The patience that he has for composing a shot and getting just the most gorgeous Milky Way shot with some also amazing foreground in front of it. The composition that he gets of wildflowers on Mount Rainier, it's really mind blowing what he can do.
Rob Collie (01:12:06): I was just going to point out that he's also mastered the art of having faces in picture.
Dan Battagin (01:12:10): And he does a bunch of model photography.
Rob Collie (01:12:12): Yeah, you're still working up to that.
Dan Battagin (01:12:15): It's a thing where I love on a regular basis talking to Joe and being like, "Hey man, how do I do this thing?" I feel like the least that I can do is when he needs to help change his suspension on his truck, I can help him do some of the manual labor for him.
Rob Collie (01:12:30): On this Adventure Talker website, Tom, there's like all this DIY like, "I fashioned my own solar generator from spare parts laying around the house. Did you know that you can make a solar generator out of wool? Well, you can. Let me show you how it's ..."
Dan Battagin (01:12:46): Oh, my goodness.
Rob Collie (01:12:50): It's like Groundhogs Day. Is that what's going on with you, Dan? Each day you live it like 10,000 times and that's why you have all this extra time and you're able to acquire all these skills. It's really something else to look at from the outside.
Dan Battagin (01:13:03): Anyone can do it, Rob. Anyone can acquire skills. Look, I have never, and I don't know how to do fantasy football. That's a skill I could-
Rob Collie (01:13:12): That's because I don't want you to.
Dan Battagin (01:13:12): Well-
Rob Collie (01:13:13): I don't want you to come ruin the one thing I can do that you can't. I got to keep that to myself.
Dan Battagin (01:13:17): I could learn it. Anyone can learn anything. You just got to sit down and sort of have a little bit of patience and admit that you don't know anything to start and be willing to learn as you go. For me, that's the fun thing. And so, that's the thing that I love doing is learning new stuff and increasing my skillset and building something that becomes a thing. I don't know. It's a mindset, but it is what led to Adventure Taco.
Rob Collie (01:13:39): Maybe that is the difference is that I just don't have the patience.
Dan Battagin (01:13:43): Oh, that's not true. Look, you learn DAX. I don't know how you learn DAX. I can't even learn, I worked on Excel for 17 years and I still can't write a good Excel formula.
Rob Collie (01:13:51): You can write a lookup, right?
Dan Battagin (01:13:52): I can write a lookup. I can write a lookup on the first try. I can't write an array formula on the first try
Rob Collie (01:14:00): No?
Dan Battagin (01:14:00): No.
Rob Collie (01:14:01): No. Me either.
Dan Battagin (01:14:02): In fact, usually I'll just try and burn whatever computer I started with with array formulas.
Rob Collie (01:14:07): I actually think it's almost like an axiomatic proof, like a self-evident tautology, that if I learn DAX, DAX isn't hard.
Dan Battagin (01:14:18): Okay.
Rob Collie (01:14:19): Now, it can get hard for sure. I just think you have to have a need for it.
Dan Battagin (01:14:23): Maybe. Maybe.
Rob Collie (01:14:24): As soon as you had a need for it, Dan, the calculate function is a life changer.
Dan Battagin (01:14:29): I'll need to go find out what the calculate function is, then. I'll learn that one DAX function. Because so far I don't even know any of the names of the formulas.
Rob Collie (01:14:36): Think about calculate. I used to make fun of Charlie for this, right? So we had sum if, we had count if, max if, min if average if, right. Hold on. Actually for a while there we didn't have max and min if.
Dan Battagin (01:14:51): Really?
Rob Collie (01:14:51): We had count if, average if, some if. Did you all just get bored and you just lost, "Hey, what happened to min and max? Why such a bias against the min and max function?" But eventually they added that so they took that joke away from me. That joke had a decade on it. I could make that joke for 10 solid years. But then there's like, "Okay, what about standard deviation if?" It turns out, then there's all the other things if. Year over year growth if.
Dan Battagin (01:15:17): Okay, yep.
Rob Collie (01:15:18): There's an endless supply of formulas that you want to write, but you want them to be filtered in some way. Calculate lets you completely separate those two. So you write a measure, you write a formula that is year over year percentage growth, and then you feed that to calculate the name of that measure. You feed that to calculate as the first argument to calculate. Then all the other arguments after that are all just filters you want to apply.
Dan Battagin (01:15:44): Nice, nice.
Rob Collie (01:15:45): It's anything if.
Dan Battagin (01:15:46): Well, we should add that to Excel then.
Rob Collie (01:15:49): We looked up is and if. It's actually way easier to write. It's actually a friendlier syntax too than any of the some if or some ifs.
Dan Battagin (01:15:59): Huh, yeah.
Rob Collie (01:16:00): It's easier on the novice to write a calculate than it is I think to write a if formula in regular Excel, even if it's a sum.
Dan Battagin (01:16:06): Interesting. Well, maybe I will need to go look into DAX just a little bit so that I can understand the calculator formula.
Rob Collie (01:16:13): I mean, those are the two things I've got left that I can do that Dan can't do. Right? So I got fantasy football and DAX.
Dan Battagin (01:16:19): Probably part of the reason that I never looked into DAX was I really got scared away by analysis services and ... what was the language for analysis services?
Rob Collie (01:16:28): MDX.
Dan Battagin (01:16:29): MDX. Oh, my god. I was like, I probably had somebody explain MDX to me, whether that be like Howie or Danny Hotter.
Rob Collie (01:16:39): Yes.
Dan Battagin (01:16:39): 852 times.
Rob Collie (01:16:41): Yes.
Dan Battagin (01:16:42): And in fact, I had Howie reporting to me for years on the Excel team working on integration with analysis services and MDX, and I still, every time I look at it, my brain melts and I have to take a week off of work. I was like, "DAX? This is the next version of something that has made me take all of my sick leave that I've never before taken. I need to stay away from it."
Rob Collie (01:17:06): Well, what do you think, Dan? Do you think I ever learned MDX?
Dan Battagin (01:17:08): You have a company. It was originally Power Pivot Pro. You had to know MDX.
Rob Collie (01:17:13): Yeah, never.
Dan Battagin (01:17:14): Never?
Rob Collie (01:17:15): Oh my God. The story you just told about having access to all these experts and I'm constantly trying to teach you it, and it never taking, you have very narrowly missed hearing me tell exactly that story. Because I have told that story exactly on this show multiple times. It typically be like six months to reset my reserves and I become ambitious again, and I start to think "I can probably do it." So then I ask him for a tutorial and then we get 15 minutes in and we're trying to do an if and we're 15 minutes into an if. And I'm like, "Oh no, no, that's right. I remember this now. I'm out." Then six months later I forget again. I get back up for that punishment. Can I have another?
Dan Battagin (01:17:56): The real problem with MDX was that you could see something that Danny Hotter or Howie could build using the MDX knowledge that they had. And you'd be like a cell that you could change a parameter and it would just ripple through and make this workbook that was just amazing. So I was always like, "God, how am I missing out on that?" But I could never figure that out.
Rob Collie (01:18:16): I had the same experience. So all we are saying is give DAX a chance. By the way, it'll be cathartic. It'll be a healing because I'm with you. MDX scarred me in my inability to pick it up. So I watched them retrace their steps when I was over there. Because I was working with them at the time they were doing all this. The key difference between ... there's actually, there's multiple, but one big, big, big, big difference is that in MDX they made the hierarchies part of the formula language, part of the reference syntax. And it's not optional. Even if you don't want the benefits of it, you still have to pay the price in your learning. Hierarchies are not available in the formula language in DAX. They're not part of it. They said, "Look, we're not going to enforce that on everybody." So DAX starts with very, very, very humble primitives: tables, formulas, and relationships.
Dan Battagin (01:19:17): Yeah, nice.
Rob Collie (01:19:18): That's it. That's all it is. And it turned out, I watched them talk this out. They're like, "Yeah, if we could do it over again, we would've not put hierarchies into the MDX language. By the time we were done, we had built something that was just very inhumane." They were very clear about it and it wasn't worth it. They didn't get enough out of that firepower for the cost that they paid.
Dan Battagin (01:19:38): Interesting.
Rob Collie (01:19:39): In the end, Dan. I actually think that if you were starting from scratch and you never knew anything about Excel, DAX would be easier than Excel.
Dan Battagin (01:19:46): Definitely. I'm going to have to pick up a copy of the book then and check it out, because it sounds to me like something I would enjoy learning. At least to know enough to feel like, "Oh yeah, I'm comfortable working my way through some workbook that somebody else built with a bunch of DAX."
Rob Collie (01:19:59): I'll send you my e-book.
Dan Battagin (01:20:01): Oh, great.
Rob Collie (01:20:01): I explained it in the humane way that I learned it. Whereas you can pick up a DAX book today, and we talked about this on the show a lot as well. There is a lot of semi unintentional gate keeping going on around DAX right now in the community because everyone's writing the most optimal.
Dan Battagin (01:20:17): Oh, yeah. Let me show you how cool I am.
Rob Collie (01:20:19): You've got to write the most optimal because everyone else is going to come along and tell you that there's a more optimal way to do it. There's like a prisoner's dilemma that drives everything towards the most, but it's not humane. My book is humane because that's the only way I could have approached it.
Thomas LaRock (01:20:34): I have a question as it comes to the bottom of the hour. You mentioned the interview brain teaser question. Just a yes or no, do you remember the question?
Dan Battagin (01:20:45): No.
Thomas LaRock (01:20:46): Okay. I was going to ask if I could guess what it is.
Dan Battagin (01:20:50): I wanted to give you the yes or no answer and you asked for. I remember generally the question, but I don't remember the brain teaser part of it.
Thomas LaRock (01:20:59): I was wondering if it was the island question. You had to get people ...
Dan Battagin (01:21:04): No, I got asked a question about a vending machine. It was some kind of thing like, "How do you figure out what you're going to get out of this vending machine?" And there's these three options and how many times do you have to buy something to know what you're going to get the next time or something. It is so irrelevant that I don't even remember what it was.
Thomas LaRock (01:21:21): All right.
Rob Collie (01:21:22): There might have been a point in time maybe where those questions were good for something. Not for the job that you and I did, Dan.
Thomas LaRock (01:21:28): It's only for analytical reasoning or for whether or not you can have a conversation. Is this somebody that can try to explain something? How do they communicate? Other than that, I think a lot of times these are just used for gate keeping.
Dan Battagin (01:21:43): And the problem is that in the interview process, the interviewer would say, "I just want to see how you think through a problem. Getting the right answer isn't necessarily important. I just want you to talk through your thought process." Because theoretically they want to see like, "Oh, can you move yourself a step or two down the road to a place where eventually you'd be able to come up with the answer." The problem is it's so easy as an interviewer to disregard whatever the conversation is and be like, "Eh, I didn't really like that person or the way that we interacted or whatever. They didn't get the question so clearly they're not a Microsoft-y." If what you're going for is a conversation in a field, then you should have a conversation around a conversation and a field and not try and couch it behind this stupid.
Thomas LaRock (01:22:34): In one of my loops I had, it wasn't a brain teaser, but it was a question, it was a forward looking question, and it was this thing to have the conversation. But for whatever reason, and I believe this to be intentional, the person asking it was deliberately trying to provoke a response from me. I remember specifically the topic, which was store procedures. We were talking about something solidly going through and he goes, "Yeah, but you know what? Store procedures are going away?" And I'm like, "They're what?" He goes, "I'm telling you, store procedures are going the way." So everything you've done here is just crap and it's just not going to work. So what else are you going to do? I'm looking, I'm going, "Did you lose your mind or something? Okay, let's say store procedures go ..." I didn't really care. I was like, "Yeah, all right. So store procedures are going away." I'm like, "I'm not married to him. What do I care?" And if I was and I work here, I divorce him.
(01:23:29): But so, I just sort of just set all that aside. But later I realized he was really trying to provoke an argument with me over something as stupid as store procedures are going to be removed from databases in the future. I'm like, "Really? Okay.
Dan Battagin (01:23:47): Huh? Weird.
Rob Collie (01:23:47): And when you didn't take the bait, that person probably came away from it with the conclusion that this was over your head.
Thomas LaRock (01:23:54): Maybe.
Rob Collie (01:23:54): Right?
Thomas LaRock (01:23:55): I don't know.
Rob Collie (01:23:55): They've probably judged you negatively for having not taken the bait.
Thomas LaRock (01:23:59): I've gone through so many loops with Microsoft and so many styles over the last 20 years, but that one stands out. I'm like, "He wanted me. He came in there for an argument."
Rob Collie (01:24:11): I had a manager at Microsoft. It was actually exactly the same interview or informational in which I said the thing about Excel. I'd never go to work on Excel. This guy was actually just fundamentally a jerk. He was really, really not a nice person. I didn't really know that because one of my former managers that held him in such high esteem and everything, and he sort of got this idea that I was some sort of environmentalist, which was this person's sworn enemy. I'm thinking to myself I don't know how he got that impression. I'm not really that way. But he came at me so hard. He was clearly really, really well informed on this topic, and I wasn't, so he was using that as an advantage over me and bullying me.
(01:24:53): I think at points in the escalation, he started to throw in deliberately false information to see if I would call him on it. Like, "Gasoline is cheaper than water," is one of the things he said. That's not true, and it's demonstrably not true. It wasn't true back then either. I think he was just trying to see if I could call bullshit on things that were bullshit. That was part of he was interviewing me. I didn't realize we'd switched into an interview. And he was doing it in such a way, such an obnoxious way, that I was just opting out. In hindsight, I failed his interview because I didn't call bullshit on him while he was going off on some tirade that it was completely okay for me to not engage with.
Dan Battagin (01:25:32): Right, yeah.
Rob Collie (01:25:35): And so when you're telling that store procedure story, Tom, I'm like, "Oh, I know this Microsoft pattern. I have also received it." If it weren't for that interview, Dan, maybe I wouldn't have ended up on Designer.
Dan Battagin (01:25:51): Oh, man, I'm glad you did, Rob, because when I came into Designer, I felt like I was learning from you every day I was there, and it was great.
Rob Collie (01:26:00): Trebuchet and cavalry.
Dan Battagin (01:26:04): That was a little, that was nine months in. I will tell you, maybe six months ago I went and found Age of Empires II you can still get from Microsoft and run in Windows 10. I went and found it. I bought it for all three of us: me, my wife and our daughter. I got us playing it. It takes some patience to play Age of Empires just because the games can be a little bit long. I loved it and crushed them both and destroyed any chance that I ever have of playing them again. I attribute that to you because I remember getting just completely crushed and thinking, "How did he get 400 villagers when I have six?"
Rob Collie (01:26:45): Because I was playing against Jamie Cool. When I had 400 villagers, he had had a thousand. By the way, they've re-released that. There's like a remastered new version of Age of Empires II. It's new again. It's got updated, I think, campaigns and computer AI and they're playing. I was invited to play this weekend. I just couldn't make it. I'm going to probably play this coming weekend.
Dan Battagin (01:27:07): Oh wow.
Rob Collie (01:27:08): And last night, I was watching from two years ago some YouTube broadcast of an Age of Empires World Championships. It was really bad for me. I struggled to fall asleep after watching 20 minutes of this because it was just so stressful. The things that are going on are things I could never have pulled off. The commentators are saying, "I think competitor A is probably pretty close to thrown in the towel here." I can't tell who's winning. It's so clear to the people playing the game that one of them who only has knowledge of his or her corner of the board can tell that they should just give up. They should resign. It's been going for 20 minutes. These games do, right? They run for hours, right? But no, no, no. 20 minutes in it's known who's going to win and they just give up. I'm like, "Okay, if you say so."
Dan Battagin (01:27:57): Oh, crazy. I'm definitely not there. I'm not some Age of Empires really good guy. It's just when you compare me to someone who's never played before, I can hold my own.
Rob Collie (01:28:05): Oh yeah, they don't know the meta, Dan. I remember being in a meeting with some marketers from office, and when it came up that I played Age of Kings, it was like, "Oh yeah? What's your time to get to the Castle Age?" You had to get there in 19 minutes.
Dan Battagin (01:28:20): To be considered high enough.
Rob Collie (01:28:23): Or you're a noob. They wanted my bonafides.
Dan Battagin (01:28:27): Okay, so I have a question for you before we go. Actually, maybe two. One, it looks like you're in a room where you're doing some remodeling or I can see some exposed studs behind you. So are you doing some remodeling?
Rob Collie (01:28:37): Maybe I did some remodeling. Maybe I framed my entire unfinished basement, including the bathroom, and made a bedroom and everything. But I eventually tapped out and said, "I'm not doing the flooring, the drywall, the paint or the electrical." My true colors did eventually come out. But boy, framing fits me.
Dan Battagin (01:29:00): Nice.
Rob Collie (01:29:00): I got all the Topcons. Oh, the oscillating saw and the compound sliding miter saw and the this and the that. I got all the good stuff. Hammer drills.
Dan Battagin (01:29:11): Good. You need those for the Topcons for sure. Can't get the Topcons in without a hammer drill.
Rob Collie (01:29:18): I bought this big hammer drill and I brought it home and I showed it to my kids. I said, "Hey, you know what this is?" They're like, "What?" "This is a hammer drill. Do you know what aisle I got this on at the hardware store?" They said, "No." "I got it on the nut fucking round aisle."
Dan Battagin (01:29:34): Nice. Nice.
Rob Collie (01:29:35): Listen, I appreciate you taking the time. I'm glad we got to find you at home in between your taco adventures. I miss you. We hope to someday move back to Seattle. We'll hang.
Dan Battagin (01:29:46): Like I said in email the next time you do come into Seattle, there must be times you come in for conferences or something, or maybe not you anymore, maybe it's other people now. If you do show up here and you're going to go have lunch with Dave or somebody, make sure to reach out because I'd love to show up there too.
Rob Collie (01:30:02): All right. Will do.
Dan Battagin (01:30:02): That'd be great to see you again.
Rob Collie (01:30:03): I'll definitely do that.
Speaker 1 (01:30:04): Again. Thanks for listening to The Raw Data by P3 Adaptive Podcast. Let the experts at P3 Adaptive help your business. Just go to p3adaptive.com. Have a data day.
Sign up to receive email updates
Enter your name and email address below and I'll send you periodic updates about the podcast.
Subscribe on your favorite platform.