Django Chat

Wagtail, React, & Gatsby - Dawn Wages

Episode Summary

Dawn is a Wagtail Core Member and regular Django/Python conference speaker. We discuss being community-taught, working with React and Gatsby, and making the transition to full-time consulting work.

Episode Notes

Support the Show

This podcast is a labor of love and does not have any ads or sponsors. To support the show, please consider recommending a book from LearnDjango.com, signing up for the free weekly Django News newsletter, or learning more about Button a simpler deployment story for Django.

Episode Transcription

Carlton Gibson 0:06
Hi, welcome to Django Chat a podcast on the Django web framework. I'm Carlton Gibson joined by Will Vincent. Hello Will.

Will Vincent 0:12
Hi, Carlton.

Carlton Gibson 0:14
And today we got dawn wages with us. Hello, Dawn. Thank you for coming on the show.

Dawn Wages 0:17
Hi.

I just wanted to say Am I the first person to make the Fresh Prince of Bel Air reference

Carlton Gibson 0:24
here? Oh, yeah. on this show. I mean, I haven't heard

Dawn Wages 0:29
I'm just sitting in Philadelphia talking too Will and Carlton and I had to make it.

Will Vincent 0:35
Welcome. We're very excited to do a number of things. wagtail, React Django, Django, girls, your own journey. So maybe we can start with just briefly about yourself and how you got into programming and Django in particular?

Dawn Wages 0:54
Yeah, sure. Okay, so. So I started out with a business degree and thought I was going to go into business analytics. After graduating from North Carolina. I graduated, I came up to Philly, and got involved with the Philly Python users groups. This is also after a failed attempt at going into finance. Really glad I didn't make that work. So the Philly Python users group is great. also happened to be that year, Django con was in Philadelphia, and I attended Django girls, but not much else of the conference, but just really got like a great energy. I was hanging out in Wharton. And Tim Allen was just one of the main people leading the group and, you know, also is a part of the entertainment committee or he's great. He's just, uh, let's go find some good food. So it was really, really nice welcoming me. And I just kept going back. And so I've been to 1617 1819 and 20. Yeah, and yeah. And so then since then, I've been really getting in, I consider myself community taught. And so I can speak more about my consulting journey as well. But it took me a couple of years to get started and get paid to be a Django developer, and then took another year. So still before I could do it full time.

Carlton Gibson 2:19
Okay. I mean, so you kind of self taught as a programmer, right? Yeah. background, and,

Dawn Wages 2:26
yeah, I've never, I do not have a computer science degree. And I did a boot camp in JavaScript that I have complicated feelings about boot camps, myself, but I don't really talk about it much. Because I have complicated feelings about them myself. Yeah, yeah. self taught.

Carlton Gibson 2:45
Yeah. Cool. I mean, it's something we always like to pick up, because some people go through the CS route. And then, you know, I didn't do I did philosophy. And then it's like, right, I'm gonna learn programming and say, you know, I'm just not working out the basics. And people are like you, you've got, you've got to learn algorithms.

Dawn Wages 3:05
Exactly. Yes, yes. We and I don't know if this will be full circle. But I also have, I've gotten to the place where I started learning and I was very pragmatic about the things that I would learn. I love Django, because you're a, the documentation is great. Getting started is really easy. I would like to say that being becoming an intermediate, Django not is a little difficult. And so more recent resources are coming out literally every day. So it's really, really awesome to see it's such a buzzing community. And then, so it's just I wanted to be able to make money very quickly. I mean, I did not come with a safety net, I do not have a nest egg or a family with a with a with a basement for me to just code and passionately. So that was really helpful. And I was able to feel like really impactful and build something really quick. And that's also something designed by the Django girls tutorial. So I kind of modeled that. And then I've gotten circle went back around and part of tre shake honors. Python tricks, are Python bytes.

Will Vincent 4:15
Morsels. Morsel I think, right?

Dawn Wages 4:18
Yes, Python morsels want to play. It is very, very good. I really like their emails. And I've been doing some more Python things and some JavaScript tricks and things like that trying to get, you know, into the deep end. It's fun.

Will Vincent 4:33
Yeah, for sure. Well, I think one of the things I think about is that Django is you need a little bit of Python, but I find myself doing very little actual Python when I'm doing Django, so having something like tres resource for others. It's, it's a sort of a small amount of Python that I actually use. So I often find resources to sharpen up my Python because I feel like I don't use raw Python that much. Actually, my Dealing with big data sets or doing something separate from Django itself.

