Keynote by Anna Makarudze

This video features Anna Makarudze at DjangoCon US 2018 in San Diego, California, USA.

Keynote by Anna Makarudze
0:38:32
Published November 10, 2018
246 views

DjangoCon US 2018 - Keynote by Anna Makarudze

Anna’s keynote will dive into her journey with coding, what got her interested in programming and why she chose Python despite the language not being popular in her region. She will also talk about her journey learning to code in Python and how her involvement in the Python community as a beginner has helped her grow and develop her coding skills. She will share what mentorship means to her and how positive mentorship can impact the lives of many beginner coders.

This talk was presented at: https://2018.djangocon.us/talk/keynote-with-anna-makarudze/

LINKS:
Follow Anna Makarudze 👇
On Twitter: https://twitter.com/amakarudze
Official homepage: http://amakarudze.pythonanywhere.com
Github: https://github.com/amakarudze/

Follow DjangCon US 👇
https://twitter.com/djangocon

Follow DEFNA 👇
https://twitter.com/defnado
https://www.defna.org/

Summary

Anna Makarudze traces her path from growing up in rural Zimbabwe and discovering computers at school to working across networking, systems administration, telecoms, consulting, and eventually Python development. She explains that she chose Python in 2015 because it offered a route into data science, then describes how organizing community events and working on a difficult Django mapping project helped her build technical and professional skills. Her experience leads her to argue that mentorship often consists of small acts—answering a question, suggesting a resource, or referring someone to an expert—and that conferences, meetups, and welcoming communities are especially important for people learning without local resources.

Key takeaways

  • Limited access to teachers, books, and the internet shaped Makarudze’s early career decisions and pushed her toward networking and systems work before returning to programming.
  • She chose Python after discovering its applications in data science, despite Python being relatively unknown in Zimbabwe at the time.
  • A challenging Django mapping project taught her about JavaScript, Ajax, testing, validation, documentation, collaboration, and asking for help.
  • Conferences, meetups, and sprints helped her find mentors and practical support that she could not easily access locally.
  • Mentorship does not require a formal long-term commitment; a few minutes of useful guidance or a kind referral can significantly help a beginner.
  • She encourages experienced developers to support African Python and Django communities through mentoring, speaking, organizing, and sponsorship.

Summarised automatically from the transcript.

Chapters

  1. 0:00 Introduction and Coding Journey Anna Makarudze introduces herself, her work in the Django and Python communities, and the story she will share.
  2. 4:05 Early Life and Path to Computing She describes growing up in rural Zimbabwe and how school first exposed her to computers and software engineering.
  3. 9:29 First Programming Experiences She recounts choosing computer studies, learning BASIC and Pascal, and developing an interest in programming despite limited resources.
  4. 12:39 Career Changes and Telecom Work She traces her varied early career across networking, systems administration, billing, and telecommunications consulting.
  5. 18:04 Choosing Python She explains discovering Python in 2015 and choosing it because of its applications in data science.
  6. 20:21 The Mapping Project She introduces a Django technical interview project involving maps, address validation, geocoding, and data storage.
  7. 25:43 Learning Through Collaboration She explains how conference contacts, mentors, books, and community advice helped her improve the project and her technical skills.
  8. 32:39 A New Direction in Software Engineering She reflects on her career goals and decides to combine her systems background with programming through site reliability engineering.
  9. 33:25 Lessons on Mentorship She shares lessons about attending conferences, asking for help, and offering beginners small but meaningful acts of mentorship.
  10. 37:16 Supporting Python and Django in Africa She invites the audience to mentor, speak, organize, and support Python and Django communities across Africa.

Transcript

6,939 words · auto-generated Show

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

0:16

Good morning, everyone. Thank you all for having me. I'm very excited to be here. I like to think myself as a bit organized, so like end of November, December, I'll be planning what I'll be doing. for the early half of the next year and then I leave out the rest of the the second half of the year to To execute any results of the first half. So my initial plan for this year uh didn't have the US uh coming here for Django Kony Yes. In my plan I thought um oh well we have our issues in Zimbabwe, but I think the US have got their own the shooting the fires and stuff like that.

