PyLadies: Python for Women
St. Petersburg has recently hosted the first PyLadies meetup in the CIS countries. PyLadies is a community of women Python developers with chapters in 76 cities all around the world. The group’s mission is to help more women become active participants and leaders in the Python open-source community, as well as create a platform for sharing knowledge and establishing useful connections. ITMO.NEWS publishes the highlights of the meeting.
What is PyLadies?
The organization was created by a group of women in Los Angeles seven years ago with the aim of increasing the participation of women in computing. Today, the community is made up of thousands of women developers, who conduct meetups, conferences, and workshops for Python enthusiasts. The movement is supported by Guido van Rossum, the author of the Python programming language. The idea of the first PyLadies meetup was welcomed by many St. Petersburg IT companies. According to Svetlana Dyakova, a web project manager at Veeam Software, only 20% of programmers at big IT companies such as Google, Facebook and Twitter are women. There are also many misconceptions about women being bad at programming.
“Previously, there were more women in IT, but then they were pushed out by men. It’s hard to say for sure why it happened, but the fact remains that now there are very few women in tech. What is more, women often find it hard to work among men, especially in the very beginning, when they just start their career. But to become a professional, you have to interact with other developers and practice a lot. Such meetups are aimed at encouraging women to communicate with each other and with other developers, as well as acquire useful soft skills such as networking and teamwork skills,” comments Elena Savelieva, PyLadies coordinator in St. Petersburg, a developer at the Arcadia company.
PyLadies is a platform where women programmers can share experience and make friends. Apart from PyLadies, there are some other initiatives for Python developers in St. Petersburg, for example, PiterPy Meetup. The lectures at the first meeting were easy to follow even for novice programmers. The coordinators now plan to collect and analyze participants feedback to understand what topics are most relevant.
“We try to adopt practices used in other countries, but not all the time. For example, in the USA, only Python developers are invited to take part in such meetings, while we welcome all women interested in IT and discuss some broader issues,” shared Svetlana Dyakova.
How to learn algorithms?
Elena Volzhina, a developer at Yandex.Mail, opened the meeting. First, she explained why it is important to learn algorithms. For starters, algorithms can come in handy when solving non-standard problems. Second, the more tasks you solve, the more creative you become. Third, using algorithms can help you learn to combine incompatible things. And finally, your potential employer may ask you to solve an algorithmic task at a job interview.
She also explained what to do if you get bored with algorithms. There are two solutions. First, you can stop learning them and switch to something different for a while. Or you can change the way of learning: put a textbook aside and find a website where you can practice writing algorithms in a fun way and try to solve at least one task per day. The most important thing when learning algorithms is to keep going. There is no other way, said Elena.
What knowledge is necessary to start solving algorithmic tasks? First of all, a programming language. You’re free to choose any language you like, but C++ and Java are probably the most popular. You should also have a basic understanding of data structures such as arrays, lists, hash tables, and queues. And there are some more complex concepts that you also may find useful: specific data structures, algorithms on graphs, coding, among others.
Ms. Volzhina shared some useful resources for those interested in learning algorithms: online courses “Algorithms. Theory and Practice. Methods” and “Algorithms. Theory and Practice. Data Structures” (both available in Russian).
Git for Beginners
Alena Ponomarenko, a developer at the Social Quantum company, told the audience about learning Git. Git is a version control system for tracking changes in computer files and coordinating work on those files among multiple people. Such systems are primarily used in software development and in some related fields. Ms. Ponomarenko noted that to start working with Git, you have to learn just about a dozen operations, which can be mastered using this online simulator.
Nadezhda Bugakova, a developer at Yandex.Toloka, talked about the best libraries for big data analysis, while Alla Zakharova, a developer at the Picasel Agency company and one of PyLadies coordinators in St. Petersburg, shared her thoughts about how to find a job in IT and what to expect from job interviews. You can learn more about the project on its VK page.