Dawn Wages 5:04
100%. I mean, I've, I've heard from other people. And I agree, as I'm learning what pythonic means that Django is written incredibly pythonic Lee, and I really appreciate that. And you know, I'd love to entertain conversations about it, too. And then, yeah, when I first was applying, I would say, Yeah, well, I'm not I don't know, if I'm a Python Dev, I am a Django Dev. And I've gotten a little bit more often than that to just also with the ability to learn and just to navigate those kind of conversations, knowing what I don't know. And being comfortable saying that I don't know something truly makes people more confident and what I can say I do know something. A little bit of an evolution trying to grow.

Carlton Gibson 5:48
For me that that that's the journey, though, right? Like, you know, why programmer because every day, there's like a new experience a new. It's, you know, the exact opposite of standing on a production line.

Dawn Wages 6:01
Yeah, I mean, that's the fun part, making things building things watching it work. I had a friend who wants to go now. That doesn't sound like fun. Are you gonna do dataviz, too? No, it doesn't sound fun. So I agree. That definitely scratches the itch for me.

Will Vincent 6:18
Can you talk about so was Django your first web framework that you dove into?

Dawn Wages 6:23
Yeah, it was a, if we really want to be specific, I started coding with MySpace. But I came back around. And after they said, Jake, we got to stop use. I started learning jQuery when it came out. And then we had to stop using it by the time like, I mean, it's everywhere. Still. But yes. That's where my circle was,

Carlton Gibson 6:43
you just about get the hang of it. And then everyone's like, No, no, no.

Will Vincent 6:47
Right. So I was gonna, I was gonna ask, because so Django is my first web framework. And it was only when I was on my third or fourth different framework that I started to have a big picture sense of how frameworks work. So a lot of my personal difficulty with Django was just learning how web stuff works. And so I assigned it to Django initially, and now I sort of realized, you know, Django can only do so much, but you sort of need to come at it from a bunch of different angles before, you can just have a big picture view of what you need for a website, and then what a web framework can do. So I wonder how was similar journey for you?

Dawn Wages 7:25
It was interesting, I didn't really even understand what like the server was or like, how it I mean, the Django girls will go through it. And they've also expanded some of their documentation. But I didn't understand what like gunicorn or nginx would do and like how that all kind of worked, and what is Redis? And how, and so I did feel like I was learning almost backwards, like, what does this package do in Django versus like, here's this area of web development or, you know, web engineering and like, now fill in backwards with tools that may cover some of those areas for you. Yeah, totally. I totally agree with that.

Will Vincent 8:08
Well, I think the way you learned is the way most people learn. I mean, because part of it, I think about this as a as an educator is, you know, any one of us could tell someone, okay, here's how a web service works, and lists, you know, g unicorn and all sorts of phrases. But I feel like unless someone has struggled and gotten stuck, that's all just gonna go in one ear and out the other. So I always try to wonder, you know, show and tell how do you balance, you know, and that was one hand, you want people to actually be able to build something. But if you hit them with everything, it's just going to overwhelm them. I mean, even nginx, like Carlton's pretty Pro with that I have a very, very basic knowledge of nginx. Because usually I'm using a platform as a service. And I've I've done it a couple times. It was fun, but I just, you know, I could figure it out, I guess, but I certainly don't do it all the time.

Carlton Gibson 9:01
In a way it's, it's kind of backwards. It's like the, the we're solving the web problem, or nginx is the web server or Apache, you know, is the web server. And then Django is a kind of plugin for that. But we don't learn it that way. We learn Django and then we're like, oh, and I need to, you know, do and we so we try and do all these things in Django, which maybe the web server is better at. But we don't let you know. How do you how do you learn this other than time on the coalface? You know, familiarity?

Dawn Wages 9:29
Yes. This chair.

Will Vincent 9:30
Was that phrase, time on the coalface.

Carlton Gibson 9:33
Yeah, like so. You're the you're the face, the face in the mind where you dig dig the coal mining, right? Okay. It's a mining reference. Okay. All

Will Vincent 9:44
right. Well, maybe we can dive into I'll just pick one of the things we want to talk about. So react. So you have some talks and you've you've done a bunch with Django and react, can you talk about how what maybe talk about react whereas react that these days because as another JavaScript person. Yeah, there's view there's Angular, what is your sense of, you know, react? They're still dealing with hooks? Yes. What's the state of reality?