1:01

And uh it will be appalling for my family to lose me while attending a conference. So uh the list of conferences that I plan to attend was Paicon Namibia of Obviously. I was organizing Django Kong Europe, so that was obvious. And then uh Pykon, I thought I'll be organizing PyCon Zimbabwe again this year But then the events in Zimbabwe discouraged me and I thought I couldn't take the emotional burden of organizing a conference in a tabular environment. So I dropped that one So when I was asked uh to keynote while I was in uh DjangoCon Europe, I forgot that I had said I wouldn't be attending Django Con US for obvious reasons. And I accepted and I also didn't do research uh for how long it would take me to get here because I also thought I would attend Jungle Con

1:48

Australia, but then I saw it was it would take me too long and the visa process is a bit eclic for Zimbabwean So I dropped that one and then when I actually got on the plane uh after I checked in, that's when I worked out how long it would take me and I found that it was thirty-six hours. Good thing is I win against Russell for the longest trip. But it was so tiring and I Realized that I hadn't quite learned from my first Pike on Namibia experience, which I traveled 33 hours by road to go to Pike on Namibia. I thought I had learned my mistake and improved, but it seems I still get excited and make this decisions, but all the same I'm excited I'm excited to be here and uh I'd like to thank the organizing for organizers uh for inviting me

2:34

I think if they hadn't invited me, I think I had given myself I think three years without coming to the US. So I'm actually excited to be here and I'm thankful that the okay they invited me And uh thank you, Jeffna, for paying my cost to be here. I'm so excited to be a very awesome time and I hope you will enjoy my talk So I'll be talking about uh my journey with code. Uh so uh Nick has already given introduction of me. I'm currently the fundraising uh coordinator for Jungle Girls Foundation. So I took this asked me page if you want to ask me about Jungle Girls Foundation, I'm here to talk If you also want to ask me about PyCon, Zimbabwe, uh Python in Africa, and other events that are

3:19

organized uh taking place in Africa, you can ask me Don't ask me about San Diego. I'm new to the US, so I won't be able to help you with that. Then I'm also currently in the Django Software Foundation board. It's something that I tried to do just to run for the election. I didn't think I would uh make it to the board, so I just tried to vote myself for myself, at least to get one foot so thank you for voting for me into the Joseph board I didn't expect it so thank you so what will I be talking about I'll share with you Uh my coding journey, how I started, and also answer the question why I chose Python despite the fact that it wasn't so popular in Zimbabwe.

4:05

And then I'll share my thoughts on what I think uh mentorship is Through a project that I've worked on. So, uh, my background, who am I? So I'm uh a third born in a family of four We are two boys, two girls. I'm the youngest girl. I have a little brother who is currently in Sweden. So he's taking up after me of being a globe trotter. So I'm very proud of him So I grew up in the raw areas. My father is now aid master. He started out as a teacher. My mother is a teacher. But my father chose to work in the raw areas because he thought life was cheaper there. So um because It's schools in Zimbabwe in raw is the the provide housing for teachers and they only have to pay like

4:50

cost for electricity and water. So he thought it was the cheaper route. The advantage to that was it gave me like sort of a high self-esteem because we Where the privileged kids are at school because you are learning from with children who are coming from the raw areas. Some of them will come like barefoot Uh some of them don't have proper uniforms or jazz and we ate all those things like so my first six years of uh school I thought I was the privileged kid, you know, among the other kids Then I became a border in grade seven and that changed because now I was mixing with children who had par parents who were lawyers and I didn't know all those professions you know, because when you are in the rural areas, you know teachers, nurses, uh agricultural officers, you know uh business owners who own shops, and then you see bus drivers and conductors when you go to town

5:38

over the holidays. So It was quite a bit of a surprise for me, uh changing. And uh when I went to high school, my father decided because he had taught at Simoto High School that every one of his children would go there. It wasn't really my choice, but uh I had to go there because it was my father's uh decision And this is my first week in high school. For a long time, this was my worst photo. I heard it because when we took when we took it, I thought I was, you know, posing. And then when it came out, it It doesn't really look nice, you see. So I only started to see it as funny when I was preparing for my job, you know. Looking back, uh there was 1999 and I was 12 years old And uh yeah, now it's really funny.

