Expanding the International Python Community With the PSF | Real Python Podcast #65

Real Python · Beginner ·📰 AI News & Updates ·5y ago

Key Takeaways

Discusses the growth of Python and the role of the Python Software Foundation in supporting the international community

Full Transcript

welcome to the real python podcast this is episode 65. the popularity of python is continuing to grow developers across the globe are embracing the language how is python being used in all of these different countries and how does an organization like the python software foundation work toward the goals in its mission statement for supporting and growing this international community this week on the show we have marlene mongami a psf board member and part of the diversity and inclusion work group marlene lives in zimbabwe on the continent of africa she has been organizing events not only locally in zimbabwe but across all of africa she is the chair of picon africa and has given talks at pycon us icon uk and icon india she has been working locally as an organizer and educator and we talk about the challenges of teaching technology and programming to a population of young people and some of these students don't have access to computers he's also currently pursuing a computer science degree with the university of london as a student she's also interning with nvidia and working with them on the rapids project on a programming note we had some initial noise with marlene's microphone but we did get it resolved about halfway through the episode this episode is brought to you by digitalocean's app platform alright let's get started [Music] the real python podcast is a weekly conversation about using python in the real world my name is christopher bailey your host each week we feature interviews with experts in the community and discussions about the topics articles and courses found at realpython.com after the podcast join us and learn real-world python skills with a community of experts at realpython.com hey marlene welcome to the show thank you for having me yeah i have a whole bunch of interesting topics i wanted to dive into with you it was really fun running into you sort of virtually at the tables and icon yes it was very very cool i spotted you and like a couple other people like ricky and jim i think from the real python team so it's really cool to to see you virtually it's really kind of a fun setup yeah i i'd done something similar at pie cascades but this was kind of an interesting way they limited the table sizes and stuff like that and allowed for kind of interesting engaging conversations depending on you know what you were interested in getting into i thought that was cool yeah it was very very cool and i liked the format that you could i hadn't actually like i was at podcast kids but i didn't do any of the interactive things so this is kind of for me my first experience of like actually talking to people virtually which is really nice yeah it's been nice to slowly come out of our shells yeah so the first thing i want to kind of dive into is your relationship with the psf you're a psf board member but also a vice chair can you tell me a little about what those are and what what you do for the psf right so the psf is i think it sounds the positions sound more intimidating than they actually are but like the psf is uh the python software foundation so it is the non-profit organization that's behind python so whether that's protecting python's trademarks or and organizing sort of like grants to give to communities the psf also runs pycon us and we also do a lot of things like just discussing different policies on how to better serve the python community around the world and so for me i've been on the board for almost four for about four years now i'm going into my fifth year on the board which is which has been fun but that's great a lot and i yeah so basically i am the vice chair for this year and for the most part i just kind of represent i would say just an international voice in terms of trying to help the board with i'm very interested in diversity issues um and trying to make sure that we're serving the the sort of underrepresented parts of our community from different parts of the world so i think you know a lot of things to do with just access and yeah just sharing sort of my opinions is pretty much what i do that's cool i'm intrigued by just the global nature of something like a a language and then having an organization that's sort of global also to kind of think about okay well what is happening with the language in different parts of the world and kind of keeping on top of it it's so easy to be sort of focused uh especially with the sort of growth of the tech sector during the 2000s here in the us and so forth and starting to see oh there's these huge areas of that in other parts of the world and then with python being such a language for so many different purposes being for science or or education and just sort of like computer literacy i can see the importance of that and i wonder about that like how how how strong is the presence of of python in africa and and maybe zimbabwe in particular right yeah definitely i think that python is like like i think in the stack overflow survey it's been voted several times now i think since i've been on the board it's always the most popular language in the world so in terms of popularity it's like right up there and i think zimbabwe is definitely on that list in terms of the popularity of python we actually have a zimbabwean python like python community i call i call us python i think other people also call us python easterners but like yeah i don't think anyone from zimbabwe goes on for any stress except for maybe like five of us um and like me um but i know that like we have like a good community locally in zimbabwe using python i think initially when i first joined the community and attended my first pycon sim i remember hearing like a lot of people mainly using it as a scripting language but like there has been a growth of like different sectors so i think django is being used a lot so there's lots of django developers locally and yeah i think it's really i think it's really really grown and i would say that the community here is also quite large it's not as active as like in places like nigeria like i think about nigeria and on the continent of africa and how much python is being used there and and it's definitely much bigger but i definitely think in terms of popularity across the continent of africa python is really popular so when you look at you mentioned um pai zimbabwe or how was it okay yeah the python community is about we don't actually have a name like the local community here we just have a whatsapp group at the moment okay we used to have like a python well we actually do have a python but it's not the python was cancelled for i don't think we had one last year and i don't think we had one i don't think we're gonna have one this year as well okay but we do have a python that that's local in zimbabwe yeah well i mean there's across the continent and it seemed like over the last three four years you've been traveling across africa and and visiting a lot of those other ones like i saw one for ah there's a couple different talks right of different ones and nigeria one nigeria namibia is i've also been here quite a bit i've been to ghana the ghanaian uh python community is really strong i also was the chair of pycon africa for the inaugural conference uh which was in 2010 uh which was in 2019 and then the 2021 so that's like the annual gathering of the pan-african python community so for all of us across the continent it's like the one conference we have a year and so i was really stoked to be able to be the chair of that for past two years so that's been really really fun is there one i don't know if you can speak of it yet uh is there one plan for 2021 there is not one time for 2021 and i don't know like i think we should be announcing that soon so hopefully i'm sure this will go out before um like after we've announced announced it but i don't think we aren't going to have a python this year for python africa i think just because it one i think we are really trying to figure out how to connect more with local python communities in really tangible ways so we're trying to create sort of an organizing body i think that will be able to help you know connect with local communities and also serve those communities as well and yeah and i think we have decided that we want to focus on that this year i'm not the chair this year as well yeah i think last year when we ran it online when we ran park on africa online it was a lot of work and it was really difficult to be honest it was very difficult because africa i think has a lot more challenges when we talk in terms of connectivity sure i think not everyone is able to stream a conference because that takes your internet has to be good you have to have like you know either like wi-fi proper wi-fi or you have to have lots of data and that's something that's a challenge to some communities and so it was quite difficult i would say so yeah yeah i can imagine that kind of leads me into a question i have that built on top of the idea that you're you know sort of changing your focus a little bit about engagement within you know more localized communities and i feel like maybe that's how you started you had gone to university right and then when you kind of came back to africa you kind of got a little more involved in in python maybe we could talk a little bit about that and then yeah that translates into um what you're doing now yeah sure i yeah so i was i have been in the past you know i don't know how many years ago now i went to the states and i was in pennsylvania and indiana as well for a bit and i was studying molecular biology with initially i thought that i wanted to be a doctor and then lots of things that happened that just changed my mind i discovered i don't like blood uh me too yeah it's not been it's not the nicest thing to be seeing on a regular basis and yeah i also am not a big fan of cadavers and things like that as well and i and so i came back i remember there was a summer where i came back home to zimbabwe and i was really kind of thinking about what do i actually want to do with my life what what do i want to actually do what do i enjoy doing as well and so there were lots of different things that i i just decided i wanted to explore and so i kind of gave myself a year to just focus on trying things out and i i remember i started just like we through oh it was it's kind of a very long story but i started a non-profit organization called zimbo pai that the purpose of that organization was to teach girls how to code in python and you know the goal of that was i wanted to do something that i felt was connected to my local community that i thought was serving my local community and kind of just you know giving young girls who you know i felt didn't have access the same access that i saw in the united states like when i went to the states i saw that okay wow you know there's so much access to education there's so much access to knowledge and i admit so many people who are creating things and i felt that when i was back home in dim that that same axis was not available to zimbabwean girls i mean it's it's also boys as well but like i was thinking about myself and thinking like a couple years back you know would i ever have known that i could code in at all like did i would i have access to that knowledge to know that i could actually do something like computer programming and i thought that that was missing in my local community and so kind of focused on that and yeah and created this really cool non-profit with some friends of mine so i i wonder about the types of things that you would teach someone who you know they're completely new to the idea of of really even computing and i think you mentioned this in your real python interview how you know any kind of computer classes that you had before were more focused on like general applications like this is word this is excel this is this is a computer yeah it has storage it has a peripheral it connects to the internet you know like the generic you know like computer literacy more than like anything to do with it so i can imagine if maybe that's the baseline that you're you're working with jumping into okay let's create something with a programming language right so what are the types of things that you would teach them yeah so i think you know we got to a point where we were you know we were connecting with girls from sort of the high density areas in in harare and so a lot of these girls when they came in they had like literally never been able to touch a computer before and so like everyone has phones so they were like taking selfies with the computer which was really kind of this weird moment for me to see but you know they oh so a lot of it was just starting at that baseline of that same thing that i was talking about in the in the interview of like teaching them this is what a computer is you know this is these are sort of the basic things to get started with the computer and then also from there then just building those basic building blocks of then going into programming something that we really uh did to kind of introduce some basic programming concepts was to to introduce hardware okay so we did use raspberry pi's and things like that just to make it i think more engaging when we were you know sort of sort of teaching and things like that that's something that we used as well but mainly it was it was really starting from the basics of yeah just just introducing them to the world of computers i think of the django girls project as a tool that a lot of communities all over the world have used as a you know not only a platform of tutorials but also as a way to kind of get kids interested because at that point they've created something that then is up on the web you know again that's another limitation potentially depending on you know where you're geographically and you know the kind of situation as far as you mentioned the disparity of potentially you know having internet or not having it and so forth but if everybody has a phone then they could kind of share their work online is something i think would be kind of exciting too is that something you explored also yes so we definitely like the first things that we were when we were initially introducing them to python was the jagger girls curriculum which is great because it's free online and it's super accessible and i think it's presented in a format that's really easy to follow and so yes we did do a lot of work with the django girls curriculum and just following that and i thought that was um yeah the girls were able to make their own websites and things like that and i think that was something that was also very exciting so yeah definitely django girls is is fantastic cool the the types of phones and stuff they have are completely like they can get to the web and check out other sites and and do that sort of stuff right it's we definitely had um so at first we we so there were definitely there were two groups of girls that we were we taught so there's one group of girls that could you know had android phones that are like coming from you know middle class upper class uh zimbabwe where they have smartphones they do go home and they they can they do have internet okay so at home they could you know play around and also upload uh their websites and do whatever they they wanted and just you know that was fantastic but we definitely had also another group of girls that we were working with that was in another part of the city as well that's the that's the group i was talking about that didn't have as much access and they you know they did have like phones that had a camera and things like that but i wouldn't say they had like a lot of access to the internet uh in terms of like even when we we would host a club an after school club where these girls would would come we would work with one we worked with one of the local community centers and they would come to this community hall and we would have like we got some amazing donations of laptops from github and from different people who just wanted to to help with the program and so the girls would come there and work on on the january girls curriculum work on different things at this community center but oftentimes they would go home and you know they don't have internet at their houses they don't have like yeah i don't think they're using data on their phones to like explore coding i just don't think that like it's also expensive and things like that so lots of challenges like i think i'm not gonna lie i think like well i i took a break because i was surprised by how many challenges there were that i definitely was not prepared for and it's definitely something that i'm hoping to like like i i think for a while my focus has been on the international python community for the past couple for the past year and a half or so like the international community and the african community but i'm definitely getting to a point where i feel like i want to go back to focusing on the local and and i think i have a bit more knowledge now and a bit more wisdom about how i would go like do so certain things but yeah it's a lot of work it's really tough to be honest yeah i mean i i i'm thinking about all those challenges i i had a very i don't know not similar but like a unique kind of experience when i moved to hawaii briefly and i was looking for work and i worked for the boys and girls club there and i was teaching sort of video editing and some of these other like kind of tools that this it was like a middle school in in hawaii and so a lot of these kids didn't again didn't have computers at home either and so it was one of these experiences of like you know teaching them what's possible with computers and yeah my background was audio and video and that sort of stuff and so kind of giving them an idea of what they could create and it it it's frustrating if the person isn't going to be able to go home and and and work with it it'd be like you know teaching somebody piano or guitar and them not having the instrument they would you know have to wait an entire week to come back to yeah get back to messing with it so i wonder about like even if providing books or other resources like that helps those sort of situations um i'm sure those are the challenges you're thinking about all the time yeah absolutely we had like a bunch of we did get some really great donations of books from the django community where the girls were able to take books home and kind of study those books through like study using books and so that was really a positive thing as well i definitely think books are a great way to kind of bridge that gap as well so i would definitely if i could go back i would have invested more in in books as well but we did get some great donations sort of this introduction to django we also had two scoops of django as well donated like a couple of those books so there was a lot of really great input from the community but i do think books are a great way to bridge that gap [Music] digitalocean's app platform is a new platform as a service solution to build modern cloud native apps with app platform you can build deploy and scale apps and static websites quickly and easily simply point to your github repository and let app platform do all the heavy lifting related to infrastructure get started on digitalocean's app platform for free at do dot co slash real python that's d o dot c o slash real python [Music] over the last several years of doing what you've been doing with the psf what are some of the other challenges that you've been approaching you know across the whole community of uh you know sort of the global as before you've now kind of refocused to local right what were some of the things that you were focusing on for for the psf right so i definitely feel like in terms of the international community there's a bunch of different challenges i would say that we face i think that python because it was created in uh i'm not sure where guido actually created it whether it was in europe because i know he was from europe and then i guess he moved to the united states i don't know i don't know i don't know i need to factor that but uh it was created in that region and because of that i think the nucleus of of python has always been in the united states and europe and even when we look at the membership of the python software foundation the psa it's mainly from that region when you look at the core developers in terms of technical leadership for the language it's mainly in those areas again and so last year when the psaf had we had all elections again and there were a lot of fantastic candidates that were running from different parts of the world because i think the psf you know part of the mission of the psf is to help to support the growth of an international and diverse community of python programmers and so i know that for a couple of years a lot of the board was doing outreach in different parts of the world whether that was i worked in africa with that was our work in latin america and just different areas in asia there's so many there's lots of community members out in asia and i think last year we had a lot of people running for the python software foundation board of dairies but from those different countries but they you know they ran that they weren't elected into into office um and we had i think it you know everyone that was elected ended up being from the us or europe and so i i do think that there's like some challenges uh in terms of getting representation from the global python community into that center of of the python space or whether that's on the python board of directors whether that on the technical side with core development or or whatever it is i think one of the major challenges that we're facing is trying to make sure that you know python is being used everywhere around the world how can we make sure that we have some good representation so we're able to serve all the areas where people are using python and not just the united states and europe yeah that makes sense to me so it seems like kind of a two-prong issue in the sense that you need to get people to want to be to follow the path to get more involved with the psf but then you also need the population that is the voting members of that to uh to elect those people so that does sound like quite the challenge yeah it is i mean there's an election even coming up soon i think the next election is this is in june and i think it's been difficult to i think it's it's one of the challenges is there are fantastic people from the united states and europe who worked who've done so much work for the python community every single person on the board right now i would say has contributed so much to the python community and i think that it's really difficult then when you have fantastic candidates who the membership at the moment is still i would assume that the membership is still mainly from the united states and europe we're trying to get more demographic data on that by the way i am the chair i'm the new chair of the new diversity and inclusion work group that's trying to work on some of these issues as well and support the psf in that but yeah i think it's difficult to then also convince you know some of the people who are psf members who have only met these people from the us and europe or have heard of them because i mean they're part of their communities to get those people to vote for someone they haven't met but who's doing fantastic work maybe in japan or who's doing fantastic work in brazil you know really convincing those people those members to vote for those people has been more challenging i think than expected yeah i could think so yeah yeah you mentioned the term work group and i saw some of that on the the psf website and it seems like they kind of change depending on the needs of the psf the the different formations of the of the work groups have you been involved in any other work groups or is this the first one you've been working with so i this is the first work group i've actually been a full member of i have worked with a couple of the other work groups i mean there's a psf clans work group that works closely with the board there is a code of conduct work group as well but these work groups are basically just a group of people that are focused on on something they have their own sort of mission and and goals they want to achieve and trying to achieve those goals in a way to support the psf board of directors the workplace has been for me it's been a really great opportunity to kind of focus in on something that i'm very passionate about and mainly our role is to be an advisory body to the psf board of directors also just to have more time to to focus on doing things like getting more demographic data connecting with local communities around the world and and so those are things we're able to do in a work group context i would say that i'm not really able to do on the board yeah that makes sense you can kind of get other members kind of involved in very specific areas yeah um did you have a talk this year at pycon 2021 i didn't have a talk i did do several things i hosted the devastation inclusion group we had a panel session where we were kind of sharing about the goals of the diversity and inclusion work group and yeah and that was really fun i also hosted the psa mia members meeting and then i was yeah just hanging around the psf booth i did i i think this year i was generally i think in 2021 i've i've got to the point where i was just like i think at the beginning of the year i took a break from applying or giving talks just because i felt very much zoomed out totally sure yeah so i was just like i think i think i'm gonna take a break this year but i definitely attended and i thought it was really fantastic there's so many great tools that's one of the things i i kind of like about what i'm doing with the show is that i kind of like it not being video sometimes um you know it's nice to see other people in person also but i think sometimes it becomes like this whole thing where you're like you're worried about like okay well you know how does everything look yeah and so forth and what what can people see about my life am i exposing exactly it kind of has this weird level of uh exhaustion that that we've all experienced way too much in the last year yeah i mean i've been really surprised by how much like how different it is like interacting with people online versus in person i think i'm a really social person and i love meeting new people so pycon us when i was there in person was amazing for me i loved like i was like up until late meeting other people and like going to stuff and like at this year's icon i was just like because it was the time zones were different for me so yeah it was hitting 9pm and i was so tired and i think it's just just i don't know there's just an extra level of energy i think that you have to bring to zoom calls or whatever it is because i i don't even know why it's just more draining i would say but uh but it was still fun um but it's definitely different yeah yeah and i can imagine if we were to follow a whole another year of virtual conferences that i think the people might start really waning on them um because it's just it's difficult i mean not only for the organizers just the energy of being in person and putting those kinds of things together is just kind of a very different thing so i yeah i can understand that to go back to pycon africa briefly the 2019 one one of the things i think is interesting is just the idea of trying to pull all these sort of disparate communities you know which i can imagine are very different across the whole continent of africa even just the idea of like like not having experience of travel traveling in africa i think about okay is everybody able to travel by plane or right they drive massive distances like i don't even like i don't i don't even know it's like a train system you know i think of everything very unfortunately you know europe europe and u.s centric like you mentioned or even you know having lived in hawaii i have a little more experience with like australia and japan and so forth but i have like no idea of like what does it even like to bring all those people together right it was it was really i think that my the team the new chair of python africa is someone called man young and he is also i think the the head of the ghanaian python community as well okay and he was working with me and the team like we had a fantastic executive committee in terms of executing the in-person conference and i think that it was difficult to like at first i think it was quite difficult to coordinate everyone and i think for myself as well it was just like making this decision because you are when you're running up icon usually you are not getting paid for it and for me it was completely like a volunt a voluntary thing that i i signed up to do and i knew it was going to take a lot of time but i didn't know how like it's a lot of time and a lot of it that you have to put in to just organize everything and it's a lot of fundraising a lot of trying to convince sponsors to invest in the python community in africa i think that's some way that we are still trying to get to but in general i think that it wasn't bad travel within africa is slightly more i would say it's a bit it's a bit harder because it is um it is more expensive africa is also really big like it's super super big so yeah it's huge there is no train system uh that is going to take you maybe like for me from harare to to ghana so a lot of the people that were coming from across the continent had to fly in and so we did particularly for the first conference we did do a lot of fundraising for people to get transportation to be able to get there but when it was like i loved it like it was you know it was very stressful to to organize but it was so so good i really loved just the mixture of cultures there's so many similarities i would say of people across the continent and i think that for me it was fantastic to just connect with people who are interested in python from different parts of africa and see our similarities and just the way we view things it's just very similar as well and just yeah it's just really a good experience very very positive experience for me i love ghana i love like the whole python community i think across the continent is fantastic and if anyone is considering coming to africa if they just plan to come for a python africa it's really good kind of going back to you know not only the the educational part that we talk about but also just i i kind of want to get an idea of of the scope of like what are the types of projects like we mentioned django several times but like what are the types of projects that you see across the different countries in africa and how they're using python like what like what's that landscape look like of like okay these people are using it for a newspaper these people are using it for you know a health system or what have you like you have experience with that like is that something that showed up during the conference right i think i'm trying to think so during the conference i think there was a there's a lot of of use of like even when we were reviewing the proposals for the talk proposals yeah there were a lot of proposals on ai and machine learning and okay we had a little microphone issue but we're back marlene might sound just slightly different but that's okay we're talking about ai projects across africa right so yeah i think ai is something that has become really really popular across the continent of africa and i think that it's it's it's an exciting field for sure but it's definitely the one it's the it's the specific fields that where we got the most talk submitted yeah and too much of the same thing is going to not be super interesting for the audience after a while yes 100 we had to look for but i would say that uh there were other talks as well there was one serverless talk there were some talks on django of course i think that's really popular some talks don't flask as well i think one talk on flask there was a talk on cryptocurrency i think it was like a a python and some cryptocurrency talk for sure which i thought was also very interesting so yeah definitely a wide variety of talks in a wide web variety of ways people are using python but a hundred percent ai and machine learning is the most popular [Music] this week i want to shine a spotlight on another real python video course it explores a basic building block that many other algorithms are built on it's titled introduction to sorting algorithms in python the course is based on an article by santiago valderrama and in the course liam pulcifer takes you through how different sorting algorithms in python work and how they compare under different circumstances how python's built-in sort functionality works behind the scenes how different computer science concepts like recursion and divide and conquer apply to sorting what big o notation is and how to use it to compare the efficiency of different algorithms i think it's a worthy investment of your time to learn how sorting algorithms are structured and how these building blocks work independently but also how they can be organized to work together and with other algorithms our video courses are broken into easily consumable sections where needed we include code examples for the techniques shown and all the lessons have a transcript including closed captions check out the video course you can find a link in the show notes or you can find it using the newly enhanced search tool on realpython.com [Music] i don't know if you wanted to dive into your work with data science did you get into that somewhat through your medical studies and working in data science uh no so i actually so right now i'm working i'm interning i'm still doing school so i'm interest interning with the rapids team at nvidia oh cool so i have been working with them as a software engineer and i primarily work on a data science library called crief and i i don't do i actually don't do any data science i i know you know a good amount of data science but i i i mainly engineer like features and do bug fixes it's an open source project i'm taking a lot of issues and and and kind of working on those but from an engineering side uh as compared to like a data science side yeah i've been talking to a bunch of people about sort of the tooling side of you know helping the data science scientists be able to do what they do that's really interesting could you maybe dive in a little deeper into that sure what the rapids project is and then maybe we could talk about i wonder about again going to the hardware thing like what you need in order to use a library like that sure yes so the rapids project is the goal of the rapids project is to accelerate data science using gpus for anyone that has very large data sets it's going to make your work a lot i think it should in most cases make the work faster for you to if you if you're trying to do computations or data aggregations or different things like that on your data the rapids project will sort of help with that so my team specifically with the cdf data frame library it's built to mirror pandas so anything that you can do with pandas you should be able to do with kdf but the only difference is that your computations are are going to be done on the gpu so that's going to make the work that you do much faster so yeah you'll be able to hopefully get well in most cases it's going to make your work faster and i will say that it's it's for when you have large data sets that's when you see a significant difference uh using gpus as codif as compared to pandas for example and so yeah i think it's a really exciting project and have been really enjoying it so in in that circumstance i can imagine there's setting it up on a local you know workstation with some particular nvidia gpu cards but is there also part of the program for cloud-based uh processing yeah definitely so you can there are a number of different cloud providers that give you access to a gpu i know google collab does that if you want to just go ahead and like sort of experiment collab has an option to you like maybe run a gypsy notebook for example and to work with your data on on collab with the gpu i know also a couple of other i think amazon also has some gpus that you can work with as well that are all online and yeah so i i do think it's also trying to make gpus more accessible or that world more accessible to data scientists like even if you have just your laptop you should still be able to run rapids if you're using things online even if you just want to experiment i know that the rapid site has a collab notebook that's already prepared that you can run oh cool right away i think if there are show notes we could leave that i guess in the show notes but yeah yeah that sounds good but yeah that's that's definitely something you can do online i was looking at the blog on the nvidia developer site for it and you know it mentioning um google's kubernetes engine and a bunch of other kinds of stuff so it seems like a really nice project to kind of get an idea what what you can get in involved with and learn a little more about qdf and rapid so we'll definitely include links for all that nice all right well i have these weekly questions i like to ask everybody and what is something that you're excited about in the world of python well for that one i think that i am definitely i think it's because i've kind of been in this world with rapids and this world of python and performance and so for me it's been really interesting and really exciting to kind of see the conversations that have been happening about that sort of in different kin in different circles and like i remember the i actually read that this year guido gave a talk at the python language summit where he was talking about how he wants to like one of his goals is to increase the speed of c python by two times like so in i think the 3.11 release of python it's of c python python is supposed to be two times faster which i think is really cool and i don't know as well if there's just been because i always were just reading different blogs about the language summit and there were so many like discussions about python and performance that i was pretty surprised about yeah and i'm not sure if i've just not been i had not been paying attention before or if it's just now that i'm just like more focused on it but it's been pretty cool to see all the work that's being done to speed up python so yeah excited about that it really feels like a theme that's throughout the python world right now specifically and i don't know if it's partly the the parser change is part of it that's allowing new sort of structural things in the language and how the language can be just even parsed that that allows these kind of interesting things to happen but right yeah and then like there's a bunch of stuff happening with like little compilers and other interesting projects so yeah it's an exciting time like who would who would think that you know kind of late in the language development it's like oh now we're gonna do this massive speed boost exactly yeah it is very it's very interesting and very exciting definitely lots of different ways people are doing it but it's it's cool that it's becoming a a really hot topic so very cool yeah nice yeah so what's something that you would like to learn next well i mentioned earlier for sure that well there are two things actually i would say on one hand like just technically speaking i'm very i'm interested in learning more about dusk and also like async is also something i'm a little bit more interested in these days okay um and kind of sort of diving into and getting a full understanding of those but i'm also very interested as well in in learning how to be a better teacher i yeah so i mentioned earlier before that i would love to kind of get back to a place where i can focus more on my on my local community at some point or even not just my local community but in different sort of emerging areas and do more teaching i would love to kind of figure out how people become good teachers i feel like i'm an okay teacher but i think i could be better so i'm trying to learn that as well for sure yeah it's a it's a real journey yeah i spent 10 years uh working in a school for recording engineers and it was very specific domain very specific topics of like digital audio and midi and these things that are you know very technical focused and i was teaching it to students that were much more interested in running into a recording studio with a huge console and playing around in there and i'm trying to teach them about computer concepts and so it was always a bit of a challenge of like you know a lot of work post high school also so it's okay how do i do infotainment you know like it has to be interesting and exciting yeah it was like a you know a bit of a comedy routine at the same time yes so yeah there's a lot of challenges to that yeah i think that's the thing right you have to like if you're teaching you have to be entertaining like you need to be engaging for it to be like a good for people to retain the knowledge and people to be interested and i think like you talked about sort of using hardware and things like that for audio programming and things i think hardware is a really good it's a really good way to teach people yeah and i was at the i got really interested in hardware in like 2018 when uh nina gave a talk at pycon us and she was talking about um she was talking about uh adafruit and circuit python and i remember i took home like a circuit python playground we got it in the swag bags but i think that is something i'm also interested in using as a way to teach people hardware to do that because i think it can also make it more engaging yeah definitely interested in that as well make possibly sound stuff you know that seems interesting yeah but it also seems like i don't know how much python plays into that because i've also seen like a lot of sound people are are super into like low level languages yeah so yeah so still trying to figure that out yeah i'm right in that pocket there too lukas longa had a really interesting talk about creating an fn synthesizer which was really kind of neat and then i'm kind of finally getting back to electronics like i took a real long break i moved from i was living in a very dry climate in arizona and i moved to hawaii yeah and i kind of got away from electronics for 10 years partly because the the climate would just basically destroy everything oh wow it basically would get you know like corroded or oh wow you know like aluminum would have pits on it it's just like the sea air was not friendly for those kinds of things which is very interesting kind of development yeah i would never think that i would not think that at all yeah it's weird yeah so i i was really into that and i was like building pedals and building those kind of things and like batteries would corrode within like six months and you're like what happened i just looked away this thing's destroyed wow so i've finally got back into it and the thing that's fun about hardware like like you mentioned is the idea that you really can teach somebody a handful of things about this piece of hardware and they can look at it and go well there's like 12 or 24 more little switches and connections on this thing what do those do yeah you know like and and then they can kind of think about what if i i really like would like it to do this and they take this ownership of it suddenly and it's so much less connected to you know this sort of like esoteric like okay this is a forward loop or whatever you're really tying it to something exactly yeah exactly you know you're like tying like oh well now i know why i want to iterate through things you know it's very cool it is 100 yeah so i like that idea too and i'm i'm working on a project right now it's like a foot switch which is funny because there's so many different people doing it but i'm using it as like kind of a music context of like to help you learn how to play or yeah um so we can like rewind a video or fast forward a video and use it with your feet yeah so that you can keep your hands on your instrument that's amazing and then but you could use it for you can use it for whatever you want like i mean there's like all these other interesting projects like you know mute my video on yeah that makes sense that's that's very cool i definitely it's a field it's it's a part of programming that i'm i'm interested in in kind of in in delving a bit more into yeah so i would love to kind of figure out how to do that i've done really really basic things but that sounds really cool um yeah so i i'm hoping to do more hardware stuff and i think i also want to do more hardware stuff like either for teaching or for fun i think i just want to do it just like yeah i don't know we'll see it's interesting hobby you know it's like you know a lot of people like to build models or build other little intricate things but it's so much more fun when you can build kind of a little tool that you know you can use in other parts of your life yeah definitely scratch your own itch on something like that exactly the last one is uh one that i don't ask that often but i i i'm intrigued to think about it in this case so what is something as you've been learning and working through python what is something that you thought you knew and understood about python but ended up you were kind of wrong about it um so okay so i'm giving you again i will give two answers here that's one that's like really one that's a bit more technical and then one that is not so the first thing is i guess a bit more technical in terms of like i didn't know for some reason i always thought like async async io use threads for some reason in my mind and i found out recently that that's not true that it doesn't at all so that was really interesting i kind of listened to a i've been taking a course about it and her and and yeah and just discovered that which is really interesting so i don't know if that will be helpful to anyone or not but um the other thing that i thought was really interesting as well is i was on twitter today and i i saw this brian oaken he also has a a podcast i think it's called test it's testing something but um yeah and he tweeted that he like he was asking if anyone uses uh foo baz and bar right i think those are like people in the computer world usually say those and i've heard them being used and i see people using them from four variables and i always thought in python i always thought that it came from monty python uh and i don't know like that's first of all that's not great because i'm like outing myself that i have not actually watched monty python but i just don't watch that's okay yeah i watched a couple of things not only is it it's a very old but it's very very specific to english culture in a lot of ways exactly i just watched the trailers through like a couple of small clips of it and i felt like this looks really unrelatable for me so i have not yet watched monty python but i always thought that that those names came from monty python but they didn't they actually are apparently uh people were sharing and said that it's actually part of just computer culture and apparently it was first year computer science background exactly and um apparently it was first used at mit or something like that and it's not like i'm studying computer science but like i've always thought it was a python thing for some reason and yeah i just thought that was really interesting i was just like i was completely wrong about that uh because oh it makes sense yeah but yeah that's that's not really helpful for anyone but just no no it's interesting i think there may be other people that there's you know there's people that are joining python every day and they're gonna see that out there yeah wonder about it like i i'm not a huge fan of using those sometimes um i think davey amos chimed into that thread also yeah and i'm kind of in the same vein that i would rather as sort of a best practice thing even as i'm teaching someone uh python or teaching them functions to name a function foo makes it unrelatable in a certain way that it it sort of makes it so this mystical thing where maybe a best practice would be to just go ahead and give it a longer name that actually says what it's going to do like print receipt or make you know make connection or you know connect to database or whatever like like make it very verbal you know like i feel like functions are doing something we'll you know and that's you know and then i i always would play around if i'm gonna make a list of things i would use the the goofy monty python ones of like spam and bacon right lobster or whatever their goofy one that's from and but those to me like feel more like things even though they're food you know yeah so it's you know it's a challenge and and definitely computer science has its own weird yeah sorcery wizardry for sure it's definitely something that's just i guess like a cultural thing that is just there in the computer science world but maybe i think it's just yeah i think i think it's fine to use it but for sure had no idea i have seen people using it before quite often in python is the main place where i've seen it being used and just had no idea what people were talking about when they would when they would do because some people say it as a joke and then like laugh about it and then i'm just like but i can't really like i'm just like i don't know where this joke is coming from yeah no it's hard but but generally yeah i think it makes sense for the functions for best practice to probably name them after what they're being used for but um yeah it's very interesting so something i've i've been wanting to change uh about the way i and the show is i've wanted to kind of like say okay are there any final like call outs or social media stuff that you want to to send out for anybody who's checking out the show sure yeah sort of social media and call-outs section right well for social media if you'd like you can follow me at marlene underscore cfw i am the main place you can follow me is on twitter my github is marlenezitw and i also have a website which is just marlenemangami.com so if you look on my twitter uh which is marlene you can find my full name there and and it's just that dot com and then i don't know if i would definitely recommend if you are interested in data science and gpus to check out the rapids library it's an open source project so we're always looking for more contributors and so if you're interested in sort of that world of data science and gpus i would encourage you to check that out you can take a look at the rapids project i think it's rapids.ai is the website and yeah also become a member of the psf the elections are coming up soon and if you're a voting member i would definitely encourage you to vote this year there are some fantastic candidates so would encourage you to to vote for for the people that are running this year oh that's great well i want to thank you so much for coming on the show and sharing all this with us thank you thanks for having me kristen and don't forget you can get started on digitalocean's app platform for free at d o dot co slash real python that's d o dot co slash real python i want to thank marlene montgomery for coming on the show this week and i want to thank you for listening to the real python podcast make sure that you click that follow button in your podcast player and if you see a subscribe button somewhere remember that the real python podcast is free if you like the show please leave us a review you can find show notes with links to all the topics we spoke about inside your podcast player or at realpython.com podcast and while you're there you can leave us a question or a topic idea i've been your host christopher bailey and look forward to talking to you soon

