February Book Club: After the Gold Rush by Steve McConnell

Posted on Tuesday, Feb 27, 2024
What is a software engineer? Software drives so much of our everyday lives, yet software development as a field has not adopted the kind of licensure other engineering disciplines have long been subject to. Hannele and Mandi discuss this classic set of essays by Steve McConnell, covering many of the same questions we still have today.

Transcript

Mandi Walls: Welcome to Page It to The Limit, a podcast where we explore what it takes to run software in production successfully. We cover leading practices used in the software industry to improve the system reliability and the lives of the people supporting those systems. I’m your host, Mandi Walls. Find me at LNXCHK on Twitter.

All right, welcome back. This is another book club episode of Page It to the Limit. This year we’re trying something out. We’re going to go through some of these books that maybe your coworkers have recommended to you. Maybe you heard them recommended at a conference talk. There’s a huge list of them out there, and we’re going to tackle a few of them this year. Welcome back to our February episode. At this time, we are covering After the Gold Rush by Steve McConnell. If that’s a familiar name to you, you may be propping a door open with his book Code Complete, which is absolutely a tome. I think it’s 1,000 pages. He was a prolific writer at Microsoft actually in the late ’90s into the early 2000s. With me this month is Hannele. Please introduce yourself to the people.

Hannele Kormano: Hi, there. I’m waving hello for reasons. But yeah, I’m a software engineer. I’ve been doing software development for 10 years now. I’ve been at PagerDuty for almost five years. I think it’s like next week as if recording the show, it’s five years next week or something like that. I live in a place called Thunder Bay Ontario, you might call it the Midwest of Canada. It’s right in the middle there, closer to Minnesota than Toronto.

Mandi Walls: Yeah, I looked it up.

Hannele Kormano: Yeah, that’s me.

Mandi Walls: Awesome. Yeah. What kind of work do you do for PagerDuty? You’re a software engineer. What are you working on?

Hannele Kormano: Right now, our team is working on some stuff. It’s still very early stages just about… PagerDuty has made a number of acquisitions recently, that’s obviously very public, most recently we acquired Jeli, and so our team is still very early days on trying to make all of that together and feel like one product.

Mandi Walls: Awesome. Yeah, we’re going to have some Jeli folks on the show at some point.

Hannele Kormano: Nice.

Mandi Walls: Tackling this book, fortunately it’s very short, so it’s about 160-some-odd pages, I think. From that perspective, it was very nice. It started out, the history on it is that it was a collection of essays on… I don’t know that they were on a blog but on McConnell’s site for a while and he collected them up. There is a second edition, because this edition After the Gold Rush is actually out of print, but you can get it at used bookstores. I think the copy that I have right now has a sticker on it for 2.99, but it looks like it’s never been opened. It’s out there. The follow-up though is still in print. It’s called Professional Software and Development. You can find it other places, but there’s no e-version. So, I go with the cheap versions for things that are paper-based, because it is what it is.

That’s our dude. He also had a regular column for IEEE Software for a long time, did some editing, I think for some ACM stuff. Like I said before, wrote Code Complete, which is maybe where folks are familiar with him from. This collection was originally written in the late ’90s, so we’re going back in time a little bit, but we have the benefit of hindsight on some of these things. The whole scope of the essays is to figure out: is software development actually a profession in the way that architecture and medicine and accounting and those kinds of things are a profession? This comes back around every few years anyway, there’s this continuing on and off debate as to whether you can even call yourself a software engineer, because that has actual meaning for other industries.

Hannele Kormano: It has a legal meaning in Canada, for sure.

Mandi Walls: Yeah.

Hannele Kormano: I called myself a software engineer in the introduction, and probably technically I’m not supposed to do that in Canada. But working for an American company, I end up in these awkward middle grounds, but it’s technically my title. What can you do? But yeah, one of the things that was super interesting to me was in the book, they look back on the 1960s and how things had evolved from the 1960s to 1999, and almost as much time has passed since then.

Mandi Walls: Absolutely.

Hannele Kormano: 1999 was the height of the dot-com bubble. In Canada, there was the big company, Nortel Networks. At one point, it was literally a third of Toronto stock exchange.

Mandi Walls: Wow.

Hannele Kormano: Yeah. That was still huge and Ottawa, was going to be the Silicon Valley of the North, and obviously a lot has changed since then. Nortel went bankrupt, they don’t exist anymore and other stuff has bubbled up in the meanwhile.

