Freelancing & Community - Andrew Miller

This video features Andrew Miller at DjangoChat 2026 .

Freelancing & Community - Andrew Miller
0:59:16
Published February 5, 2026
136 views

Andrew is a prolific software developer based out of Cambridge, UK. He runs the solo agency Software Crafts, writes regularly, is a former Djangonaut, and co-founder of the AI banking startup Hamilton Rock.

🔗 Links

📦 Projects

📚 Books

🎥 YouTube

Sponsor

This episode is brought to you by Six Feet Up, the Python, Django, and AI experts who solve hard software problems. Whether it’s scaling an application, deriving insights from data, or getting results from AI, Six Feet Up helps you move forward faster.

See what’s possible at sixfeetup.com.

Summary

Andrew Miller describes six years of freelancing, where long-running client engagements make a reliable pipeline and manageable context switching important. He built that pipeline through communities, LinkedIn, and a sustained writing habit, and advises freelancers to draw on broad perspectives, take action, and—based on his experience—not start freelancing without substantial skills. He is now splitting his time between freelance work and Hamilton Rock, a fintech startup for small US e-commerce businesses, while building with Django and exploring how its forms, template partials, and renderers can support reusable interfaces. He also recounts how Discord moderation, a Cambridge Django meetup, and other community work helped him grow more confident contributing back to Django and open source.

Key takeaways

  • Long-running freelance engagements mean keeping a steady client pipeline matters, and juggling more than a few clients can make context switching difficult.
  • Miller recommends that junior developers gain experience before freelancing, while using writing and community participation to demonstrate expertise and build relationships.
  • His startup, Hamilton Rock, serves small US e-commerce businesses and is building financial services with Django, including an append-only, double-entry ledger.
  • Miller keeps business logic in Django forms and querysets for now, and experiments with renderers and template partials before adding third-party component tools.
  • Community roles, local meetups, and structured opportunities to contribute helped Miller build confidence and make time for Django and open-source work.

Summarised automatically from the transcript.

Transcript

11,824 words · auto-generated Show

Automatically transcribed, so expect mistakes in names and technical terms.

0:00

Speaker 1: Hi, welcome to another episode of Django Chat, podcast on the Django web framework. Carlton Gibson joined as ever by Will Vinson. Hello, Will. Hey Carlton Hello, Will. Today nice jumper by the way. And today we've got with us Andy Miller , who's big but very active in the Django community. How are you doing, Andy?

0:16

Speaker 2: I'm good, thanks. I am well, yes.

0:19

Speaker 1: That's good.

0:23

Speaker 2: Yes, that is. The moniker I came up with as a teenager and it's stuck because it doesn't have any numbers after it or anything like that. So it's just yeah.

0:36

Speaker 1: That's still an achievement though.

0:37

Speaker 3: You know, like you you got your GitHub handle, you got everything else.

0:41

Speaker 2: Yeah, it's just it it's that one thing that very easily you I'm not that an it's it's an anonymous well it's not anonymous because if you search Nana Republica you will find me but it was just something that I came up with as a teenager and it stuck. So yeah So

0:55

Speaker 1: you go tell us go go tell us a little bit about yourself, Andy, behind the scenes and

1:00

Speaker 2: uh where to start. I Did CS at university. Um well half CS, half electronic engineering. Um, so not your your classic I don't know, is it your classical non-classical

1:13

Speaker 1: No, but that that's like electronic engineering is like CS with an upgrade, right? It's that's that one not type.

1:19

Speaker 2: Yeah, it it was the the the course title was Information Systems Engineering. There was 20 guys in my year and so that shows you how popular it was. You basically did everything from the transistor all the way up to software. And I leaned towards more software in my third and fourth year. Um I currently live in Cambridge. I do like the I do like the the broad thing. I currently live in Cambridge. Um, wife and two kids. Um, and I'm running I've been running and being as a freelancer for the last six years and starting a startup um called Hamilton Rock. Um CTO. That's like the basic intro, I think.

1:56

Speaker 1: Okay, that's brilliant. Um so wh where do we want to go? And tell us about freelancing six years is is long enough to um have sort of had the good times and the bad. So, you know.

2:05

Speaker 2: Yeah, well I I started in twenty nineteen because I quit My job, and we'll say no more about that that job except that I was I wanted out, but I also wanted to stay four days a week and not commute to London. Um so those that don't know uh UK. Cambridge is about an hour on the train from London or maybe like hour to hours. I'm like, I don't want to commute that anymore. I'd I'd had enough. So trying to find a job For four days a week before COVID and maybe remote or maybe local. Um it's not that Cambridge isn't a huge city. There's a lot of tech here, but it's not all web tech. Um so I was like, oh, I'll give freelancing a go. And here we are, six years later, I stumbled through COVID. um

2:50

Speaker 2: used some savings to kind of get me through some hard months. But then there were some good good times as well. And then I found regular clients um who have paid the way. It's like what one interesting thing actually I kind of reflect on for us as software engineers when it comes to freelancing. I have a like a few on the go at eight and one time, but they are much different to say a graphic designer or a copywriter or something where they might have loads of projects in a year. And when I say loads, it's like you're talking tens or maybe even get up to like a hundred in a year because they're short, sharp things. Contrast that with us, it's actually like more multi-year I found contracts. You have three or four. If you get beyond four, your brain explodes because you can't

3:36

Speaker 2: the context switching between different m businesses is just like, nope, can't handle that. As well as running your own business. So yeah, that's

3:45

Speaker 1: So I mean so I I when I was freelance I freelanced for a long, long, long, long time. And for me, the the big interesting question was always the pipeline was like where's the next project, the next client, the next um thing coming from. If you can do a hundred projects in a year, then it's kind of easy because you've always got a new thing coming along the pipeline. And if anyone falls down, then no problem. But if you've only got can have like two or three or four projects going on and they probably don't overlap that much, then one falls down. It's a it it can be really quite serious, right?

4:18

Speaker 2: Yes. I well you yeah, that's kind of where so I had a bit of a I learn a lot on like non-technical communities. So there's like a few freelance communities and I got one client through one of them, but also it's just been active on LinkedIn as we love or hate the place, just kind of being there and maybe not trying to do scroll, but just people do business there as um I ha I've got yeah I've got a couple of good contacts from from LinkedIn but generally it's um that's kind of where my writing habit one of the reasons for starting my writing habit I read a book I'd have to go and get it. It's in this room somewhere. Um but it was a kind of like

5:01

Speaker 1: My daughter says things like that. Oh, it's in my room somewhere.

5:04

Speaker 2: It's in the office somewhere. It's like I don't want to get up. Um but it was called The Manifesto of No Pitching. I I could we could put it in the show notes at some point. Um but in it it said writing is a way to demonstrate ex expertise.

5:18

Speaker 1: Yeah. Absolutely.

5:19