Original Description

The popularity of Python is continuing to grow Developers across the globe are embracing the language. How is Python being used in all of these different countries? How does an organization like the Python Software Foundation (PSF) work toward the goals in its mission statement for supporting and growing this international community? This week on the show, we have Marlene Mhangami, a PSF board member and part of the Diversity and Inclusion Work Group. Marlene lives in Zimbabwe on the continent of Africa. She has been organizing events not only locally in Zimbabwe but across all of Africa. She is the chair of Pycon Africa and has given talks at Pycon US, Pycon UK, and Pycon India. 👉 Links from the show: https://realpython.com/podcasts/rpp/65/ She has been working locally as an organizer and educator. We talk about the challenges of teaching technology and programming to a population of young people. Some of these students don't have access to computers. She is also currently pursuing a computer science degree with the University of London. Along with her studies, she is also interning with NVidia. She is working with them on the RAPIDS project with a focus on the cuDF library. Topics: - 00:00:00 -- Introduction - 00:02:05 -- Connecting during PyCon 2021 - 00:03:08 -- Roles with the Python Software Foundation (PSF) - 00:05:39 -- Python in Africa - 00:10:31 -- School overseas and return to Zimbabwe to build a Python community - 00:13:47 -- Teaching technology and Python to students who don't have computers - 00:22:14 -- Sponsor: Digital Ocean's App Platform - 00:22:50 -- Work with the PSF and building geographic diversity - 00:27:49 -- PSF work groups - 00:32:10 -- Organizing PyCon Africa 2019 and bringing a continent of communities together - 00:35:51 -- How is Python being used in Africa? - 00:38:05 -- Video Course Spotlight - 00:39:24 -- Working with NVidia RAPIDS and cuDF - 00:43:57 -- What are you excited about in the world of Python? - 00:46:12 -- What do
Watch on YouTube ↗ (saves to browser)
Sign in to unlock AI tutor explanation · ⚡30