Mandi Walls: Yeah, absolutely. Things have definitely changed from that perspective, and he touches on that a little bit, but without that context, I think, in a certain extent he’s looking at software development without looking at it from across the entire economy, which was interesting is now we’re looking at where software goes, the entire economy goes really. In the US you don’t look at the New York Stock Exchange without looking at the big software companies that are on it and how things move there. Super interesting there. But yeah, so it gets into some of the early stuff as far as what folks were working on, what they were thinking of, and then looking at what engineering means and how it compares. There’s a couple of places, like in Canada, there’s a legal definition of what an engineering is. You have a license, you get the iron ring. There’s a whole mythology around that stuff, and you’re liable if things go wrong.

Hannele Kormano: I don’t have a lot of experience with that. It’s just the career isn’t quite intersected. PagerDuty is probably the closest place where we actually actually advertise ourselves for healthcare-type use cases. It’s definitely an existential thing to think about. If somebody misses a page, there’s an outside chance that somebody’s life could be affected by that, and that’s something to take seriously. Maybe PagerDuty should have some professional engineers on staff. It’s curious. It’s weird that we’ve gotten by without it so far.

Mandi Walls: It is. Yeah, absolutely. In one of the early chapters, he’s talking about early efforts on licensure for software engineers, and there’s one program and there’s still one program in Texas where you can get a professional engineer license as a software engineer.

Hannele Kormano: It does feel like it’s maybe a little bit more available than it was. A lot of places have software engineering programs nowadays that it didn’t in 1999. I did the briefest Google. I didn’t do statistics on this or anything, but it seems like a lot of universities have both computer science and software engineering programs, so you can choose between the two. It does feel like, in general, nobody’s saying that it’s an art that you can’t teach anybody. I mean, that feels like a silly argument to me in the first place, because obviously there are art schools, there are art classes that-

Mandi Walls: We teach art.

Hannele Kormano: We teach art. It feels silly to suggest that even if it wasn’t art, you couldn’t train in it, but just feel like it is more on the profession side of things nowadays. There’s more specialization than I think it was talking about, like back-end developers, front-end developers, mobile developers, embedded, Ai, data engineers, database reliability, SRE, DevOps. Even if you don’t think DevOps should be a role, sometimes it is.

Mandi Walls: That’s a debate for another pod.

Hannele Kormano: Nevermind the video game industry. There’s so much specialization there.

Mandi Walls: That’s crazy town. Yeah.

Hannele Kormano: There’s definitely more of a profession around all of that than there was in 1990 probably. Although I think even then it was weird to me that he didn’t talk about an embedded engineering, because I think that was already a thing then.

Mandi Walls: Oh, absolutely. Yeah. Yeah. I mean, it’s always been part of aerospace and aeronautics and space exports and all that stuff. NASA’s always had embedded engineers.

Hannele Kormano: Yeah, yeah,

Mandi Walls: Yeah, it’s super weird. Then some of this stuff too, I went looking, I got super curious about some of these software engineering programs. My background’s computer science. I have undergraduate graduate degrees in computer science-

Hannele Kormano: Me too.

Mandi Walls: … and not software engineering. I went looking at these software engineering programs. I’m like, “These fools are taking fluid dynamics and vector calculus.” I had a minor in math, so yeah, I took differential equations, but I’ve never needed them for anything. It was super interesting to look at what that actually means and how that differs from what we do in the industry.

Hannele Kormano: No, it’s true. I came up with, it was a computer science degree with a software engineering option. That was at Carleton University in Ottawa. It wasn’t under the school of engineering. It was still under the school of math, but the software engineering course probably was my favorite, where you basically got to make a project over the course of the semester with four other people. You have to deal with the communication issues and the project planning issues, and they were trying to make us use this UML tool that generates code for you, which I’m glad everybody has moved away from. That’s not an issue anymore. Not to say that UML diagram isn’t entirely useless. It definitely has its place. It’s just like don’t generate your code out of it.

Mandi Walls: It was a hot minute. That was Rational.

Hannele Kormano: Yeah, Rational Rose, exactly. That was like 2003, 2004, whatever, just after this book was written and it’s like, “Oh goodness, the dot-com bubble just busted. Did I make a terrible mistake? Oh, no, what have I done?”

Mandi Walls: Oh.

Hannele Kormano: You were still pretty sure it was going to be fine and it was. So…

Mandi Walls: It turned out fine.