Dawn Wages 10:09
Yes. So I would not be the definitive source I would direct you to right now. And many, many podcasts that are already going on that are, like continuing all the time, I learned a lot from those. And I tried to stay more solidified in the Django community. And I like to be a JavaScript person for, for Python people. One of my friends, john underlay is releasing a series called JavaScript for Python developers. I think it's in the beta phase right now. But he is accepting emails and newsletters, and he's really, really bright. And one of the people who really brought me in to move into Django and in very formal mentorship way as well. But back to react and the things that I do. I enjoy it, it does seem like the community and what is the best practice and the newest waves change very, very frequently. But I do think that hooks are really fun. And it's more declarative and easy to easier to understand what's happening. And when I switch back and forth between them, because I'll do it within the day I try to, I may do it within the day. It's whether or not I'm thinking in the mind space of Django models, or truly in a stateful component. And when I think about like, how there are people going through a user journey that are going to experience several states in a row, and is this going to go step one, step two, step three, maybe not even that cleanly, but if I can put my mind in like a linear path, or like a journey, then I can get my brain into the mode of working in react when it's just very different when you're doing Django. It's very focused on the models and the information you're serving, or the information you're capturing. What are you going to do with that, and then transpose it and move it somewhere else?

Will Vincent 12:05
So yeah, it's a little bit of a mind doing well, that that's you Carlton, right. You're doing that with swift these days for

Carlton Gibson 12:11
your man? Well, yeah, I mean, it's the same problem, right? So if you've got a back end, which is Django powered, and you're consuming it with a rich JavaScript client, like react, where it was react based, or, you know, some native app beats swift or something else, then this, the app has state where the web server where the Django app kind of doesn't, right? It's it's a series of totally disconnected requests to the to the Django app, but then you've got to string them together Exactly. As you're saying, this user journey or something. What I wanted to ask you about dawn was like, every month, it seems that comes up on Django developers? Can we have a better story for front end integration in Django? Every month, we struggle with it. Well, you know, what would that integration look like? So we've got contracts, static files, and click Start. And that gets it all in the right place, but you're working there every day? Um, how do you deal with the integration with Django and react?

Dawn Wages 13:09
Yeah, so um, I bustle with it myself. So most of the projects, so I am working with it every day, but I don't know if I'm setting up projects myself every day. So I can also speak a little bit more to my consulting journey as well. So I really enjoy being in a team augmentation role. I do work on some proof of concepts and times. Solo, I have deployed solid, Django and you know, normal fluff, JavaScript, HTML, CSS on the front end, myself, and I do that with rubbishy consulting. But I also spent a lot of time with to rock software consulting agency and in the chapel hill area, really awesome humans. And I met them through a very similar story of being community taught, and I met them through through the Django sphere. And so I mean, I don't know if I would really find a, find a could suggest or explain a solution that really works best for me. I'm looking to continue to refine and create a boilerplate code for myself. And I find some out here but it feels so proprietary these days and that it's not everyone has a little bit different flavor and no one is no one knows if they're doing it right. And everyone's too scared to say this. They're doing what they're doing. Exactly.

Will Vincent 14:36
That's exactly it. I was gonna say I think also as a consultant, you often join projects midway so you don't have the luxury or the burden of setting it up from scratch. And most people don't actually I know, Carlton, and I often talk about a Greenfield project, but that's not the reality for most programmers. But yes, Gatsby Gatsby, I know you've your personal site is written in that and you have a talk on or two talks on Yeah, yeah.

Dawn Wages 15:01
So full circle though it's so Gatsby is. So it's like a static site generator plus so you're writing it and react it distills down and then rehydrates into a progressive web app is still is, has a lot of the progressive feelings and stateful components and whatnot, when you're doing it right now, I'm not quite an expert in Gatsby. But I do see a similarity in the wagtail community. And in the Gatsby community is very, very developer focused, it's focused on the developer experience, and does the kind of the plugin architecture, very accessibility forward. wagtail frequently has accessibility sprints, and there's a wagtail accessibility package out there. available if you're if people are interested in accessibility in their in their frameworks. And so that is one of the ways in experimenting with that. Stack has been really interesting. It comes with graph QL. And so then you're using Django rest framework with graph qL on top, and it does feel like there's two engines in a car. But it is cool how a graph qL will just kind of catch things for you. You describe what you want. And then I'll say Here it is. Sort of, and I say sort of so often, because that's, you know, syntactical sugar,

Will Vincent 16:30
we say it depends. It depends.

Dawn Wages 16:33
Yeah.

Carlton Gibson 16:35
So we should cut it into black today, because you're you're in the core team. For wagtail. Right. Yeah. Part of the whitetail community. So how did you tell tell us how you got involved and how that came to pass.

Dawn Wages 16:49
So Tom is truly just one of the nicest people on the planet. And anywhere he goes, I think he makes friends. So Tom Dyson in 2017, was giving a talk at Django con, a tutorial, I think, and I did that I, you know, interacted with him through several events, and then gave a talk at a Django space in Philadelphia. It was my first talk ever. So that was, you know, it's very cute. I did. I described the landscape or the types of people who are involved in themselves in the open source community by archetypes of Land Before Time. Instead, there was like Ducky, all of that. I might even do a one off and make it a little bit more sophisticated. With some actual number of numbers back there, I have a little bit more maintenance maintainer, I do air quotes, this is a podcast maintained. But being on the core team really does make me feel close to the action is really exciting. We meet they meet every week, but us time is every other week. And I catch those. And we do have like several suggested responsibilities. But it's really just a bunch of people who spend as much time as they can working on and contributing to wagtail. And it's really invigorating, really nice.