6:25

So this was my first time uh in high school and what happens in the Subhaban education system means the final results of the previous O level and A-level, they come out in January and February. So that was the first time that I actually knew that there is a uh there are computers because uh our school was offering uh computer studies for all level and computer. computing for all level. And the reason why I knew about this subject was it was the first time the school had uh said for that examination And there was the subjects were really dismal failed, but at least that got me uh the attention of knowing that there's such a thing as a computer because the only thing that we had at home was uh television So I that you know inspired my uh interest in computers and the next year I met uh

7:12

we're still in form two The subject will be will be offered when I was in Form 3. That was 2008. And then there was this boy who was in another class So you were what you was uh besides being geek and nerdy, you are also be uh good at being uh uh at showing off. So he had some uh brochures from Staffordshire University, School of Computing, and uh It it it had programs uh that were offered then and uh if you studied computer science, you could do software engineering, you could do network engineering and all other things that were engineering that really inspired me to and I thought I would be interested like in software engineering and I was as I was preparing my talk I actually realized okay so I actually owe my this career decision to uh to this boy who

7:58

who you showed me this brochures you know in trying to show off so so I I I read the I read them and uh what was supposed to happen is uh at the end of form two we're supposed to be selected Depending on where you are, if you are strong in mathematics and sciences, you are graded into be into the science classes. And then if you are not, you'd go to the arts classes. So I was good in mathematics and science. So I thought I was an automatic fit for Taking computer science. But then uh things kind of like always changed when it got to my stream. So instead of having two classes doing computer studies, they decided decided to say, okay, uh students are not doing so well. We have one cli uh one class to uh computer studies and another one do accounts. And uh it turns out uh the initial

8:43

instead of doing what they used to do Best marks best marks go to three east for computer studies and then the other marks they go to three ways. They decided to have a balance and just you know do random. So I found myself being placed in three ways to do accounts. I didn't like accounts though. I have never done it. But I also I had already set my mind on doing uh computer studies so I could do software engineering. So I went and asked the sheet uh the teacher we had done that. Uh What cat criteria did you use to put me in the accounts class? So he couldn't answer that, so he had to redo the classes again and put me in three E's so I could do computer studies. And those who wanted to opt out and do accounts, they were given that choice. So I ended up uh

9:29

doing uh computer studies at Form 3. So that's when I started actually learning to code. Um And my coding journey began. So I started learning compute uh coding when I was in Form 3 and we're still um using we had Windows 95 machines Those are the ones that we we had at our school. That was the ones used by the juniors form three and four. And then the Windows 98 and the Windows 2000 would be used by the ALF for students. You know. So I I can I I still remember m uh you know my excitement when I uh powered up the computer for the first time and saw that this that Windows ninety-five loading, you know, with the bla black and white screen. You know, it was so exciting and uh we're coding with uh

10:17

basic and d base three and people sometimes wonder why there's still use you know Windows but you know it was my first love that's that's what I you know experienced first as a computer. So yeah I learned uh A level we learned Pascal And we learned uh visual basic now for our projects, but we're teaching ourselves. And I really realized that I really wanted to do, you know, programming. Then I went to To college. The first language that we learned there was uh introduction to programming. We do we did with C, and I loved it so much, and our lecture was very good I really enjoyed see we're also doing systems uh analysis and design. I'd already done two projects in high school, so I had an advantage over others.

11:04

I really enjoyed those subjects. Then when we were in um In second year, things started going bad in Zimbabwe. So the experienced professionals they left. And so what would happen was uh somebody graduates like this semester and then the next semester you'll be teaching you So when I was in second uh my second year, we were supposed to be doing visual basic, uh, object-oriented to programming with visual basic and Oh, if you have got a bad uh lecture uh programming can actually suck. I realize so of course I realized okay what we were learning in class uh was a little bit shallow than what I already knew about the language. So I saw myself if I'm going to be a software engineer and I'm going to be working in Zimbabwe, this profession is actually going to You know, suck I'll be doing the same things over and over again.