Hannele Kormano: Yeah, it turned out, it turned out, but there was definitely an existential moment in there. Yeah, it does feel like there’s more respect for it as a profession, but definitely it doesn’t feel like licensing is as big of a deal.

Mandi Walls: No.

Hannele Kormano: It doesn’t seem like anybody’s really pushing for that.

Mandi Walls: No, actually no. That was something else I looked up this morning too, because originally in the book he’s talking about IEEE and ACM and ACM had a position came out against licensure in 2008, I want to say. Some of that stuff now is so old, it’s not even on their new website. They don’t even have this stuff documented anymore. It feels like the entire industry has just collectively said, “We don’t want to go this direction.” Then in the book he talks a little bit about certification. He mentions a couple of things that no longer exists, which amuses me. I think was the one I’m like, “Oh Jesus, do we all want to talk IPX. We need to do that.”

Hannele Kormano: It was definitely fun diving into the history. It’s a very interesting time to have written this book right before the dot-com bubble burst.

Mandi Walls: Absolutely. He gets into certification. Looking back at that stuff, that timeframe too MCSEs and that stuff was just coming about, so I feel like we definitely went that direction, like professional certifications and language-based certifications, versus anything that’s like, “Oh yeah, this is a general… Could you even license? You’re a licensed Java software engineer?”

Hannele Kormano: Yeah. Does anybody care about that? People do care about company certifications, though. It feels like that’s the shift that’s happened. It’s less about the individual and it’s more about the company in general. That’s where you get things like PCI compliance for credit card handling to security compliance, which I think is still one of the big things that PagerDuty has over some of the smaller startups coming up.

Mandi Walls: We’re also going for FedRAMP level one. I’m pretty sure I’m allowed to talk about.

Hannele Kormano: Yeah, yeah, yeah. We’re public. Yeah, that’s public.

Mandi Walls: Yeah. That’s public information now. Yeah.

Hannele Kormano: It’s interesting that shift and what implications that might have. It’s less about the individual and more about the company.

Mandi Walls: Well, and that became part of it too, because he doesn’t really talk too much in the chapters about software as a group project and talks a little bit about, what is it? The CMM certifications. I’ve never worked anywhere with a CMM certification.

Hannele Kormano: Neither have I.

Mandi Walls: And I’m not sure how much they stand out anymore for your average shop, and I figured it’s probably industry-specific, what vertical you’re working in versus-

Hannele Kormano: For sure. When this book was written, it’s weird how he’s almost disdainful of web development, but it makes sense, this is the height of desktop apps. Even though it was the height of the dot-com bubble, we’re talking HTML, we’re talking maybe some JavaScript, we’re talking Flash.

Mandi Walls: I’m not sure. JavaScript might’ve been VBScript even at that time. I’m not sure.

Hannele Kormano: Oh, that’s probably true. JavaScript probably wasn’t the main deal. It was still, “Should it be JavaScript? Should it be something else? How should we do media in general?” It was definitely still Flash, though. That was starting to be the era of Flash.

Mandi Walls: Oh, yes.

Hannele Kormano: Maybe even that was more 2001, though. Web development, there was definitely money there, even if it was fake money a lot of the time, but it felt like real software development was still about desktop applications. It was about office with version numbers instead of with ears. Nevermind being an entirely cloud-based thing.

Mandi Walls: Yeah, definitely. No one had enough bandwidth to ship anything that way. You’re still getting CDs.

Hannele Kormano: Nobody had the internet in your pocket. You had a candy bar phone, you texted.

Mandi Walls: 999.

Hannele Kormano: Yes, exactly. The T9, MM Messenger, Hotmail. I forgot about Hotmail. I definitely had a Hotmail account.

Mandi Walls: Totally Hotmail.

Hannele Kormano: One thing he said that stood out for me is programmers who aren’t paying attention could easily find themselves working as 21 century software janitors. I have had friends and colleagues who have unironically called themselves software janitors, and I’m like, “Yeah, you want stuff to have a long life. Someone has to take care of it. Is that bad? I don’t know.” That’s interesting to bring up. I think the book, even though it’s talking about it in terms of desktop applications that would eventually get finished and get shipped, it has this notion of a ratio between unplanned work and planned work. I think that’s still a good thing to think about. How much of this is pure maintenance work versus… What’s a good ratio between maintenance and…

Mandi Walls: New features.

Hannele Kormano: And new features, yeah. But also the co janitor thing that really stuck to me in reference to ChatGPT.

Mandi Walls: Sure.