Speaker 2: And so I was like, this is a way you show how good you are. or like that you have the expertise to not have to pitch for things. Um I should say I also use like freelancing websites and stuff to find the initial gigs and kind of you just be everywhere. But that's kind of what started the blogging habit and that combined with there was two other people, a guy called Jonathan Stark, um, who is a software engineer by trade, um, and then he's gone into coaching and that kind of thing, and he does a daily newsletter. every day sends a newsletter. Some days. Yeah, but but i he it's very it's all plain text, like it's not fancy kind of like images and all that kind of stuff. Sometimes it will just be like him asking a question of his newsletter

6:05

Speaker 2: and be like, I've had this idea, respond back or like a question. It goes over the same points. He's just demonstrating his like he he he has a book called Our E Billing is Nuts. But then sometimes it's just an advertising for his Slack community and what's been going on. So it's like it's not yeah, it's a a newsletter every day, but it covers the same ground again and again from different perspectives, or it's advertising a podcast that he's been on or that kind of thing. So it It works quite well. And then the other one, I followed a creative called David Cadavi. He's an American who's moved to Colombia. Discovered him ages ago. And he put out he's about to put out his third book actually. He had put out three books. Um, he's like, I'm gonna get them wrong. The middle one is Time Management

6:51

Speaker 2: Not t not no, mind management, not time management, get that the wrong way around. He's about to do one about finishing and the first one was about starting, whole creative process. But the he brought out a book called The Hundred Word Habit, which is where the hundred words came from. It was like Just try and write a hundred words a day and see how you get. And so I was like, okay, I'm gonna do this for a year and try. I'm not doing every day because writing it the weekend when you've got small kids is just like

7:20

Speaker 1: you have a little support group moment there.

7:23

Speaker 2: It's like nope, nope, I'm just doing weekdays. I have control over my weekdays. So Yeah, I started where are we? We're 26. I finished it was two years ago. Yeah, twenty four twenty four.

7:33

Speaker 3: Twenty-four, because I I went through them again just in prep for this. Yeah.

7:38

Speaker 2: So yeah, I started and the main yeah, it was like this was the reason to start and then I had quite a lot of content loaded up because I'd been like active on the Discord and some people ask the same questions again and not the same people but new person comes in. How do I do user types? Or you see the same mistakes like people using underscore all and they're like, don't do that. Well, it's fine to start with as a prototype, but really you want to specify your fields because you're just gonna like bad habits that you see again and again and again. So I was just like, right, here's the content and you just write and write and write. And it's led places. And then I it's just forced me to also put ideas out into the world. Ones that were ready or ones that were not ready, um, but where I've had ideas for packages or for

8:23

Speaker 2: I don't know, community ideas, things have just Yeah, you've you've both followed along, um, and people can go to my website and just scroll through and search. But yeah. I

8:34

Speaker 1: know it's good it's a good effort 'cause you do keep it up which I'm always in breastfeed.

8:38

Speaker 2: Yeah, it's down to about once a week now. So

8:41

Speaker 3: Well, i I mean it reminds me of us in a way, in that you started off with these foundational things of like, you know, models, templates, URLs. You know, our early episodes were We're kind of like that, almost like university courses or like sections from a book where we talk about Jenga Rest framework. And then once you exhaust that, then I saw, you know, for you, then you You know, you do like a ten part series on building something from scratch or you'd have different ideas. It's it really is that that muscle of like being forced to think of something and um Because otherwise it's so easy to have a thought and then, you know, something happens and then, you know, off it goes and you know I I find it's it's you have to think about it as doing it for yourself and then everything else is a benefit. But there are these huge benefits that you don't

9:26

Speaker 3: But you can't it's not a one-to-one thing, you know.

9:28

Speaker 2: Yeah. Exactly. It was just I'm doing this goal and I'm just gonna see where it leads and just try and just like keep keep pushing it. It was difficult towards the end. There were some and over holidays it was like, what do I write about? And there were some days I was like , Eleven o'clock at night being like I have to put word pen to paper or metaphorical paper and just get something out But yeah, it was just doing it for myself and just push and the benefit and it's

9:56

Speaker 3: just not a l it's not a lot of words either. I mean I re I rem I guess y you started doing parts, but I mean I remember, you know, 'cause a number of them we we put in a newsletter I would regularly on some of your technical stuff be like it was like a cliffhanger, you know, it was like I was like, wait, keep going, keep going. Like, how could you I I would almost find that the hardest is like cause for me if I finally get something going, I'm like, alright, let's let's just get it all out. Um poetry almost to like be

10:24

Speaker 2: Yeah, the cliffhangers were kind of like when I had a series, it was like, oh great, that does a week or something because I'm thinking about it all the time. Like you write it and then it's like, what's the next topic? So doing a series was actually easier to some extent because you go, right, okay, I can just break it at different points and For me it w yeah, I was like, I could have written it all in one go, but it was nice just to kind of go, right, that's me done for the day, move on. And You're probably some of the later posts, like even the ones that I'm writing now, are probably going to be slightly longer because I'm like, okay, this is my post for the week. I'm not going to intentionally split it up for a daily thing. It's I should probably take some of those with long those series and concatenate them into longer posts at some point, but you know. Maybe A.

11:07

Speaker 3: I like this. I like people doing this. Eric Mathis also has his mostly Python, you know. I think I think there's room for technical series of things. But Carlton, you were gonna make a point there.

11:17

Speaker 1: No, I just uh I don't wanna d d swing away from writing, but I did want to cut back slightly to the freelancing just before we move on and leave it. So you're working you're doing w doing startup now. Is that is that are you still freelancing as well or are you doing the the startup full

11:32

Speaker 2: time? Um half and half. I am full time on the startup and have been for like the last few years. And

11:40

Speaker 1: full time on freelancing as well.

11:42

Speaker 2: Yeah, I'm I have a couple of maintenance contracts uh and some people paying off bills and then I've got like an advisory role. I do need to go back and do a I think I'm tomorrow I'm looking at my f financial planning for the year and I'm like, I need to probably go and do a bit more freelancing this year just to Yeah. Cash flow.

12:03

Speaker 1: So so what I wanted to ask you about was then how you're feeling at the moment because you've been you've you know, six years is plenty of time to see the ups and downs of of the business and see how it works and you know you go through a you know, quite a bad recession previously and then there's this current situation. And I wonder what what are you are you optimistic, are you pessimistic? What words of advice do you have? That kind of you know, how do you s how do you see the situation currently 'cause a lot of people are worried and struggling.

12:32

Speaker 2: Oh that's a that there's a that's a big question. That's a deep question.

12:36

Speaker 1: Oh that's a deep show right Yeah.

12:41

Speaker 2: Like, on the face of it, I wouldn't recommend freelancing like if you're freelancing seriously, I wouldn't for me, I wouldn't recommend juniors do freelancing because as much as it's eas easy way, it's an easy way to then kind of give freelancing a bad name or contracting a bad name. I because I think I benefited from doing freelancing what, ten years no. Yeah, almost ten years into my career kind of thing. Like I had some experience to kind of go, Yeah, I can build things rather than people going and I've seen it in Discord where people come in and like, I need to build this for a client and I have no idea and you're like surely you need to have some idea of how did you like but it's blindly you don't want blind leading the blind. That's just my but that's for me how I feel about the current situation. Um personally I I put it down to faith.