11:50

I don't have many people to look up to and I'll be just copying and pasting my code. And when we're growing up also, we didn't have access to the internet. Like we were We were over a a thousand universities uh university students and we had less than hundred computers that were in the uh were connected to the internet So I only actually got to enjoy the internet when I went for uh my work related learning uh in third year. But I had already decided that I was going to not to going to into a software developer development firm. Rather I'll chose to go into telecoms. I do networking, I do support, I learn everything else about IT. Then if later on in life I decide to become a programmer, I'll just start learning programming again because I realized Okay, it doesn't really make sense to be copying and posting code again because you don't have the books, you don't have the internet, and also your lecture is not that good.

12:39

So that really explains why uh Later I become a career nomad. So if you check my LinkedIn profile, or what I'm going to tell you is uh I'm one person who has got uh So many roles which are different. So after I graduated, my first role was as a network technician and an internet service provider, and I did sysadmin support and stuff like that My second role, I was senior IT technician. This time it was in a university. I did some systems analysis, project management systems admin and IT support. I moved from there. I went to an internet actions provider. I was a network operation center technician uh supporting the network infrastructure. Then it happened that I only moved like for three months.

13:27

After three months the company st started uh Not paying salaries. I don't know what was happening. Sometimes you get uh I was supposed to be earning double what I was earning in my previous job, so I only got three uh salaries in full Then the others sometimes you get um 200, sometimes you get hundreds sometimes I don't know how much they owe they owe me the because the company later shut down. So it was difficult to track how much they are owing you So I because of this uh people were leaving the company and uh there was a shortage in the billing department. So I only stayed longer because I got an opening to work in the billing department as a billing analyst. So this is a a little bit of coding.

14:13

I I will do some SQL and stuff like that because I wanted to, I I I just enjoyed exploring, you know, the IT industry. So whilst I was working in this department, my boss got interviewed for a consultant's position, which required some valuate understanding of the pilling. uh in the telecoms industry but they couldn't quite agree on the money side of things so the people who interviewed them then uh Looked me up through LinkedIn and like uh on Monday afternoon. I only saw the message the next morning. Then they I I I responded, they called me like on Wednesday And then by Thursday I'd got a new job and I was supposed to start it was at the end of the month but there was an Easter holiday. So I w I was supposed to start on the first

15:00

of April. I later started on the second of April This time I had another position again. I was uh senior BSS and OS consultant just business support systems uh uh or uh operations about uh systems consultant so they took me to Mozambique it was a consultants project for a convection billing and CRIM project it was fun um being an expert, uh going shopping to South Africa, you know, flying, all of going home. It was only fun, but there were long hours. And um what what I benefited mostly from this role was I realized the uh the gap that we didn't have as Africa in terms of uh data science because we we were coming from Zimbabwe as consultants on a doing project management mainly

15:46

but uh the developer was from china and they spoke uh chinese the call the uh our client was more was more became they spoke portuguese So I don't know whether the language barrier made it difficult for for the Chinese to understand what we really wanted for our clients, but what we're getting was not what we wanted. So I thought if I were a developer probably maybe. I could give back value to my own community if I could have these skills instead of being a consumer. So I actually thought of learning programming then, but My workload was uh too busy. I couldn't do that. I was also getting paid well, so I didn't have the incentive really. So it was something that, you know, I I need to do something that I can do data science with.

16:31

So It was just a thought. So I didn't stay much with uh Ruby with this company. It was like for one year. Then I I stopped to Do my master's, which I started in 2012 to complete it in strategic management. Then afterwards, I had this question. So, what role do I apply now? What do I apply for now? Because remember. I already have six positions as as it is. And they are all different. So I I got tired of uh Taylor making my C V to If it's systems admin, you have to tell her make your CV. Uh if it's a consultant, if you have to change your CV again. If it's web development, you have to change your CV again.

17:18