Hannele Kormano: I don’t think it’s going to kill any software jobs tomorrow, but will an executive argue at some point that we should have a pay cut because they can get ChatGPT to write the first iteration of something and we just have to tidy it up. That’s a bad code janitor where that would suck. I would not want that.

Mandi Walls: Well there too, I think some folks are wondering what that ends up doing to your juniors. Is there a junior year of software developers if you’re generating your first revs and your basic stuff with AI?

Hannele Kormano: How do you get your early career practice before you start working on big stuff?

Mandi Walls: Yeah, absolutely. We’ll lose that pipeline. That pipelines not that wide anyway. I was looking at some of the numbers that he quoted in the late ’90s, there was something like 21,000 CS graduates in the late 90s, and then 2021 was the latest data I saw. Wasn’t even 60,000 yet in the US. It’s not like there’s a whole lot of folks coming up that direction, anyhow.

Hannele Kormano: I would expect that’s a little better nowadays. It’s still a pretty specialized role, but not to be a gatekeeper or anything, I don’t think everybody can do it. I think about that a lot. Can anybody do tech? Probably. Can anybody become an architect like the senior architect? Maybe not, just not everybody can become the CEO of a company, even if you have some business smarts. It’s tricky what an accessible career in tech look like.

Mandi Walls: Absolutely. I think too, part of the stuff that gets missed, and I think something that is very absent in this book is all the self-starters, all the folks who come into it with an interest versus formal education, I get it. We have a lot of colleagues that are just like, “I was interested in this, I built websites as a kid.” Even if you got started on Neopets or whatever, and that got you attached and you came in that direction and you can still come up and be an amazing professional software developer, and this idea of licensure and professional engineering, this leaves no space for those folks to come in and be at the same echelon with those folks. The balance between real world versus academic work comes back and rears its ugly head again.

Hannele Kormano: I wonder how soon we’re going to start getting cohorts who started off making stuff for Roblox or something? That’s going to start making me feel so old when that happens. It’s probably already true.

Mandi Walls: They’re probably already out there.

Hannele Kormano: They’re probably already professionals.

Mandi Walls: Yes. Instead of having paper routes, they’re building custom stuff in Roblox.

Hannele Kormano: That’s how they got their start. That’s what got them interested. I think as long as those kinds of paths can still exist somewhere, putting aside whether it’s appropriate for Roblox to be exploiting-

Mandi Walls: That’s a whole other discussion.

Hannele Kormano: That’s a whole other discussion. Maybe that’s too deep to get into. We don’t have an industry body. That was one of the things that the WGA talks. The WGA strike was lucky that ChatGPT came out at just the right time and it became interesting at just the right time and almost good enough to write a script at just the right time that they could bring that into their contractual agreements for the next four years or three years or whatever it is. We don’t really have that in software. I don’t think we could do that. Again, I don’t think anybody’s in danger of losing their job tomorrow, but it’s still tricky.

Mandi Walls: It is tricky. It’s like the same cohort of people are going to be creating these tools that are potentially going to be impacted by the tools. There too, I don’t see the ACM or IEEE coming in with a stance either way or trying to straddle that in any way. It is interesting and we get to the point where we have more white collar unions to defend against some of this stuff. It’s a whole other economic question that…

Hannele Kormano: Copyright is also a fun thing to talk about there. Who gets the copyright of ChatGPT writes a thing? I think it’s nobody.

Mandi Walls: Well, and where did it get the stuff in the first place, and hopefully it’s not stealing your code from someone else that it shouldn’t have been reading code from, and that’s a whole other bad smell.

Hannele Kormano: That’s a bit of a tangent. Obviously, they did not talk about ChatGPT in this book.

Mandi Walls: No, no.

Hannele Kormano: I haven’t touched on AI at all.

Mandi Walls: No, I don’t think it was in there at all, which is weird, because late ’90s. There was a lot of… I don’t want to say a lot, because there wasn’t a lot of anything, but there was significant work being done in neural nets and some other early stuff.

Hannele Kormano: Sure. It just wasn’t viable yet. It was all theoretical.

Mandi Walls: Too expensive to put the hardware together to do it, which now we have a lot more

Hannele Kormano: Google was one year old. They definitely weren’t getting into DeepMind or anything like that, their Deep Dream or anything like that. They were like, “We have very good search and maybe some advertisements.”

Mandi Walls: Yes.

Hannele Kormano: Obviously, a lot has changed.