13:26

Speaker 2: Like I I believe I'm a Christian, I believe in that, but that's and that's kind of part of the reason I did like I I I trust something else. I I trust God and that's part of my like kinda why I went freelancing as well. Like I was like, I'm just stepping out and trusting that money's gonna come through at the right time and the right decisions are gonna come, like people are gonna show up at my door effectively. And that's kind of happened like where like even the um kind of the co-founder, how my co-founder reached out or was looking for someone. I was just like, I wasn't expecting to get that at all. Um we can talk about that in a minute, but like it's just that I think you've g just gotta step out and just try. It's not sitting still. It's doing the cold outreach, doing

14:11

Speaker 2: kind of applying to all the things, but it's then going what 's the right thing and just I I that's not really an answer I know, but it is an answer in terms of like it's you you gotta do all the right things and there are plenty I'm not gonna like go look consume knowledge. Like for those those that want to start businesses, there's like hundreds of podcasts. And during COVID, I was listened, binged listened to hund like hours and hours and hours on general and not even and don't limit yourself to like software freelancing. Like listen to design freelancers, listen to copywriters, listen like get why perspectives and be don't be the only be the only software person in that room. Like I'm definitely part of some communities where I'm the only software engineer.

14:57

Speaker 2: And it's like great. That's like if people are gonna come to me if they have software problems. I think

15:03

Speaker 3: you have a podcast too. Like we we shouldn't sleep on that, right? In progress that you've been doing for a while. I think I was one of your very first uh problems I signed up. Yeah.

15:12

Speaker 2: Yeah, I I started that to just experiment with a platform that kind of someone else had put out as like a private podcast. And I was like, I want to experiment with this. So I was like, I'm just gonna talk about and Like experiment with it was like for me, it's also with the content game, it's like start with writing. Okay, I'm comfortable writing. Start with all then go to audio. And then maybe, I'm not promising anything, but maybe this year I experiment with video. Like I've kind of got the setup I did get this all this set up to do video, but I hadn't got the kind of screencasting. I need to sort that out in the editing process and kind of That's the next stage that if I have some time this year, maybe I'd look at videos like one video I'd love to do or series I'd love to do is a video series of the official tutorials.

15:58

Speaker 2: and just step that through and keep it to the LTS versions. I'm not saying every change I'm going to re-record a video. But the idea of again when people come to the Discord or to the forum, they're like, I want to watch a video. And you're like, okay, YouTube 's not great. They teach a lot of bad practices. We often come people come and we come fixing like they're not using forms and that kind of like there's not a good set of community videos. There are some, but they're A lot of them are, should I say, want people who want to kind of show how to be sell courses or want to be entrepreneurs or go from zero to hero, which is not I'm not saying there's anything bad, but there's no one from the community that I see doing

16:36

Speaker 3: Well they don't get any views. Like there's a couple I I'm not gonna throw out names on this, but there's a couple people I see their content and I'm like This is this is amazing. Like why why would I ever do a course and yet they have a fraction of the views of someone who Does a lot of things on a a lot of topics and then, you know, they get they're helpful, I guess, on Django, but they complete they're not Django people, right? They're not even web people, so they miss so many best practices and yeah, I I feel the same way. Uh I mean, there's some people who do good stuff, but it's interesting that like it like no one at a Django Con Is doing has like a million views on YouTube. I mean, same thing in Python. Python's the same way. No one who's at a PyCon or involved in Python is one of these people making a million

17:23

Speaker 3: A few subscribers.

17:25

Speaker 2: There's this disconnect, I think, between video and Python Django. I yeah, don't know what it is. It's just the community aspect. I'd want to be someone in the community doing videos, if that makes sense. Like Will, you're probably one of the Top people in that. Like I the the I have visible

17:40

Speaker 3: right. Yeah. It's but yeah, anyways, I don't yeah, I I The th the thing is video takes a lot of a lot of work. It's a totally different skill set. Also the people looking at videos, I think, are younger than us, many of them, you know, so like there's a whole bunch of factors. Um and as I say, I think the thing is writing Writing is so e like you can write from anywhere. You can write from a cafe. A video, like you need so much setup and there's just so much more production involved for it not to look terrible. that it feels like if it misses, it's like a much bigger you know, it's like, I don't know, it just feels like a bigger miss.

18:17

Speaker 2: Oh, completely. And that's why I haven't done it today, because I've stalled on the kind of like, I maybe recorded one video. And then I was like, what do I do now in the terms of editing? And I'm just like, I was like, nope, okay. And just stopped. So I was like, writing, audio, like, because with the in-progress one. I've automated all of that as well. So I hit stop record. It churns a wave, does the trunk like AI does the transcript, opens a PR for me on my website or a view.

18:45

Speaker 3: I like your transcripts, by the way, because sometimes You know, actually often I I just I I like reading more than lit podcasts or vodcasts. So I just like blast through it. So I appreciate that you have that.

18:57

Speaker 2: Yeah, that was that was a Christmas project of I was like Whisper C C Whisper CPP does the audio to text and then I pass it over another does another pass I think with a local model to kind of categorize it and do the section headers and stuff. But yeah.

19:16

Speaker 3: Well I'll say one more and the Carlton has the heavy questions, but I think we're sort of circling around Like you seem to like freelancing, right? I mean, this is the thing, is that when you freelance, you your mind is so activated with different projects and problems that to go from that to working for one company on one code base is you know, it it's a tough transition.

19:37

Speaker 2: Yeah, I what's been really interesting is I think the last month has been intense and I come out of it and I'm like, wow, that was intense just to work on one thing week in, week out, day in, day out, kind of thing. 'Cause normally Like the last couple of months I've been focused on it, but in the evenings I've been I don't know, playing with other bits and pieces of Django or other little projects and side projects kind of thing. But it's just been all focused. And I've enjoyed it though. I've kind of enjoyed the progress I've made. And yes, yeah, it's tough. And I would have stick stuck with freelancing. And I will probably When this startup runs it course, I will be back, I think, freelancing. I've enjoyed it and I'll stick at it. But um Yeah, it's

20:23

Speaker 2: yeah, I've I've really enjoyed the freedom of kind of like freelancing and kind of family life and that mix. Um But it's yeah, it was an opportunity I couldn't pass up kind of like as things went along. Um and we could I guess talk about the startup now if you want.

20:40

Speaker 1: Yeah, tell us about the so come on, let's just we can 't. Okay.

20:45

Speaker 2: Hamilton it's called Hamilton Rock. Um I didn't come up with the name. That was my co-founder 's been working on it for years before I did. I I came along. Um And it's a I'm gonna call it a fintech. I'm not gonna call it a bank. While we do provide banking services, I'm gonna get like with the legalese here, it's We don't have we won't have a banking license in the US. It's gonna operate in the US. It's targeting small e-commerce firms. And so we're building banking and then we're gonna add. features and bits on top that target e-commerce firms and are specific for them. Um to date, I have just built the banking piece. That's enough. There's just a lot to build when it comes to kind of moving money and storing money and onboarding and All the extras.

