Transcript: From Kenya to London with Django - Velda Kiara
This episode is brought to you by ButtonDown, the easiest way to start, send, and grow your email newsletter.
Hi, welcome to another episode of Django Chat. I'm Will Vincent, joined by Carlton Gibson. Hey, Carlton.
Hello, Will.
And we're very pleased to have Velda Chiara join us from London. Welcome.
Hi, I'm so happy to be here. I'm so excited. I've been constantly following this podcast for one of the longest times in my life.
Even when I started Django. And now I get to hang out with the kookies.
I don't know why we haven't had you on earlier, because you've been around the Django ecosystem for quite a while now.
So for those who don't know, just as quick background, you're a software engineer at RevSys, Microsoft MVP.
You've worked with Defna, which runs DjangoCon US. You've worked with DjangoNauts on updates for the Django News newsletter.
You did a fellowship with the Python Software Foundation.
Let me look at my notes. I'm sure I'm forgetting something. And you speak regularly at conferences. We're going to talk about that.
So let me start with how do you do all that? Because I feel tired just listing all that out.
I know. When I'm doing it, it doesn't sound as much. But when somebody else starts saying it, I'm like, that's a lot. That's a lot.
But yeah, it's like all of them are kind of like related. So it doesn't seem like it's a lot of work. Because if I'm doing...
I did DjangoNauts space because I wanted to contribute to Django. And then I got to be a maintainer for DjangoDebugtober through the program because I was an active contributor.
And I got along well with the maintainers. And yeah, it's like open source. And open source is fun, right?
And then the Django Events Foundation of America, I got involved because I attended my first DjangoCon US and I loved it and I wanted to be present and I wanted to be involved with making it better to make other people's experiences better as well.
And that kind of like happened as well. So they had a call for open positions that you could like apply for. And I was like, ooh, that sounds good. And I was like, I hadn't served on a board before. So I didn't know how that's going to be like. But I was like, I mean, it's Django, it's DjangoCon. So it's not going to be difficult. And that's how I got in.
That's how they snuck you in.
Yeah.
Not difficult and then a lot of work, right?
It will. I did do some interviews and I had...
I had to like justify why exactly I think I'm the right person for the job. And I think, yeah, also like listing out things that I have done and commitments that I had before and how that led me to where I am. Meaning I also did have like some leadership skills as well, which also helped me through the application, if I would say. So yeah, it's like consistently they're all connected. And then I also got to be a Python Software Fellowship Fellow. Yeah, PSF, Python Software Foundation Fellow.
Yeah, Foundation Fellows. A lot of Fs there.
Sometimes I get confused with like, is it Foundation? Is it Fellow? Which is it? But yeah, I got involved.
Oh, Foundation, yeah.
Yeah. So that's how I got involved too.
Yeah. Sorry, I was going to say, I try really hard not to just acronym everything because I know it's easy for us to do. And when I was learning how to code, I was so frustrated that all these acronyms and everyone's like, oh, you know, blah, blah, blah, ABCDEF.
Yeah, no, I get that.
But now that we get it, it's like another step. We're like, oh, what is that thing even called? You know, you sort of forget.
Yeah.
And that also became like, based on the contributions I had done, also like technically and also community wise, I got to be involved with like the Microsoft Most Valuable Professional program in a way. So all of these things are all connected. The good thing is that it's one thing that's like all these things. So yeah.
Yeah.
And I love the Jingle community. It's like the most thing. It's like the most, like, I get to have a lot of fun. Like I get to meet you. I get to meet Carl.
I get to meet Carlton and have conversations. And I'm like, what?
So I love it.
Yeah. Well, I think that's the thing that you said is there are these openings, but it is, it's a lot of work. It's also, you do get interviewed, you get a lot of responsibility.
And part of the open source thing is like, it's like, how much can you handle? And so people are very open and welcoming, but there is a lot that happens behind the scenes for events, for the code, for everything else.
Yeah.
But volunteering really is a way to get deeper into the community, right?
Yeah. And you have to enjoy it too, because other than having like a lot of work, you get to engage a lot more with like people. So you also get to like develop like really good social skills and also get time out of like, hey, like I've been interacting with people for a while now. It's time for time out, but I'm going to be back.
That's not always the software developers first choice of things, right?
Yeah.
Social side.
Yeah.
Well, people, I think people are good about recognizing though that, you know, not burnout, but like, you don't want to burn out people. But yeah, if you say, I'm just going to take a little step back. I think everyone who's been in the community for a minute can appreciate that.
Yeah. And I mean, it's, it's all good. Like we all appreciate every amount of effort, whether you can do it for a day or like a week, it's all for the benefit of the community. And I think that's, that's how the community grows. That's how I get to be here. That's how I get saved.
And I think that's how I get to be here. That's how I get to be here. That's how I get saved.
So it's like the sun's up when the sun's up, the sun sets when the sun sets, right? And so everything is like really balanced. And we also have like really good weather. So when I came here, it's like negative something degrees. And they're like, oh, it feels like negative eight, but it's actually negative two. And I'm like, why?
No, neither of those are good.
Exactly. Nothing's helping. So I had to like get used to like different clothing, having warmer clothes and getting to also be able to do things.
So I had to also meet other people here as well and getting to interact with like other people who are also moving. So I think London is like the seed spot of like most of the people are also like moving in and other people are moving out. But it's always like, like it's so inclusive as well. It's like there are a lot of people who are also moving. There are a lot of people who are also navigating. And yeah, you get, you just find other people who are doing the same and then you start bonding over things that are different.
Yeah.
Yeah.
Right now it's going to be like a year in February 17. So I'm going to be celebrating a whole new year here. I'm excited. I'll probably get a cake or something. But yeah, I want to, I want to celebrate the change in weather and the change in life and everything. And I mean, some of the, some of the things that really shocked me is like, and something that actually I had to figure out was the whole assembling of furniture.
That was the most weird thing that I've ever done. Like normally, so when I order a bookshelf, like back home, I'm always like, I get, I get it delivered because it's already built. So it's just like, okay, here's your bookshelf. Navigate out to get into your room or your house. And then that's it. I'm not assembling anything. I order your bookshelf here. And I almost cried assembling it because it's like different pieces. And it's like a weird color. And it's like, I had to figure out which nails go where, what does it do?
What does it want? And I was like, I can't do this anymore.
It's like adult Lego, but you don't want to do it.
Exactly. And I was like, why? And actually when the delivery person was handing it to me, I was like, are you sure?
I was like, exactly. Are you sure it's the right one? Because I ordered a complete one. So it's like one of those things. I'm like, wow, now, now I can assemble bookshelves and I look forward to assembling things. And I'm like, hmm, interesting.
It's a useful skill, you know, when you move in and you need to.
Yeah. And it's like, you know, it's like figuring it out, like life all over again, because I need to figure out what food do people eat? What do people like buy? Like, what should I be wary of? Like, what are things that I should not touch in terms of also like food, which restaurants do people go to? It's like figuring out all these things all at the same time and still being able to do work and life things. And I'm like, oh, yeah, I was like, I didn't, I didn't subscribe to this level of adulting.
But here we are.
It's hard work moving country, right? Because you take yourself away from your whole social group, your whole social network, your family network. It's like you're there on your own or with one or two people. And it's like, yeah, okay.
Yeah. And I remember we had this conversation also at like a Jenga Nod space. Was it dinner or hangout? At Jenga Con US when you went there. Yeah. And I was like, so I know you've lived in Spain and I know you've lived in the UK.
You didn't even ask me how I knew that. But I was like, yeah, I need to talk to people who also like done move, like moved countries before. And I was like, this is the person to talk to. And weirdly enough, I also had like the option of like trying to figure out other countries other than the UK, maybe figure out Spain. But then when you look at the different opportunities there are and how easy it would be to like get from one job to another, the UK made absolute sense. And you were like, yeah, I mean, you're young. You got this.
I remember you specifically said that you were like, you're young, you have grit, you still have energy, go do it.
You still have energy. It's like, you know, flowchart. Should I do something? Yes or no? Have you got the energy?
Yeah. And I was like, Carlton said I need to move. And I'm like, I'm just gonna ask him for recommendation or stuff that I find difficult. And I'm like, well, at least I know he's still there. So yeah.
I mean, we live in Spain, obviously. And Spain, like just but coming to Europe, or the UK from outside, it's like, well, the UK still has a higher GDP per capita, it still has more economic activity, there's still more commerce there than there is in Spain, you know, the richer countries generally are to the north. And there's, you know, the cost of that is the really early afternoons this time of year, right?
Yeah, before it starts getting dark in like a few hours.
People had already started leaving. And I suppose it's the same with any place, right? You sort of ride that curve of like, oh, my God, things are great. And then like, that's okay. Like that, you know, when you get old, like Carlton and me, the thing about transient places is like, you know, people come and go, and it gets a little less exciting. You're like, oh, man, they're gonna come. A long way of saying, I think the next year will be even better for you. And I'll be curious what it's like in, you know, years three, five, you know, because you'll see, you'll see those newcomers. And
be like, oh, I remember that, like, first year energy.
And I'll be like, oh, I remember that, like, first year energy.
And I'll be like, oh, I remember that, like, first year energy.
Yeah.
Jingle Mandan is still thriving. We actually have a meetup this Thursday. So yeah, I also got involved courtesy of Adam. And I'm also like involved with organizing. So in case any of you are around, we could figure out a way to get you to speak to our meetup people as well.
So open inbox, come through maybe next week might be fun.
Yeah, I think there's gonna be a little time lag on when this episode comes out, unfortunately.
But it's an ongoing thing. Yeah.
Yeah, it's a monthly meetup. So it's definitely going to be there every, every month. We do it once at least every month. So maybe you can come in in the summer when we have good weather.
Well, so talks speaking, I wanted to ask you about a recent talk you gave, I think, was it Pi Cascades around Django optimizations and performance?
Yeah.
So we'll put a link to that. I thought that was great. That was a really great overview.
And let me put it to you. It's your talk. What was the impetus for this talk? And, you know, kind of the highlights, because everyone says, oh, Django performance, but then doesn't really know where to go. And you laid it out really well.
So that's exactly why I did that talk. So I had like different conversations with people. And they were like, yeah, we don't use Django because you know, it, it has performance issues when you start scaling and like different places. And I'm like, like, have you used it, though? So my question is, have you used it?
What issues do you have? Because, I mean, even Facebook uses like Django in a way and I'm like, is it Facebook or is it Instagram?
Instagram. I mean, it's fast enough for Instagram.
And we're all camping in Instagram. You should it out. Like, we're not seeing the reels and videos and we're not liking all those things. And it's built on Django. So I'm like, I mean, if they're using it, they have a, they have a lot of users. So what's the problem?
Yeah.
So most of the times when I hear like, opinions like this, I'm always.
Yeah.
Always curious. Okay. Why are you saying that? Like, what use case do you have? Because I'm like, I know there's definitely different use cases that might not work. And that's understandable. But just saying it because of just saying it didn't make sense to me. So I went and did a whole talk on it on PyCascades. That was like last year time, like now, actually. So it's really neat that it's also coming out right now, when you're asking me this question. And so I wanted to dig into how you could also like,
increase performance and how that would look like on your app. And not just for people who are
scaling, but people who would just want optimal performance year round. And so when I looked at
that, I was like, okay, what are the things that we could actually talk about other than the common
things like select related, prefetch related, caching and indexing, right? And then also when
it comes to indexing, they're like different trade-offs, right? You can't index every single
column. Like that doesn't even make sense, right? And plus it's also creating like a different data
structure, which means it's also like getting, using up more space than you need. So all these
things, and I'm like, nothing does something perfectly all around, right? That's something
I came to accept in the software space. Like everything does something really well, but not
everything. And that's why we also have like different libraries and different packages.
And I'm like, yeah, it works, but to a point. So you just have to figure out what your point is
and then work on that. And that's how I actually approach the talk as well. And I talk about a lot
of like, um, a sharding as well. I talk about serialization, which also ties out to like
a marshalling that I had on my newsletter last week.
Yes. Yeah. I like the newsletter, little interlude here on your newsletter.
It's super. You write that every week, no?
No, it's every fortnight. I used to write it every week, but then I was like, I don't have enough
stories to tell. And like, what's good about my newsletter is it's called the Storyteller by Tales.
So I'm like, I love telling stories. I love telling people about what's going on, what's fun to do.
And this time I had to do it differently because I was doing a course in system design and they
mentioned something about marshalling. And I was like, oh, that seems interesting, but I don't know
what that really means. And I was like, oh, that seems interesting. And I was like, oh, that seems
so I had to like put a pin on it. And then that same week I had a meeting with like Jeff and Frank
and they also mentioned marshalling. I was like, this is a sign. This is a sign. And so on the
newsletter, I had to like define what marshalling is in the concept of in system design and also
in Django. So in terms of system design, it's basically trying to change data into a format
that's easily transmissible. And so I had to like put a pin on it and then that same week I had a
meeting with like Jeff and Frank and they also mentioned marshalling. And so on the newsletter,
I had to like put a pin on it and then that same week I had a meeting with like Jeff and Frank and
and you're like, "Oh, so I've been doing this
this this whole time and i didn't know what that was just some facts you read for it exactly it's
like oh and then also when i started getting into system design i really wanted to understand like
how do people get like the calculations of how many seconds this result how many seconds you're
getting the results how like how everything ties up and how do we actually define how many servers
do we need how many like data data storage do we need and i was like i was curious about that and
that's how i ended up in the system design course and that led me to marshalling and now writing it
on my newsletter so yeah it's like a lot of interesting things that i come across of and
sometimes like in the newsletter i just like like highlight things that i have done during the week
so it might be like a crazy story or maybe how difficult i had assembling a shelf for a quick
laugh and then or maybe like things or maybe if i visited somewhere and i think it's like a good
recommendation for people so yeah
this episode is brought to you by button down that's button down.com email software for developers
like you there are hundreds of email marketing software services out there and they all pretty
much offer the same thing collect and clean addresses send out broadcasters or drip campaigns
get analytics so you can see what's resonating and what's not button down is designed to hook
into the tools that you already care about everything from static site generators like
jekyll or hugo to payment platforms like stripe and memberful you can hook your site up to button
down with just a form element or you can hook your site up to button down with just a form element or
a simple rest call write emails in markdown and then get on with the actual work you're supposed to
do new customers can save 50 off their first year with button down using the coupon code jango and
if you email support they'll white glove migrate your existing subscribers and archives for free
the secret of longevity is to go every fortnight every two weeks
we start the show here every week and we're like take the summer off if you need to you know
and i saw that and i was like wow you're not taking a vacation i was like
i want to do that in my life like i want to take vacation and not do a lot of things no it's called
this in the united states on linkedin it's called sabbatical you don't say like you know retired or
semi-retired or you know taking a year a fun was it fun employment you got to say sabbatical that's
like the nba version it sounds vaguely academic but i mean it does sound fancy it's like yeah
yeah i'm rich enough that i can take time off and not work
yeah well i would say that all of that system design and capability capacity planning stuff
that's going to serve you a massive stead because it doesn't matter what language or framework you're
using like yeah there are some sort of kind of engineering basics which if you haven't got it's
you're kind of guessing whereas if you have got them you can do the calculations up front that's
really useful it's really useful learning to have i think yeah and i was like i mean i want to be in
the same level of engineering all of you are at and you you already have like a lot more years so
i'm trying to compensate by get learning a lot more at a faster rate so i could also like catch up
yeah well i'm thinking there's that phrase you know you could do you could have 10 years experience
or one year of experience 10 times and i think doing what you're doing of like going the upper
level of saying oh like there is this pattern i can name it i can see it in django that's how you
get 10 years experience instead of right it is very
easy and i certainly have succumbed to this of just like being so focused on the task at hand
you never get the bigger picture whereas i don't know carlton i would say now i feel like the only
thing i have is some degree of a bigger picture and the confidence to like be able to dive in
because i can't possibly remember everything but i'm like oh i kind of know how this thing
fits together or i know how i would go tackle it if i needed to whereas when i was starting out it
was just everything felt new and overwhelming i think the i think experience
gives you like you come to a problem it's a fresh problem but you're immediately cutting it up into
some ways that it might work and it may not you have to implement it and see but yeah
experience gives you that ability to kind of start planning it before you even finish
reading the problem statement like it's you know gently um so i don't know but yeah that
sounds super yeah and i think one of the things that i get to like appreciate
once you start like looking at things and from a system perspective is that nothing is ever tied
to a specific technology that's why i said once you find your point then you start working from
the point that you had it's not like i am attached to this tool it's like no which tool does does it
actually work best with and it like detaches you from like all the tools or everything that needs
to be like any tool that you need to use to build it out and just like looking at the problem and
being like these are the calculations that you need to make and then you start looking at the
problem and being like these are the calculations that you need to make and then you start looking
looking at the problem and being like these are the calculations that you need to make
this is the amount of space that we would need these are the list of things that we would like
to accomplish and this is like the output of what we expect the system to to be or to do and that
really helps also when you're working in django because then you know why this is needed and it's
not just building it out for the sake of building it out and swinging back to your your talk about
performance and you know people saying django doesn't go fast enough when you've actually got
a service level requirement that says oh we need you know ten thousand requests
a minute or whatever it's like well django will satisfy that quite easily on quite a small box so
yeah why are you worried about going faster yeah i think the point where like there is a client we
were working with and we had like issues with caching a lot so we consistently had to like
bust out of caching and i'm like i thought caching works i thought it would work on every news case
what is going on and i was getting frustrated because jeff was giving me that ticket because
i mean you did it
first so you gotta see it through so it's like i have to make sure that it works and
it's one of the reasons why i think it would break is because we were loading up like
30 000 results in one page and inside the 30 000 results are like 15 000 each so i'm like
i mean it can only work to a point so we had to consistently like figure out how
if the user wants results immediately because i mean it's a user and they need
to get what they want they need to get what they paid for so had to figure out okay so we're not
going to cash this for a while or we're going to be busting out of cash in case there are changes
and it's like working with different clients is both interesting and challenging but you always
get the most bizarre feature requests and i'm always like wow well i'm interested to see how
i figure that out okay and how do you find the context switching there working with lots of
different clients honestly for me personally i'm always like wow i'm always like wow i'm always
I feel like it's the best because I get to work with like a lot of things that I don't think I
would have worked with if I only did one product or one project. And I really do appreciate that
because I also get to work on open source. I get to contribute to like Django Health Trick. I get
to work with other people's libraries as well and contribute to them. And I also get to build
different projects every couple of months. Maybe this month or the next few months I'm going to be
working on e-commerce and I need to figure out, okay, how do payments work in other places, in
other locations? What are we expecting? And in other situations, like right now we're working
with like a payment, I want to say payment platform service, but yeah, it's like something
in line with payment. And so every project is different. Every need is different and every
request is always different. And that's what I look forward to because
there's always something new to learn. And I feel like that just excites me. I'm like,
okay, let's see how we do this one. Okay, let's see how this one goes. So it's like,
I'm like, I don't get bored is what I'd say. So it's constantly new things, new issues,
new projects. And I like that. And I appreciate that. Yeah. And it's a good, if you've got the
energy and you've got the enthusiasm, it's a really good environment in which to, you know,
do the 10,000 hours, right? It's. Yeah. Yeah. And I also get to like work with a really
good team of like people who've been in Django. And I'm like, sometimes we're like in meetings
and they say something, I'm like, I don't know what that is. How do you do that? And it's like,
getting like some of that experience from them when they're like listing things and they're like,
oh, you could use this package. And I'm like, I didn't even know that package existed. I don't
know what it does. Yeah. It's good to have that support. And if you, if you ask him nicely,
Frank will teach you Perl as well. I don't know. You might want that though.
I think it's fair to say too, there's, there's consultancies and there's consultancies and
RevSys is, you know, one of the better ones. Uh, and also the clients, you know, you're not
just doing crud off real estate websites or something all day long, which, you know, I get it,
but consultancy is a wide spectrum. So. Yeah. I mean, I, I had the chance to work with one of
the best people who are also actively involved in the community. So they also appreciate like
community efforts and they're like, yeah, they fully support it. And I'm like,
I don't know. It's, it's like an ideal place for a general person to work at. And it was
really difficult to also like figure out like what projects or what, um, when I was choosing
this career, well, actually I chose it. And then I realized that, oh, I needed to specialize
and they're not so many options because most of the options that I was getting were like
JavaScript based. And I'm not saying JavaScript is bad, but that's not what I wanted to do.
I wanted to write Python every day. And so if I wanted to write Python,
I started working with Django and I was like, it would be really cool if I got involved with
a company that does that. And that really reduces the choices that you have because
most of these companies don't also hire every single time. And I'm always like,
wow, how do I get into this job? Like how, how am I going to manage getting a job?
And so I actually met the team at DjangoCon. It was my very first DjangoCon in 2023.
It was in Durham. And I actually didn't know that people had like Jeff or Frank had a company
I was just like talking to everybody who would like listen to me and be like, Hey, I'm doing a
lot of open sourcey just in case you have something, let me know. I'd be happy to do it and
stuff like that. And was that at, um, sorry to interrupt. Was that at the, um, the like night
before, uh, thing at like the pizza and beer place? Was that, I think, cause I think, I think
I was, I don't know if that was the first time I met you, but I definitely, we met, we met there
like in person. Um, is that the first time you met Jeff and Frank? Yeah. The first time I was also
actually the first time I was meeting Jeff and I had gotten margaritas like before. And then we
walked over and, um, okay. Interesting. Yeah. Wow. Well, I mean, God, like for me, it's like
a blip. And then for you to go from that to where you are now, that's, that's kind of crazy. That's
so fast. I mean, I was like, it's because like, I try to do as much as I can, even with like the
little I have or the more than I have, because I'm always like, I don't know if I'm ever going to get
in. So I'm like, I'm going to use it to the best that I can meet a lot of people. And also like
meeting you for the first time, I was like, why is an author talking to me? Like, aren't you like
beyond me? Like, see Carlton, this is what I need from you, Carlton. Come on a little more deference.
So yeah, like I was like, you're actually, I think you brought, you brought the book or one of you,
one of you brought the book and I was like, Oh God, and I was like, I can't believe like I actually
read your book and now you're like sitting here and listening to me and getting me to ask you
to answer me and not have like, I want to say pride, but yeah. And be like, so done to it. And
I'm like, wow. As I've said, that was when Carlton agreed to do this podcast, that's how I felt and
still feel. So, you know, it all just filters around. I think, I think the story you've just
told there, Val, there's a really good example. People are like, how do I break into the Django
community? How do I get a job in Django? Well, there are a lot of companies out there that are
using Django that don't label themselves as Django shops, but you know, to turn up at the
conference and actually, you know, make sure you introduce yourself to everybody, you know,
make sure you're really out there and just say, Hey, I'm doing this. I'm volunteering. Look at me.
This is my profile. This is what I'm doing, how it's going to work. And it's going to work a lot
better than sending out, you know, cold approaches on LinkedIn or I got, you know, some mass mints
and gist spam the other day, you know, it's got to have zero response, right. To get out there and
actually put yourself in the community. Yeah. That's how you get into it. Yeah. So, you know,
and I mean, the reason why I actually resulted to that is because I realized like most of the
applications I was getting like to the last stages and they'd be like, Oh, because of your location,
it's going to be like difficult to like, and I'm like, but despite my location, you can do,
you can see, I can do the job. So what's going on? And so I was like, wow, if the job is not
going to come to me, I have to go to where the jobs are. And that's, that's the baseline I had
for going to Django Con U.S. I was like, I don't know if anything is going to pan out,
but I just want to go have fun, meet people, interact, and maybe eventually someday in my
lifetime, I'll eventually say that I got this. So yeah. And it worked out great. And most of the
times I'm always like, I cannot believe that I was just talking and it wasn't like an official talk.
It was just like chats. We were having like, I think dinner or was it drinks? And like,
I just mentioned like, Hey, I'm looking for something that this is my job profile.
Well, actually I didn't say job profile, but I said, yeah, you can find me on LinkedIn. I
use my official names. And in like a couple of months, you were like, Hey, yeah, we have this
open source thing that we're looking to upgrade. Would you be open to doing something? And I was
like, yeah. And I mean, I was like, I was very flabbergasted. I was like, you remember?
Like it wasn't like, um, actively being like, Hey, I need a job. Where are you? Here's my CV.
Call me back. And all that. It's like, no, I actually wanted to interact you firstly, because
you were a person.
And I've seen like interesting things you've worked on. And that's where people, they also
say like, you've done a lot of open source stuff. So if you want to talk open source, go to him,
talk to him. So I was like, okay.
Well, I think that's the key thing is that you presented yourself as like, this is my background.
This is what I'm looking for. You're not asking everyone for a job. You're just saying,
can you help me? Right. So then someone may not be hiring, but everyone knows everyone
and they can say, Oh, have you. Right. Like that's, I mean, I used to think of this when I was,
you know, in Silicon Valley for a brief period of time.
People from my school would call me and I would always think, you know, you could ask me
how, like what the job is like, or you could ask me for a job. And I'd rather you ask me for a job,
but like, not me specifically, but say, Hey, I'm a business student looking to break into startups.
This is what I want to do. Here's my profile. Who do you know? That's much strong, you know,
or I'm a software engineer. Like it's so much stronger. It's so much easier. And again,
it often is the case that it's like lodged in someone's mind. And then when they hear,
Oh, someone's looking for something. It's like, Oh yeah. Have you talked to them?
This person. Yeah. And I think, yeah. And I also think like doing open source actually
really helped because then they could just look at like contributions I had made because that's
like, Oh yeah, you worked on this feature on this project. You've worked on a couple of projects as
well. I do think that really helped because when I was also hunting, I was like, I don't want to
just do nothing and just apply for jobs. I want to actively participate in like things that I want
to do. So eventually something, if something happens, it does.
Otherwise I still get the skills. So yeah, it's like, it's tough out here. And now with the eye,
it's like, it's not going to be a nice, a nice environment because I'm like, it's a lot like
there's a lot. Well, but at the same time, I mean, you know, I think what you just said about how you
approach system design, like I was telling Carlton before we started recording, like,
so I've been using, really trying to use, especially Claude and starting to use Codex with Django stuff.
And like, I've never, it's never written something that I would pass off as my own in entirety. Now
it's probably trained on my code and Carlton's code, you know, but like, it's like, if I, you
know, I don't know, that's the, that's the mental thing I have is that like, I use it. It's great
for referencing. It's great for ideas, but as a replacement, it seems like an accelerant for
someone who's eager to learn, go to the next step. It's a great tutor, but to say it's going to
it just misunderstands what a software engineer does. Yeah. I think what you said is like really
good, but I also think right now, most people who are benefiting are people who've had like a
tremendous amount of experience, people who've seen like different problems, how to approach
different problems. And I think like, as you said, like you and Carlton have a lot of experience,
you've built out systems, you've broken systems. So even when something breaks, you already know
where, where the potential problem is.
And I think with a number, like with a good number of experience and like trials and errors, I think
you have a good baseline to just be like, I don't want to do the grant work. Let me just
write a spec and let AI handle it. And then I could review, right. And that works perfectly
because I mean, you've already accumulated a lot more. And so right now it's just like
basically upgrading what you have or using, constantly using what you know, and learning
some other new things. But then the challenge comes in when people want to replace like
their brain functions with AI was like outsourcing decisions to AI. Like you can't say hello to
someone without referencing AI or telling AI to like, Hey, respond to this. And I'm like, that's
where I think the issue comes in. It's like, I think you can still be human and do like normal
brain functions instead of outsourcing your brain. And the other thing that I'm pretty worried
about is like right now with like early talent, like early talent.
How like you can use it as a good research point, which I think it does really well. But then if you
start using it frequently without absorbing the information that you're getting, then it just
thinks for you. And then I mean, it could think to a point, like it's not going to be like 100%
sure. And how true do you know that whatever it's saying is okay, if you don't know even what the
answer is, if you don't know what the answer is, if you don't know what the answer is, if you don't
know what the answer is, if you don't know what the answer is, if you don't know what the answer is.
So I think that there are some pros and cons, but I do think that people who are thriving the most
with AI are people who are experienced and people who can afford to be like, I don't need to use all
my time doing this groundwork when AI could do it. The other people who are struggling are people
like me who are trying to level up and trying to figure out what's the best way to work with AI
without necessarily, necessarily impacting my brain and, and like having like retaining content
and retaining information. And so I don't know, those are just like different conversations to
have. I mean, I don't know. It's like, it has disrupted how everything used to work.
in a good way and in a bad way as well because it's like okay so how are we going to conduct
hiring so are people going to be allowed to use ai in interviews and then how does that look like
for the company like how do we know that this person is actually really good at what they do
or if it's just a flake or a fluke so i don't know it's like it's a lot i saw there was a headline
and i know it's like clickbaity that like y combinator instead of like having people apply
was just going to evaluate, evaluate you on your prompts.md file. Like they're like, oh, that's the
only thing that matters, how good your prompts are. And then like, that's not the onion. Like
there are, you know, I mean, that says a lot about YC these days, but yeah. Well, let me ask,
so specifically though, so for you, right. So you do client work, the client just wants it to be
correct. How do you, so that's good in that you, you can use it however you need to use it. You're
not being forced to use it. If it helps you use it, if it doesn't, you don't use it, but how,
how, how are you using it? Cause Jeff has mentioned that you are using it and finding ways. I'm always
curious, like how, you know, what are the positives that you're finding for using it?
Okay. So I'm using it as I say, like a source of information where I don't have to go through
Google results and be like, oh, this is, this is a hundred things. These are a hundred articles.
I'm always like, Hey, I'm looking for resources on, let's say Nats, because I used Nats previously.
Like who has written an article on Nats that uses Django or Python that I could look at. And then
I'm like source, because I'm always like source. I don't want you giving me your opinion.
Me too. That's the key thing that people don't do is I'm always like, give me the source,
right. Cause it won't unless you ask it for it. Yeah.
Yeah. Like, I don't want your opinion. I don't know if you're telling me the truth or not.
Right. And you know, AI wasn't built to tell you the truth. It was built on existing data. It just
gives you output, just gives you feedback. That's like, I got into a hole of like researching
MLMs with how they train everything. So I do know that it was not trained to tell you the truth. It
was trained to give you information. The information is entirely up to you to figure out if it's true
or not. So I'm very cautious about that. So if I'm looking, um, I usually use it like that and
like resource stuff, because sometimes I'm like, I would like to use it in like code and be like,
Hey, write this, write that. But I'm always like iffy about it for some reason, because I'm like,
okay, is it going to think for me? Is it like, how do I work with it? And I think I've mentioned to
Jeff this as well, because I'm always like, most people like to use it. But at the same time, I'm
like, I'm still like doing a lot interesting things. And I don't even want to outsource that
trial and error, that struggle of learning to AI. So I'm like, I don't know if I want to outsource
that, like using it to debug like JavaScript, because I do not like writing JavaScript, but I
do use it to like debug JavaScript research. And I think the other use case was like, if I'm trying
out a model, I'd want to see how the tests would look like. So it's like, shows me like a mockup of
tests. And then I could be like, okay, maybe I could think in that line, but touching my code,
nah, it's I'm always like, no, I'm not trying to do anything funny. And I'm always like using it
on chat. I'm not audacious enough to have it in my, in my terminal. I'm not audacious enough to
change anything.
I'm just like, keeping it at arm's length and trying to also make sure that I'm in the correct
space of consistently learning and trying out new things. Because I mean, how else are we going to
learn at this point?
Got to take the long view on your career. And like, a little bit slower now for continuing
to progress so that in five, 10 years time, you're a top notch engineer that is going to
make dividends whether you're using AI or not. Like, however it rolls out, it's not going to be
the case. Well, not unless these machines get suddenly much more capable than they are. But it's
not going to be the case that the human isn't needed that the skilled engineer isn't. And if
you just lean into them, totally, you won't be a skilled engineer. Whereas if you force yourself
to learn, you will.
Yeah, I mean, there, I mean, there are pros and cons for everything. As you said, even when you're
doing performance in Django, there is like trade offs that you need to think about. So technically,
it's like the same thing. But I'm like, I
don't know if you also know enough that, like how everybody's saying like, oh, we're going to do a lot
with like medicine and all that. And I'm like, the same thing that's giving me weird results is what
we're depending on for like medications right now. I think we have some long way to go before that's
possible. But okay.
I saw a headline just today about how these LLMs can't replace a physician because they just
can't they you know, they know the you know, they know the facts in a way they can pull out their
training data, but they're not able to take a history and interpret it in a way that leads to a
diagnosis reliably in some limited cases, maybe but not, you know, okay, yeah, not like your general
practitioner is going to be replaced by a machine anytime soon.
Yeah, and I think that Oh, sorry about this. So there is like a use case that I had. So I had a
delivery coming in with like a different system. And so to get back to the customer service, you
had to go through a bot, but a bot doesn't have all the use cases. And so I was stuck on the belt for
a while. And then I had to like, I had to like use weird, like, issues that people had hired that had
like shared on Reddit, so that I could like, figure out how to bypass the bots because it was an actual
problem that as long as your issues are not meeting what the bot needs, it's just going to be stuck in
the same process. And so you don't get like, also to contact like customer care and I'm like, but I
know we want to replace like the the customer support.
And with AI, but there is no like learning loop. And there's no like human who's like on standby,
if like there's a persistent user who's having problems. So I was like, you're actually turning
away clients and customers, because from my experience, I'm never using that company again.
And I don't care if they build a new world, or they do whatever I am never touching them
ever again. And so it comes down to like, also in terms of like businesses that want to embrace
like AI and other different tools, I think it is okay, because sometimes it makes sense business
wise, right? But it might not make sense to like, for me as a user, but business wise probably makes
sense. But then when I have problems, how are we going to work together? Because I'm technically
giving you money, and you're giving me a service. So if I'm not giving you money for your service,
so how is the business working again? So I don't know, it's kind of like,
also like different edge cases, maybe to somebody else, it does really make sense. But to me,
at that point, it was like, no. And considering that there was a long Reddit thread, I do believe
it's a real other people feel the same. Yeah. Yeah. I was gonna say, I do feel like the three
of us as engineers, it's, it's, most of my friends are not programmers. And so it's interesting,
because we know we have a knowledge of trying the tools for like the one use case where people are
right now. And so you read popular things, and it's like, oh, it's taking over coding, therefore,
it's gonna just one to one replace all these other things. And I find that it's hard. It's an
interesting place to be, it's hard to have like an actual conversation with people about what it
might, you know, there's a lot of medical people near here, what it might do, because, A, they don't
understand the underlying technology, but B, they're just reading, oh, it's replaced all the programmers.
And it's hard to have any nuance in there. Like, it's hard to do things like, you know, when you can have closed
systems with reinforcement learning. So yeah, better at chess, better at Go, like, absolutely
machines. And I'm sure there's gonna be a growing case of where AI can take over there. But most of
the world and most business problems are not closed systems. And so yeah, it's interesting,
like we're living in the one area that's being disrupted. That is the harbinger for everything
else. And yeah, it's, yeah, it's, I don't know, just an observation. I don't know, Carlton, if you have lots of AI fanatic
near you and the coast of Spain.
I may do. I don't speak to people. So it's hard to know.
That's even worse.
I gotta try. I gotta try that.
It's not because I don't like them. It's that I never leave the house. You know, I'm quite angry.
Well, you have everything. We have everything you need at your house. Wait, all right. So technical
things. I did want to ask you about Neapolitan. So Velda, this is Carlton's package. I understand
you've actually been using it in the real world. So can we talk about that a little bit?
So I'd like to
mention that I found it hard to use your library. And well, part of it is because I also didn't read
the documentation. But beside that,
Who's got time for that? I gotta start coding. Yeah, I know.
Beside that, I was like, why? At some point, I was like, yes, yes, I do understand how that works.
But at the same time, it's like, oh, God, I don't know how this works. So I think also the problem, well, not the problem, but the problem is that I don't know how this works.
not the problem or like the the project I had I had to do a lot of customizing and so I had to
actually get into like the base templates more to define and I was finding it hard to locate where
those files were and also figuring out like which one does what and as I said I didn't read the
documentation but I had to because I had a custom problem to solve and so I had to also look for the
template text specifically for the views because there were a lot there were different ways that
we wanted to custom make the the views and the forms as well and I found it so difficult I was
like why why could we just create them normally and it's like we want to use just one for like
all of that just out of interest so the way I so the the base templates that I shit with
Neapolitan they're just sort of like um what do I call bootstrapping templates so they get it up
and I immediately replace them with my own
you
the ones for that view so like I won't use the yeah edge and table the list view or the the
object view I would certainly don't try and customize the template tag I'm just like no no
I just want to put in my own template here the the bit that I think is of genuine event and I
love it I'm literally in love with it is crud view itself because it gives you that namespace
it gives you all the methods but yeah no the first thing I do is I bootstrap the view like
you know I put it in you know my four line thing and I've rooted it and I load the page yep
it loads right then like okay here's my own template yeah I mean that does work and it does
work really well and I appreciate the fact that I didn't have to write a lot more views and figure
out testing the views as well each and every one for create update and delete but then I think once
we we got into like the actual like there is a certain way that we wanted the forms to look like
and I think I realized they did the project was using the default like templates that you had so
I was like okay that's going to be a bit of spice inside there but yeah so I had to like figure out
like how do I actually edit out this form how I want to add more fields but we're using the same
ones that are there so how do I add that like going to the tags and figuring it out and so
I was like why but then at the same time like yes it does make sense but why
okay yeah I mean so what do I do with forms so I define a project level
form renderer which brings in the templates that I want to use for the forms and I'll I basically
just use the stock ones I've got some small net small customization so I can override the field
template much more easily yeah yeah and then I just define some css that styles them how I want
so I use the div templates and in my my actual templates that I'm using I just use the mustache
mustache form but you're assuming that I have that knowledge I didn't
have that so I had to like figure it out so yeah yeah so what you really want is a um is a is will
to write a django neapolitan no no no you want just ask carlton just send him a dm no I do I was
thinking this whole time I did I think I don't know if I 100 promised you but I told you I'd
write a tutorial of neapolitan and I still haven't done it so yeah okay so the bottom line is it's
massively um under documented for beginners um it's very much there are lots of so on my
really really long list there's a kind of how I django mega section on my site that just has
never happened because I've never had the capacity to to to put it together but it's how I do forms
how I do you know templates how I do you know um I mean the thing I like though is that you said
you had to get into the source because the whole idea of neapolitan is that the source code is in
that one views file and you just open the views bar and you just read it and you sit down and
you read it and when you've only it's only like 300 lines it's only like 300 lines it's only like
300 lines on you read the whole thing and you understand it entirely and you can just go right
I'm just going to override that I'm going to override that yeah but you're assuming we know
where to start even overriding in the first place so I'm like you have a lot of background that I
didn't have when I was looking at that project for the first time and so even when I was going to
Jeff I was like I don't know how you use this but then after doing a lot like reading out the
documentation I was like makes sense I understand why Carlton did that and I was like I'm definitely
in your own yeah no no no no no no so if I will own entirely that it is not like the the the
beginner on-ramp here look if you're just getting started with views if you're getting started with
Django all of that stuff is just totally missing because I haven't literally haven't had the
capacity to write it I thought you were going to tell me off about the fact that I haven't updated
it in agent that was that was like last year yeah that was like last year and so I was like nah I'm
like where we are right now even without updating it I don't know what to do I don't know what to do
it needs a lot more information because I was like if I could have just schemed this page or they go
out of like gotten it easier but then I also skipped the documentation and assumed that
everything would work as expected okay well I love that my list goes I've got I've got some
stuff I'm working on now which I've been working on for a little while which is why I haven't
updated Neapolitan because it's pending those changes um so I've got that to get out and then
Neapolitan will get its kind of um phase two of all those things
that I said were on the roadmap that I never did um including you know my take on you know Neapolitan
API and things like this that I've people have asked me about and I'm like oh I don't last the
thing is I'm loath to just put out a you know put it out until it's right I want the API to
be just so how I want it so that you know yeah because it's stable and I like it stable if I'm
going to leverage my projects on it it has to be stable and then the sort of long list of semi
deployment is to you know improve the the story for other people who don't know Django so well yeah
but I do appreciate the fact that it actually did crud really well other than the customization that
we I had to actually do and override like different tags and everything else it did it did work well
so I applaud you for that but everything else like getting on board and everything else it was like
nah okay okay well I'll have to I'll have to better lock will in a cage and make him write that uh
beginning well as long as I can as long as I can
get some pie charm time for it then it's easier actually I think this year it's getting a little
bit easier I was gonna I was gonna say as you're talking Carlton I think the key to Neapolitan just
like Django itself is like Django was built to solve a real real world problem right that's what
Jacob and um Adrian would say and Simon right and and you yourself you're using Neapolitan yourself
right it's not some academic thing so I think that just bleeds through with like it's actually meant
to solve a problem and that's
the North Star um and that's where a lot of these other projects fall flat maybe is they're just done
to be interesting as opposed to like nope this solves the solves my problem and I'm using it in
my my business and therefore I use it throughout my web application and it is it's a delight every
time I'm just like yes this is what I want and there are bits I've got in the work project I
haven't yet up sourced back to Neapolitan because of these other changes that I want to get out it's
that meme of giving a medal to yourself right like Obama it's not just giving
it's like it's like my future my past self having already walked the path for me and laid down the
stuff right and then my current self just has to walk along it and it's like oh wow yeah thank you
me I mean exactly for me like back when Google was a thing it was like when I had a problem and
I would type the question I would pull up a tutorial I wrote on it asking the question
exactly the same way and it's sort of like this like you know doppelganger thing I'm like huh like
I phrased it exactly the same way four years later I mean enough time passed and I forgot that I
knew that but I still uh I still had it Simon Wilson has this line where he says um that the
reason why he puts everything into an open source package is because he doesn't have to want to solve
the same problem twice he wants it there available for him in the future when he's got the same
problem again and I really like that projects and books should we switch to that yeah um maybe start
with you so projects I think you're going to discuss Django debug toolbar since you're a
maintainer yes shout out to Django debug toolbar you all use it you should and if you don't you
should you know I still run into people sometimes at Django meetups who've never heard of it yeah
and and I'm it's sort of like puts everything into the suspicious glaze for me but yeah
so as you said it's a debugging toolbar for Django and if you're not using it oops you need
to go use it now
um and so I helped maintain the toolbar with Tim Mathias and Elenita so we're like a team of four
and right now what interesting thing I'm working on for the projects is the redesign phase because
I realized that I think I'm the most from all of us I'm like more passionate about making sure
everything looks good and feels good and so that's where we are we're trying to we're starting out
with like revamping our logo so you might be seeing a new logo in a few months in your
apps and we're also trying to figure out what the next steps are because you want to do like
an end-to-end design from getting our own colors getting the themes that we like and seeing if we
could also like improve our documentation as well and maybe build out a website who knows where this
is going to go but yeah I'm excited about it because now I had to I had to do like everything
I had to figure out where we're going to get designers who do we want to get involved and
like open source design is like one of the hardest things to do because it's open source
so I'm not going to pay you for your time and I feel bad about that because I do think
like designers are God's favorites because I don't know how you
ideas from thin air and just like create something beautiful and have people enjoy it so i'm like
i would love to pay you but right now i can't
yeah you have to find designers on the make who it's worth the marketing for yeah yeah and so we
had an application process out and we actually settled with one of the designers who did a good
job and so all that is still in progress so we're having a lot of back and forth right now to figure
out what the next steps are what colors we're are we looking at what does that say to a user
because we also need to be mindful of what the user's mental model is when they look at the
django debug toolbar and so it's like i'm picking up design skills on the side i'm like oh open
source for the win product skills yeah yeah and product skills because i'm like oh now i need to
come up with a timeline and i'm like oh how long does it take ideally well this is
i'm not sure if you're going to be able to figure out what the next steps are but i'm
going to figure out what the next steps are what colors are what colors are we looking at
what does that say to a user because we also need to be mindful of what the user's mental
like i was listening to this ai person say yesterday how like you know p product managers
is now like a thing of the past and i was getting so annoyed because i was like come on like give
me a break like it's not true at all it's dealing with people like there's no prompt that can deal
with people yeah and also giving like um good feedback to the designer based off on the designs
because you need to have that conversation of like if you're not liking a color why are you
not liking the color or if you're not liking the design why are you not liking it right
because it's like yeah everything needs to be good but we also need to define what good means
to me that's different to the maintainers and to the designer as well so it's like a weird i don't
know it's like a nice spot to be at where we're like all thinking about like almost the same thing
i mean like oh but when i look at green i see this when i look at orange i see that and it's like
wow we all see color very differently and we all like different color
as well and yeah it's like also getting to the user's perspective and being like oh this is
gonna be too smart for the user or this is going to be like enough for the user because i think
there's a statement that jeff likes to use every time i do like very complex things he's like no
that's too smart we do not do too smart things you need to like see that's very wise of him to
say that that's yeah you have to be very wise to dumb it down a little bit yeah and and i'm always
like but it works that's not the
point it's too smart yeah well you're probably finding like users are terrible at giving an
opinion on anything so from my experience what i try to do is i give them a task i say
accomplish this thing with this tool and talk out loud and that's better than just like showing them
two designs and be like which one do you like better they're just like they have no idea but
if i'm like okay go from here to here um that seems to work better because people can't articulate
yeah so i was like pimple is always better right so i'm like right now i have like a little jeff in
my in my head too smart for us yeah too smart no there's really should do a deep take of that
that'd be amazing yeah but yeah also like putting yourself in the in the shoes of a user and now
this is not just any user this is we're going to get people who are not using django try to use
django debugtober we're also going to get veterans who've been using django for the long
time and i know those ones are going to have a lot more opinions and i'm like that's fine but i need
to make sure that everybody is somehow happy i might not get everybody very happy but somewhat
happy is is good so that's what there's sent there's century for the advanced use cases right
i mean so yeah you gotta draw the line somewhere yeah so i'm like as long as we have something
going we could we could definitely turn it around if there is actually feedback that we can work on
but if it's just like random being like oh interesting
color or i don't like that color i'm like okay any suggestions you have you know yeah yeah cool
very exciting yeah and also calling out uh other people who want to get involved because
once we have that like the designs in place we would want people who would want to implement them
into our project we'll be open to getting more contributors there are also new issues that you
could work on and you could reach out to me or anybody else on github we're pretty nice we're not
mean we're nice
we are accommodating so you could reach out and start making an issue all right good pitch
carlton you have one another one from adam hill i think yeah another one from adam so we had adam
on last episode and he's just non-stop as we discussed with him last time but he's um got a
new project django lsp so a language service language server protocol in django it's i don't
know support um autocomplete for your um settings for i think he's getting into models he's looking
he's looking at all sorts
it's another several of these now there's like that one josh josh thomas who's got um another one
he's got uh django language server which he's got um yeah completions there's another one which is
um django template lsp so there are several in this space as well as um what is it the
hang on i can't think it it's called um zuban which is a language server written by the guy
who did jedi so the gem jedi is the um long time static analysis and autocomplete library
for python he's written a new version in rust that's got django model support as well
and it just goes to show that you know you can do tooling for dynamic you know you know libraries
yes they leverage stubs where stubs are available but you know they also are doing custom logic to
get those all the completion in these other places and it's not like we have to rewrite the whole
language in rust in order to get decent autocomplete in python it's really exciting time so there's four
there but the adam's one came up this week and i was like wow him and josh need to get together in
the room because adam's got his jangles project and josh has got his um django bird project and
then they've both got language servers it's like do we need some sort of celebrity death match at
django contest which one i'm going to use or something i don't know like x factor you're
going to have like one direction whatever i mean ideally they could collaborate so they're not
reworking but you know if we have to steal cage match to decide the winner then well but this is
for people who don't know there's history of this in the django ecosystem around migrations
there were three leading ones at the time
and borrowed from one another and then south from andrew godwin was decided but you know there are
three really strong ones done so there's going to be the same with apis and it's you know you know
it's it's a sign of fertility it's not a bad thing when there are multiple options in the ecosystem
yeah and i mean i didn't know that about migration so i learned something oh okay oh good yeah yeah
yeah yeah and when when carlton said jedi
my mind went to star wars i was like solid well and even i should double check so um russell keith
mcgee did one of one of the three um andrew godwin did one and i'm sorry i forget who the third one
but there were three big ones at the time and i i'm pretty sure there's some talks that i think
russell and andrew have given about as well there's a panel there was something i saw where
they went into the history of it um it's taken me a while to sort of piece that all together too
so um yeah sorry to the third one we'll look you up um for me
packages django link check which checks broken links on your django site goes through your models
um pretty cool i should use it more uh and i actually was thinking of it because i was
looking through something recently and i saw a broken link and i was like oh
so this is a long-running um project and it doesn't have a ton of stars but like we all have
broken links in our stuff so check it out seems pretty mature yeah and then i'll switch to books
i'll go first
i'm gonna pick a lightweight one this is called a history of the bible
by john barton who i think is a what is he's like a cambridge or oxford professor
one of those oxford um but actually interesting so treating the bible not
you know as a religious text per se but as a book and talking about the different authors
and how it's interpreted in um judaic and christian traditions anyways sort of nerdy but i like that
kind of stuff and this is actually my mom's copy i mentioned my mom's really into this stuff i mentioned
my mom i was like this book sounds good and she's like i've got a copy so um wow little little light
reading does it give you like the uh how the different versions came to be and is it like
just from like translations and yep yep all about that the different authors and stuff and
to me it like enriches whatever your belief system is to know about these things um so yeah
yeah are you going to write about it or share something about it oh god
um
uh we'll we'll see you could email me i don't mind reading i don't know if people want my
religious hot takes i think i've probably shared uh but yeah but i i'm a fan of studying anything
um yeah yeah maybe i would i know i've actually i have been reading a bunch this year so
i just finished a couple books and i was like should i do a write-up and i was like
kind of lazy but i was like there's some you know this is like the post-lm world like
just yeah the exercise of writing an essay forces you to come to terms with your own thoughts and
yeah you know there's
you know there's a lot of things that i've read and i've read a lot of things that i've read and
i'm sure it solidifies a book in my head to do even a quick take on it like for example i just
finished um normal people by sally rooney which i know is like a big thing and i had thoughts about
it so um yeah maybe i'll do that my tldr is i i enjoyed it i think i would love it if i was 25
at 45 i couldn't help but being like she's so 25 but um i mean you know come on all right anyways
uh
carlton you have a you have a book i don't have a book i have a course um by david beasley it's on
github so uh we'll put the link in the show notes but it's called python mastery um and there's a
pdf and there's a whole folder full of exercises and you sit down when you're you you look through
the pdf and you sit down with your editor and you write the thing by hand and it gets into
all of the tasty bits of python which so it's skates where the puck is going to be
carlton would be the told that we shouldn't go anywhere near but metaclasses and
you know the data model and you know get really in there it's it's practical python is the name
of the other one and david beasley is taught this course um as a paid course is stop teaching it
um and made it freely available and i i really recommend it he's also got an introductory one
for people who just want to learn python um which is worth checking out as well but that's not the
one that i'm super interested in i'm super interested in python mastery which is about
these more dynamic aspects with the analogy yeah
yeah
where i think the excitement is um now i know you know people are more interested in static
types and whatnot but i think actually what's python superpower well you know
yeah i agree well something will skate to where the puck was 15 years ago i think is in this case
you know like crossword puzzle for python yeah yeah that's right that's right but um this one's
called python mastery and the reason i wanted to recommend it so we talked to time and time
again about lmms and then to you know they're taking over the role of coding and then dumbing
us down and it's like well okay if we stopped going out and doing manual labor so we need to
go to the gym to keep fit well here's a way of doing some mental exercise to keep your programming
chops and learning something which is perhaps a little left field that you wouldn't do in your
day-to-day work but is really going to make you a better python programmer belda you've got a book
i do it's called the kite runner by khalid husseini
and it's like historical fiction and this book is gut-wrenching but it does he writes beautifully
and you get to have like a history of how afghanistan was and he's also american so
he has both perspectives and you see how they were like how people's lives were well
yeah how people's lives were before the war after the war people who moved how the different culture
customs some of them were maintained others weren't and it follows one particular person
who goes through a lot of things a lot of gut-wrenching things so it's if you want to know
it's like as i said historical fiction so most of the places actually do exist
the places that he mentions actually do exist but yeah it gives you a different
perspective of like things specifically in afghanistan being also from like a place where
it's war-torn and it's it's gut-wrenching to be honest so i would say you read it at your own risk
but the literature like the literature itself is very rich in terms of how the user tells you the
story the perspective he gives you the story and and how he builds up like anticipation of
one of the things that's going to be really impactful in the book and how he referenced it
it at the end as well and it's so good
it's so good it is so good i like it because it's like it's a fic it's fiction but it it also has
some history and it's like half the things i thought would happen didn't happen but they
happened in a different way and which is like more mind-blowing i'm like wow wow but yeah i'm trying
to read more of khalid husseini's work because he has written other books like a thousand splendid
songs and something about the mountain moved or something but yeah i'm gonna take a time out before i
pick up his next book because that was just too much yeah they're a little intense
they are very much so so i'm like i'm gonna be like i'm gonna pick up other books in like two
three months and then i'll i'll get back to the a thousand splendid sons but i highly recommend
um maybe as our last question um magic wand velda what would you change about jango apply that one
liberally so code community
docs packages podcasts whatever what would you improve timing like timings of how things
progress is what i'd say i'd improve like in terms of we've been trying to like either build
out the website page or improve like how our interface looks and stuff like that and i feel
like we need i don't know if it's the time that we need to shorten the process of or how all these
things work but yeah if we could change like
the timings of what we're doing to like a little bit hasten the process so we're not talking about
a website in like two three years still and nothing's changed is something i'd like to improve
so don't come at me i am still in the company no no no no no i think we're in agreement
so it's like i do like i love the community i i wish more people also like get involved i wish we
also have a lot more money well
i'd say time and money i'd give jango a lot more money and i'll give it time
to hasten the process so i'm like yeah other than that i think everything else we have it like
nailed on spot on i am i am unusual for me i am slightly optimistic on this point um i know you
know jeff is the jeff triplett is the new jango president there's a new board they're doing a lot
of things behind the scenes um pie charm jet brains is doing some sponsorship stuff i know
there's ongoing efforts to actually have an executive director so
um i yeah i just want to mention that i know i know firsthand people are working really hard on
this and i do think things are going to come to fruition but it takes longer than if it was one
person and you know pc funding so yeah the trouble is the resource for any given task is very large
and so you know you've got your nice project plan and you assign a low resource the date
yeah yeah but yeah time and money time and money if we had that
we'll just be we'll be going on we would rule the world we'll be going to mars and jupiter and be like
hey jango is there too yeah maybe jango will be there the heat death of the universe jango still
be there um anyways thank you so much for making the time um and for coming on again it feels like
god what episode is this 190 something we should have had you on earlier but so glad you could make
that we were trying we were trying for a while so as part of it was scheduling you were busy and
there was stuff last year
yeah yeah yeah and i was also dealing with like moving and settling in and
figuring out life well there's something to that um yeah yeah we can't tell her that carlton that's
you know it's like i remember my parents saying oh when i grew up and i was like what are you
talking about you're so old and now i'm living it i'm like oh god like you don't know anything but
it's to be discovered right you can read about it but then you have to live it and
i'd be happy to be invited again i i love hanging out yeah i know this is
how it's done people this is how you just a meteor you know 2023 to now so you know i'm like maybe
if i could come in and like 290 or 390 celebrating 100 more episodes from this one i'd be happy to
yeah yeah i'd also love to work with either of you on like open sourcing things and yeah i think
neapolitan needs some docs carlton has a specific way he wants to do things so i'd be happy to help
yeah but he's also lazy and
the right way so if you did it he would probably he was like is that fair to say carlton
lazy is not the right word yeah no i mean the bottom line is i haven't he's on my backlog to do
you know a nice tutorial i just haven't ever had i'll do this i'll do this tutorial i'm
so like you know if but you know velda comes along with i actually use your product
the things that bugged me and these are what i'd like to suggest that is valuable what what i find
frustrating is when people turn up and they've got no familiarity with the project they're not
using it and then they suggest something which you know these increasingly these days has come
out of a machine it's like no that's not helpful um the builder from our own experience turning up
and making a contribution yes that's not helpful maybe maybe when you have a small lol a revsys
official blog post on client stuff using open source tools referencing neapolitan
just sort of throw that out there yeah i mean when i was getting frustrated jeff was like go talk to carlton
or make a br to his whatever documentation and get it done and then when he saw you at the at the
conference before i did he's like that's the person you should drag and i was like i just
i'm meeting him for the first time i don't want to be like hey i hate you don't be shy don't be shy
anyway we've really got to wrap it up we can talk all day yes okay yeah sorry so
thank you again for coming on djangochat.com and we'll see everyone next time
this episode was brought to you by button down the easiest way to start send and grow your email
newsletter