Playlist

Uploads from Real Python · Real Python · 0 of 60

← Previous Next →
1 A better Python REPL – bpython vs python interpreter
A better Python REPL – bpython vs python interpreter
Real Python
2 Introducing large-type.com – A Utility Website
Introducing large-type.com – A Utility Website
Real Python
3 Reading Hacker News Without Wasting Tons of Time
Reading Hacker News Without Wasting Tons of Time
Real Python
4 Forward References and Python 3 Type Hints
Forward References and Python 3 Type Hints
Real Python
5 Using Sublime Text as your Git Editor
Using Sublime Text as your Git Editor
Real Python
6 Python Code Linting and Auto-Complete for Sublime Text
Python Code Linting and Auto-Complete for Sublime Text
Real Python
7 Make your Python Code More Readable with Custom Exceptions
Make your Python Code More Readable with Custom Exceptions
Real Python
8 Write Better Tests with Sublime Text's Split Layout Feature
Write Better Tests with Sublime Text's Split Layout Feature
Real Python
9 How to Use Sublime Text from the Command Line
How to Use Sublime Text from the Command Line
Real Python
10 Rename Variables with Multiple Selection in Sublime Text
Rename Variables with Multiple Selection in Sublime Text
Real Python
11 Sublime Text Settings for Writing PEP 8 Python
Sublime Text Settings for Writing PEP 8 Python
Real Python
12 Write Cleaner Python with Sublime Text's Indent Guides
Write Cleaner Python with Sublime Text's Indent Guides
Real Python
13 Sublime Text Whitespace Settings for Python Development
Sublime Text Whitespace Settings for Python Development
Real Python
14 Function Argument Unpacking in Python
Function Argument Unpacking in Python
Real Python
15 Python Code Review: Debugging and Refactoring "Conway's Game of Life" +  Automated Tests
Python Code Review: Debugging and Refactoring "Conway's Game of Life" + Automated Tests
Real Python
16 Using "get()" to Return a Default Value from a Python Dict
Using "get()" to Return a Default Value from a Python Dict
Real Python
17 A Python Shorthand for Swapping Two Variables
A Python Shorthand for Swapping Two Variables
Real Python
18 Python Code Review: Refactoring a Web Scraper, PEP 8 Style Guide Compliance, requirements.txt
Python Code Review: Refactoring a Web Scraper, PEP 8 Style Guide Compliance, requirements.txt
Real Python
19 Click & Jump to Test Failures from the Command Line (iTerm2)
Click & Jump to Test Failures from the Command Line (iTerm2)
Real Python
20 Setting up Sublime Text for Python Developers
Setting up Sublime Text for Python Developers
Real Python
21 Sublime Text + Python Guide Overview
Sublime Text + Python Guide Overview
Real Python
22 Python Code Review: Adding Pytest Tests to an Existing Python Web Scraper
Python Code Review: Adding Pytest Tests to an Existing Python Web Scraper
Real Python
23 Type-Checking Python Programs With Type Hints and mypy
Type-Checking Python Programs With Type Hints and mypy
Real Python
24 A Shorthand for Merging Dictionaries in Python 3.5+
A Shorthand for Merging Dictionaries in Python 3.5+
Real Python
25 Python Code Review Flask Web Security Tutorial + Virtualenvs, requirements.txt
Python Code Review Flask Web Security Tutorial + Virtualenvs, requirements.txt
Real Python
26 My Python Code Looks Ugly and Confusing – Help!
My Python Code Looks Ugly and Confusing – Help!
Real Python
27 Setting Up a Programmer Portfolio/Developer Blog – How To Get Started
Setting Up a Programmer Portfolio/Developer Blog – How To Get Started
Real Python
28 Do I Need a GitHub/GitLab/Bitbucket Profile as a Developer?
Do I Need a GitHub/GitLab/Bitbucket Profile as a Developer?
Real Python
29 Programmer Portfolio – Example and Walkthrough
Programmer Portfolio – Example and Walkthrough
Real Python
30 How to Get Your 1st Speaking Gig at a Tech Conference
How to Get Your 1st Speaking Gig at a Tech Conference
Real Python
31 How to Build Your Public Speaking Skills as a Developer
How to Build Your Public Speaking Skills as a Developer
Real Python
32 The Object-oriented Version of "Spaghetti Code" is "Lasagna Code" ?!
The Object-oriented Version of "Spaghetti Code" is "Lasagna Code" ?!
Real Python
33 Setting up Sublime Text for Python Developers – Lesson #1
Setting up Sublime Text for Python Developers – Lesson #1
Real Python
34 Cool New Features in Python 3.6
Cool New Features in Python 3.6
Real Python
35 "is" vs "==" in Python – What's the Difference? (And When to Use Each)
"is" vs "==" in Python – What's the Difference? (And When to Use Each)
Real Python
36 Emulating switch/case Statements in Python with Dictionaries
Emulating switch/case Statements in Python with Dictionaries
Real Python
37 Python Function Argument Unpacking Tutorial (* and ** Operators)
Python Function Argument Unpacking Tutorial (* and ** Operators)
Real Python
38 What Code Should I Put On My GitHub/GitLab/BitBucket Profile?
What Code Should I Put On My GitHub/GitLab/BitBucket Profile?
Real Python
39 A Crazy Python Dictionary Expression ?!
A Crazy Python Dictionary Expression ?!
Real Python
40 String Conversion in Python: When to Use __repr__ vs __str__
String Conversion in Python: When to Use __repr__ vs __str__
Real Python
41 Method Types in Python OOP: @classmethod, @staticmethod, and Instance Methods
Method Types in Python OOP: @classmethod, @staticmethod, and Instance Methods
Real Python
42 Optional Arguments in Python With *args and **kwargs
Optional Arguments in Python With *args and **kwargs
Real Python
43 Python Context Managers and the "with" Statement (__enter__ & __exit__)
Python Context Managers and the "with" Statement (__enter__ & __exit__)
Real Python
44 Installing Python Packages with pip and virtualenv / venv
Installing Python Packages with pip and virtualenv / venv
Real Python
45 "For Each" Loops in Python with enumerate() and range()
"For Each" Loops in Python with enumerate() and range()
Real Python
46 Python Code Review: LibreOffice Automation and the Python Standard Library
Python Code Review: LibreOffice Automation and the Python Standard Library
Real Python
47 Managing Python Dependencies With Pip and Virtual Environments – Lesson #1
Managing Python Dependencies With Pip and Virtual Environments – Lesson #1
Real Python
48 Python Tutorial: List Comprehensions Step-By-Step
Python Tutorial: List Comprehensions Step-By-Step
Real Python
49 Leveraging Python's Implicit "return None" Statements
Leveraging Python's Implicit "return None" Statements
Real Python
50 What's the meaning of underscores (_ & __) in Python variable names?
What's the meaning of underscores (_ & __) in Python variable names?
Real Python
51 Python Data Structures: Sets, Frozensets, and Multisets (Bags)
Python Data Structures: Sets, Frozensets, and Multisets (Bags)
Real Python
52 Writing automated tests for Python command-line apps and scripts
Writing automated tests for Python command-line apps and scripts
Real Python
53 How to find great Python packages on PyPI, the Python Package Repository
How to find great Python packages on PyPI, the Python Package Repository
Real Python
54 Immutable vs Mutable Objects in Python
Immutable vs Mutable Objects in Python
Real Python
55 PyPI vs Warehouse, the Next-Generation Python Package Repository
PyPI vs Warehouse, the Next-Generation Python Package Repository
Real Python
56 pep8.org — The Prettiest Way to View the PEP 8 Python Style Guide
pep8.org — The Prettiest Way to View the PEP 8 Python Style Guide
Real Python
57 My Experience at PyCon 2017 in Portland
My Experience at PyCon 2017 in Portland
Real Python
58 Pylint Tutorial – How to Write Clean Python
Pylint Tutorial – How to Write Clean Python
Real Python
59 "Reverse a List in Python" Tutorial: Three Methods & How-to Demos
"Reverse a List in Python" Tutorial: Three Methods & How-to Demos
Real Python
60 Python Refactoring: "while True" Infinite Loops & The "input" Function
Python Refactoring: "while True" Infinite Loops & The "input" Function
Real Python

Related Reads

Up next
Why 92% of Fortune 500 Use AI (And Still Aren't Trained) | @AICERTs CERTs
AI CERTs®
Watch →