21:30

Speaker 2: Um well

21:31

Speaker 3: floating fields, decimal points, integer types. Like that's a like we've heard some horror stories. I'm sure you have some, right? You want to you want to get your model fields correct.

21:40

Speaker 2: Yes, like so yeah, big in well I learned from last year with Octopus Energy and it was a I forget his name, but like Big Intel the fuck probably Yeah, on Zimbabwe. Um big ints on all my primary keys and all of that kind of stuff. Yeah, everything's stored as cents. I'm not storing dollars and days like, yeah, I'm storing all of cents and We're backed by Stripe, so Stripe do everything in sense as well. So it's just that one-to-one mapping. Um so far. Yeah, I think the biggest Yeah, the biggest interesting thing is I've been building our own internal ledger as well. And that's interesting. We'll see how that goes. Uh double

22:24

Speaker 3: book. Double book, I hope.

22:26

Speaker 2: Yes, double book. Um I'm using PG triggers and stuff to make it append only and that kind of thing. So It yeah, we'll we'll see how it goes. I've like I've gone, yes, this is how I think it wants, but it we've not hit production yet. So yeah, a lot of it is still theoretical in my head.

22:42

Speaker 1: So I I want to ask about about the complexity of that, because obviously that's quite a sp um, you know, uh a complex domain in and of itself, and it's got s quite s um strict business logic rules. And it's the kind of case where people would argue about moving um you moving away from Django to a certain extent and adding a kind of um service layer on top of that with a business logic in pure domain objects. And I was you know, wonder if you might speak to that for a moment.

23:08

Speaker 2: I 've kept everything I've kept everything pure Django so far. Um the So everything is either I'm using your library, Prod views, and I've extended that with extra like Ajax, hate is It's HTML, yeah, pure HTML, template partials, a lot of partials, a lot of HTMX, views. All the logic is currently in forms. Um most of the like internal logic is in forms and then manages query sets. It's all it's all there. Whether and The time I haven't, I've still called it a manager, is there's an onboarding manager which is like the only non -Django. It's just a class which holds onboarding, but onboarding is just pulling together different bits from the code

23:55

Speaker 2: base and it's just into one place. Um the place I pull out of it is in forms I make a call out to Stripe when I need to do API calls. And that's wrapped with catters. cat as is just its own serialization layer going from Django to Stripe data structures and back. Um and that's that's it so far. And so yes, it's I will say I need to go one of my tasks for either this month or next month is to sit down and I've been using Claude Code a lot um to get it all out. And some of it I do need to go back and just read and I'd make sure that it's doing it the way I'd like it to do. So when it does come to compliance regulation, I understand what's going on.

24:41

Speaker 2: I do like it's working as it should do, minus a few bugs which I'm fixing, but that it's that comp I I heard the term the other day, comprehension debt. So making sure that my understanding and AI's understanding is in line and I've been going so fast that I know it's not aligned right now. And so I need to go and Make it alive.

25:02

Speaker 1: Can I just before you cut in real, I just want to talk about that thing about putting your logic in forms because in what in from a sort of pure architecture point of view, that's like oh horror, because the forms are sanitizing data as they come in and then you've got the the the the sort of the business logic and the save method or whatever to to check that your business rules are implied. But what I like about that method that that approach is that It scales to quite quite nicely. And then if you do need to separate those two steps, the data sanitation from the business rule, it's very easy to pull it, pull them apart later on.

25:33

Speaker 2: It y I I found it's like for me it serializers or forms of the place you put logic in in Django. I put in air quotes Because like without inventing a new class, that's the place I put it. And if I was, I'd probably shift it into query sets or managers as a like if it needs to across multiple models or multiple like But um yeah, I've so far I want to try and keep to that that kind of architecture as long as possible until it kind of breaks down and we'll see what happens then. But Yeah.

26:05

Speaker 1: But at that point you've got better pro you've got you know so not.

26:08

Speaker 2: I got other people there to fix it. I'm not writing code at that point, hopefully.

26:15

Speaker 1: Well, you were gonna

26:17

Speaker 3: I mean so many things to to think about. I I w I wanna give you a chance to talk about I think you published this yesterday, model renderers, uh so component stuff around Django, which is really a deforms. Do you wanna Can we mention more about that? That was kind of interesting. We'll we'll put a link in the show notes to this post.

26:35

Speaker 2: So one thing that I played around with when I was styling up the start uh Hamilton Rock. I was like, I'll play around with form rend form renderers because why not? That's I want I want to try and reduce the amount of templates that I'm creating. So when it comes to rendering a form, I want the form to look the same everywhere. Ideally you just do the brackets form and you're away. And so I found myself I created a project form renderer. um which has some in it. And then I ended up in that same file. Well it's actually one template file using partials. So I've got one template file with a load of partials defined which define widgets and the forms. uh and you're just referencing partials from the renderer and I'm monkey patching the widget templates.

27:22

Speaker 2: So that's just two files, that's all your form styles done, which is quite nice. Um and I was wondering Wouldn't it be nice, or I say nice, wouldn't it would it be an interesting experiment to see if like you could define a model renderer? So like from your from Neapolitan Carlton, you've got two template tags of object detail and object list, I think.

27:44

Speaker 1: Yeah. Yeah. Just to render a table or a single instance.

27:47

Speaker 2: Yeah. But essentially taking that and making it configurable from a class like a form renderer. um and then have maybe a f a link to the form renderer for that model as well. I I don't know what this is just this was an initial idea that I had at the end of last year and it's like the idea of you define that and then go, right, okay, if you want to customize how your model 's rendered on a page and you just go object or object list and you've you're kind of one one idea I'm generally playing around with with the um introduction of with form renderers, with simple block tag, with uh template partials, I think we're very, very uh quite close to having components in core Django, but they're just not

28:33

Speaker 2: they haven't been drawn together yet into this is how you do it. Um I I actually have one tab from Django it's Django Cotton's I think it's their readme. Um they have a table which compares I'm gonna pull it up now. Uh give me a moment. There we go. It's got cotton, Django Components slippers and template partials. And of course it's saying cotton ticks most of the boxes. There's one which uh Django Components does, but Oh, cotton doesn't do. But I'd like to just at some point spend some time going through that and being like, oh actually, while Django Like, well, partials doesn't do everything, but if you do partials and then simple block tag, you get

29:21

Speaker 2: mo like extra like it's like what parts do you need to bring together from core Django to actually have something comparable? And Yes, the DX like Cotton provides a nice user ex uh developer experience, but I'm like how I think we're closer than we think we are in Core Django. So I'm just kind of pushing at those boundaries. And especially where like I take the another blog post I wrote recently about like icon packs using template partials.

29:49

Speaker 1: And

29:51

Speaker 2: I didn't come up with that idea. I will say Claude kind of came up with that idea and I pushed it a bit. And I'm like, oh, that's interesting. I had never thought to use partials like that, but it's just, it did it. And so I'm like, okay. What else can we explore with partials and the newer things that haven't been experimented much with in the later releases?

