Wednesday, 2 October 2019

How to prevent “RecursionError: maximum recursion depth exceeded” when using Django Signals.



As we grow in web application development, it comes to a point when we want to be able to carry out some tasks just before saving an object to the database or right after saving an object to the database.
In Django, this can be done using a feature called Signals. According to the documentation, Signals allow certain senders to notify a set of receivers that some action has taken place and that they’re especially useful when many pieces of code may be interested in the same events.
An example of an instance when using signals can be helpful is when you are trying to create an object after saving another one. Like when you try to create a Profile object immediately after creating a User object. Following the steps in the documentation would work smoothly.
However, in a case whereby you need to make changes to an object/objects of the same model, then you could have a challenge. In our example, we have a Favorites model and a Category model. A Favorite object is an item that has a name, category and rank in numbers. A Category object is just a category a Favorite object can belong to.
class Category(models.Model):
name = models.CharField('Name', max_length=30)
description = models.TextField('Description', blank=True)

class Favourite(models.Model):
title = models.CharField('Title', max_length=20)
description = models.TextField('Description', blank=True)
rank = models.SmallIntegerField('Ranking',)
category = models.ForeignKey(Category, on_delete=models.CASCADE, related_name='categories')
Above, we have the 2 models, Category and Favorites. In this little project, we want to adjust the ranks of our Favorites if there is a new Favorite with the same category and rank that already exists. For example, if we have a Favorite with name ‘Jordans’ in the ‘Shoes’ category with a rank of 1 and we want to add another Favorite with the name ‘Air Force One’ in the ‘Shoes’ category and rank of 1. We would want to update the rank of the ‘Jordans’ to 2 so that we can have the ‘Air Force One’ in rank 1. This way we would always have a unique Favorite every time.
One way to do this would be to add ‘unique-together’ as a meta property in the Favorite model and set it to rank and category. However, what this would do is to raise an error when we have a new Favorite with the same category and rank but would not make any changes. To resolve this, we can use a pre-save signal that would check the Favorite, before its saved if there already exists a Favorite with the same category and rank. If this is true, we then update the all existing Favorites with same category and rank that is equal or greater than that of the incoming Favorite to have 1 added to their rank.
def save_favorite(sender, instance, **kwargs):
   fav = instance
   try:
       favs = Favourite.objects.filter(rank__lte=fav.rank, category=fav.category)
       for f in favs:
           f.rank += 1
           f.save()
       print('ending')
   except Favourite.DoesNotExist:
       passpre_save.connect(save_favorite, sender=Favourite)

But then, when you do this, you get this error:
RecursionError: maximum recursion depth exceeded while calling a Python object

This error occurs because we have modified the process of saving a Favorite object — the f.save() method will always call the save_favorite() and will result in an unending recursion which raises the above error.
To resolve this error, we will follow a different approach to saving our Favorite objects.
def save_favorite(sender, instance, **kwargs):
   fav = instance
   Favourite.objects.filter(rank__lte=fav.rank, category=fav.category).update(rank=F('rank') + 1)pre_save.connect(save_favorite, sender=Favourite)
Now, we see that we are no longer using the save() method which will result in the recursion. The update() works very well when you want to make updates to an object or objects of a model as we have done for the Favorite model.
I hope this article was helpful. Please comment below if you have any questions and I will reach out as soon as I can.

Tuesday, 17 September 2019

PyLadies Movie Night - Hidden Figures


Since my participation at the maiden PyCon Africa hosted in Ghana, Accra, I was so eager and moved to commit more of myself as a member / volunteer in the PyLadies Ghana community. The zeal, selflessness, sacrifice and ultimately hard work put in by the organizers of the community especially the PyLadies Ghana team led by Abigail Mesrenyame Dogbe inspired me to do more and stay connected. 

You can imagine my alacrity when I saw the Movie Night post on social media in collaboration with HackLab Foundation, within some few minutes I had registered for the event and was wondering how it was going to be and how I could be of help. A day to the program, I was contacted by the team whether I will be present at the meeting, this was a form of check since many people tend to register for an event but due to unforeseen circumstances could not be there on the ‘D’ day. My response to the call was affirmative and I was requested to come an hour earlier to help in the organization of the movie night.