Mandi Walls: With that too, he talked a little bit about obsolescence and how that impacts people and how you maintain for that. I got to chuckle out of the things he listed as things that could potentially be obsolete, because that was beautiful. It was Java, Perl, HTML, C++, Linux and Windows NT. Windows NT wasn’t really ever… I don’t think it was ever meant to last forever. They immediately pivoted away from it to Server 2000 or whatever.

Hannele Kormano: Yeah, yeah, yeah.

Mandi Walls: Well, pour one out for Perl, because that was one of my first languages.

Hannele Kormano: Java is making a weird comeback lately.

Mandi Walls: Java is making a huge comeback.

Hannele Kormano: Yeah. I did not have that on my Bingo card.

Mandi Walls: I did not either. I did not, did not. I saw the Stack Overflow survey for this year and I was like, “What is going on? Where is this coming from? I don’t get it.” Because Java was also a baby at that time. It was super new.

Hannele Kormano: It was the big trendy kid on the block.

Mandi Walls: It was, yes.

Hannele Kormano: Java and Gang of Four and Design Patterns. It was all the height of enterprise being the gold standard for the development that you do. It feels more pejorative nowadays, or it’s like it’s enterprise development. That means it’s harder to understand and you’ve got factory factories everywhere.

Mandi Walls: Yes. I feel like across some of the slower-moving parts of the industry, stuff that was built at that time is still running.

Hannele Kormano: Oh, yeah.

Mandi Walls: It’s the major underpinnings of probably more of our financial system than we’d ever want to admit. The airplanes and airline software and all that stuff is all the certain vintage.

Hannele Kormano: Or even just the parts of the financial system that still depend on mailing checks around.

Mandi Walls: God.

Hannele Kormano: I think there’s still some of that. I think it’s better than it used to be now that you can just upload a photo of a check. That’s all they need, but I’m sure there are still some places that depend on mailing stuff around and it’s hilarious. It’s funny, because it still works. There’s a trade-off there where it’s like it still works and it’s probably going to keep working for a really long time. That’s where I try not to put on too many errors. When you see somebody sketching something out in Excel or a small business that’s using Excel for their accounting, it’s probably fine for them. You want to be careful about not saving over a file or something like that, but…

Mandi Walls: Definitely. Oh, definitely.

Hannele Kormano: At a certain point you want to probably move to something a little more sophisticated. There’s a reason that those things last. It’s because they worked, and there’s always risk in migrating off of stuff.

Mandi Walls: Yeah. Oh, definitely.

Hannele Kormano: And you lose flexibility also. You can do some stuff in Excel that you probably can’t do in whatever QuickBooks online or whatever. It’s also the point, though.

Mandi Walls: Yes, you shouldn’t be doing creative accounting, but…

Hannele Kormano: Yeah, avoid creative accounting, exactly.

Mandi Walls: Definitely. Yeah. I wouldn’t want to do it just from the tax and withholding standpoint dealing with sales tax and all that stuff, but yeah. The other parts too that stick out for me was part of professional engineering is having a code of ethics, and that gave me a huge stomach ache about software development, because [inaudible 00:22:21].

Hannele Kormano: Really, if anything, it made me think of the Silicon Valley show. They make a punchline out of it, Tethics. Not an entirely mean-spirited punchline out of it either. It’s about how any of these kinds of movements will be co-opted by the (beep) of the industry, pretend that they care about it in a performative way, but don’t actually want to make any meaningful changes. Not to spend this whole time talking about AI, but you also saw that in terms of people being pushed out of companies. I know that’s what happened at Google a little bit.

Mandi Walls: Yes.

Hannele Kormano: That happened at the other place, also. What is it? OpenAI, some folks. Obviously there are allocations. I don’t know if there might’ve been other issues in there, but just the people who got pushed out because they were criticizing the company, there was some perception of that going on at OpenAI, as well as at Google. That’s the thing where it’s like there’s always going to be a tension between being a business and how much can you criticize the company without destabilizing it, but it does give you pause. Do people have the best concerns of humanity in mind while they’re building these tools? Not always.

Mandi Walls: Well, sure, and that really stuck out for me for the professionalization of software, because if you think about… There was a lot of discussion after the reports came out about the Challenger explosion. I’m of a certain age. That was a big part of my childhood, seeing that on TV at school, that’s a core memory kind of thing.

Hannele Kormano: For sure.