Carlton Gibson 18:16
Fantastic. Fantastic. And so for the list of What's New in wagtail, at the moment, what's the state of play with whitetail woods? What are the exciting new things?

Dawn Wages 18:26
Yeah, we just hit 10 k stars, which is huge. We had a couple tweets about it. So in my notes here, it says yes. Okay, so we are in the top 1900 repositories of 15 million on GitHub. This is just really exciting. We just released the two point 12 release candidate. And that's still pending. I don't know when two point 12 is like, stable is getting dropped, but it does support python 3.9. And there's other lists of things that are associated with that list. With that release. The documentation sprint is coming up. And so that's February 4, and fifth, I want to make sure people join that when if they're interested.

Carlton Gibson 19:09
Okay. So what could I how would I find out about that if I wanted to go on?

Dawn Wages 19:14
Yeah. It's on the wagtail blog. wagtail Dotto, backslash blog. And one of the most recent posts is the documentation sprint 2021. And there's a signup form and everything.

Will Vincent 19:28
Now there's also packages, there's a dedicated packages section to wagtail. Right. That's a pretty recent thing.

Dawn Wages 19:36
Yes. Yeah. So there's a whackos packages. And then also they are now both in Django packages as well. I love the Django packages interface and the way that it's comparative and has all the lists. I mean, it's really, really great. So um, but so all of the pack wagtail packages are also in Django packages and you can also do wagtail.io backslash packages.

Carlton Gibson 20:00
I think it's a big thing that have how wagtails Come on. It's got its own packages ecosystem.

Will Vincent 20:04
Mm hmm. Yeah, it's like two layers of turtles or something.

Carlton Gibson 20:09
You know, it's like, oh, yeah. What what's right, obviously, is django CMS. No, it's this whole thing on its own. It's like, you know, gets built with Django, but it's got its own life. It's got its own ecosystem.

Dawn Wages 20:21
Yeah, it's really exciting. So we have like, several partners, I mean, work with Motley Fool, I know a lot. Gosh, I'm gonna do a disservice to to the people that we work with. But they're big organizations that are propelling some of these wagtail features in it's been really exciting to be witness to it. I haven't done nearly as much code contribution as I'd like to with wagtail. But that's definitely in my 2020 goal. 2021 goals.

Will Vincent 20:51
Yeah, well, community counts, too. I mean,

Dawn Wages 20:54
It does. Thank you.

Will Vincent 20:58
Yeah, this weekend? wagtail. Yes, that's, that's that's the week. Yeah, the newsletter, right, I think. Yeah. And I see you. I've got Django Django news on there, too, that Jeff, Jeff and I run, which also sometimes has stuff.

Dawn Wages 21:10
Yes. Oh, wait, I, I see Jeff push posting about it all the time. And I keep forgetting that this is yes, of course. You do that as well.

Will Vincent 21:21
Yeah, yeah, everywhere.

Dawn Wages 21:24
But yeah, if you use the hashtag this week, in wagtail, it works for on Twitter and other channels. And there's also a channel in the slack in the wagtail, slack for this week in wagtail.

Carlton Gibson 21:36
But I wanted to ask them, so you, you're busy consulting, you know, freelancing, you know, doing your work. And then you're also contributing to open source. And it's not like you've got bucketloads of free time, and you know, a cushy bank role to sit on while you're doing it. So how do you find time for contributing to open source? Because this is the big thing? Like, how is it like open source can really help boost your profile? But how would you possibly justify that time? If you're working? And you've got other commitments? And how do you how do you find that time? How do you find the time to contribute to open source?

Dawn Wages 22:13
Things I think about all the time, like top of the list I, I have, I'm a huge note taker, and a lot of times I write out all of my goals. And as as they converge on things that have some certain similarities, I'll use. I'll try to like kind of group them together. I have, I have a another side project is more about open source and ethical, ethical source licenses and contributing good code and code to a altruistic future. And I am building that and Gatsby and wagtail. Because these are the the tools of other parts of my life. And then also hope to add features that I know that may I need a little love in the wagtail community as well. And I really just tried to like, converge the some of these ideas. For example, there's a potential client that might want an e commerce solution. And I've been looking at the e commerce packages that are available with wagtail. And some of them need love. Some of them have a lot of work put into them. I'm completely new to this to the e commerce wagtail landscape. So let's check it out and see what I can contribute where it is, where does it need some help? And if you're searching at the top of the funnel, as you're like planning some of your stock and your things, sometimes you can kill two birds with one stone, for example.