30:13

Speaker 1: Yeah. No, I mean I'm t I'm totally with you on all of that. I find, you know, uh I'm still finding template partials to be like revelation Revelatory and like then the patterns they enable and this this idea that you've got one template file with the par the related partials in it and it's like, oh it's that one, it's that one, and they're all next to each other, and it's like that's that's lovely. And then for for the full for the kind of the component problem, which I think is uh think of as the kind of problem of slots, you know, where you need you've got an out you've got a s a s a layout kind of and you need to inject bits into it. And still The DTL by itself, even with template partials, doesn't do that perfectly. So that's when the cottons and the whatnot. And I use um I use HT um Pi for this, which is um where you define these fragments in um

30:59

Speaker 1: in Python. And uh I like it, there's cotton, there's Django components, there's several options out here. And it's just all of us together struggling towards what are the patterns that we'll be using in five years' time. And I think it it's really super. It's just a lovely time to be working in Django f around this area, I think.

31:20

Speaker 2: Yeah. I I I'm just I'm resisting essentially installing one of those third party packages. I'm just gonna every time I come up I'm like, what can I do in Django? And what can I patch in Django to make it work? And I will probably need to install one at some point, but for the time being, I'm like How far can I abuse what's there? Um to see

31:41

Speaker 1: that's a really good technique. I I so I used used to maintain um crispy forms. I used crispy forms for a decade. And when I started the new project, I was like, I'm not gonna install it. I'm gonna see how far I can get with the renderers and template partials. And and I still haven't installed it. I'm like there are bits where I'm like, oh, I could just do that dynamic layout. But I'm like, okay, what do we do? What do we do And how far can we push it without the dependency?

32:03

Speaker 2: Yeah.

32:03

Speaker 3: I think that's ex that's experience talking though. Sorry to jump in. Like you were saying, you know, ten years and then freelance. Like because a freelancer would just pull off the shelf, oop, solved, solved, solved, right? Whereas With a little more experience, you're like, even if I later go to it, I wanna play around and muck in there and have that deep understanding and know where that line is. But you don't know where any lines when you're starting out.

32:26

Speaker 2: That that's very true. Part of it as well is that for me as well, I wanna push I want to see what Django like I wanna Like if I hit the edge of like say an um it's like actually we need this small thing in Django to then

32:41

Speaker 3: template partials.

32:42

Speaker 2: Like template partials, but like what's the next is is it like um defining variables in uh in a template or something like that, which means you don't have to necessarily define I say a whole template tag's not a big thing, but like what identifying the small gaps that then if we do patch that, if we do decide to patch it, I'm not saying It's a definite, but it's like understanding where the edges are to then round them out. And then you go, ah, here's the component solution that we're looking for, rather than lumping more than we need into Django Core. So it's an experiment in that way as well.

33:17

Speaker 1: This is the way, I think. This is yeah. It's not only how we find the right answers forward, but it's how you develop your own mastery as well. It's you know it's win-win.

33:28

Speaker 2: Exactly.

33:29

Speaker 3: Well it and part of that is also just taking like you both of you have been talking about like, oh, this is what one does. It's finding yourself the time to do that. I think if you're if you're at a company If you're just endlessly reactive and dealing with pull requests, it's very difficult to find the time to not to learn, but you know what I mean, like to round it all out into to come up with these things. Because cause the business imperative is not for you to do that.

33:57

Speaker 2: Yeah. That's that's a challenge. And that's actually I I say one thing I'm in going to enjoy when when I'm I'm being positive when the company grows. is I want to carve out that time and make sure that Hamilton Rock gives back to Django and to open source and we make time for that thing because I know intrinsically that I wouldn't be here without Django, so I'm gonna make sure Django gets the support it needs within reason. Like we the but the business needs to function. But

34:26

Speaker 3: It's good marketing too, right? You'll get you'll get a good Django person out of it.

34:30

Speaker 2: Yes.

34:32

Speaker 1: And you're investing in the foundation that you've built your business on, right?

34:36

Speaker 2: Yes, exactly that

34:38

Speaker 1: It's not a stupid thing to do.

34:40

Speaker 2: No, it's not at all. It's like it makes complete sense. But you just you need to walk people through it and yeah.

34:48

Speaker 1: All of that's really exciting. Tell us what all the things you've been doing because Right.

34:56

Speaker 2: This is why I I read off the list, right? So

34:58

Speaker 1: Yeah, yeah, go on.

35:01

Speaker 2: I started I joined the Discord And I realized that was when I realized, oh, I actually do know quite a lot. Because as at that point in the freelance, I was like, I know what I know, I've learned. And then you go and you're like, oh, actually I do know quite a lot, because there's beginners asking lots of questions and Then I was asked to make be made a moderator and I was like, sure. Um and Tim was a moderator, uh Shim Schilling at that point. So we both did we're both very active and both moderators. Um I then went along along to DjangoCon and that was in Edinburgh and I really enjoyed that. Um Yeah, I was there for just the conference days that time 'cause I'd had family holiday during the sprint. Um Then

35:46

Speaker 2: I was just continuing to be active in the community, in Discord mainly. Um kind of did the for I'm more active on the forum now, but it's an open tab in my on my browser. Um started a Django social in Cambridge after hearing John's interview with you two. I was like, yeah, I could do that. Again, another another freelance marketing t like local freelance marketing tactic. I was like, let's just be the Django person that everyone knows. In Cambridge. Um

36:16

Speaker 3: and you're in Cambridge. Like, I mean, as an American, I th Cambridge is like, you know, it's not like the middle of nowhere.

36:23

Speaker 2: No. Um but it's Th there's actually there's not m there's a l there's probably more Django here than you've you realize, but it's all big life science companies, so they don't realize

36:35

Speaker 3: And ARM has a big office there too, right? I mean just in terms of

36:38

Speaker 2: ARM has a big office. And the university itself uses Django a lot as well. But it's getting into those big places and I've not been successful at all with that. But that's kind of like Yeah. But I've met a few people in in the community and other people in Cambridge that use Django and it's like, ah, we have there's some connection

36:57

Speaker 3: It's the same thing for me here, like uh MIT, Harvard, like there's a lot a lot of Django, both being taught and then also just the infrastructure. And yet when I've interacted with some of those people, it's like a different planet of because I'm like, oh Django, let's talk about it. But yeah, I haven't bridged that divide. I got I've given up trying, but it's It's weird that it can be the same thing and yet their world and my world are just like so radically different. I'm like, what?

37:24

Speaker 2: Yeah, that that's very much the case. Um I I'm looking at out. L last year I've got made an admin of the model uh of the Discord for because I also started the online community working group. Um last year I did the lightning talk at DjangoCon Europe about my hundred words.

37:44

Speaker 3: We have a link to that timestamped, so.

37:47

Speaker 2: And then um also did Django Norther sessions, which was like that was the starting point of me getting into contributing more back to the community as well, like code-wise and being less scared of those things, um, if that makes it like it's like not oh and I may i it forced me to make time for it as well. I think that's why I got in as well. Like Tim was like, you can do this. But I was like, yeah, but if you give me eight weeks to make sure I do it and I'm accountable to someone then it will happen and that's what happened. So

