Katie McLaughlin wears many hats in the Python/Django world: a prolific speaker, PSF Fellow, DSF Directory, and currently works at Google.
Will Vincent 0:06
Hello, and welcome to another episode of Django chat. This week, we're joined by Katie McLaughlin, who wears many hats in the Python Django, world director of Python Software Foundation, also director of Django Software Foundation, the conference director for Python, Australia and currently at Google. Katie, welcome to the show. Hi. So there's so much we want to talk about. Maybe we'll just start with the classic How did you get into programming
Katie McLaughlin 0:27
Will Vincent 1:48
so what's that? What's that path? Like? I mean, again, cuz you you wear so many hats in the community. How, how did that come about? I mean, how does, you know, among the other people who are directors and conference organizers, Is there a similar path of how they get there? Or is it really vary for everyone?
Katie McLaughlin 2:04
For me, it started out with helping carry beer and setting out tables at the meetups that one of my previous employers hosted at the time. And from there, going, Hmm, maybe I could speak at one of these things. And then Hmm, maybe this is interesting. Maybe I should give a talk about this. And then, oh, I got accepted for a talk in New Zealand. Okay, this is fine. And then just being around and volunteering to help, something as simple as making sure that a speaker is introduced and that I make sure that people ask questions in the form of a question and then realizing that there's a whole lot of opportunities around helping on boards and councils and making myself somewhat popular because popularity Voting is absolutely a thing. Um,
Will Vincent 3:03
I mean, is there an infinite list of people who want to donate all the time and energy though, that that you and these other organizers do because, I mean, that's something I hope we can talk about today is just how much work and how many volunteers are involved in any conference because I was just at pi con for the first time and that's overwhelming, but there's an overwhelming amount of work behind the scenes to make it so smooth that you you know more than anyone since of all the hats you wear have have a sense. So how does like how does that break down for examples of conference organizer? What's, what's the sort of ratio of, you know, attendees to volunteers to like, how do you keep track of it all in your head, right, because there's so much going on at any one conference.
Katie McLaughlin 3:43
It's pi con us in Cleveland, in like the last week as we record this going off into Pittsburgh next year. There is an entire horde of volunteers everything from the session chairs and session. runners to the people who help stuff, the swag bags to the people who help organize any of the summit's all the way up to the paid staff. Because people get paid in the Python world, and they are funded by the PSF. And the PSF has actual staff members because one of the things with volunteering is that there are some tasks that you really cannot get a volunteer to do. And financial accounting for a nonprofit with how many millions going in and out is not something you dump on a volunteer. Yeah, paying people for that. professional work is absolutely a thing. But it's also a case of many hands, make light work and volunteering for a three hour session chairing thing and a couple of dozen people doing that just makes the entire thing runs so much smoother because it would be great if we could give Everyone compensation for their time. But we can also give a hearty handshake in a strong filled Thank you, which is for some people more than enough,
Unknown Speaker 5:10
Will Vincent 5:11
right. Yeah, well and it's and I mean for me it Python so I volunteered to do a conference check in and that's also just a great way to meet people for, for anyone if it's your first conference or you're new to a conference, you know, you're out there started meet people. So stuffing bags, you know, just there's always going to be a list of volunteering opportunities, which is as good a chance as anything to meet a lot of people. So encourage people to do that. Well, before we get more into conferences, you mentioned you've done a lot of different programming languages. Can you talk about the shift to Python and Django which is where you think you still are or talk about, you know, in a professional sense, how are these things used? Right? what's what's the vibe because everyone listening knows Python and Django but they probably also use different programming languages.
Katie McLaughlin 5:56
um, my first professional job job. I was working with Oracle Application Express. Oh wow. Which sounds very enterprise. And it is. But due to a series of events, I have been employed as a software developer in a not a junior not a senior but as a Oh, I can eventually learn the language and then get stuff done. So I was doing PowerShell for a while and then I was doing Ruby for a while. But the first conference talk I gave internationally was at Linux conference in Australia, and Linux conference. Australia is part of Linux, Australia and Linux, Australia runs other events including WordPress word camps, including Drupal con and including pi con Australia, which it was strongly suggested was a very good event that I should attend. Not having a lick of Python in me. I submitted a talk and he did good for Good for you. Yeah, I even like, somehow, and I'll need to check my own get commit history for this. I did submit and publish a package in Python before my first Python by reading the docs and working it out. And then some very marvelous people made sure that my code wasn't terrible and ported it to Python three for me. And if I did not know a lot back then, but I still don't know a lot, but I know a little bit more.
Unknown Speaker 7:30
You know, what you don't know.
Katie McLaughlin 7:32
Yeah, the community is really what's kept me in the Python world. And I've also given a keynote about how literally the community has kept me in the Python world because I deal with a whole bunch of brain chemistry issues. And the people that I've met in the Python community have kept me going and wonderful people, and I enjoy getting to see them a lot and making sure that I'm around is the thing that helps.
Will Vincent 8:01
Yeah. And so when when professionally Did you were you able to work with let's say, let's say Django, right, was there? Have you been able to do that for a while or that was I think, only Divya most recently.
Katie McLaughlin 8:14
Technically, I've never been employed to work with Django. I was a site reliability engineer. So I was paid to help keep the Django is running, but I have not been paid to professionally develop in Django. And yet, I am a now two years serving board member of the Django Software Foundation.
Will Vincent 8:35
Katie McLaughlin 8:37
that's also okay. Like, you don't have to be well, you don't have to be Carleton to be able to serve on these things to be able to help the community. I mean, every community needs a Carlton or 12. But yeah, not everyone has to be a Colton.
Will Vincent 8:53
Yeah, do you remember? So learning Django This is a question I like to ask people because you You know, most people, whether people have come from a previous web development background or not, tends to have a big impact on how they view Django. I'm curious for you, I assume you you've done some other web stuff before you touch Django for the first time.
Katie McLaughlin 9:12
Yeah, I mean, I'm, I have developed in Ruby on Rails before, I have been paid to do that. I've also done the odd Sinatra Apple flask app, here and there. But most of the way that I learned how to use Django, I mean, I still don't know a lot about it. But the bits that I had to learn was the stuff that helped me in a system administration sense. So literally, there is a Django app that's playing up, how do I go in and work out what's wrong, and oh, there's a Django shell. What is that? And what is an ORM? And how do I manipulate this and I gave a talk at Django con us 2018 where I described literally going from my Oracle And my SQL knowledge into how that maps to the ORM, which is a learning process that is absolutely valid, being able to use generic skills like SQL, and being able to apply that to domain specific information like the Django ORM. And knowing that there are similarities and how that maps to each other as a diving board into the great unknown.
Will Vincent 10:30
Exactly, yeah, we'll link to that. That talk because that, I would say that, yeah, the ORM the more time I spent with chango. That's the part that is the most interesting, but still a little mysterious. I feel like that in some ways, maybe has the greatest depth. I mean, even Tim Graham, who we had on, as a guest, said, that was the one area that he felt he didn't have mastery, though. You know, take that with a grain of salt when Tim says that. So another thing you've talked about is deployments which this is something Carlton is And talk about. So I'm curious, you know, you've done some talks, what are your What are your thoughts on Jenga deployments before I get mine?
Katie McLaughlin 11:06
So, I mean, I've worked at dvo, where their product is hosted Django as a service. I now work at Google, where there are many different ways that you can host your Django. I was accepted, but sadly could not attend Django con Europe where I was going to give a talk entitled, what is deployment anyway? So I haven't actually written that talk yet. But there is absolutely a stepping stone from I've completed the Django girls tutorial, too. So where do I host this now? And going from there? What is the best way to host production level ready and scalable Django and what is 12 factor and what is serverless? And why do I care? And because I have a very strong operations background, not just a development background, I'm able to Who taught both languages and be able to help convey the TLDR from the operations world for developers, because hopefully, in most situations, it's not just the developer having to do all this stuff. But when it is, you don't need to know the entire spectrum. You just need to know enough to get your job done. And hopefully, if, if that talk gets accepted anywhere, we will be able to update these show notes to link to it. Once I give it
Will Vincent 12:33
Katie McLaughlin 12:58
and that is absolutely Fine, you do not have to know everything. I hope that anyone listening to this doesn't have to be in a position where they are the One Stop Shop, that they have co workers and colleagues who have the specializations to help them with that. However, it is also very useful to know what those folks are doing.
And so this is DevOps.
Will Vincent 13:22
Now he's not there's a reason to exist, too. That's why he's talking like this. Yeah, times, I'll be out of my depth on some production thing. And it's like, well, you know, DevOps is a career for a reason.
Katie McLaughlin 13:32
Yeah. And I mean, speaking of DevOps, I've helped to run a DevOps days before,
as well as
I've been employed as a DevOps, which is an interesting job title, because clearly, DevOps is a plural.
I am not a single person. So obviously, I'm a DevOps.
Will Vincent 13:50
thought about that.
Unknown Speaker 13:52
Will Vincent 13:54
Well, that's like with with a lot of language. If you think too much about it, it doesn't make sense. One thing that I thought might be interesting to talk about is what you see as the similarities and differences in these various communities that you're so involved with. So Python, Australia, and then maybe even the DSF versus the PSF. Because, you know, even for me, I only have a vague sense of what these organizations are into. But you, you know, you have that experience. I'm curious, what, you know, not pros and cons, but just what are the sort of similarities and differences that you've noticed,
Katie McLaughlin 14:27
are all about providing a platform for people to share ideas. And for very successful conferences, it turns into a space that turns into a annual pilgrimage for the community, to join together and fly halfway across the world, to listen to people to share ideas to learn and it is absolutely something that a bunch of the languages that I've used don't really have, like, I'm not aware of a lot of such events like pi cons for the Java world, I'm sure they exist. I'm sure that there are many people who attend, like AWS cones, or all things open, where it's not language specific, but just the sheer scale of how many pi cons there are around the world. Yeah, means that there is nearly always one close to you, which is so important, especially for those who can't travel.
Will Vincent 15:36
Yeah, it's interesting because I always think I largely Think of how software is being used. So like, there's rails conference stuff, but maybe there's a Ruby comp,
Katie McLaughlin 15:45
Python, Ruby con in Australia, there's a Ruby con in New Zealand. There is has been a Ruby conf in Malaysia and that's just in my little neck of the woods. There are really comps around the place, but there are There's the pi con.org is a newly relaunched and revamped website from the PSF that lists all the PI cons including a calendar of all the PI cons. And just in June alone, there is 123456 events, and at least one Django girls event in Israel in London in the Czech Republic in the US, in Switzerland, in Colombia, just in June.
Will Vincent 16:38
Yeah, it is out there if you want to find it. Yeah. One thing I'm still again, trying to understand is where does where does the Python world see Django fitting in? Because my sense is that Django used to be more of a first first pillar of Python and now it's more of a utility, which is a good thing. I mean, certainly the excitement that Python was not around Django. was around data science and async. I'm curious what your take is on on that. What is you know, the Python world is so much broader than Django itself?
Katie McLaughlin 17:07
Isn't that a good thing?
Django has proven itself to be a very stable boring platform on which to work on, which is extremely good. Because having a putting all your eggs in one basket on a beta product and then having that disappear, is not good business practice.
Will Vincent 17:27
No, it is not a Yeah, or even one that's just transforming itself so much. I spent a year and a half working with Meteor j. s, which was fantastic and I think is still an active framework, but was changing more rapidly than our business business needs would have liked. At the time.
Katie McLaughlin 17:48
Yeah. And Django itself is so mature and the DSF is in a position where it can fund a person to help Be a full time or part time or I'm sure, correct me to people will correct me on it. But the DSF can now pay someone to work on Django, which is incredible in itself. The DSF has money to be able to put towards helping conferences happen towards ensuring that Django continues to exist. And the PSF does that at a larger scale, which is absolutely incredible. But there's still so much more that goes underfunded, unfunded volunteer effort. The PSF has a grants program, the DSF has a grants program, but those aren't at the scale that would provide a salary or 12 for professional software engineers to be able to fix all the problems in just one little bit of C Python, for example. Yeah, but that that's an entire other conversation and I highly suggest that you get Dr. Russell Keith McGee on board because he has a lot to say about funding. And if you can't, or if you have only 45 minutes, I strongly suggest you watch his keynote from pike on 2019 in Cleveland. It is a very good talk.
Will Vincent 19:14
It is Yeah, I was fortunate enough to be Yeah, there in the room for it.
Katie McLaughlin 19:18
I was in the front row. I was I was fangirling the entire time.
Will Vincent 19:23
Yeah, yeah. He's, uh, sometimes it's hard to make a technical talk interesting, but he never has that problem. He will link to that one. But he's given a lot of talks. You should check them all out. So actually, in speaking speaking of Russ, you've also done a number of open source stuff, including wiiware, which maybe you could speak a bit about that project and, and your involvement.
Katie McLaughlin 19:44
Yeah, so I'd my very first pike on Australia, I stuck around for the sprints, the development sprints, which normally tack on to the end of a pie con where it's a case of everyone has traveled anyway, stay an extra day or two and just jam on things. Yeah, and muck around with projects or have an actual development sprint and work on a project with people that you may not have met before, or with the rest of your open source team. I happen to be at these development sprints and ended up sitting next to Russell. And he was mucking around with this thing. And I'm asking, what was that? Oh, I'm trying to get Python to run in the browser. I'm like, Huh, can I try that? Well, no, I haven't got it up on GitHub yet. I'm like, well, could you do that? And then I can try it. And turns out his code wasn't exactly installable at that point, but I was able to help debug that because anyone knows it's like it works on my machine is not a good unit test.
Will Vincent 20:51
No, unfortunately not.
Katie McLaughlin 20:53
But from there after that Python in
Australia in Brisbane in 2015 it kept in touch with Russell. And I helped out a bit with beware. And I ended up seeing him again at Django con Europe in Budapest where I'd received the first challenge coin.
Will Vincent 21:13
So, what is what is that what is what is the challenge coin?
Katie McLaughlin 21:16
If you contribute to the beware project in any way, it doesn't have to be code. You get a yak shaver challenge coin. It is a one and a half inch, very hefty coin made of nickel, which has the beware logo on one side and a yak on the other. And this has been an amazing factor in getting people interested in their project because people like shiny and people will contribute to your project for shiny, but we don't just have one coin we have a second one. If you help two or more people earn their Yak shave a coin, you get a yak herder coin. Because we also like our puns and it's Same form factor of coin. It's just that the Yak on the other side is on a wonderful green grass on a beautiful clear, blue sky day. I'm sure that we will also link pictures to these particular beauties in the show notes. But that's part of Russell's attempt to get engagement, and also a use case of some of our donations and funding support. So a bunch of those pressings were done directly by folks like Travis CI, and maxcdn and GitHub are giving us money to make queens but, but a pressing of coins is not a developer salary, sadly, right.
Now, it's it is a two Yeah,
it is something and the logarithmic factor in which this has to scale in order to support full time development is math. And well
Will Vincent 22:59
or maybe not Or do you think it's maybe. And this is always the issue of if there is a company or a corporate sponsor who uses it, and is able to make a business out of it, and then from that can contribute resources? I mean, that would help. But then, of course, let's pick some benefactor, they would inevitably want it to be custom to them, right? That seems to be the sort of tension whenever you have successful companies using open source software's. They, they want to use it, but they inevitably want something that may not align with what the broader community directly wants.
Katie McLaughlin 23:33
Exactly. And to take it away from beware for a moment and go to say, another large bit of software that is production ready and stable that has helped many businesses make many hundreds of millions of dollars. Django for example, the amount
Will Vincent 23:48
of companies on there and
Katie McLaughlin 23:51
there is many, many hundreds of millions of dollars are being made off the backs of volunteers sweat and there is new Not enough, not nearly enough paying it back to that. And I totally get why it's, it's, it's like this is open source software, it's got to be free, right. But there is a point where you need to start thinking about the sustainability of what you are using to literally make your money. And if you don't secure what you're using, you are being negligent, you are not ensuring that the product that you use that you depend your entire platform on continues to run if you do not ensure that that continues to exist, then you have a major liability. So it's not just a case of kicking back a few hundred bucks to a project. It's a case of being a actual sponsor about giving back in a financial significant way. That doesn't just serve your interests, but the interests of the project in general. And I understand this is really not the best thing to be saying when I work for a company that is as big as Google. But it's one of those social things where free and open source software is so new, and we're still working out what it all means. And we are we are seeing now the retirement of some of the FF founding fathers in this space, like with gatos stepping down, and it's incredible and amazing and fantastic, but also brutal at the same time, and it's, yeah, we live in interesting times.
Will Vincent 25:44
Well, and I think part of the reason for this show is to talk about the the people behind behind this software because I think it is possible and easy to think it's just it just exists on GitHub and things happen but it's really not my concern even if you are using a professional setting when And, in fact, you know, there are these volunteers, there are people who you know, get burnt out, there are people who get tired and move on. And I mean, one thing I've seen, it's interesting, the different funding approaches out there mean for example, at pi Khan, there's a company tide lift, actually based in Boston where I am that is trying to do like a subscription for open source stuff. There's even one of my one of my friends, he works in the PHP world. And Laravel is interesting, because that's a web framework that is for profit, largely run by one person. And that person, for example, sells a $99 I believe, SAS off the shelf, you know, a third party app. And that alone contributes greatly to the community. So it's, I hope that it's a business problem, not not like a culture or social one to find ways to make open source projects like Django sustainable, but it is interesting seeing what people other people out there are doing. I mean, for example, Django, I think last fall for the first time had a sponsorship with them, too. brains were for a month there was some donations. Yeah, something needs to be done. But it's it's tricky to balance, as you said, the nonprofit and community aspect with finding a way to get the funding that the project needs to go on. I've just listed a whole bunch of things. I wonder if any of those those that I mentioned, to you seem interesting, or if you've heard of other approaches, that, you know, make it make accommodation easier. And also, like, Oh, we have to do that for the companies that are using and relying on this software, specifically Django.
Katie McLaughlin 27:37
So the WordPress community does this extraordinarily well. There are multiple people who can survive as an income of WordPress plugins, paid WordPress plugins. Automatic is an entire company based office. WordPress have their own hosting models. There is a lot have money going in and out of WordPress. And even though it might seem as someone who has always been able to just download packages for free, maybe if you have to have a subscription, which makes sure that your particular package gets patched. Maybe that's not a bad thing.
Will Vincent 28:21
Right? There'll be a tide lift and others are trying to do.
Katie McLaughlin 28:24
Yeah, but I mean, there are like, there's get store there's, there was get tip, there is so many people trying to spin up these sorts of things. But it's always a case of where software developers we're not economists. There is
Will Vincent 28:44
Yeah, that's so true.
Unknown Speaker 28:46
Will Vincent 28:47
yeah. Well, it does take some some of the just the magic and the the goodwill of the community away when you put the business hat on. And I mean for me because I I came from the business world before I got into programming. So the idea of Stack Overflow That certainly does not exist in the business world. I mean, there's just there's no way that someone would freely help you with something. So that's one of the things I love about engineering. And yeah, you don't want that to go away. I mean, with Python two now being deprecated in 2020, I believe it's red hat is going to offer some sort of support for it, but you have to pay for it. The idea being that you're a large company. Do you know more specifics on that?
Katie McLaughlin 29:23
Well, can I say, Well, can
Will Vincent 29:26
we don't have to get into anything?
Katie McLaughlin 29:28
No, no, it's um, community support for Python two is ending and Python two will not be community maintained post January 2020. The reality is that enterprises cannot meet that deadline. So there are a number of providers who for a fee will continue to make sure that Python two at least remains with security patches. However, that is a big risk because when the entire community is no longer looking at Python two No one's going to be trying to find security vulnerabilities anymore. No one is going to be pushing it as hard as they once did. So, we're not going to know, if things are still broken. It would be a very, very good idea that if you have any Python two code running that you do migrated to Python three, preferably before January 2020. Yep.
Yeah, now that's tree is very good. Now,
Python three is marvelous. Python three supports emoji.
Please migrate to Python three,
Will Vincent 30:33
what and to your earlier point about WordPress, we had Tom Dyson on who's involved with the wagtail project. And you know, something about Django traditionally is it seems it's it wasn't used as much for agencies in the way that certainly WordPress is. But with wagtail. That's, I think jank wagtail is the second most popular third party project now. That really is becoming a use case. And so that might be a way that it's easier for Django to learn Look at, I guess some of these WordPress monetization techniques those as we as you've said, there's a danger there and losing the magic of open source.
Katie McLaughlin 31:09
One of the funding models that can work well for some demographics is we will give you the code. You can spin it up yourself if you have the resources, but if you don't,
here, pay us and we'll do it for you.
Will Vincent 31:25
We'll be an example. I mean, an example I mean beyond WordPress that Django could look to for that because I think with Python, they're starting to be some of this there's I mean, Python anywhere has this rapid has this either other good examples out there of in the Python world of people doing hosted options to be i know i i don't have personal experience with Divya, which is why it doesn't come top of mind to me, but yet,
Katie McLaughlin 31:49
who has their own opinionated Django called Aldrin, and you can find it on the GitHub repo and you can host it yourself. Or you could pay them to host it for you. And then you can just focus on the code. You can also use Django, CMS and hosted all yourself, or you could pay them, and they will host it for you. And then you don't have to worry about having to do all that.
Will Vincent 32:16
Which sounds nice. Yeah. Yeah. So how does that? I haven't heard of that. That altered Django. How did how does that
Unknown Speaker 32:25
Will Vincent 32:26
old trend? Oh, then,
Katie McLaughlin 32:28
as in buzzle, dran. Oh, okay. Sorry. I should say django CMS. Older and Django is their codename for their opinionated Django, which works in their setup. But they made django CMS and they will host django CMS for you with a you can go on to a URL that I can't remember right now. And it will spin up a copy of django CMS for you give you 15 minutes on it and if like what you see you can click continue and pay for that particular instance to continue for you.
Will Vincent 33:06
Oh, interesting. Yeah. Yeah.
Katie McLaughlin 33:09
But django CMS is also a free and open source project. But for a small fee, and probably cheaper than what it would cost you in engineering hours, they will host it for you.
Will Vincent 33:22
Yeah. And so that seems very much geared towards agencies. But is that incorrect? They're also hard. Or maybe startups as well, larger companies, because that's the, at least my perception is at a certain point. People need to go custom in the past, but certainly, well, you're you're at Google Now. I mean, Google. That's not the case. If you use Google,
Katie McLaughlin 33:43
I'm the Gengar CMS and dvo product. If you go onto their web page.
There's a really cool
they rebranded plus
agency agencies can use it which with it, which is a case of I know how to use it. Anger, CMS, I just want a new one.
Unknown Speaker 34:02
Katie McLaughlin 34:02
scales to enterprise because they do have expert DevOps people behind the scenes who can make sure that your stuff will scale. And it can also just be for the developer, because it comes pre configured with Django, CMS or wagtail. Oscar, out of the box. And so if you don't want to have to worry about the hosting, you can pay someone to host it for you. However, not everyone has that as a valid business model.
Will Vincent 34:35
Yes. Well said, well, personally speaking, I don't like doing DevOps. So I'm happy to pay a bit of money and not have to deal with this myself. But it is. Not everyone feels that way. Are there. Things we haven't talked about that you want to cover?
Katie McLaughlin 34:51
Python Australia is happening
in August in Sydney. Tickets will be on sale at the beginning of June and If you happen to like the thought of coming to Australia, perhaps convince your boss that you should learn more about Django and Python by going to a conference in Australia. The weather's nice. And there are no droppers in the CBD.
Will Vincent 35:15
And there's, and there was one day of that conference will be dedicated to Django. Is it? Is that is that correct?
Katie McLaughlin 35:21
Yes. So Django con Australia is a legit Django con. But it happens to be a one day single track event, which we've rolled up into pike on Australia, your ticket will cover access to both events, and also any other talk at the conference.
Will Vincent 35:39
Great. Awesome. Well, we will link to that, of course. Thank you so much for coming on the show and sharing your experiences in the Python and Django worlds.
Katie McLaughlin 35:47
No worries. Thank you for having me.
Will Vincent 35:49
All right. Bye
Katie McLaughlin 35:50