Carlton Gibson 23:44
Yeah, right. Okay. Try and work it into the, to the work.

Dawn Wages 23:47
That's the plan, hopefully. I mean, I think there's a lot of people doing really great things out there that are already in sync with things that they can contribute.

Will Vincent 23:55
Yeah. Okay. I'm consulting I, we have in the notes. Can you talk about making the leap to consulting because because I believe you were you started doing that, while you were working full time? What was that transition? transition, like because that's, you know, one that I think a lot of people go through, but it's a, it's a hard one.

Dawn Wages 24:11
I, I would not recommend my transition, it was incredibly easy. I had been consulting for a bout a year, at the same time as working full time as a project manager at Lenovo. And so I'm, I'm probably doing 6070 hours a week, maybe 4050 with my full time, and it was just exhausting. And so I just really wanted to get into code and code every day and most of the day, and so at the end of Lenovo, I was moved over to their UX team and I was working in react but you know, Miss Django and just didn't feel like I was learning fast enough. I was just getting anxious. And so I just loved and it was, I mean, I really I enjoyed Lenovo. But I was just like, Okay, I guess I'm just gonna, I think I'm just gonna leave them take my savings and just go and try. And then I'm going to do it in Europe. I'm going to do it in Europe with my dog. And I did it. And it was it was a cool year.

Will Vincent 25:19
I saw you had a blog post on this. Was it Amsterdam? I forget were you in the same place mainly? Or did you bounce around?

Dawn Wages 25:30
I did two places, mainly, I did four months in Amsterdam, and three months in The Hague, and three months in London. And so it wasn't, it wasn't quite a full year, I came back. And I would love to write another post about like, why I came back, it wasn't quite a couldn't hack it, but it was being 2000 miles away from all of the people that I care about. And then not having anything that tied me to a particular place, like a job not being being able to really develop a routine quite yet. And then not really knowing where I was going to settle roots. So it was either Philadelphia or Berlin, next after London, because Brexit was about to happen, it couldn't stay. And so and we didn't know what it was, I was only there like just kind of popping around, it was definitely within my like, US visa to be able to stay for six months and only stay for three. But we didn't know what what Brexit was gonna do so then. But I chose Philadelphia, because I really missed a sense of community and Miss Europe still all the time. So there's definitely a chance that I would go back for the right set of circumstances, but it would be I'd like something a little bit more grounding, that would just keep me a little more sane.

Will Vincent 26:49
Yeah, that sounds right. Speaking of community and east of here, so Django con Africa, you were an organized organizer, the inaugural one was going to be last year. Can you talk a little bit a little bit about that conference and organizing it? And all? Right now there's currently the US, Europe and Australia. Yes, there's gonna be the fourth major Django con.

Dawn Wages 27:13
Yep. So I've helped small ways organized for the US one, I've helped organized and more substantial way in 2019 for Django, con Europe and Copenhagen. And we I'm really just taking, listening to what they need. And for for just helping taking directions. I'm not much of a leadership position in this one. But I'm going to be in the sponsorship team for Django, con Africa, and it is happening, and I got confirmation of that the other day, but we're going to start moving a little faster in the beginning of this year. That's exciting. That's going to be in Ethiopia. And just just really excited. So I've never been to the continent of Africa before. So that'll be really nice.

Carlton Gibson 28:01
To put and wait, when is it? Sorry? I mean, you say it's going it's going ahead?

Dawn Wages 28:07
It's It was supposed to be November of last year, and I believe it should still be in that same timeframe. It'll definitely towards the end of the on us.

Carlton Gibson 28:16
Okay, so can I come back to? You said you, you you're building a project, you didn't talk about the project, but you said you were building on wagtail? And Gatsby, so is that are you using the sort of wagtail in the headless mode?

Will Vincent 28:32
Let's get that.

Carlton Gibson 28:33
What what what on earth is going on there? Tell us about that. Because like, I've heard this thrown away round, I may have even seen like a workshop going on in a room that I didn't I wasn't in but like, what is what is a headless CMS? And then what does wagtail bring to the party?

Dawn Wages 28:49
Right, right. So um wagtail in particular, I love that leans into the the CMS likeness for those where it relies a lot on page hierarchy and in in patterns that are Come on common with having another user come in create their own pages, very heavily, it leads into that Django does it very well. wagtail just wants to be more opinionated about it and helpful. And so headless wagtail really allows for other integration quickly. And Caleb tolian on with learn wagtail comm has so many resources on it, it's really, really helpful. And so then I am experimenting with having Gatsby on top. It's currently not in production. So what I have up now and at the root.com, excuse me at the root dot dev is just Gatsby right now. And I'm using netlify CMS but that's being changed out very quickly because I'm not I'm not happy with that solution. But it does deploy very quickly into Just get something out. Fast is great. Why