Mandi Walls: Following that over the years and learning about the hostile and toxic environments, and these probably are at some point professional engineers involved in that and they don’t feel comfortable standing up for it and taking professional liabilities, that of it. Then looking at software development and can you put yourself on the line as a professional and say, “I’m not going to do this, because it’s unethical or it’s wrong, it’s not safe for the customers or the users and those kinds of things.”?

Hannele Kormano: The book does predict fake life-impacting disasters if you don’t build that strong software engineering culture, and you do see that happening. The Boeing’s 737 Max, part of that was attributed to confusing control design. It’s slightly unrelated. It’s not necessarily about software design, but that’s the point is software engineering is not just the literal programming, it’s also the maintenance and other things like that. You see some of that fall out in the rise of ransomware attacks on hospitals and other kinds of critical infrastructure.

Mandi Walls: Who takes liability for not securing a hospital. In the US, the VA has had lots of problems with this private hospital systems, and your lack of appropriate risk reduction, I guess for lack of a better thought about it is putting people at actual physical harm or at risk. Who’s on the hook for that?

Hannele Kormano: At one point, is it the engineer’s responsibility at the end of the day? But yeah, in Canada, I think there are some use cases that require professional engineers. I don’t know how well that’s enforced. I feel like there’s a lot of issues with the trades in general not being very good at enforcing that the people with expertise have to be the ones who do the thing. There’s always a shortage of electricians, so people are always taking side jobs. People are always trying to do it themselves, and to some extent, I think it’s legal to do electrical work on your own house because you’re taking the risks on for yourself. It’s not great. It’s the population dynamics issue, which is the whole thing to get into where a lot of people are retiring, and we haven’t always trained enough people in Canada. We’re trying to bring in temporary foreign workers and things like that to cover some of those gaps, and it’s not great, because we’re losing a lot of that institutional structure.

Mandi Walls: I have a whole side rant about that. I could go on. As a child who grew up in a rural area where a third of my high school went to VOTEC, I had thoughts.

Hannele Kormano: That’s fair.

Mandi Walls: Yeah. Keep them for different lecture.

Hannele Kormano: It touches on a lot of things that are still problems today, for sure.

Mandi Walls: Yeah, it really does. It’s sad that things aren’t better 25 years on from when this was written. I don’t know that they’re worse, per se.

Hannele Kormano: It definitely hasn’t gotten better, particularly in terms of the ethics. But in terms of things that have gotten better, code and fixed development, you could argue that Agile is just doing that but faster.

Mandi Walls: I was wondering about that. I wanted to ask you about that. He uses the term “code and fix”, and there’s a whole bunch in here that’s still some trauma about Waterfall, and there’s a whole lot about requirements engineering, which Oh my God. But yeah, code and fix versus agile. Thinking the agile manifesto came out just after this, it was the same era, but it was a different group of dudes who… And it was all dudes, who put the Agile manifesto together in 2000, 2001, I think. At the same time, and I was a little surprised that he didn’t really talk about that as a methodology or even as in its nascent ideas, because Extreme was around too. A bunch of those other weird things were going on to get things moving faster.

Hannele Kormano: Yeah, no, that’s true. I want to say in 1999, you still couldn’t assume that even get source control was a thing, so it definitely wasn’t an assumption we have today where it’s like you probably have your stuff on GitHub, even if it’s private, and you have your selection of magic words that you use, forget, even if you don’t know how it all works.

Mandi Walls: Yeah, totally. I have no idea what’s going on under there. It’s fine.

Hannele Kormano: But you have your things like, “Oh, if I see this, I do this.” I think I’ve built a better understanding gradually over time, but there was definitely, I think everybody has to go through that phase. I think in terms of agile just being code and fixed but faster, I don’t know, I think that’s just leaning into the strengths of software development. Even though the book calls out, no matter how carefully you design it, there’s a point where it’s no longer soft, there’s a point where you can no longer make it. This change is no longer easy.

Mandi Walls: Yes.

Hannele Kormano: It’s still leaning into the strengths of while it is soft, you can…

Mandi Walls: I think of all this stuff, we’ve definitely gone more that direction. Everybody wants to shift everything left. The idea of you fix things earlier, you’re mitigating risks better, you’re saving yourself time, you’re going to fix it early before it gets to production and gets set in concrete or whatever. I wasn’t exactly sure what his code and fix would actually look like in practice.

