How Marketing Ruined Shift Left | Semgrep’s Tanya Janca

15 Apr 2025 · 49 min

Ask about this episode

Ask anything about it. ChatGPT or Claude reads this page and answers with the times it was said.

Connect VO and ask about every podcast you hear, including the moments you saved. Add to ChatGPT · Add to Claude

In short

Dev Interrupted Podcast Episode Summary

Podcast Details Title: Dev Interrupted Hosts: Andrew Zigler, Ben Lloyd Pearson, Dan Lines Description: A podcast focused on software engineering leadership, discussing strategies, challenges, and stories from high-performing software teams.

---

Episode Overview Episode Title: How Marketing Ruined Shift Left | Semgrep’s Tanya Janca

Episode Description

  • Tanya Janca, author of *Alice and Bob Learn Secure Coding*, discusses the frustration developers face when security is treated as an afterthought.
  • She emphasizes transforming security from a final obstacle into an ongoing practice to save money, reduce conflict, and foster better software development.
  • Key topics include the need for internal knowledge libraries, continuous learning, and evaluating AI-generated code for security compliance.

---

Key Discussions and Insights

  1. The Shift Left Concept
  2. Definition: Originally meant integrating security earlier in the software development lifecycle (SDLC).
  3. Current Issues:
  4. Shift left has become a marketing term rather than a practical approach.
  5. Many developers feel overwhelmed by the security requirements added late in the process without proper training or tools.
  6. Tanya's Experience: She shared her past frustrations as a developer where security was an afterthought, often leading to last-minute fixes.
  1. Transforming Security Practices
  2. Empowerment: Developers should be equipped with security tools to enforce requirements instead of feeling like security is a blockade.
  3. Building a Security Culture:
  4. Establish clear requirements from the beginning for security practices.
  5. Create internal documentation and training programs to support security knowledge.
  6. Encourage a culture of continuous learning and collaboration between developers and security teams.
  1. Training and Resources
  2. Tanya stresses the importance of regular training and creating a structured environment for learning security practices.
  3. She recommends building internal knowledge libraries to help developers understand security requirements in context.
  1. AI in Development
  2. Current Landscape: There's an increasing reliance on AI tools for coding.
  3. Potential Risks:
  4. Developers must critically evaluate AI-generated code before integrating it into projects.
  5. The importance of understanding AI limitations and the potential for misinformation.
  6. Advice: Always validate AI suggestions with manual checks and ensure compliance with security standards.
  1. Common Misconceptions
  2. Developers' Attitudes: Tanya notes that newer developers tend to take security more seriously than those with extensive experience due to a false sense of security from historical performance.
  3. Managerial Priorities: Developers often feel pressured to meet deadlines at the expense of security, highlighting the need for leadership to prioritize secure coding practices.

---

Key Takeaways

  • Security as a Practice: Security should be viewed as an integral practice throughout the development process, not a final check.
  • Empower Developers: Equip developers with tools and knowledge to handle security checks proactively.
  • Encourage Continuous Learning: Foster an environment where ongoing training and knowledge sharing are prioritized.
  • Critical Evaluation of AI: Always review AI-generated code for security compliance before use.

---