Will Vincent 30:03
Gatsby versus react? What is Gatsby give you that react doesn't right? Or how do you think about combat? Because you could combine either with headless wagtail?

Dawn Wages 30:12
Yeah. So I have the way that I've justified the investment in this. I mean, I do also like new shiny things. So then I tried to justify my addiction to shiny new things. So I have about two

Will Vincent 30:26
friends with Jeff.

Dawn Wages 30:28
Yeah, I have two speeds. In my in what's really stable is when I'm I'm team augmenting, and it's been mostly at this point is probably 70% of my time with that. But usually, it's like 5050. And then the other 50%, I'm doing kind of smaller projects, or I'm able to, I also have so many ideas. So I can buy a domain and just like push it out really quickly. And I love that experience. But also being a developer, I want to be able to, to upgrade as much as possible. I don't want to be at the behest of somewhere else like a square space or things like that. So I enjoy the fact that Gatsby has starters. And it can get my brain moving on what's possible gives me somewhere to truly start with wagtail starts up very, very quickly. But like hi is a developer's tool. And it's not made to be a codeless solution. And, and then hooking those together, bleeding into those developer experiences and trying to make something scalable, scalable, but deploy very quickly is my goal. And I feel like we're getting really close there. There's a wagtail netlify solution package that just was released recently. I'm hoping to include that. And kind of just figure out what this rapid prototyping or this rapid development kind of thing could look like. It's more of a experiment, and we'll see how it goes. Okay,

Will Vincent 32:05
so you mentioned starters, I had to Google that, but it looks like there's like 500, sort of pre built templates just for Gatsby with common, which is, you know, it'd be great if there was that for Django? I mean, there sort of is, but it's not as unified, I guess.

Dawn Wages 32:21
Yeah. Yep. It's, it's really, really cool. And it curates a gallery of a lot of different plugins and things that are already in existence with Gatsby. So that makes it fun.

Will Vincent 32:31
I know, Carlos, I know you have a question. I want to ask one. So if you have a, how do you deploy a wagtail Gatsby site? Do you have Gatsby on netlify and wagtail? On Heroku? Or what do you use for the API part?

Dawn Wages 32:45
Currently, I'm using Digital Ocean. And with my deploy, I couldn't get the wagtail netlify to work exactly, yet. But that's a feature plan that I mean, there's a netlify wagtail excuse me, there's a netlify Gatsby and there's definitely and there's netlify wagtail. And so one of my future plans is to have a starter and a deploy in a boilerplate code to be able to explore doing that regularly. And there's a little bit on it, but not much out there.

Will Vincent 33:19
Yeah, I see. Tom Dyson has has this wagtail netlify package. I guess, also look at that. Where's the database? Right? Because netlify? Do they do database hosted databases now?

Dawn Wages 33:32
Um, I think what they would do is they serve it as a static site.

Carlton Gibson 33:36
Yeah. But I mean, isn't there a thing as well, there's a word wagtail Bakery or something where you can perhaps that's not the right term for you, perhaps that's not the right name of the package. But you can get a static site out of your wagtail. site to use the CMS for generating it. And then you run this command and it gives you a static site, which I guess you can then put on that if I'm just Yes.

Dawn Wages 33:58
It is currently magic to me. But yes, I am. Yeah,

Will Vincent 34:01
yeah. Though, this is a little bit like, I'll date myself back in the day with flask, there was a way to was it flask freeze, where you could essentially, I think, have something very similar. You'd have a server and to have dynamic templates, and then you could run a command and it would output a static site that you could then in its entirety, put online, which seems like that's what these ones do with wagtail, which makes a lot of sense. You know, I'm talking about Carlton right.

Carlton Gibson 34:30
I used to do it with web get with w get, you know, W get million command line flags, and you'd mirror it and then they just start excited. I feel

Will Vincent 34:39
like there's there's a lot of static site Python static site ones, um, there's even I think I finally got myself off of being a core member of Armand, who did flask has has his own static site generator, but I guess I haven't fully dived into Python based ones recently. I'm still using Jekyll and with the big syrup. I had to do a whole bunch of stuff and I'm always like, chuckle but you know, it's just my personal size. So

Dawn Wages 35:09
yeah, it was very easy for us to use uses Jacko. Check or was it was it was Yeah, easy.