38:14

Speaker 1: you need a deadline. There's a freelancer talking. I need a deadline.

38:17

Speaker 2: Give me a deadline, give me space and I'll do it Do

38:22

Speaker 1: you well y I would consider you to be one of the more active and more give people give m more time. So I you know, I really salute you in everything that you do and the things that you put.

38:32

Speaker 2: Yeah, I it's I realize it's one of yeah I've described it. I uh goes back to university. Like I in my when I was a teenager I was like didn't quite have a I d had friends, but it was like didn't feel quite feel when to university I was like, oh I found my people. I feel like I found my people again in the Django community where it's just like you have to g walk in the room at a conference or even on Discord and you're just like You feel like we're friends and it's just like all talking the same language, same ethos, same community, right?

39:01

Speaker 1: Yeah, yeah.

39:05

Speaker 2: What's next?

39:06

Speaker 3: And I would I I would say from an outside perspective, you you came in like this like meteor of like knowledge with this like hundred words where You know, cause Jeff Triplett and I doing the newsletter, we're always hunting around for stuff and suddenly it was like, oh it was like, oh, again, again, again, again. Like, I think I even told you. I was like, I would Would have put like almost all of them in there, but we can't just make it you know

39:27

Speaker 2: same thing, same thing with Adam

39:28

Speaker 3: Adam Johnson. I'm like I can't it can't just repost everything you do, but um But I think of you know there's I'm sure there's I'm sure there's other people out there who have sim you know similar or more knowledge than we have, but they don't commit to doing something, right? Or they write Amazing blog posts and then five months passes. All right. And there needs to be some consistency and commitment to I guess get on the radar of people as, oh And then from there all the you know, I I think that's the thing is like it's easy as a practitioner to think I need to get better at coding, I need to get better at Python or Django. And it's like you cut y you gotta like Put your umbrella wide and uh see what falls in. You can't just be narrow and in a cave somewhere hacking away.

40:14

Speaker 2: Yeah, i I it was it's definitely that consistency when going back to the blogging or it was just like I'm just going to be consistent and some of the posts aren't about Django at all. Some of them are like, I did this on holiday 'cause but it was I'm going to write every day and I'm going to And yeah, I could have dropped off after that, but it's just you after a few weeks or months, you just the consistency's there. It's a habit and Yeah. But

40:39

Speaker 3: it's a community thing too. I I mean 'cause I think about this again, like I feel like Carlton and I we started off with I think pretty high quality takes on Django, but at a certain point, you know Now what? Right? And it's like, okay, well now we'll talk to people in the community or and I I've uh come to be more accepting of the fact that There's nuggets of information. Sometimes we go technical, but sometimes we're just chatting as one would in a hallway or at a meetup and you know, many of us are working working remotely, so there's value in that, even if even if, you know, it doesn't have to be reinventing the core of Django every every podcast to be dub value. But you know, part of me thinks like, oh, I should be like, you know, more more hardcore with everything all the time.

41:25

Speaker 2: No, I think the it's what's the the classic phrase, come for the code, stay for the community. It's this is a really good insight into what we're thinking about as a community, like getting the breadth of voices is like, ah, this is where we're where we're thinking as a community. And the the the con the the conferences are great. Like, you go there, but and Danielle kind of made this in the Lightning Talk in Dublin, it's like You it's it's it's very exclusive. It costs what, easily a grand even to get there, right, for a conference. That's And probably more in the US. I don't know. I've not tried to cost out the US one, but

42:05

Speaker 3: not within the well, yeah. Well, okay. Yeah.

42:07

Speaker 2: Yeah. But m the getting to these places is very, very expensive for most people. And so having online community and this is kind of why where the online community for me started is like how can we make the online community replicate the in-person conference for everyone that doesn't get that wants to be there but can't be there for whatever reason um and how do we experiment with ideas that are just yeah. It'd be is it uh like monthly onboarding like an onboarding call or a community call where people just get and the like the DSF office hours is part of that to some ext like that's one example of it that kind of people just jump on a call once a week. I don't get to join because it's dinner time. But that's

42:48

Speaker 3: that American bias, I know.

42:49

Speaker 2: Yeah , but but uh but it's like the like for example, I know I've got community inside On the Discord, we've built up like a staff team of helpers and moderators. And the private staff off-topic channel is active like pretty much every single day. There's just talking and checking in with people. And you it's private because it's the staff channel. But like I could see that being replicated. It's like you get a small group of people and you just You slowly build it up and you can have community online, but it just takes time and effort and on-ramps. We've talked about you've you both have talked about this before. It's like smoothing those on-ramps into the community and it not being You have to do XYZ. It's like just help out.

43:35

Speaker 2: And but it is that consistency as well. Like you so many people drive by, ask for the help, or their homework assignment or whatever, and disappear. The ones that stay around are the ones that become part of the community. It's and they're there and they choose to be a part of it.

43:51

Speaker 1: How do you handle the um the uh setting limits to your commitment because you've got young kids, you've got a business, you've got another bit your freelancing business on the side that you're still doing, you've got All the ko all the time you spend on Discord, you go to the you said you've got the forum open, you've doing these working groups, you're you you comment on almost every you know significant debate I can do, you've got your blog that you're running. How do you avoid um doing too much?

44:18

Speaker 2: With great difficulty. Um I my calendar is an absolute m well, it looks like an absolute mess to but it's like very strict scheduling of when I do things. Um

44:32

Speaker 3: so time boxing everything though.

44:34

Speaker 2: Titan boxing, like I uh for example, um yeah, every night of the week is probably there's something there, but it's like doing either date night or I'm doing Django stuff or it's uh I do Cub Scouts, so doing Cub Scouts or it's like or but then I've architected my life that between eight thirty in the morning and 330 ish, I can do what I like. So like one thing that happened during my freelance career was one client was having a production issue, but I had at that point had a day rate to or my day booked in with someone else and I was like, I can't have this. So I've over the six years structured it so that people pay me monthly for a service.

45:20

Speaker 2: But then it then gives me the opportunity to choose how I run my day, run my week. I have complete freedom. And that's not so it does mean I can jump on a call at any time. Like it's not I'm I have some standing calls, but but it also means I get to go climbing every Monday. Or I can go out for lunch with my wife on Fridays because she has Fridays. Like it I've worked to create that flexibility and therefore it means I can stay engaged in different places and also worked with the freelancing to get my prices to a point where I don't need to be working every single hour of the day generally to enable me to do the other things like write blogs and it's it's creating that margin and then I fill the margin, but that's

46:05

Speaker 1: What you want to.

46:07

Speaker 2: Yeah, with what I want to do and what I would like to do.

46:10

Speaker 3: That seems healthy. I mean there's a season to things, right? I mean, I feel like At some point I was writing very regularly and you know, all these things, and now I just talk to Carlton and Jeff, and then everything else everything else flows from there.

46:26