So I got tired of that. And whilst I was uh struggling with that uh decision I met another old friend we had worked together uh at the uh internet access uh service provider and he had joined a scholarship by Mozina Hub to learn uh he was doing Android so he advised me you could you can get on this program so the scholarship was they give you a scholarship for six months you learn programming You do a project and then they help you get a job and they get 10% of your earnings. So for somebody like me who has learned programming, I knew that was not practical. So I thought, I okay, I cannot get myself into this contract. It doesn't make sense Then I thought, okay, I want to learn programming. I'm currently unemployed. I don't know what to apply for. Okay, what do I have to lose? So I applied anyway.

18:04

So I went through the courses that they had and I saw that they had uh Python. So I did it, uh you all be surprised, but uh information travels slow to some certain parts of the world like Africa and Zimbabwe. I didn't know Python existed until 2015 when I visited was in the hub website. I don't know why I never came across Python, honestly. In all my years in the IT industry I He had to look it up and to see how uh you can use Python. And I realized that one of the things, ways you can use Python is uh data science. So that's why I chose Python uh to learn the language. And uh I did uh I so that was 2015 and by 2015

18:50

October we had finished with Python. What do you do then now? Uh we started uh organizing uh I gave myself uh a new role now I was IT uh ICT consultant and uh Python developer. Okay first take Python developer good there. But anyway, that was my new role uh which I gave myself because I I have a startup which is not doing so well. So I get a new role again. So it was really difficult getting uh started out uh in Zimbabwe. Python was not really known. It's just really been a PHP country before. So to get uh the publicity that we needed or and also to keep myself busy We started organizing events uh with uh Humphrey

19:35

so that uh you know you you you keep learning and also you have something that you are doing b in between projects. So that's how I started organizing events and volunteering in the open source community. And then uh last year I Got a new uh title again, which is fundraising coordinator with uh jungle girls. It has a little bit of coding, but uh most of uh most of it is communication and email So uh I've been working with Python since 2015, and I'm just going to share with you uh what I've gone through while I'm working with Python. Uh okay, and I'm going to talk about a project And before I talk about this project, I have to give you a disclaimer that uh

20:21

this is not my best project And it's still incomplete. Uh it's work in progress. But the reason why I'm talking about this project is it's one uh one project that has yet uh an impact in my life in terms of how much I have learned uh as well as developing my coding skills as well as my you know my so my soft skills with respect to coding I I had never worked in a In a coding team, and I've learned a lot by working with so many people on this project. So the solution that is currently on This GitHub repo is uh is not complete and it's wrong according to the people who go who gave me this challenge.

21:06

So please, if you're going to look at it, maybe you just want to give me some feedback. But uh Don't expect much. So uh the qu okay this was uh this was uh part of a technical uh interview question. Uh it's very long. So I just put up uh that statement. I was supposed to build a single page up with a full viewput viewport map on top and a list of addresses below and it was supposed to be based on Django 1. 9 when I was given it And the use case was if I click in any location on the map, validate that this is a real address and it's not some wood mountain ocean ETC Then if it's valid, save it a simple database table and what what uh okay it's very long the question.

21:53

But The major challenges with uh I faced with this project. Okay, so the one thing uh we don't use Google Maps that much. uh in Zimbabwe. The only time that I use Google Maps if I if I have have a client website and I just want to show a pointer of uh where they are located on a contact page That's what we do basically. But the challenge is uh Google Maps is not so accurate in Zimbabwe bas because What's supposed to happen is users are supposed to uh put their own addresses right? People don't do that. And when they do, it's supposed they've got their own company located uh maybe co on the corner, corner Samura Mashio and First Street. Uh instead of putting the pointer right at the corner of the street, they want the users to know that the entrance is ac

22:42

is actually not at the corner, but maybe some fifty 50 or 20 meters. So the point that will not be necessarily at the corner, but it will be like uh away from the corner So in when you know maps and scale, you know that that's a wrong address and somebody will actually come and put another address on the opposite side. So I've got lost a couple of times in Zimbabwe using Google Maps and I know of somebody who used GPS in Zimbabwe and got lost in a very small Cimbabu. So you're actually better off asking people than using Google Maps in Zimbabwe. So because of that, it's It then develop it becomes difficult for you to do a project with something that you don't really use. Then the other thing uh is I've never really heard of Google fusion tables in my life. Okay. If I don't use Google maps,