Subsequent to the Movie post on social media, I discovered the movie to be aired had already made it to my ‘Watched List’, so it kept me wondering how different would it be to watch it again as a community. I got super excited when I saw the movie will come along with popcorn, the whole cinema feeling? Of course, I will be there. This was my first ever Tech Movie Night and I was very expectant.

Saturday finally arrived and I arrived an hour earlier at the Stanbic Incubator located in Accra. Preparations had already started as ladies and men who support our initiative trooped in. I helped to get the room ready, which was settled for use, a while ago, as the prior venue was too big and didn’t have the “cinema feels”. Shortly after our guest speaker, Stephanie Sher came by. The few people around had the chance to share some views on the Chinese investments within Africa as she wanted to know our takes on it, before her introductory session. When the room was quite filled, our guest speaker proceeded to share her journey in the tech space, this inspired us and even sparked some innovative ideas, other members were working on. I got to take something along, which still resonates in my heart, that no matter the idea or project you are working, always reach out to people with in-depth knowledge and experience. You will be surprised how quickly and better you solve it. You know what they say “A problem shared is a problem halved”.



Next on our line-up of events was the showing of Hidden Figures with some pop-corn and ice-cream to go with. Throughout the movie, I felt goosebumps all over, like it was the first time seeing it. The movie tackled a story about a trio of African-American women, who were tagged as “COMPUTERS” whilst working in NASA. They contributed tremendously to getting the first man to space. Although they all faced setbacks, they took great strides to fight the status quo within the very system that seemed to be pressing them down, pushing back with their skill, talent and determination. 

Hidden Figures serves as both entertaining and inspiring. It acknowledges from the beginning the racial divisions while insisting and portraying that “there is more than one way of killing a cat” – of fixing things. The ladies were fully aware of the racism that circled their lives but instead of resisting with violence and protests they asked for their rights with a sense of skill, grace, humility and patience. The movie depicted female empowerment which culminated in a discussion of such and the modern dose of feminism. At the end of the day the passion to be a change maker still continues. 


Big thanks to PyLadies Ghana and HackLab Foundation for putting up such an educative and interactive movie night. Another special thanks to Foster Awintiti Akugri and the SB Incubator for providing the venue. I am particularly looking forward to upcoming movie nights.

This blog was written by Yaa Nuamah Kusi-Fordjour


Tuesday, 27 August 2019

Girls Trip to Zlitch Technologies Limited

Even though it was a nice meeting, only four ladies were able to make it to Zlitch Technologies Limited. Being curious and having the intention of learning new stuff,  I was the first to arrive at Zlitch Technologies Limited, about 30 minutes to the  scheduled time on 26th of July, 2019. I must say it was my first time being  to a company with such flexibility. The atmosphere was conducive and the most surprising thing is that they were all youngsters. I expected to see workers in tie and suit but I thought wrongly. I was warmly welcomed and as I waited for the rest, I enjoyed some videos from YouTube. 

One by one the workers stopped by to say hi and chat a bit with me. In no time, the remaining three ladies showed up and we started the session.. The amazing thing is the name of the company; Zero + Glitch(error) = Zlitch technologies Ltd. No wonder the staff knew what to do at the right time... Everything went on very well right from the introduction session to the closing remarks.. 

We were warmly welcomed by the Director of Operations, Kweku Ankrah who later on took us through how the company came into being. 