Guest Information Guest: Tanya Janca

  • Website: [SheHacksPurple](https://shehackspurple.ca/)
  • LinkedIn: [Tanya Janca](https://www.linkedin.com/in/tanya-janca/)
  • Book: [Alice and Bob Learn Secure Coding](https://www.google.com/books/edition/Alice_and_Bob_Learn_Secure_Coding/WfI9EQAAQBAJ?hl=en&gbpv=0)

---

Support and Engagement

  • Subscribe to: [Dev Interrupted Substack](https://devinterrupted.substack.com/)
  • Leave a Review: [Rate This Podcast](https://ratethispodcast.com/devinterrupted)
  • Follow on Social Media: [Twitter](https://twitter.com/DevInterrupted), [LinkedIn](https://www.linkedin.com/showcase/dev-interrupted/)

---

By applying the insights from this episode, software teams can better integrate security into their development practices, thus enhancing their resilience against potential threats.

Written by AI. May contain mistakes. Listen to the episode to check what was said.

Hear the part that matters, and keep it.Open this episode in VO. Double tap your headphones to save a moment as you listen.
Get VO free

Transcript

Automatic transcript. May contain errors.

0:05Welcome to Dev Interrupted. I'm your host, Andrew Ziegler. And I'm your host, Ben Lloyd Pearson. This week, we're talking about Claude's new learning mode, Microsoft's original source code, and Shopify's controversial AI memo. Ben, what catches your attention? Well, because I've already had some conversations on social about this one, I want to talk about this Shopify memo because I think it actually is a pretty good story. So tell us about it. So the CEO of Shopify releases an internal memo saying that staffers, they need to prove that jobs can't be done by AI before asking for more headcount or more people to join their team.

0:43So this obviously has a variety of reactions from folks within Shopify, many of which have taken online to talk about it. And it feels like the whole tech industry is kind of spectating and commenting on this mandate that's happened within Shopify. My take on it is just looking at it, you know, it's a good idea, maybe taken to a bit of a functional extreme. How do you prove that a job can be done by AI. And if a job exists right now, but AI can do it in six months, what then? You know, how do you really justify the longevity of a headcount in that kind of space? And more importantly, after reading the memo, it kind of sparked a little bit of curiosity in me.

1:21I'm kind of wondering, like, what are the workflows at Shopify now that are performing this kind of AI powered work? Like, what kind of impact is that driving for them? I'd be curious to know. Yeah, absolutely. And, you know, I actually kind of agree with Toby Luke Case, the CEO of Shopify, with his general sentiment that AI really is fundamentally disrupting knowledge work. And, you know, like many skills, I think this is a muscle, like you need to develop it over time. You really need to work with it regularly in your workflows so that you normalize and habitualize the practice. And the harsh truth is that like, if you're not doing that today, then you're risking being replaced by others who are doing that.

1:59I'm not even just talking about your job. Like your competition is thinking about these types of things and they may already be taking action on it. But I also want to point out that this kind of highlights the disconnect between like executives and individual contributors that we talked about last week. How do you prove a negative? Like, how do you prove that AI can't do the job? You know, like Luque mentioned, they gave their employees a chat bot and, you know, we've discussed on multiple occasions how chat really is not the best interface for these AI. Yeah. And if that's all you're doing, then like, that's not enough.

2:31Like you need to be giving your employees a lot more support, a lot more tooling than that. And, you know, I'm not saying that Shopify is not because I just what I'm seeing from them, I actually think that they have done a pretty good job incorporating AI into their workflows. But it's got to be more than than chat bot. Yeah, I see we're speculating about it in the same way. So, you know, we'd love to have someone from Shopify maybe in the future come on and tell us about, hey, AI is transforming them. I think there's a story there for sure that we could all possibly learn from. Yeah, and I want to take a moment just real quick to plug a personality quiz we published around AI collaboration.

3:07So if you've ever wondered how effective have I been at adopting AI and using the new generation of tools, we have this really cool quiz that we'll put in the show notes that you can take. takes just a couple of minutes to find out. But we've already started to find some really interesting things from some of our early respondents on this. Specifically, 79 % of our respondents so far are still in the AI newbie category. So this is a category of people who have barely gotten AI into their workflows. And I think this is the norm. So don't feel like you're completely left behind if you haven't adopted AI.

3:42It's kind of interesting to see some of the adoption patterns that are emerging from this as well. Like the people who are being successful are finding some repeatable generation type activities, like generating code, generating docs, generating tests, like they're getting success with those before trying to move on to other things within the software delivery lifecycle. Because to be frank, we've seen quite a few of the categories within this quiz that nobody or practically nobody is using AI for it yet, even like in collaboration, like AI just hasn't even shown up in those parts of their workflow yet.

4:16So if you want to know where you stand on this journey, head over to those show notes, take that quiz. It's really fun. It can teach you something about yourself and help you understand where you are. Well, so what's our next story, Andrew? Oh, well, the next one I'm really excited to talk about. This is something that's really near and dear to me. And this is talking about how Anthropic is kind of turning the table on how students engage with AI and how it can unlock opportunities for learning. So Claude just rolled out a new learning mode that kind of put students in a position of doing the hard thinking.

4:47This goes back to how education has always worked is that it's always best if you get that personalized hands-on attention that's tailored for you and what you're interested in, that's always going to do better and engage a student more. So that really highlights this opportunity that's sitting right in front of us with AI. And, you know, as a former classroom teacher, I actually see a lot of potential and I'm really thrilled that major players in the AI space are taking this seriously and thinking about how this can transform education for our future. I think every student would benefit from it.

5:21And, you know, it even goes back to a talk that I heard last week. This was at Atlassian Team, which we're going to talk about a little more later. I listened to a talk by Sal Khan of Khan Academy and Ben Gomez, the SVP of learning and education at Google. So these are two great minds that have built education giants that help prepare people for the world and educate them and equip them with real skills. And they're seeing the value in using AI exactly like this to build products and to build educational experiences that speak to the student on their level. You know, if you have a student and you ask them, oh, you know, you want to be a doctor, here's why you should still care about literature.

6:01A great teacher can make those connections for the student and help them have a well-rounded education. Or, you know, you want to be a Formula One driver, here's why you should really care about physics. Like, what better way to engage a student and make them really care about the subject matter? yeah and i love i love how this story sort of flips the scripts on i think how a lot of people have normalized ai like today ai is used a lot or when it's used a lot of the times it just reinforces whatever you feed into it you know whatever you tell it to tell you it will tell you that and they sort of flip the script and use it to challenge you now which i think is a really critical way to use ai and i want to mention like this is really cool because it actually the geek in me loves this because it brings us like one step closer to the education system that they have in the book Ender's Game where everyone's got tablets with like AI that like adapts to them and like teaches them what they need to know individually.

6:58Like that's like that's brilliant to me. I love that. Yes, I thought the same exact thing actually. Just having that personalized attention, that personalized tutor is going to give you so much of a leg up in life. Yeah, and I feel like really what this is showing us is we've only scratched the surface on how AI is going to change the world around us. There's been a lot of disruptions from AI. We've seen this with how it's disrupting a lot of creative fields. But what happens when those people start getting access to this stuff that just revolutionizes how they can work? An education system where everyone's got a tutor in their pocket, that's an extraordinary thing to think about.

7:32And I think there's a lot of applications that we're going to see emerge, like therapy, personal health, nutrition. But I think really the thing to take away from this is that we hear a lot about how junior devs are maybe in a tough spot because AI is really more of a force multiplier for people who are experts, for people who have been around for a while. And if a junior dev is just sort of blindly using AI and not using it to challenge themselves, then there's a real risk that they're going to just not learn the right skills, the right knowledge to level up to that senior level. So yeah, I think it's just a great example of like, if you're using AI, especially if you're newer to the field that you're working in, challenge yourself with it.

8:10Don't just use it to move faster. Use it to get smarter as well. Yeah. Ben, have you ever heard of like rubber duck programming? Yeah, absolutely. Yeah. I think that is the real practice here that developers should be bringing to their tools, asking those questions along the way and just trying to reflect upon what they're putting in action and make sure that they understand what's going on. Yeah. Well, now your rubber deck speaks back to you with whatever personality you tell it to use. All right, cool. So what's our next story? Oh, yeah. So this is a fun one. Comes right from Bill Gates' blog.

8:42It's a little bit of a deep dive into Microsoft's history, looking at the original source code for, you know, the very first Microsoft to hit the market, the very first personal computer. This was actually a huge mathematical feat. It actually, for me, what I found so fascinating about this article, which you should go read, it literally has the source code in the article, How Cool Is That?, on a dot matrix simulated printout. What this really reminded me of is how much of the foundation in our field in technology and computer science has been laid by all these mathematical geniuses before us, and how there were these insurmountable problems early on in computer engineering that were solved by brilliant minds applying math and physics, sometimes even theoretical ones, in order to create a, basically trick a rock into thinking, like what an incredible achievement.

9:33And so this is a fun throwback on some of the ancient history around computing, personal computing. I really recommend folks check that one out. Yeah. Tricking a rock into thinking is one of my favorite metaphors of all time for computing. Yeah. Yeah. So I wanted to include this article just because it's such a cool piece of work. You know, there's ASCII art, there's dot matrix printer designs, there's these cool animations and of course there's some really great tech history so i definitely need to go check it out just to experience like this really cool like 50th anniversary content from microsoft so andrew i heard you were on the road last week how did that go oh yes dev interrupted is certainly going places last week i was at atlassian teams part of the press group there i got to go behind the scenes on all of their major announcements uh dev interrupted met with many leadership folks that were at Atlassian.

10:26They took really great care of our listeners and informing us about the big changes that are happening in the Atlassian ecosystem, including their release of Rovo. More importantly, what I learned while I was there is how quickly our field really is changing, but how collaboratively everyone is coming together to discuss real-world solutions. And Atlassian is no stranger to anybody. This is a household name for all engineers, has a huge impact on the engineering ecosystem and how we build our tools. So for Dev Interrupted to have the chance to go behind the scenes, understand how things are getting made and why those decisions are happening was really transformative.

11:05And it really speaks to the conversations that we're having here on the show every single week and why they're so important. Yeah, and I just want to point out that we're working with more companies like Atlassian, like AWS, to just get the word out about really cool engineering stuff that's happening out there. You know, if you're out there listening to this right now and you're like, I have a really cool engineering thing that I've done that I would love to share with the world. Dev Interrupted is here for you, like either on this podcast or in our Substack newsletter or even on social media, you know, so just reach out to us.

11:38But speaking of on the road, I will also be on the road next month. If you're going to be in Miami at the Code Remix Summit in early May or at the Developer Week Leadership Summit in San Francisco at the end of May, hit me up, let me know, and let's meet up and chat. I always love meeting people from the community. And, you know, Dev interrupted, we want to do as much of this as possible. So we're out there meeting new people, getting fresh ideas, getting new stories. So keep an eye out for us. We really want to use these opportunities to engage with our community. Oh, yes. We're going to be on the road and conference season is just picking up.

12:12And you may remember our recent guest as well, Adnan Ejaz from AWS. He came on the podcast and talked with us about how Amazon is working with agents, AI agents to transform workflows and applications. They sent us a special video message to you, the Dev Interrupted listeners, about changes coming from Amazon Q and opportunities for you to take advantage of in your own native language. And so if you're curious about what that means, definitely be sure to check out Dev Interrupted in places like LinkedIn. you'll be sure not to miss it. Because if you're just listening to this podcast, you're only getting a part of the story.

12:48You know, we're going on the road to conferences and we're posting lots of things on LinkedIn and covering all of these news topics on Substack as well. So like Ben said, please join our conversation, become part of the Dev Interrupted Network and come meet us. You know, we'd love to engage with you. Yeah, I almost feel like this podcast is like, it's like a filtered version of all the things that we want to talk about. We only have so much time. Or unfiltered, you know, they can decide. Yeah, maybe we just go back and forth between the two. I don't know. So tell us about our guest this week, Andrew.

13:20Oh, I'm excited. We're bringing cybersecurity expert Tanya Janka on the pod. Tanya's work makes our world safer, cooler, and more purple. Ready to move beyond Copilot? Join Linear B for a 35-minute workshop that explores how top engineering teams are transforming their workflows with agentic AI. We'll show you how to go from passive assistance to full AI orchestration, beyond the IDE and into real impact. Discover your place on the AI collaboration matrix and uncover the next initiative that could change how your team works. Don't miss your chance to learn from the leaders at the forefront of AI maturity.

13:59The workshop takes place on May 14th and 15th. Reserve your spot and step into the future of engineering. Today we're tackling one of the biggest gaps in software engineering, and that's security isn't a product, it's a practice. Yet too many teams treat security as a box to check or a tool to adopt instead of a skill set to build. And when it comes to securing software, most developers feel like they're playing catch up instead of setting the rules. And joining me today is Tanya Janka, aka SheHacksPurple. She's the best-selling author of Alice and Bob Learn Application Security, and most recently, Alice and Bob Learn Secure Coding.

14:42Over her 28-year IT career, Tanya has won countless awards, including OWASP Lifetime Distinguished Member and Hacker of the Year. She's spoken at conferences all over the world. Before her tech career, Tanya was also a musician and performer. But she's really done it all in the world of cyber, including counterterrorism and leading security for the 52nd Canadian general election. So we're really excited to have you today. Tanya, welcome to the show. Oh, my gosh. Thank you so much for having me, Andrew. I've been looking forward to this for months. We've been looking forward to having you here, tapping into some of your wisdom.

15:19You know, on Dev Interrupted, we talk a lot about the skills and the things that people need to be paying attention to right now in the world of tech. And nothing is more important than security. And I don't feel like security always gets as much attention and time from everyone as it needs. And I'm sure you as a security professional, security expert, very much feel that same way. So I want to start by kind of addressing a recent talk that you gave. This was about how shift left doesn't mean anything anymore. You know, what did shift left ever mean? So shift left was supposed to mean starting security earlier in the system development lifecycle.

15:56So when I was a dev, security was basically, I want to go live on Thursday. So Tuesday, I'm at like the CAD meeting. And then security says no. And I'm like, why? And they're like, you didn't do this thing we never told you you're supposed to do. and I'm like well my deadline's Thursday so I'm going live so I'll just try to do that between Tuesday and Thursday and you'll just get what I can do and they're like that's not good enough and then I would usually go to prod anyway then it was I ran this stupid tool because the tools were really stupid then in like 2011 and 2012 23rd they were not very mature so I ran this tool and found this one thing and I'm like I'll fix that one thing then it became and they would say that right when I wanted to go to prod right it was always at the end so then they're like oh we hired a pen tester and this person's gonna come in and tell your baby's super ugly and then we're gonna tell you you're a crappy dev you did a bad job and it's like well how was I supposed to do a And so when you look at the SDLC, like on a piece of paper, so assuming waterfall or water fail, depending upon how you pronounce it.

17:15But like, so not the eternity symbol for DevOps, but if you write it from, you know, left to right, like anglophones and francophones, et cetera, right. If you look at it earlier, so, you know, coding comes before release, but coding after, let's say, requirements gathering. so the further left on the page you are the earlier you are and so some marketing person or some person thought it would be smart to come up with shift left push left which I think is stupid I think it should have been let's start security earlier but that didn't catch on so they came up with this idea of shifting left and lots of marketing people were like yeah let's use that but what they used it for was if you buy our product you have shifted left if you stick our product in your ci the devs will magically fix everything you'll totally be secure and you don't have to do any other security don't worry no effort required not true um and so as a result a lot of security teams have been very like frustrated with tools they bought because they're like i was told i could just press three buttons and life would be grand and it turns out security is a lot harder than that.

18:28And then they're like, oh, and now we have a backlog with 40 ,000 random things that it found and no one has time to fix all of it. It's been ruined to not mean something anymore. But basically we did shift left as an industry. Like there's very few companies now that are just pen testing at the end. It is much, much more common to actually give developers some security tools, actually have some sort of security requirements, have some sort of architecture review. Those things are happening now. like they did not when I was a dev because I've been doing security. So I did security for a year and a half between 2007, 2008.

19:05Then I switched back to devving because counterterrorism, it's really scary. And I was like, I don't want a job that gives me nightmares all day, all night, not all day. And so then I switched back again in like 2014 full time. And like, I think 2013, I was part-time, like switching over. And now, like, it's just, it's improved a lot. It did help, but we're not done, Andrew. Yeah, and what you're describing too, the initial way that you encounter security, you go through security view, it's like an obstacle at the end. Like, you felt you were done, right? Well, I'm going to ship to prod. I'm going to push it.

19:40Like, I think it's good to go. My team thinks it's good to go. And then your act, like the security team feels like a blocker then at that point. So it's like it sets up this antagonistic relationship between the developers and the security team. And if the developer doesn't prioritize that, then they see it as like this extraneous step, as opposed to something that's core to building, you know, good usable software. So what you're highlighting is really interesting to me how it becomes like a marketing hype problem, a marketing situation where they take this concept and they move it. So when you're talking about how companies now, they do security practices earlier, like how do they actually move it earlier in the process without falling victim to like hype?

20:28Such a good question, Andrew. So I wrote two books essentially about this, right? Because I'm very, very excited about this. Because when I was the dev lead and it was just so abrasive and so crappy, it was such a crappy situation, I felt like of us not getting along. wrong so the way we can start earlier so first of all if we start earlier it's better we will save money we will have less conflict we will build better software period like hands down we really will and so what I like to do so I meet with companies and I have been doing this I guess since late 2018 through this company called IONS Research and then sometimes I do it just on the side but I meet with companies and we look at their program and I'm like so what are the strengths of your team.

21:13So if you have someone that's awesome at threat modeling, it makes sense that maybe you want to add that to your program. But if you have some like no one with any of those skills, that might be my last choice. Does that make sense? And so it's like, what are our strengths and what do we think we can support? And I try to start with the easiest things first. So as an example, so let's say you're building web apps and APIs, and then you're doing like one team's doing WebSockets. Cool. Okay. So from now on, I'm going to make a list of requirements for every new project that does those things, like security requirements.

21:48So you're going to build an API. Cool. We use this API gateway. These are the settings we expect. This is where you can find a document that will show you all those things. We expect this. We expect that. And it's super clear from the beginning. So they design it in from the beginning and they know how much work they need to do instead of us springing surprise work on them later, which no one likes. And so having a list of requirements and technical, concise, easy to understand, technical advice. So like you're going to do a WebSocket. Cool. Here's like some advice that we need you to follow when you build or maintain a WebSocket for us.

22:30starting with requirements to me is key because with those requirements you can say we expect you to scan it with these two tools and then remediate anything that's higher medium before you go to prod you can scan it in your ide you can scan it at the cli you can scan it when you check your code in you can scan it in the ci whatever it is that you want but when it gets to me it better have passed those things or i'm going to embarrass you and be like you're your baby's not that pretty right so then you've given them control because i am in control freak like i really am and i hated that i was not allowed the testing tools and i was like how am i supposed to pass if you haven't let me see the tool i need to run it myself fix everything then you may see it and they thought i was insane they're like why would we let you touch our tools And like they're forever.

23:24They're our tools. We're one team, dude. We are not enemies. We are on the same team. Trust me. Right. We're working towards the same end result. It's smart how you call out acknowledging what your team can do. What do you have the skill set for? And what do you have the bandwidth for? It goes back to a tool that maybe like you end up with a big backlog, like a pile of stuff to do instead of addressing them earlier in the process. That sounds to me like when you try to like start a habit and your habit is to just put everything in a bucket or in a list to deal with it later. How are you actually going to build a skill if you're not doing it every day, if you're not integrating into your life?

24:01If you want to work out, you know, if you want to get into shape, you know, you need to like do your little bit every day or as much as often as you can. You can't do it all at the end or you can't be like, oh, I'm going to do it later. It's going to go in my backlog. Right. So you're really calling out how it's about acknowledging and accepting where your team's at and what your skills are. It sounds like a bit kind of what you're keying us in on is almost like building like a little internal security library. Like we use WebSockets. These are the basic security things that we expect when people build WebSockets.

24:32And then that's where Shift to Left starts to actually happen within your organization. Because now your product managers, your team leads, they can design that into what they're building up front, right? Right. And if you're really lucky, I've done this with companies before, like where I worked full time. So it's like, here's our secure coding guideline. You're going to build a web app. I'm especially thinking of Java because I worked at this one place where we had 2000 Java apps. And so then it's like, here's, you know, number one, we want to validate all the inputs. And so then you could click that link.

25:06And then me and the devs had made a wiki page of like all different examples in Java of like this, how you validate a phone number. This is how you validate this. It's just like reuse the code. Do not write your own. This has been tested. Just use this. And we tried to do that for all of the examples we could. And so we made it so it was like really easy. It's like I'm designing a web app. You go here. I'm designing an API. Go there. And like I find you get so you know the expression like you get more bees with honey. I find you get more dabs with concise, short, actionable advice instead of like vague crap that sometimes I see, like, session IDs should be ephemeral.

25:45I don't know how to code that. Like, that means short-lived. So the first time I saw that, which was from a security team, I had to look up what ephemeral meant, and I'm like, short-lived. I can't code short-lived. What if I think short-lived is 20 days, and you think short-lived is 20 minutes? Totally. I'm like, I need you to be specific. And they're like, well, we don't know how long. And I'm like, well, then I guess this requirement doesn't exist. Go away. Right? Like, so if you can, so like whenever someone's like, we're going to write a policy and it's going to be like 400 pages, I'm like, cool, no one's going to read that.

26:18I'm going to write a summary that's half a page and be like, please, please read this half page. And then I would hold little workshops where I'd have as many people as I could convince come. And then I would teach them the thing. So I'm like, okay, so this is why APIs need protection. And like, here are the things we want you to do and why we want you to do them. This is how you do this. This is how you do that. And so that's actually how I got into training. It was like, I just kept doing talks at work all the time. And then I got hired to be the trainer at work. And then other people were like, could you like come train like where we work?

Read the full transcript

26:56And I was like, do you have money? I like money. That sounds so appealing. And like when I joined SumGraph, I assumed all that would stop. but people still call me and I'm like, this is so great. So if you are listening, first of all, like shameless self-promotion, if you buy my book, you can take that information and turn it into guidance for your office. That's why I wrote it. And so like I have this whole section on Java, whole section on Python, et cetera, right? So like take that and make a guideline or make a standard and then show them how, treat them. Be like, this is a good example. This is a bad example.

27:30This is why this is bad. This is why this is good. Here's a cheat sheet on how to do this. I tried to make the book as easy as possible. It's twice as long as my first book. And like, there's only so much my publisher will tolerate from me. So I couldn't just go on forever, right? But I'm doing the best I can. I made it specific. And at the end of the chapter, I'm like, turn one of these into a secure coding guideline where you work. You have my permission, literally in writing, to steal my work and use it. Steal it. Take it. Use it. Remix it. Please apply it. Don't just read it. Yeah. The key ingredient here is training.

28:03And that's like the secret ingredient, I think, to having a really successful team where that has security practices is you have to have an active training process. You have to have an active conversation at all times about how to apply these things. And you've got to have good examples. Going back a little bit about your experience training and teaching, you know, you've built an entire program, entire platform to help people build better, more secure software. and I'm wondering along the way, what do you think is the biggest misconception that developers always have about security? So sometimes I run into developers where they're like, it's not really a big deal.

28:39It's not as bad as you say. And then I'll show them some exploits and then I almost always bring them to the side of, gosh, it turns out security is important. But I need to have them give me that chance. I find generally, so I hope this does not sound awful and no one rates me hate mail, but I find newer developers, so not necessarily younger, but newer people who have become a developer more recently tend to prioritize security a bit more and take it a bit more seriously. whereas ones that have been doing it like 20 25 years are like you're overreacting because they're thinking of the whole 25 year career they've had and they're like what we've had two breaches in 25 years we're doing fine it's like yeah but when was this year and when was last year like because attacks are just happening so much more often so and the attacks are happening are so much worse in damage.

29:35And so as a result, some of them are taking it seriously, but I'd say most of them are now. I would also say the other problem is that they're like, listen, I have a deadline Friday and my boss was like, this feature goes out Friday or we'll die. And so I have to do that. And I'll totally do security next week. But then their manager gives them another drop dead deadline and then another one and another one. And the devs sort of like, here's a rock, here's a hard place and then there's the dem getting squished and that's not their fault. So it's really hard if like that's what your manager is doing to you.

30:10Because as a person that isn't the boss, you can't be like, listen, your priorities are all wrong. Think what boss is going to want it your best. Well, maybe I'll challenge you a bit on that. Maybe let's say you're in a development team that you don't think prioritizes security as much as it should. What are maybe some tactics that you've seen a successful developer use to take that back to their team, their manager, their leadership and be like, we have to take this more seriously. Okay, so this is what I did when I was a dev because I was really concerned. And this is probably how I ended up on the security team.

30:40So I would ask questions. I'm like, what if this happens? Then everyone would be like, you're overreacting, Tanya. So when I was doing the top secret counterterrorism stuff, there was a thing that happened that I would love to tell you about, but I'm not allowed because non-disclosure agreements slash go to jail. In Canada, they're not like, you know, I would tell you, but I'd have to kill you. Like, I would tell you, but then you have to go to jail for 20 years. I'd tell you, but then you can't have any more maple syrup. Not to sound prejudiced, but I just don't think I'd like jail. No, probably not.

31:10There's not a lot of purple in jail, Tanya. It sounds so sucky. So, but basically, like, some of them were doing a thing that did not follow the policy. And so I was like, you can't do this. It's like, it's not a movie, Tanya. You're, like, overreacting. Blah, blah, blah, blah, blah. So I phoned CSIS, which is like the CIA for Canada, and told on them. So you just went straight to the top. You know, you had a great example. You were ignored. And it goes back to what you were even saying, too, about like when nowadays when there's a security breach or security problem, it's major. It's big. There's big losses, financial losses, security, like privacy losses, IP losses.

31:49And so the stakes are really, really high. In your case, you had to escalate it all the way to like a bureau. Because I talked to them about it and they wouldn't do anything. And my boss was like, you're just so overreacting. And I'm like, I can't be responsible for this, but not have the authority to change this. Right. And so then CSIS came. And so I was like about to go into the top secret building and they're like, could you hold the door? I'm like, are you effing kidding? No, this is a top secret building. Can I please see your badges? And they're like, no. And I was like a real. not nice person about it.

32:25Like, I was like, what are you doing? Like, get away from this building. How do you even know where it is? Because it's like, so we have like several stories underground. Like, we're really, really intense, as you would imagine, for like counterterrorism stuff, right? Right. And I was just like, and they had like gotten partway into the building and were trying to get into the top secret area. And I was like, I'm calling security on you, FYI. Like, show yourself out. Don't let the door hit your butt. And they're like, whoa, whoa. Like, we're just like these nice ladies. I was like, now, scat. And so I didn't know it was CSIS.

32:54And so then I called security and was like, oh, my gosh, like some people got partway in and they were trying to do this. Then lunchtime happened. And then I come back from lunch and they're like, oh, we're having like an like all of all of us like stop what you're doing. We're having a special meeting. And it was the three women. And I was like. And they're like, we're CSIS. And they're like, we want to call her out. She's the only one that didn't let us in. that's too funny that's a really fascinating story about and it's even funny to think about the building being way underground like that just sounds like oh of course it's top secret it's like way underground but you've been in these environments that are highly secure that are secure from top to bottom and so it sounds like you have this mindset about a security it's not just something you're coding it's something you think about it's how you think it's how you act it's how you breathe and you've made it part of who you are tanya and so if someone else wants to be more security-minded all in all.

33:46There's obviously lots of ways they can get started. They can read your book. They can check out your courses. But ultimately, I think it comes down to habits, right? What are successful little things that you could be doing every day? And our listeners, a lot of them, they're engineering leaders. They're in charge of teams. They're trying to figure out how to navigate their teams right now. There's a lot of hype. There's a lot of security concerns, too, that come with those hypes. So I want to ask you, you know, in today's kind of like fast-paced world, there's a lot of AI stuff, too, coming out.

34:19What are the things that you're doing to stay proactive about security? So something that I did when I was a developer that I don't do now because I have a very weird, like, I do developer relations like you. Basically, I talked to my boss and I was like, listen, I don't want to take like a few days off and go on a training. I don't feel like I have time for that. Can I have a two hour block of time every week? And assuming I've gotten my other tasks done, I do self-training. And the first boss I asked said, yeah, that sounds great. And then another boss was like, actually, we really need coverage from five till six for incident response.

34:59So if you will stay from five till six, you can use that hour always for this unless there's an incident, which, by the way, ended up only being about one week a month because they were on fire. Anyway, like they were literally on fire. I almost never got to use it. Of course. I mean, they have a standing incident response time for you to fill. But I managed to do three university courses throughout like that year, just like by doing correspondence during that one hour where we just needed coverage. And so if you can have like a regular learning block, for me personally, I find that super helpful.

35:36So that basically like if everything's just super wild that week and I just have to feel overwhelmed, I can just roll over that block and catch up on things. But if not, then it's like it's so cool to see yourself progress through different courses and stuff. At the end, we'll give the free link to my free online academy, right? Like you could take courses there. There are so many amazing content creators who are releasing things for free or almost free that I recommend you search and try. When I was first learning, there was not very much. But now, Andrew, it's so rich. Find some content creators you really like and then just absorb everything that person's ever done.

36:18I'm a huge fan of I find an author. I read 100 % of their books. Yes, me too. Yeah, you find someone that you really identify with, really vibe with, that is writing to you, making stuff for you. And you'll read everything they'll write. That's a really good call out. I love the idea of focusing on individuals with security practices, with security skills, and setting aside, of course, the time for yourself to ingest those, to work on those week after week. Sounds like a good takeaway, too, is if you're a leader in charge of a team to help maybe carve out that time proactively for your developers.

36:53If you want them to be doing it, maybe suggest a block of time on a regular basis where they're going through and doing things like security training. That's actually what I did with my dev teams. So I was like, OK, so I'm the CISO now from 10 until noon every Thursday is us learning block. Like, so one guy was trying to learn French as a second language so he could get a promotion because that's a whole thing in Canada. Like another guy was like perfecting his threat modeling skills. And I was like, if someone books a meeting during that time, I'm going to come and be like frowny face Tanya. Disappointing, like look at you just like your mom when you're a teenager.

37:35I'm giving you that look. Yeah, the classroom teacher vibe. And that works surprisingly well. It does work well. I mean, you have to obviously carve out the time. You have to make it important for your team. And then when things come across the way and you have to be there for them and stick up for their time. And it goes back to even what you said about the developer who gets all the way to the finish line. And they're like, oh, I'll do that last security bit next week. But then next week, you know, a whole other new plate is going to drop on them and they got to do all this other stuff. So, you know, it's important that when we're managing a team and we have a whole bunch of moving parts that we still take the time to upskill, to pause, to reflect and to learn on what we're doing.

38:10Another question I have for you, this is another one about kind of like hype in AI specifically. I think about like when I am trying to figure out a question as a developer, this has been a big disrupt now where it's like in the olden days, right? The olden days being like two, three years ago. If you had a question, you'd go and you'd Google it and you'd probably end up on Stack Overflow looking at somebody's not totally relevant example for what you're doing. But maybe it's relevant enough, right? And you can maybe put the pieces together, go between them. This is kind of like how developers historically have struggled through learning and have gotten through like programming problems as a group, right, or going to search for how someone's done it before.

38:50Nowadays, what's more common is you're seeing like an interrogative with an AI. You're working with AI code assistant. You're getting things that it's suggesting back to you. Maybe you're never even going to hit Google. You're never going to Stack Overflow anymore. You're working in a more closed loop. Do you work that way as a security person? What do you think about that practice? Kind of curious to get in your head as a security minded person, how you're reflecting on folks that are using AI generated code now. So I literally right before we recorded this gave a talk about that. And so I'm just going to tell you all the answers.

39:24So risks to using AI when you software, like when you develop software are so shadow AI. That means like using AI that's not approved. Right. Whether it means like actually connecting it to your app or it means like feeding stuff into it that you shouldn't or any sort of like we don't have a license. What are you doing? You're not supposed to use that one. This is the approved one. Use that one. Right. So shadow AI. So please don't do shadow AI. Don't give it decision making abilities for anything that is not irreversible, such as giving a refund, permanently banning someone, any sort of transaction that is final.

40:00Right. there should be another secondary thing that checks policy that is not the same AI because you can't have the AI check itself you need to have something else check it and validate that not giving the AI agency so don't let it control itself all of this like Terminator movies like all of that was just like we gave it agency and look what happened now do I think that's going to happen no but do I think bad things would happen yes don't think there'll be any Arnold Schwarzenegger robots from the future, but I do think that it won't go well. We should not feed it sensitive data, and sometimes sensitive data is your code.

40:38So you should check if you're allowed to feed code into the AI or not. When it writes code, so this is the one you asked about and the most important one, it is very important when it writes code that you understand fully what the code does and that you review it for any security issues and run a stack analysis and a software overcomposition analysis type of tool on it to ensure that for sure it is safe to add to your code. So just like you shouldn't copy and paste anything from Stack Overflow without understanding what you have done, right? And so if we do that and then we run all the regular tests that we would, we should be okay.

41:18The one thing that I want to add to that is that copyright and licensing. So if you ask it to like, it's like, oh, I need a function that does this type of derivative. that's not going to be copywritten because math is math right like someone can't copyright all of math but if you're like i want you to make a game that's like frogger except for don't name it frogger you're going to end up in potential copyright issues so you need like if you're having it create an entire app for you you need to first of all ask legal if that's okay ask legal if the copyright belongs to you or if it actually belongs to the ai or if it actually belongs to someone else.

41:57Like if it's creating an entire system for you, you need to be careful. And so it's very important to be not stealing others' work, which I'm not going to comment on how they train their models. No comment on that. But we are not going to steal other people's work. The last thing is just like, no matter what you ask it to do, like no matter what, always validate that it's true because it is wrong a lot and it acts just as confident when it's wrong. Oh, yes. The fake confidence is the killer. Like if it gives you references, check the references half the time they don't exist. Like I'll ask all sorts of things and it's like, yeah, here's 10 examples and blah, blah, blah.

42:38And then like eight of them or sometimes even 10 of them don't exist. So assume that it is a teenager that has showed up really late at night and smells like booze. Just be like, maybe you don't trust everything they say is true about where they were and what they were doing. Okay, you maybe have to apply a little bit of skepticism. This is maybe what I would expect from your perspective on it for sure. Especially when it comes to security, I would imagine that it knows a lot about security, but could have as many kind of like things that it misses as well. For those that are listening, Tanya is shaking her head vigorously at me.

43:11So I assume in your mind that you don't think AI really knows anything about security. It's not that it doesn't know anything. It's that it's like wrong like half the time. And when I was researching my book, I was like, oh, this is going to be so great. I'm so excited to use AI to help me research my book. And then I am a self-proclaimed expert at secure coding. And so here I am. I'm like, you know, give me like top security tips for JavaScript. And I was like, wrong, wrong, wrong. And like it gave me 10 things. Yeah. So like two of them are like, okay, these two are good. These two are not freaking JavaScript.

43:47script these like these these four like don't tell a dev that please and of course the alum was like so like eager and happy and help and it was so proud of what it generated for you and i knew that that was like the stand-up list of the 10 best things that you wanted to see right in that moment and it used its full confidence and then that can be the danger with security right because you have to have full confidence yourself and what you're putting out it goes back to the ownership it's like that's where ownership comes from you have confidence in what you're making and what you're doing. So you can't let the LLM erode your confidence, I think is the takeaway there.

44:21So when I create training, I create bad code, better code, great code. And so like the bad code, so like we learn about input validation, for example, and then bad code is like there's none or it's implemented super bad, right? And then better code. So we're doing some that's cool. And then great code. And I have like all sorts of security on it. And it's just like so hardened and awesome. And so when I create bad code, I just ask. You just use it to go from zero to one. Right. And then it's almost always what I would say is bad code. It's almost always, in my opinion, nowhere near good enough.

44:57And so I'm like, great, thanks. And then when I ask it to create better code, I'll be like, implement this, add this. And then I'm just like, no, no, I disagree. I'm adding, I'm adding. No, no, delete that. Blah, blah, blah. And so I usually have to create the better code and great code all myself. I'm trying to figure out how I can like get the AIs to like learn more because they have to train on giant models. So anyway, I'm working on this problem. I'm trying to help everyone, but I'm not, I'm at the beginning. Stay tuned, everyone. Tanya's on the case. She's going to make sure that these LLMs get a little more secure.

45:27This has been a really great kind of like, I think, capstone to the conversation because we've talked about misconceptions in security. We've talked about habits that successful security practitioners use. We've talked about how your background has kind of really shaped and evolved how you view security, how you teach it as well, and why it's so important to have it as a teaching practice. Like many things we have on Dev Interrupted, what we discussed today is a skill. Security is a skill. And so like any skill, you can build it, you can practice it, you can bake it into what you and your team are doing.

46:01And so I want to just, before we end here, you talked a bit about your book. Congratulations, first off. Writing a book is amazing. And you did it twice now. And so more kudos to you. That's like an incredible accomplishment. If folks, you know, wanted to learn more about your writing or your book, where could they go to see more about Tanya? If you go to shehackspurple.ca, there's all sorts of information about my books and where you can get them. There's also my newsletter is available there. And so a special weird thing about my books is that I do free lessons. So I did it for the first book and it was just so fun and such a smashing success.

46:40And like obviously for the second book. And so either like April, May or June, I'm going to start doing a lesson every month on every chapter of the book. And it's free. I'm going to stream it on YouTube. But if you want to invite, you got to join the newsletter, which is also free. The book is not free. Please don't pirate it. I actually found out recently that my last book was being pirated a few months ago. and it was actually malware that then attacked your whole computer. Oh, no, of course. That was not me, just to be clear. Clear in the air, everybody. That was not Tanya. Was not Tanya, but also please don't pirate.

47:14I worked so hard, but the rest is free. And so I'd love it if people would come. I'm going to have a bunch of experts on with me for every single chapter. We're going to answer all the questions at the back of the book, discuss all the topics, and then answer all the questions that the audience has. And then we're going to save all of those to YouTube, just like the last book. So that if you miss one, it'll be there for you whenever you are ready. Great. Well, it sounds like going back to having a security practice within your team, carving out time, making it an important practice. Sounds like this is a great resource for folks to go and dig into as that regular practice.

47:46So we'll definitely include it in our newsletter. It'll be in our show notes as well for our listeners. So definitely be sure to check it out. And to you, our listener, thank you so much for joining us. Be sure to follow the links that are in our newsletter, Subscribe if you haven't already. Also, please reach out to us on socials. You know, Tanya and myself are both on LinkedIn. We'd love to continue this conversation, get your take, hear your questions on what we covered today, and definitely be sure to check out her book as well. And thank you so much, Tanya, for joining us today. Thank you so much for having me.

48:20I just realized we never said the name of the book. It's Alison Bobler in Secure Coding. No, that's very relatable. That's me. You get all the way to the end and you're like, wait, I didn't even say the name of the book. The name of the book, everyone, is Alice and Bob Learn Secure Coding. So be sure to go check it out, and it'll be in our show notes. And thanks for listening. Thank you.

From the publisher

When it comes to securing software, most developers feel like they're playing catch-up instead of setting the rules.

Tanya Janca (SheHacksPurple), author of "Alice and Bob Learn Secure Coding," brings her 28 years of IT and security expertise—spanning counter-terrorism to enterprise training—to Dev Interrupted. She unpacks the common pitfalls teams face when security is treated as an afterthought, highlighting the developer frustration of being held accountable for security without the tools or knowledge needed to succeed.

Explore how transforming security from a final gate into an ongoing practice saves money, reduces conflict, and builds better software through clear requirements and true developer empowerment. Tanya provides concrete advice for developers and leaders on creating internal knowledge libraries, fostering continuous learning habits, and critically evaluating AI-generated code to ensure it meets security standards. 

Speaking of AI's growing role, we're curious how it's reshaping workflows across the industry. Share your own experiences with AI adoption by taking our quick survey to discover your spot on the adoption graph (and what you can do to level up).

Check out:

Follow the hosts:

Follow today's guest(s):

Referenced in today's show:

Support the show:

Offers:

More from Dev Interrupted

All 208 episodes
How Marketing Ruined Shift LeftDev Interrupted · 49 min
Listen in VO