Will Vincent 35:17
Yeah. I've used both the problem is Ruby not chuckle, but ah, yeah. I'm willing to say it, Carlton, I'm willing to say it people can comment on. And it's not just Ruby, the language, it's just getting Ruby installed, is just a pain. For me.

Carlton Gibson 35:34
It's getting the right gems installed.

Will Vincent 35:37
So you recently wrote a blog post about for Martin Luther King Day about decolonizing. Tech. Can you talk a little bit about that post? And what that involves?

Dawn Wages 35:46
Yeah, so I may have mentioned previously, one of the side projects that I have, is at the roots really taking up more of my time lately, because I'm so passionate about it, it just feels like a very viable way to address open source tools, capital L, capital S, that are that continue a system of inequality and racism and tech. So so there's an absolutely amazing talk from pi pi con a you this year is about biometrics in in technology. And it goes through so many scenarios of how because we are creating this Yeah, by Kareena even a system that is inherent by creating Yes. But we live in this system that is inherently racist, and that has inherent disadvantages to people and doesn't analyze the ramifications of our of our tools of our frameworks of our algorithms on people that we are continuing to propagate the system and propel this system. And so having ethical sores, many people may have heard of the first or do no harm, which is the Hippocratic license that Coraline created. And in the same vein, there are other ones for the environment. And we have an actively anti racist one at the root def. And we're still in the stages of what our first release, we're talking with IP lawyers and intellectuals in our community who are at the intersection of ethics and open source, capital L capital S, in order to see what ethical source licenses can do. And it really what that legal tension means currently, an ethical source license would would make it your open source, lowercase o lowercase s. But we're discussing those nuances, what they do for the community, and how to propel us forward. And so then the context of the blog post decolonizing technology, I really wanted to just think of the convergence of all of the big words and all of the big things that we're talking about right now. The US has had a really tumultuous year. And we've it's raised a lot of tensions on on race across the world, in the ramifications of which, and how can we be actionable and in fixing that. And so I talked about what it means how this ideology and the system is perpetuated, come up with actual examples, I mean, in there and then propose the two products that at the root is doing as a solution, the first of which is the ethical source license. And the second of which I haven't mentioned is the is the to do list. And so as we gain more support, I'm hoping to get subject matter experts to provide suggestions on depending on what your project entails, on how to be actively anti racist things that would help all sorts of communities, like if you're doing a social platform, there should always be a block feature, and that protects people and underrepresented communities. Or if you're doing you know, training algorithms, what is your data input? Are you are you getting it from places where people have consented? What what are you saying about the the data sources or the what is essentially people the rows are people that you may be training data on? And what does that mean? That's

Will Vincent 39:35
great. That makes a lot of sense that, you know, sort of the the dark humor of the United States, one of the things I enjoyed was people noting that in terms of identifying the riders, most of them were white and most of the AI algorithms for facial stuff are key to that. So why not unintended benefit, I suppose.

Dawn Wages 39:55
Right? Right. And even in the parlor, and everything like that, and What does that mean? And jack Dorsey finally kind of came to terms and spoke about things in a long Twitter thread that you can you can believe or not believe. But regardless, there is a groundswell of, of thought and consideration on what the role technology has in morality or keeping people safe at the very least.

Will Vincent 40:24
Yeah. Yeah, that's great. Well, we'll have that in the show links. For sure.

Carlton Gibson 40:31
I mean, just on that topic, that is one thing that's constantly on my mind, and perhaps you can comment as a, a contributor to the Django community, a contributor to software in the software, contributed to the community contributed to the, to the code as well in the Django community. And a person of color is like, how, how do we widen the contributor pool to Django itself, because we have the Code of Conduct we have an open and welcoming community, it's it's, you know, radically different from other communities in other in tech. And yet, if you look at the contributor, base, you know, to Django core, like the people making commits, there's still like, in the state, all men, not all but you know, most mostly. And so it ties back to what we were talking about before, when I was like, Well, how do you find time to contribute? Because that's one thing, right? It's, you know, economic privilege is a is a big step up. But like, well, so if I, if I just lay that topic there, how would you what sort of thoughts might you have? Yeah, we, how do we make it easy,

Dawn Wages 41:38
you've definitely hit on one of the first things that I was going to say, which is kind of in many ways outside of jingoes hands, but then maybe not, I think there could be some creative ways to address it is economic privilege having the time and the bandwidth to do so. as a consultant, it's really not easy to contribute as a consultant because I really have to just justify how my hours the day, my daily rate, while in your in a salary position, not so much you are able to there's more of a global perspective, in order to give back and I I really enjoy the companies that are participating in the Django community and then give back and then also have some of their employees give back to the community as well and are continually active. And I think the more diverse companies like that are, the more opportunities there are for to get closer to the code. We're also developing a lot of resources for first time contributors. And hopefully, with several different approaches, like representation and see more people like them. And just even understanding how how the open source community works. I will never begrudge a person of color engineer saying, No, I'm going for the money I want to make. I want a fat salary and a Maserati. Personally, that's not for me. And I really get it gotten a lot. It's not for me yet.