Speaker 2: But it yeah, that's why I went from daily down to weekly of the post. I was like, I've done the year but and I'd run out and I was like, I can't keep doing this because it was just all consuming for that year. And I was like Now it's got to be a weekly thing where I when I have an idea and if I skip a week, so be it, but it's like when I have ideas, I'm not gonna force them, but I'll write about them when they come. So

46:46

Speaker 3: Yeah. Well Carl and Carlton's always been a good influence for me because his kids are a little bit older than mine. Yeah, sometimes I would you know be like, oh I want to work on this thing, but I'm at the playground or I'm I'm doing this thing and Obviously I want to spend time with my kids, but he would always like, Oh no, that's when the deep thinking happens, you know, when you're pushing pushing a three year old on the swing for Forty minutes. You know, it sort of frees up the space. It's the equivalent of like a Kantian walk or something, but with kids, right?

47:12

Speaker 2: Yeah, exact exactly But

47:14

Speaker 3: it is true. It is true, right? Our brains are always going. Even when you're rock climbing, part of you is thinking about like, oh big in. Mm-hmm. Like

47:21

Speaker 2: Yeah, it the guy David Cadabee I mentioned, he has this thing about um front burner and b he has a in one of his books he talks about front burner and back burner when you're cooking and you have like the things you're focusing on in the front and that you might move something to the back. when you just you need to let it simmer or something like that when cooking. And it's the same kind of thing with creative projects or code. It's like you may be focusing on something, but there's always background work going on and you need to push them back. You can't always be on something. So Yeah.

47:51

Speaker 3: Alright, should we go to projects and books phase of uh things? I'll say yes. I'll start. Books. I have been working through so basically you in Python build like a GPT-2 equivalent. So going through, you know, pre-training pipeline, I'll be honest, I haven't finished it. I'm like halfway through it. It is technical. Uh but it's super interesting. And I wish I'd, you know, instead I've been like I find myself drawn to, you know, like these books of like you know, people making snappy comments on AI, but anyways, build your own LM from scratch. Really good. Knows what he's talking about.

48:37

Speaker 3: Um You don't really know a thing unless you, you know, code it yourself from hand, not with Claude. So uh

48:43

Speaker 1: So you can't I was gonna ask, can you get Claude to implement the chat?

48:46

Speaker 3: Yeah, well no, I love I love your phrase comprehension debt, because I was I've been thinking about like what what is that? Yeah yeah, there needs to be a name for this, right? Like 'cause even if the code is correct and let's just assume that it is, if I didn't struggle and type it like 'cause I come from doing it beforehand. I'm like, uh, I go into these code bases and I'm like, what is going on here? Like, you know, it's like, am I losing my mind? It's like, no, I vibe coded that. Oh, that's why I don't I can't like just spin it up as much as

49:13

Speaker 2: yeah. I'm not gonna claim I coined that term. I heard it from a YouTube show on.

49:19

Speaker 3: It needs some

49:21

Speaker 2: term for that. Yeah. But uh yeah, it was an interview with um One thing on AI that I will say is that I follow a guy called Brian Castle, who's from Connecticut, and he has a site called Builder Methods That is he's doing very sensible takes on A. It's not all the vibe coding. It's like he's targeting professionals like ourselves. And Fanny.

49:43

Speaker 3: Oh, I know this guy. Or I don't know him, but I've I've followed a bunch of his stuff. He's done like a million different like YouTube channels and um

49:49

Speaker 2: Yeah, he's done a lot. It's he's focusing on doubling down on AI and he's produced some good tools that I'm interested in and been using. So Anyway, shall I do book? Shall I do my books or Carlton? Do you have a book?

50:02

Speaker 1: No, you do your book, Andy. You do your book.

50:04

Speaker 2: Um I uh too many to choose. Um I'm gonna plug Disclaimer, the author is a good friend of mine. Um for so for fiction, it's World of Ashton. Um it's a friend of mine, he has written a trilogy. Um it's like Tolkien -esque fantasy Um, so he's got a trilogy out, which is now in one big book, and then I'm subscribed to his Patreon, and he's got a quadrilogy or maybe more. that's like set forty years after the innette published book. So I'm reading like a chapter, the first draft every month as it comes as he's publishing it. And it's a very, very good

50:40

Speaker 3: This sounds like catnip for you, Carlton. You like these types of things.

50:42

Speaker 1: Yeah no I was just I was just thinking I could get that for the children

50:47

Speaker 2: Yeah. Um and then non-fiction, I one author I recommend, I think I might have mentioned earlier, Rob Walling. Um

50:54

Speaker 3: yeah.

50:56

Speaker 2: His book.

50:57

Speaker 3: Right, Microsoft.

50:58

Speaker 2: Microconf. Um, I've just finished reading his latest, which is Exit Strategy about exiting a business. I know I'm nowhere near that, but I'm reading it for context later down the line, preparing myself. But yeah, his advice and his is just very sensible when it comes if you're interested in building a software business. I'd highly recommend it.

51:17

Speaker 1: Um I've been reading um this little one by Anne Applebone called um Autocracy Inc. uh which is about the dictators who want to run the run the world. It 's about what's going on in Hungary and you know what's going on in the United States and what's going on, you know, around the world. And the the methods that um these people use to undermine our democracies. It's you know, about sort of halfway through it and it's yeah, it's it's It's pretty good.

51:41

Speaker 3: It rings true to the

51:43

Speaker 1: Yeah, and I mean it's out in 2024 and you know the end start of twenty twenty six it's all the worse. Uh you know, it's it's Anyway, it's the autoxy ink. It's worth reading. It won the pull it's a price, so it's um you know, but it it lays down quite clearly the kind of um behaviors you see with like the crazy things that happen in the media and you're like, why on earth is this happening in the media? And it's all part of like a sort of standard playbook that, you know, it talks about. And it's like, okay, that that that's interesting. So um Uh yeah, I've I've been reading that and enjoying it.

52:14

Speaker 3: Well, quickly projects, I'm gonna shout out Andy Yours, Django Prod Server. Um I think we ran out of time to fully dive into it, but we'll link to it. I've been following it. I think you're still kind of working on it. Like it's got a number of stars.

52:27

Speaker 2: Yeah, I need to there's a few bugs I need to fix and stuff. I am working on I've got an open PR with Django Cookie Cutter. to get it merged in. Um there's a yeah, I need to fix a bug. But that's kind of my next phase. I kind of I've talked about it on the forum in places is how do you market? You've got a thing, how do you market where what to do? And this is like for me

52:47

Speaker 3: Create your own starter project.

52:48

Speaker 2: Yeah. Well yeah, I was like I could create my own startup project, but actually it would be better to get it into one that's already used. So um lucky I know I worked I've worked with Bruno who maintains it. So I was like, hey Bruno, could we maybe shift this into and he's like, yeah. He played around with it. He's like, so that I'm also thinking of getting it um I need to work on Django simple deploy and get it into that as well. I think it'll be a good place for it to live as well. Nice pairing. Um but yeah, that's It's there, I just need to slowly chip away on it um this year. And so keep improving it, keep promoting it. Um there might be a lightning talk. Or maybe something more.