23:27

chances are high. I don't know what Google Fusion tables are. So I had a lot of uh learning to do uh with respect to the to the project So my initial attempt, I tried to use Angular, I had done it to do up with it, Angular. js and Django Rest framework and Django 1. 9 But uh I couldn't the setup didn't couldn't work with me because I when you look at Google Maps tutorials they use uh raw JavaScript And I couldn't get Angular JS and funeral JavaScript to work. So I tried something again. Okay, when I submitted it, I was thought, okay Uh you didn't do any testing, you didn't do any validation, and you didn't do any documentation.

24:12

I only submitted it not because I thought it was okay, but uh The interviewer was okay was asking me and it's been it had been a long time since I submitted anything, so I just submitted anyway. So I decided to I to take some time for personal development and I started to learn Angular uh online. I realized there's no point to sticking sticking with Angular JS, I'm not good at it anyway i started learning angular then i also did a workshop tutorial uh on jjango angular and yeah jungle risk framework at pico namibia it was just a way of trying to to learn on how to do this Then I tried uh to do the project again. This time uh I uh I I I I I book book

24:58

and realized that uh It's difficult. So I could uh render the map, but now I could not uh do everything else that I was supposed to do I could just render the map and I had a backend that was working. But uh post requests couldn't go through. I just know I could click, but I could do geo reverse geocoding as I wanted So okay, I changed that. Uh I was just working on this on my own. I tried now to do Angular, Jangle Framework and Django And then I just use JavaScript to load the map. And I still struggled with Angular post and requests, you see. Uh those promises and observables and stuff like that.

25:43

Combine that with with reverse geocoding Uh it was uh bug after bug. So I realized okay, I think I need to ask for yoke. So I went on Twitter and asked for somebody to tell me how I could do Angular Post, and they pointed me to another resource I could use online. I also when I went to PyCon Namibia I was uh heary Pescifer was there and he was doing a workshop on testing and I also got a chance to talk to him And I asked him advice on what I could do with my testing, you know, and other stuff. And he recommended me some books which I could get uh to help with uh coding interviews Then I also approached uh Mark Tamilin, I remember

26:29

he had done uh a talk on jungle validation. So I asked him about basically developing with Django and validation and he gave me some good tips. I asked also Daniele Uh he's one of the board members, but he has also been involved in Python events in Africa for help with Django uh documentation and Django Con Europe. So I've really been using uh contacts whom I met uh at conferences really to get help. I also asked uh Emma at Django Con Europe but she had a workshop with Django Rest Framework On how to integrate jungle and jungle astronomic to any other front end uh technology Then I also asked my bosses Ola and Ola

27:14

, Marcus and Norma, we're co-organizers of DjangoCon Europe on Django and Ajax. And then uh I needed books to read. And uh thanks to DjangoCon Europe, I met a good friend who helped me with my shopping. He did the shopping before I got there, and then I just collected when I got to DjangoCon Europe. And so after getting the resources ahead, uh used uh the book uh in the picture there on uh it Okay, it doesn't do it doesn't talk about the coding itself, but it just helps you with your soft skills on how to approach project design and stuff like that. So I did a read design and decided to use okay, I think I'm going to Replace Angela with Ajax. That way I still used to get used to use JavaScript without problems. And then I decided to get a mentor

28:02

to help me with uh Ajax. So I checked I had checked uh Java 's uh Jungle Rest framework and realized that Tom Christopher uses uh Ajax also. So I approached him, fired Peter, and uh We talked a lot. I would send you my code snippets and you would comment on them. Give me advice on what to do. I send him again. snippet and you know just pictures and the comments on them and we had a lot of uh those and I managed to do a brutal solution So I would load the map and do reverse geocoding with uh JavaScript and then save the the results to data uh to the database. I wanted to then save to Google Fusion Temples, but I still haven't managed to do this, but this was the solution that I was supposed to do

28:48