Hannele Kormano: Yeah, no, it’s true. I had some experience with that in my first job, my first real software job, which might’ve been about 2009 or so. It was an interesting place to work. I won’t name any names. You might’ve called it a 15-year-old startup. I guess if anybody finds me on LinkedIn, you’ll be able to see which company this was. But yeah, it was basically a 15-year-old startup. It started out with an application that was written in Visual Basic 4.0. Then it was brought up through the generations and it was in Visual Basic .Net by the time I was working on it. Yeah, it did not have a test suite.

Mandi Walls: Oh, why would it? Yeah, of course.

Hannele Kormano: There was definitely a lot of duplicate code, but it was also interesting as a project that hadn’t always been maintained by professional software engineers, you might say. There was a lot of stuff that you might see in over-engineered projects and you just didn’t see them there at all. There was no meta programming. Everything was just very straightforward. Sometimes things could have effects that you didn’t expect. You could almost always search the code base for the variable and see if it was still being used. There was very little clever stuff, and that was actually nice, now that I think back on it. There was also awful stuff like Crystal Reports, so that meant that you couldn’t actually know if something was still in use or not because that was in a binary file. It had its trade-offs, but it wasn’t all negatives.

Mandi Walls: Those are the days. Oh my gosh. There’s a couple other things before we wrap up I wanted to get your thoughts on too. The chapter is called Through The Pillars. For folks who read this, the chapter names are hysterical, but he’s talking about rarely used software innovations. Of course this is ‘99. He’s talking about stuff that was developed in the 1970s. I’m reading down through some of these and I get to stuff that we know now is bad practice, and of course, the change boards and some of that stuff that just is there to get in the way of getting anything quality out the door. It struck me like, “Okay. Well if we don’t have…”

Hannele Kormano: Well, it feels like we do have that nowadays. It’s Jira.

Mandi Walls: I guess we have software reviews, but we don’t ship things off to a change review board that’s made up of folks who haven’t touched the code, I guess.

Hannele Kormano: At PagerDuty, we have the architecture strategy team. Usually, they review if somebody is like, “I would like to use AWS blippity [inaudible 00:31:11] on my next project.” You bring that to the architecture strategy team and you talk about the trade-offs. Why does this solve a problem for you that nothing else does? I think I’ve been very lucky in the places that I’ve worked in that they have had pretty good processes for those kinds of things.

Mandi Walls: I feel like we have maybe left some of the bad stuff behind.

Hannele Kormano: Nobody likes Jira, I think. It’s the devil we know and it’s the best thing that we have right now. They even acquired Trello because they were probably their best competitor, and Trello did not do quite as much as Jira does.

Mandi Walls: No, but we use both of them.

Hannele Kormano: Yeah, exactly.

Mandi Walls: Some teams on one, we use Trello. Some of them were now using Asana. Some of them do stuff on Jira.

Hannele Kormano: Monday.com.

Mandi Walls: We’re moving to Monday.com at some point this year.

Hannele Kormano: We do all right, but there’s still the expectations sometimes that a buzzword will fix everything like Agile, like Scrum, like TDD. That’s still true, the DevOps trend. That was going to solve everyone’s problems. The gold rushes keep happening, also, generated by AI, blockchain. There’s been a few of those.

Mandi Walls: The gold rushes that he mentions, the essay that the book is named for, were like the PC revolution or whatever. Then moving from server workstation, architecture internet, which only sniffs out a little bit, but then as we get into new ones, the new gold rushes, like you mentioned, AI and even cryptocurrencies and stuff like that, I don’t feel like the earlier ones really impacted lay people as much as stuff does now. There’s a lot more consumer technology and consumer-facing technology in all the stuff now that really hits the zeitgeist than there probably would’ve been at that point. I don’t think anybody I knew in the ’90s cared about server workstation architectures.

Hannele Kormano: Yeah. I mean, that’s an interesting one where within client thick server, that is like a ball that bounces back and forth also all the time.

Mandi Walls: Always. Especially now with phones and so many people doing so much of their interactions with the phone and having limited bandwidth and limited storage space and all that stuff.

Hannele Kormano: Or even things like people looking at a server-side rendering to make their web applications faster, it’s like we had that, it was called HTML.

Mandi Walls: We did that.

Hannele Kormano: It’s a little more complicated than that of course, but it’s fun to say the pithy thing sometimes.

Mandi Walls: Absolutely, absolutely. We’re just still in circles. It’s fine.