53:28

Speaker 1: Oh I'm I heard you there might be a you know the CFP's not till Sunday, I didn't. Yeah.

53:34

Speaker 2: Before you joined well Carlton was rubbing me to submit a CFP for his list. I will be there, but whether I'm doing a talk or not, we'll see. I'll be doing a lightning talk, but we'll see if there's an actual talk. Um My project is the at the end of last year, the us in the online community working group, we opened a repo very similar to new features. But for community ideas and it kind of probably got lost. The announcement probably got lost between border elections and 6. 0 release and that kind of thing. Um But it's sitting there, you can submit issues of like, I want this to happen on GitHub or Discord or and so we can start tracking them and start implementing features and or owning

54:20

Speaker 2: people can start seeing what we've we've got planned as well. I have dumped a lot of ideas on there. But um yeah, go have a look. But it's yeah, community ideas rather than stuff to go into Django. It's for around the community itself. Um Yeah. Go have a look.

54:38

Speaker 1: I think that's good. I think that the new features board has turned has been quite successful. It's given pla people a place to put their ideas and several ideas have been promoted forward and we s it gives a chance for discussions to happen and it's away from the sort of the main workflow and I can only see um ideas for the community having their own space as being a positive thing too so super I just my project I just wanted to mention Django Health Check, which um came popped up again this week. Um it's c again it's uh uh it's coding Joe, what's his uh name? Yeah, Joe Moron, Johannes Moron. Um It it's what is it? It enables you to set up health checks for I don't know um cat your caches, your databases, your disk space, your memory, and then you can ping those health checks and then you can set decide what actions you want to take.

55:25

Speaker 1: Um i in case, you know, uh suddenly your disk space has gone to eighty percent. Ah, I better I want at least a notification of that or I want, you know, some automatic action to happen. Oh my cash went down, uh you know it's no longer reachable. Oh, I better take action. So it's a really good project and it's very easy to write your own checks. And um, you know, again, uh Joe puts an awful lot of work into keeping these projects updated, so I wanted to mention that.

55:50

Speaker 3: Well, I feel like we could easily go for another hour, but we'll try to keep it try to keep it to under an hour slightly. Um I guess last last quick thing, our magic wand question. So if you had one power to change one thing in Django, code community, what would you put your foot down for?

56:08

Speaker 2: I was thinking about this a lot last week. I I don't think I honestly it's the for me it's the funding and the budget of um because in the community as I see it, there's a lot of movement of A lot of ideas, but they're all limited because we're all volunteers. I say all. Okay, the fellows are paid, but even them. It's like everyone is limited. If we could hire an executive director, if we could hire more fellows or ev or even hire freelancers, like take the marketing and the website, it's like if you could throw cash at that. great then thing.

56:42

Speaker 3: He's written some posts around this idea too, yeah.

56:44

Speaker 2: Yeah, it's just like the idea of I think that's the one thing I would change is just go, give Django a million dollars or whatever it needs to just grow and then And I think that would allow us to just I like the leisurely pace that Django takes, but I think we could be a bit faster if we had more and we would be probably naturally faster. And I think that it's there's I'm not saying everything has to go JavaScript speed, shall we say. Um, but it's it's a bit

57:16

Speaker 3: Yeah. Well I know that um you know Jeff Triplett who's the new president and the new board are w are working on this. People have been working on this Uh I know it's gonna be frustrating because there's a lot of behind the scenes stuff that until something happens, you know, it's easy to say why isn't something happened? But I know that I know this stuff is happening. It's just it's also a lot it's a lot of work to get a bunch of money from a big company. I think that's kind of almost the big problem is like if we had the muscle to get it But we don't. And so they even if they want to give it, there's that disconnect.

57:48

Speaker 2: Yeah, it it's that's why I say the funding, because I think everything else is just sitting there, like there's energy in different parts of the community, and I'm like, if there was It's that I think the funding is the thing holding the community back right now. So if I had to waive a magic wand, it would be money dumped into an account that people could then use. Um I Is like, yeah, I just see the energy in people wanting to push it forward. And so I don't think we need any magic wand anywhere else. It's just that kick up Yeah. Well the

58:17

Speaker 3: there's this like meme of like, you know, just one missing piece is like this brain with puzzle pieces and someone has a ch thing that's one billion dollars.

58:25

Speaker 1: You know.

58:26

Speaker 3: My wife and I like often like share that. We're like, oh, there's just one little thing with fix whatever realm it is.

58:33

Speaker 2: But yeah, I

58:37

Speaker 1: other

58:37

Speaker 2: than that, I'm quite happy with Django as the code. Like generally I was thinking about it, I'm quite happy with like yeah, it's got its warts, but any twenty piece of software does have it have its warts. And I'm like It does the job. It's fun to work with. The community's great. Doesn't yeah. I'm happy with it. I wouldn't be here if it wasn't. I'd have found something else.

58:57

Speaker 3: Yeah, yeah. Same. Well, all right, we're gonna have links to all the things. Um thank you for taking the time. It's fun to finally have you on. Again, been reading your stuff for I guess over three years now. So um

59:09

Speaker 2: been a pleasure to be on.

59:10

Speaker 3: Yeah, so DjangoChat. com on YouTube and we'll see everyone next time. Bye bye.

Questions this talk answers

How do freelancers find clients without constantly pitching?

Andy recommends being active in freelance communities and on LinkedIn, using freelance platforms for initial work, and writing to show expertise and attract clients.

Discussed at 4:18

How can writing help a freelancer market their expertise?

Writing lets potential clients see what you know, so you may not need to pitch as much. Andy built a regular writing habit by starting with a small daily goal and drawing on recurring questions and mistakes he saw in the community.

Discussed at 5:04

Can junior developers succeed as freelancers?

Andy wouldn’t recommend serious freelancing to juniors: it helps to have enough experience to build things independently. He also stresses taking action—outreach and applications—while seeking advice and perspective from other kinds of freelancers.

Discussed at 12:41

What is Hamilton Rock building?

Hamilton Rock is a fintech startup targeting small e-commerce businesses in the US. It is building banking services and plans to add features tailored to those businesses.

Discussed at 20:45

Where should business logic go in a complex Django app?

Andy has kept his app in Django, putting much of the logic in forms and shared or cross-model logic in managers and querysets. He has a separate class to coordinate onboarding and says he’ll revisit the structure if it stops working.

Discussed at 23:08

How can I style Django forms consistently with a custom form renderer?

Andy made a project-level form renderer and used a template with partials for the widgets and forms, so the forms share a consistent appearance with relatively few templates.

Discussed at 26:35

How can I get involved in the Django community?

Andy started by answering questions on Discord, then became a moderator, attended DjangoCon, helped start a Cambridge Django social, and contributed through community working groups and conference sessions.

Discussed at 35:01

Presenters

Note: We understand that names change, people change, and bodies change. We respect each individual's journey and privacy. If you have any concerns about a video or need us to remove content, please don't hesitate to contact us. We will handle your request with care and promptly address any issues.

More videos from DjangoChat