In my career, yeah, I don't know. We'll see. We can, we can dip in and out. I don't know. But I definitely scratched the altruistic itch right now. And that's really important to me. And I think that other people, recognizing that you can give back, you can feel like a good person, you can be intellectually curious and motivated and work with brilliant people who treat you like a human and it's possible. And it'll take time, but it'll take diligence and it'll take repeated effort. It will never be one quote, on one shot, it will be continually doing the right thing. And I think the tides will will be in our favor. I have to be optimistic.

Will Vincent 44:09
Well, I mean Carlton's given a bunch of talks on this, I would just add it. One thing we've tried to talk about in this podcast is it's not just altruistic. It's also very self interested to contribute. Because if you, for example, you're a consultant, it does come out of your billable times. But if you're a consultant who's contributed to Django, or who works in, you know, your core wagtail person, that certainly helps get client work. So when people ask me, because of my books, they're starting out in Django, how do I get hired? Which is a really hard question to answer. I often say we should have some projects on GitHub, if you can. You should, you know if you can do any sort of blog or writing about your journey, and then if you can contribute anything, whether it's the docks, at a conference, you know, code is great, just to be part of the community that proves that you know how to work with others. There's that you're in the community and someone who's applying who has already contributed to Django in some some way code or otherwise, that goes to the top of the list. So that's sort of a interviewing expense in a way. So it's not I guess it's altruism isn't the only reason though, of course, it feels good. It's nice to work with smart people not doing it for the money, but you can get a lot of side benefits while doing the right while doing altruistic stuff.

Dawn Wages 45:24
Definitely, I actually I just tweeted about it, I this morning. Looking up for looking at the package that I need to solve a problem for a potential client. I'm seeing the comparison looking at the contributors seeing if I know anyone seeing one of my friends up there, and then slacking my friend directly. And when I first started, the world just seems so vast, I sent an email thank you for your having your blog in existence. And I was so surprised even got an email back. So it was it was just very big and being part of the community makes it smaller and truly helps me solve problems

Will Vincent 46:01
a lot faster. Well, it seems like you've always been good about reaching out because I would say most you know, I have a blog and sites and I get a decent number of emails, but it's a tiny, tiny number, given the number of people who look at stuff. So on the one hand, I'm not surprised that someone responds, because you don't actually get many emails, certainly not one saying, hey, thanks. I think most people don't take that first step. They don't think about the fact that, you know, there's a person there and beyond obviously, it's nice to just say good things about someone you know, then they sort of get to know you, you know, maybe you have a question about something that can help. You know, it's a way to build relationships, most of my gender relationships are purely online. You know, similar to I think, how it seems like it is for you, though, of course you went you've been to way more Django constant we have. I mean, I met Carlton at the first my first Django con and yeah, that worked out. So going to events, if you can, is a great thing.

Dawn Wages 46:55
Truly I attribute my career to the quote unquote, networking I've done in in Django, but it always feels so disingenuous when I say networking, because it's, I just make really smart friends. And thank goodness, we're in the same career. I meet them at career events. So and and it's how I navigated Europe. It's how I got gigs when I first was starting out. I mean, you really wouldn't think that someone just kind of jumps into it and you know, knock on wood, things have gone really, really well in the two and some change years. I've consulted because of the I'm also pretty earnest. And people were kind of put it back, put it back by it. So I've just like, oh, you're a good person. I'm a good person. Let's be friends code together. Sure. And it's Yeah, it's it works out.

Carlton Gibson 47:48
Yeah. No, it does. It does.

Will Vincent 47:49
Is there anything else we haven't mentioned that you want to plugger or say on on the way out? We're close to time now.

Dawn Wages 47:56
I've talked about so much. And I think I also was a little repetitive. So I'm great. This was really a great experience. I'm appreciative to be on the on the platform. And yeah, so yeah, you guys are doing great things for the community. It's really great that this exists.

Will Vincent 48:15
Thank you. Well, we have links to everything we discussed in the show. And Carlton, can you read us out? You read us then? Where can people find out more about the show?

Carlton Gibson 48:25
Jango chat.com is a website and then we've got a chat Django Twitter handle as well. And I think that's it really.

Will Vincent 48:34
Yeah, that's it.

Carlton Gibson 48:35
Well done. Thank you for coming on. Join us next time, folks.

Will Vincent 48:38
Thank you done. Bye. Bye, everyone.