The second speaker, Clifford took us through the varieties of technologies available ; artificial intelligence (using Mark Zuggerberg's house AI), machine learning, robotic processing automation, virtual reality and argumented reality, cyber security, and data science. For me, I was the happiest woman on earth because I learnt a lot. Most of the sessions were new to me but thanks to the videos attached to the presentations,  I could easily understand.

The presentations were so great because they attached videos to it and they made it interactive. In fact, this field trip is one of my best ever trip attended. The CEO gave the closing remarks with some words of encouragement. 


This blog was written by Comfort Olatunde.

Wednesday, 3 July 2019

PyLadies Night with Febisola Olanipekun


Febisola Olanipekun is a Graduate of Economics from Achievers University in Ondo State, Nigeria.
She started her career working as a payroll analyst in a startup while she was learning Data Analysis. After 2 years, she got a Data Analyst job but it was not what she wanted.
In 2018, a friend who knows how much she was fascinated about ‘hacking’ told her about She Secures bootcamp which she attended. And there, her journey began. At the moment, she works as a Security Operation Center (SOC) Analyst in a Cyber Security firm in Lagos, Nigeria.



We've heard quite a number of things about you, but can you please describe yourself to the house in 3 words?
Haha!  This question had me doing self-survey...I will say curious, resourceful and adventurous.

Okay, I’m particular about one word you chose, “adventurous”, why?
I know some describe me as polymathic, but nah …lol. Being adventurous got me into Cyber Security! But aside that, I love to travel explore, climb rocks, learn new things and do things differently

Interesting, but are you trying to say that if someone is not adventurous, they can’t venture into cyber security?
I have met many who think it is daring to have studied Economics and end up in Cyber Security. for me, it is fun!

Why did you leave your Economics background to pursue Cybersecurity?
First, I wanted to do investment banking. I could use Microsoft excel very well and build basic models but I hated accounting. I was not interested in all the cash flow and other jargons. Secondly, I wanted to do Economic Research. I think it is one of the hardest fields to get in as an entry -level job seeker. So, I had always been a lover of tech from my undergraduate days and I told anyone around me who cares to listen. I had a friend list out the path in tech and guess which fascinated me the most? Hacking

So, when did the urge for hacking start? Was it in the university?
I used to assist the guy that fixes things at the ICT department of my university. Getting things to work by passing the screws and holding things for him. He said I could be in a position to help people "secure" and "break" into things on the internet. I was really marveled. Actually, the discussion died down. Months later, he sent me a link to attend a boot camp organized by She Secures.

So Febi, will you say that this guy was, or is your mentor, because it’s clear he laid down the path for you to follow, and here you are. Or did you have another mentor(s) in tech?
So, being a friend is different from being a mentor, right? but both can happen.
He is a programmer. At the bootcamp, I met new people and I ensured to retain and maintain the network of people. Someone said I was very tenacious and picked interest in me to mentor me. I have him as a mentor and 2 other people as accountability partner.

That’s great opportunity for you in there. Would you like to be a mentor to anyone interested?
It is, really
I will be happy to. One person for starters.

What is your portfolio at your current workplace, how is the experience in there like, are there ladies too or it’s a man’s world?
I work as a SOC (Security Operation Center) Analyst and it has been an interesting experience so far. There is so much to learn.  I have 4 amazing female colleagues but it is a ratio of 1:10. One amazing thing in the field that I have observed is that arms are wide open from the male folks to teach and help you grow.

That’s encouraging. Febisola do you have any words of motivation for the young cyber security enthusiasts?
I used to bring myself down in my thoughts that I am old (I clocked 27 this year and I got in here at 26) ….my former team lead was 24 and I had to play a lot of emotional intelligence (EL).
Do not tear yourself down. If you don’t know it, you are not dumb. Google will never laugh at you, I promise. Ask questions, good questions. Research, be confident. Your soft skills outside of cyber security matter a lot, you will find them handy sometimes. e.g. I shine in preparing reports because of data analysis skills
You can get overwhelmed, learn in bits. Work with timeline for yourself


QUESTIONS FROM PARTICIPANTS

What should I learn for cybersecurity?
GitHub link where different people shared about getting into cyber security (https://gist.github.com/mubix/5737a066c8845d25721ec4bf3139fd31)
I also took a course on Edx after the bootcamp. It really helped me when I had conversations during interviews.(https://www.edx.org/micromasters/ritx-cybersecurity)

How can one enter the cybersecurity field with no experience?
Read!  update your CV, self-improvement / personal development. The reality is that there are so many free resources out there. Don’t let the ones that you can’t afford slow you down. You will get them later.

The way hacking and security is portrayed in our movies and society it looks like it’s for some kind of geeks and smart people. Is that the case or it’s just a stereotype?
Far from what you see in movies, they did not bring the skills from mama’s womb. It was all learnt. So, all you need to do is learn … dazzal!!


Big thank you on behalf of PyLadies Ghana, for honoring our invitation and sharing with us your experiences. We have learnt a lot and are equally motivated as well!



Thursday, 20 June 2019

PyLadies Night with Isaac Sesi

Isaac Sesi is an entrepreneur, software developer and embedded systems engineer. He is the co-founder of Sesi Technologies, an AgriTech company which develops hardware and software solutions for farmers and agribusinesses in Africa. He has also co-founded 2 other startups in the past; Invent Electronics and GravyCode.

Isaac Sessi


He has a degree in Electrical and Electronics Engineering from the Kwame Nkrumah University of Science and Technology (KNUST). Isaac is a Tony Elumelu Fellow a Next Einstein Forum finalist and a World Summit Awards National Winner. He was recently selected as one of the 50 most influential young Ghanaians for 2018.

His passion for STEM led him to cofound Nsesa Foundation, a non-profit whose vision is to inspire an Innovation revolution in Africa and get young Africans solving problems using science and technology. Nsesa Foundation's programs have trained hundreds of high school students and have reached over 300,000 people across the world since 2013.

Isaac has had the opportunity to showcase his work to several heads of states including the president and vice president of Ghana, the Chancellor of Germany, Angela Merkel and Prince Charles of Wales. In his free time, Isaac writes on entrepreneurship on his blog, isaacsesi.com, hosts The African Entrepreneur Podcast and plays the piano.

From your bio, you have a lot of outstanding achievements. Will you add anymore descriptions?
Err...well outstanding achievements may be a bit overkill. But hey, we are doing our best and trying to make impact. Whatever recognition that comes along the way is only validation of the good work you are doing. So i prefer to focus on the work rather than the fanfare.

When did you decide to go into tech? Was it in Senior High School (SHS), or Junior High School (JHS)? Do you have a sibling in that area of expertise?
Well i have been in tech all my life.   I started destroying radios and stuff very early I built battery powered boats in JHS. I built dishwashers, robots, cloth drying machines, communication systems etc in SHS.
I built apps and websites , and did more  complex embedded systems engineering stuff. After University, I started translating all of these tech and engineering i have been doing into products and devices and making them commercially available to have real impact in the lives of the underprivileged. So yes, I have been in tech for a long time.

Did you use Robots with Arduino NXT/EV3? (P.S : NXT and EV3 are robotics kits used to also teach robotics mostly in JHS and SHS in Ghana)
Well it depends on you. NXT/EV3 is more structured. Easy to follow. Arduino is more freestyle. So it depends on the individual and how they are learning or being taught. Each has their own advantage or disadvantage. Personally i prefer arduino because it allows for more creativity. I wouldnt put one above the other

Your company, Invent Electronics imports hardware components that constitute IoT kits? How and Why did you come up with that?
It was simple. I was in University doing electrical engineering.We needed to do projects and finding components for it was difficult. So i decided to fix that. Invent electronics was born.

I keep seeing a product of Sesi Tech, called Grainmate. What was the inspiration for this?
So GrainMate is a flagship product of my startup, Sesi Technologies. It is an affordable grain moisture which makes it easy for farmers to accurately monitor the moisture content in their grains before storage to help prevent post harvest losses.

What setbacks did you encounter on your journey? Few examples? Was funding a big problem?
Funding: Unlike software where all you need to develop an MVP is a laptop and internet, .developing hardware is expensive. You need money to develop a prototype.

You need equipment to refine your prototype. All of these cost money. You need a larger skill set to successfully develop a hardware prototype. You need a maker (the engineer who designs and prototypes the product.) then you need the software guy who will develop supporting mobile applications.  These do not come cheap. So you need to have the cash to prototype

Technical Know-how: Developing hardware requires a lot of specialized skills. Unfortunately, it is difficult to find people with -that skill set in Africa. Either they are already working somewhere or they are so expensive that you cannot afford them initially if you don’t have funding.

Scaling to mass manufacturing: It is very difficult to scale to mass manufacturing in Africa. Setting up manufacturing processes, getting the right equipment, finding casing/enclosure for your products, etc are some of the challenges you will face when trying to scale your manufacturing

Any links, GitHub account or resources that you’ve used that aids in acquiring some of the skills you have?
well, i learn a lot. I take a bunch of online courses all the time. Almost every point in time, i am taking at least one or two online courses. And my go to places for online courses are coursera.org and udemy.com. I look at where i am going, my career objectives and then i list the skills i need to thrive in those places. The ones i do not have, i go and acquire...

Currently my company is running a number of projects so i am taking a course in Project management. Education has been democratized, thanks to the internet. you don't need to pay so much to learn anything anymore, just grab your laptop, and anything you want to learn, you can find.
I love to read too. Because i am running a company, i love reading a lot about startups, growing your business, fundraising, etc. I have a cache of hundreds of digital books that I read regularly.
Also, I invest a lot in buying books on amazon kindle and audible in areas that are of importance to me. I love LinkedIn too, it helps me connect with people i believe can catalyze my development in other areas.
So hey, whatever resources you need are out there, just google.

Lastly, do you have any contact info or email that anyone can reach you on for project advice , idea contribution, internship ,etc at Sesi Tech?
If it is a personal email unrelated to my work that you want to send, please send it to hello@isaacsesi.com. Also i blog at isaacsesi.com where i write about entrepreneurship, personal development and productivity.

This session was moderated by Abigail Afi Gbadago the current Robotics Lead for PyLadies Ghana.

Thursday, 6 June 2019

GIRLS IN ICT DAY

On the 27th of April, 60 young girls from Nima, Newtown and its environs gathered at the Community Youth Cultural Centre, Kawukudi to celebrate International Girls in ICT Day a program organized by GirlyTech Ghana.

To mark the day, GirlyTech took the young girls through various talks on the need to have more girls in ICT, after which there was an ICT clinic session, where the girls were taken through practical sessions which include scratch programming and the use of ardiuno. I gladly helped some of them debug their codes. After the girls were put into groups, they were made to identify various problems in the society and how they could use technology to solve them.




PyLadiesGhana was invited to the program to give a talk on the topic ‘Starting out as a Newbie in Programming’, and I was privileged to represent the community. I shared with the girls various tips to making their coding journey less stressful and more interesting and I thought readers out there maybe interested too.


First of all, when starting this journey try answering the question ‘why’. Why am I doing this? Do I want to learn a new skill or I want to solve a problem in the society.  Once you find an answer to this question you are good to go. This is because when the going gets tough it’s your why that will keep you going.

Then you move on to finding your interests, in this technology field there are various areas you can venture into. Thus you need to find what interest you most. There is data science, web development, machine learning, artificial intelligence etc, find your area and venture into. For example, one may be fascinated by the use of the data and the power of data thus venturing into data science might be the best for you.
After finding your interest, start making use of online resources. There are tons of resources on the internet which will make this coding journey more practical and understandable. This include UdacityReal Python and freeCodeCamp. If you're finding some difficulty in your code, make use of search engines such as Google.

This journey can be sometimes really stressful, thus there is a need to join tech communities. In these communities you will find like minded people like you which gives you a sense of ‘I am not alone in this’. These communities include people from all ranges, starting from beginners, intermediate and advanced learners all willing to make your journey worth it. Most of these communities have outreaches through meetups, tutorial sessions etc. Also there is a high possibility of finding mentors who will guide you through the journey. PyLadies Ghana is an example of a Tech Community that provides mentorship to women in the open source community.

Also, to make sense out of what you are learning, you have to practice what we call ‘learn while building’. This approach will make you enjoy this journey and make you understand better what you learn. For example, if you are into web development and learn about how to us the <h> tags or how to insert an image in html push yourself to create a simple profile page. This will help you understand and appreciate what you are learning.

Lastly, PRACTICE, PRACTICE, PRACTICE. This is the only way you can be a master at what you are learning.




My experience with these young girls was amazing and I hope this piece will also help the newbies out there in their journey of coding.

This blog was written by Vanessa Otchere, a Tech entrepreneur and a Data Enthusiast.

Tuesday, 28 May 2019

PYLADIES KUMASI MEETUP 1.0

PyLadies Ghana is an initiative under the Python Software Community in Ghana.(Python Ghana) with a focus on helping more women become active participants and leaders in the Python open-source community.

The PyLadies Kumasi Chapter held its maiden meetup on the 23rd Of February, 2019, where young ladies made various contributions towards the betterment and improvement of the community.
There was a talk about lots of diverse issues pertaining to the Python Software Community and how to encourage more ladies into venturing into programming. We were advised to not just have basic knowledge but also develop interest.




Prudence, the main lead of the Kumasi Chapter also broadened our horizon about the use of Github and encouraged everyone to have an active account . A date was later scheduled to teach how use  github. We had Noah Alorwu, Micheal Young and Mannie Young on a panel who also spoke about their individual experiences and also gave us tricks on the Python language.


There was enough to eat and drink at the end of the meetup. There was also time for networking. This enabled us to know each others interests in programming and a lot more. We all shared a little about the Challenges and achievements we've encountered soo far and this was really helpful since many were inspired through the stories shared. 




We are thankful to PyLadies Ghana, The Python Software Foundation and Hapaspace Hub for making this event possible.

This blog was written by Fafa and Prudence.

Wednesday, 15 May 2019

PyLadies Night with Martha (An Electrical and Electronics Engineer now a Machine Learning Engineer)

Martha Teiko Teye is an Electrical and Electronic Engineering graduate from University of Energy and Natural Resources. She is currently a backend developer/Junior Machine Learning Engineer at ZlitchTechnologies Limited.
She also has a nano degree in Front-End Web Development from Udacity and a Microsoft certification in Machine Learning. Martha appreciates the power of online communities/forums because they play a significant role in her programming journey. She volunteers to teach coding and mathematics at her free time, loves to watch big bang theory, play chess and toy blast.
Martha looks forward to pursue a masters degree in the field of Computer Science or Machine Learning. Fun fact: She recently started reading and taking interest in comic books (because of Avengers).

Martha Teiko Teye

Tell us briefly about you. I personally think you're power packed. Studying electrical engineering and all. How will you describe yourself aside this?
I'm a tiny little lady who loves to take challenges. Quite troublesome but I think I'm cool.

How did your journey begin? When did you begin considering your field of study?
So growing up, I had wanted to become a surgeon. Even up to final year in senior high school, it was still my dream. But after writing WASSCE I had the chance use my dad's Vehicle diagnosing machine to detect some faults in cars and the way it worked fascinated me. That's when I got interested in the whole engineering thing.
So I now wanted to offer any engineering course I could get. At the time, KNUST was not admitting students with awaiting results so I either had to apply with the Nov Dec results I wrote before WASSCE.  It nearly killed my dreams until I found University of Energy and Natural Resources.
And that's how I ended up opting for Electrical Engineering.

For a dream you birth in only a few months, was it not hard settling in? How did you succeed at this?
It wasn't hard for me but I felt it was a relief. I love mathematics and realizing that Engineering had a lot of maths component in it as compared to me trying very hard to appreciate biology in order to become a surgeon. I only felt a bit scared as people were against that sudden decision.
It did not take long to convince my dad since he is already in the field (he's a mechanic). So I just had to do study harder so as to fail in that regard.

Great. My lesson here is to find something you love and excel at and fuel it for success. You only ignited something you enjoyed. Aside him, did you have any mentors?
Yeah. It was like magic. For the machine to tell you exactly where the faults were located. It was like a problem half solved.
So I had real mentors during my second year in the university. Dr. Mark Amo-Boateng and one other student who was my senior. That was when I actually got to know about this whole programming stuff and got interested.

How easy was it branching to coding?
For me, it was a little challenging. We offered C programming as a course in the second year. I really didn't get the concept well at that time.  So I decided to re-study it during the vacation.

Was there any link between electrical engineering and your new love for machine learning?
Yeah there was. I had an internship at the High Performance Computing Center of UENR where Dr Mark was the head.
He challenged me to first write an algorithm for fingerprint processing and then after, he introduced me to AI. It was really difficult. I had to go download codes online trying to understand. And some did not make sense to me at all. So I had to take the basic courses in AI so I could relate to those codes. We would stay up sometimes up to 2am because he wanted me to figure things out myself. I was using Matlab by then and he advised that I did some python to be able to send data using web sockets to the web. I had not heard of that before so that was how I managed to learn most things.

Wow. The zeal is enviable. Learning is key. What AI and machine learning tools are you familiar with, and how proficient are you in them?
For ML, I use Azure ML. I've worked with Tensorflow and Natural Language Toolkit for the chat project I was working on.

What resources helped you grasp Python?
I mainly used tutorials point. Aside that, I rely on posts and slack channels to learn new and trending stuff.

Are you able to freely ask questions without being intimidated? Especially on open forum where you're scared you may get ridiculed. It's a real hurdle for some of us.
I was scared of asking questions actually. I would prefer to spend all the time finding answers to myself. Three ladies with many gentlemen was quite tough. But they were really helpful. I appreciate them. Some of them never hesitated to teach us after lectures.
That got me to open up.

From what I've gathered, if your aim is growing into a successful coder, you need to know a lot of things. But, for Machine Learning & Data Science, it is pretty enough to master at least one coding language and use it confidently. How true is this?
Because we are Pythonistas, is Python a better option for solving machine learning problems? If yes, could you give us some reasons?
I would say Python too because just recently i took ML course with Microsoft and they insisted we learnt R too but I realized that most of the codes were in python and just a little bit of R resources were used. Python also has a lot of libraries which makes things easier and is also quite simple to me.

Can you point us to sites where we can get resources that are understandable? There are many resources now. Figuring them out is harder than learning the whole thing.
True. I dont want to be baised here but I think for paid resources, Udacity and Microsoft VLIT is very welcoming. I like the way there's a project to complete after every module.

How's a typical day for you like at Zlitch technologies?
At Zlitch I am always on my PC. I do mostly backend stuff. So more of writing API's for most of our clients work. Sometimes I write codes to sort out students data since for future predictions and analysis since most of our clients are schools. I work at anytime of the day. Because we sleep at work.

This must be interesting. What do you do to stay on top of changing technologies?
Also do share your contact for those who will want to reach out for Mentoring, collaborations and to learn.
Continuous learning!
It's something I learnt when I started creating my e-learning platform. I am using angular and started with angular 4 now we have angular 7 and things are not the same there.
Also, I could be reached via mail; martha.teye9@gmail.com or martha@zlitch.net

QUESTIONS FROM PARTICIPANTS
What advice will you give to a total beginner to programming?
For a beginner, I would say once you start, never stop practicing. Also try and attend hackathons and conferences. At least there's one motivation you might take home with you.
And also one thing I forgot to mention. Volunteer.... Even if your knowledge is little volunteer. I thank the organizers of Django girls because volunteering to coach actually taught me to do my first project using Django

How did you manage during your school days, I mean in the University, because I'm also in the University now, and I know in school you learn so many courses that are not even related to your field of study and most times lecturers give lots of crazy assignments here and there and presentations and at the end most times you spent a whole semester just like that,  so tell me how did you cope with all this?
The truth is when I started staying up to debug my code instead of revising, my grades started dropping. I was not bothered because it wasn't so much.
It is really difficult combining the two. But I would advise you to make sure you keep grades up whiles pursing your programming passion. Perhaps you could create a timetable for both. Also, if you're in your final year, I would advise that you focus on finishing while trying to get links to study after school.

Is there anything you wish you had known or done better at the early stages of your journey?
I wish I had started learning programming at a very early stage. Even before I had to take that course in second year. I would have been very proud of my achievements by now.

What's your approach to studying programming and how do you approach mentorship?
Initially I was used to being taught something first before I would bother learning. But I've realized, that just by hearing someone talk about some nice technologies, you should be ready to read about what it entails and see how best you could apply it to what you already know. When studying programming you'd be tempted to try every language. But we should learn to be master of some particular areas and then have the others as hobbies.
For mentorship, don’t wait for your mentor to tell you what to do next. Try and be inquisitive. I've mentored a few girls and I realized they had the same problem I had before. Being scared to ask questions.

How do you balance social life and work?
My social life is boring, (Aside playing games and going to church) so work takes majority of my time. I'm not the going out and having lots of friend’s type.

How many hours were you dedicating to learning to code when you were a novice?
I used to have tutorials from 9pm to 12am spend the rest of the time trying to do an assignment if my tutor gave me one. And then sleep afterwards to prepare for lectures the next day. This happened for one year until my tutor graduated.


COMMENTS/REMARKS
I loved the session. It was beyond awesome! ~ Jida Asare

Martha, you're an inspiration. Really proud of you. ~ Gina

You're a gem and your work is amazing, I'm inspired to do more. ~ Edinam

Thanks a lot Martha, I’m really inspired. ~ Sandy