Hannele Kormano: I don’t know if you put it exactly this way, but acquisitions is a mechanism for externalizing R&D like in the late ’90s where also that period of companies gobbling up other companies and just getting bigger and bigger, and that’s definitely still happening. To a certain extent, I get it. Why spend your own money trying to figure out the best solution? You can just count on the market to do 1,000 experiments for you and acquire the best one.

Mandi Walls: Absolutely.

Hannele Kormano: I get it. Sometimes you’re sad that you don’t get to work on the shiny thing that other people got to, but obviously these are the kinds of decisions that everybody has to just try to work through.

Mandi Walls: Sometimes that stuff pans out and sometimes it doesn’t. They just get acquired and they disappear or stuff like GitHub people freak the heck out when that got bought and it seems fine. Instead of this book, are there other things that you might recommend?

Hannele Kormano: Definitely. I really liked The Phoenix Project by Gene Kim and a few others. It was written in 2005 and it was part of kicking off the DevOps movement. It’s the same people who wrote, it’s called the DevOps Bible or something like that. The Phoenix Project is more fiction. It’s a novel, basically about a company at the end of a very tough project just trying to get it out the door. Maybe it’s a bit more of a manager book, but I still really liked it as an individual contributor about how to pull yourself out of that hole was really nice. I also really Kill it with Fire by Marianne Bellotti. That’s a newer book maybe just in the past few years or so. It’s about dealing with legacy software also and pulling yourself out of a legacy software whole.

Mandi Walls: Yeah, I had seen that one when it came out. Then it’s in my TBR, but I didn’t put it on… I don’t know why I didn’t put it on the list for potentials for the podcast. I think I’m going to add that to the potentials for later in the year. If anybody out there wants to join us and talk about that one, we’ll look at it at some point. The follow-up to The Phoenix Project’s called The Unicorn Project. That’s also Gene and it’s a slightly different perspective there. Again, they’re working on a legacy project and there’s the usual cast of crazy characters and things going on there. Yeah. Thanks for coming on and thanks for chatting with me on this one. We’ll put some stuff in the show notes for folks who are interested in either of the recommendations and some of the other things we looked up. Like I said, this book is easy to get. Usually, like I said, it’s cheap as a used book for folks who are curious about what it might take to turn software development into real software engineering and whether or not we should even bother.

Hannele Kormano: Because I was trying to get this in time for the podcast, I actually ended up with two copies, so reach out if you would like it.

Mandi Walls: Yeah. If anybody would like Hannele’s extra copy, you can email my team. We’re community-team@pagerduty.com. We’re always up for interesting comments as well. If you’d like a copy, we can send that extra one out to you.

Hannele Kormano: I’ll put in some PagerDuty stickers at least.

Mandi Walls: Awesome. We love PagerDuty stickers. Sweet. Yeah, we’ll be back with a regular episode in a couple of weeks and we’ll be back next month with another book club episode. If you’d like to be a guest or if you also have a book recommendation, let us know. Like I said, we’re community-team@pagerduty.com, or I’ve also got a form, I’ll put it in the show notes, it’s bit.ly/PageItBookClub, because I’m scheduling things out between May and June for all the upcoming episodes, and we’d love to chat with folks who want to read interesting books about tech. Thanks for joining us, and we’ll be back in a couple of weeks. Thanks for joining me today, Hannele.

Hannele Kormano: Thanks, also.

Mandi Walls: Bye, everybody.

Hannele Kormano: That does it for another installment of Pager to the Limit. We’d like to thank our sponsor, PagerDuty for making this podcast possible. Remember to subscribe to this podcast if you like what you’ve heard. You can find our show notes at pageittothelimit.com, and you can reach us on Twitter @pageittothelimit using the number two. Thank you so much for joining us, and remember, uneventful days, our beautiful days.

Show Notes

Additional Resources

Guests

Hannele Kormano

Hannele Kormano (She/Her)

Hannele has been a software engineer for just over ten years, the last five at PagerDuty. She grew up in Thunder Bay Ontario, she loves her Finnish background, and she’s used to thinking of Toronto as The South. Along with fixing broken things, Hannele loves story-telling and digging into weird historical quirks, so this book club is a great fit!

Hosts

Mandi Walls

Mandi Walls (she/her)

Mandi Walls is a DevOps Advocate at PagerDuty. For PagerDuty, she helps organizations along their IT Modernization journey. Prior to PagerDuty, she worked at Chef Software and AOL. She is an international speaker on DevOps topics and the author of the whitepaper “Building A DevOps Culture”, published by O’Reilly.