And then uh JavaScript and Ajax would be used to communicate uh to for the front end communicate with the back end and then Django Frame uh to link the two So working with Ajax, I was very new to Ajax and jQuery. So many Twitter DMs really between me and Tom really helped me to get started. The testing, I had uh a book that I had been given by Harry Percival at PyCon Namibia. And this helped me with functional tests and unit tests. And then validation. My hour with uh Mark Tamilin came into place. I managed to write my first custom validator, you know And it really worked and I was proud uh

29:34

proud uh of that. Though it is it wasn't quite what uh The interviewer wanted and then for documentation when I asked Daniela, he just gave me um yeah, you gave I asked about documentation, he just wrote something in my notebook. I still have that small notebook it read said you only need uh like four sections tutorial explanation and how to guise and reference and because of this uh small you know I think it let took less than ten minutes I was able to do The best documentation for a project I've ever done in my life. The only problem was is that the project was incomplete, so the documentation couldn't be really as complete as it should be So I did a project which you had a small readme

30:20

and uh I was really proud of myself for what I had done Then I submitted uh the solution now, not because I wanted to submit it, but uh apparently the person had been following my GitHub uh and you know seeing what I was doing So you saw that I was working on something. I didn't want to submit it, but because you have been asked, you you know you just submit. So the feedback was I had good documentation and tests, uh though they were incomplete, obviously because the project was was incomplete. My reference your coding had been done in the front at the front end was supposed to be done at back end. And then I was doing the wrong thing, resetting that the page with the get

31:06

uh request was wrong and he recommended uh some writing uh resources and he said my validation was not enough Then he asked me a question. What's my career plan? And recommended that joining a small team would be ideal for me. to learn and I would one day become a great developer. So the feedback came in a very long email and when it came uh it was shortly after uh our elections and the admin So I had a lot of things on my mind. So I took like three months before I responded to uh to this. I okay, I didn't even have time to read the uh the email. And uh so after three months I responded. I really didn't get your feedback.

31:52

Okay, I understood the comments that you gave me But I didn't I actually understood the questions that he asked me about my career. And I thought I told I told him that okay I I want to learn development, but maybe later I want to do uh Data science. So I realized that I wasn't actually clear on what I wanted to do now. I had been clear maybe all along, but now I don't want I know what I want to do. So I had to ask myself a question. So what's my ultimate uh career plan? Right? Because I already have a long CV, I don't know, I don't I don't know what I really want to do So then I learned there is this thing called search liability engineering where they take people who have got a good Linux background

32:39

and systems admin role and uh who can code So I realized, okay, so I think I've been going this the wrong way. I already I already have uh a lot of skills that are useful that I should not shine away and try to become a full-stack developer now. But all I could do is I could just add my coding scroll Schools to the skills that I already have. And I could be more successful. So this is now my new goal, and I hope this is going to be my last title. And that's what I'm working towards now. And I'm very serious about this. I mean it. Okay. So key lessons to draw from my journey. What can you learn? So if this is your first uh conference or you just started learning out uh programming

33:25

One thing that helped me was attending meetups and conferences and also sprints. It helped me meet my potential mentors. It also helped me I learn from the various talks that I would attend at those conferences. It also helped me meet uh friends who have been helpful in many ways in making uh my journey successful. And one thing that I have learned also is asking for help is very crucial I think if I had asked for help in my in my career earlier on, you know, learning Python instead instead of trying to do it on my own, I could have learned more than uh all these years instead of just trying to do it myself. So you actually learn more when you approach other people and ask them to help you out. They really don't have to okay they are

34:10

the programmers are very busy They have got their busy schedules and then don't have to write long lines of code for you. They just need to suggest something for you to do. And you, if you know what you are supposed to be serving for on the internet, it's easier than when you don't know what you're supposed to do next So this is one thing that I took from my journey, trying to learn on my own, being self-taught without other people to rely on, and uh conferences really uh emerged as my source of a large pool of mentors who help me with uh small things that I need to learn. And um if you are a beginner You could learn more if you can just talk to people over lunch. Uh the good thing about uh Django Con US is they don't have badges that that say I'm up for a chat or I don't have

34:55

I'm I'm not up for a chart. So you can just uh talk to people if They are walking around. You will not be violating anything because they didn't say I don't want to chat with you. So yeah. Then for advanced developers, uh please do not dismiss a beginner if you don't know uh what uh how to help them or It's not your area or you don't have the time. It's uh better to just tell them um or refer them to someone. This has been really helpful for me like when I uh attend sprints if I ask something uh uh last time in Django Con Europe I had f issued the Docker and Yacop was very kind to refer me to me somebody called a um

35:41

Docker expert and helped me. So that's really helpful. If it's not your area, suggest someone Okay. So just someone to help and uh it will be go a long way. And please don't tell uh me how my poor uh how poor my coach is. That's why I don't go on stake overflow because I see that's what people do So I can't post a question there. I know people are going to tell me how poor my code my code is. And so my thoughts on mentorship is it doesn't really need you to take uh to devote an hour of your time every week week every month to mentor some people just give a few minutes to answer somebody's questions suggest something kind and tell them how to get on with your code it will help them instead of um Just saying I'm busy and it's really

36:26

it meets up when you meet people who are starting out their journey with code it really helps for you just to be kind to Help them with their code. Two minutes, five minutes, ten minutes talks. You have gone a long way in helping that person become a programmer and become better at that. They also appreciate uh the coding uh industry because people are helpful So for me, I feel so blessed to have so many kind people in my life who have taken time to look at my code and help me improve it. And some of them have been kind, you know, in helping me and my community get resources that we need. So, uh just how can you get involved in Africa? You can support us by mentoring some people. We have some mailing lists. Or you can come and speak at our conferences, help organizing our conferences, or sponsor in some way

37:16

cash or a kind Or you can join our mailing list and organize our help us organize our first African events for Python and Jungle. Uh hopefully in 2020. So We hope you'll get involved. And then I'll leave you with this quote. The key to realizing a dream is not to focus on success but significance. And then even the small steps and the little victories along your path will take On greater meaning. This was said by Ofra Winfrey. So for me, it has really been an amazing Jenny. Uh though not so smooth, it's been long But I'm actually glad to be where I am today because I decided in two thousand and six that I was going to do the networking and the system at me and then get back to coding. And I feel like I've accomplished something. I haven't got the job yet, but at least I am

38:03

where I set out to be in the first place. So I'm really happy to be where I am today. And thank you so much for having me. Uh if you want to conduct me You can that's my Twitter handle and my email address. So thank you so much for having me again

Questions this talk answers

How did Anna Makarudze start coding?

She first became interested in computers after discovering computer studies at high school and seeing brochures about software engineering. After persuading her school to place her in the computer-studies class, she began coding with BASIC and dBase III, later learning Pascal and Visual Basic.

Discussed at 9:17

Why did Anna Makarudze choose Python?

She discovered Python in 2015 through a programming scholarship and chose it because it could be used for data science, an area she wanted to learn. At the time, Python was not widely known in Zimbabwe, where PHP was more common.

Discussed at 18:04

What did Anna learn from building her Django mapping project?

The project taught her practical skills in JavaScript, Ajax, testing, validation, documentation, and working with a coding team. She improved it by seeking advice from conference contacts and mentors, replacing Angular with Ajax and adding tests and a custom validator.

Discussed at 25:43

What is Anna Makarudze’s career plan?

She decided not to abandon her Linux and systems-administration background to become a full-stack developer from scratch. Instead, she is combining those existing skills with coding to pursue site reliability engineering.

Discussed at 32:39

How can experienced developers mentor beginners?

Mentorship does not require a formal weekly commitment: a few minutes spent answering a question, suggesting a resource, or referring someone to an expert can make a major difference. Developers should be kind and avoid dismissing beginners when they do not have the time or expertise to help directly.

Discussed at 35:26

How can people support Python and Django communities in Africa?

They can mentor developers, speak at or help organize conferences, join mailing lists, and provide financial or in-kind sponsorship. Anna also invites people to help organize African Python and Django events.

Discussed at 37:16

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 by Anna Makarudze

More videos from DjangoCon US