Original post on hashnode posted August 24, 2021.

Cover image is the work of Anna Losif (mentor) and Mary Obiagba (Outreachy intern) on one Monday morning like that during a sync call, when we were trying to figure out how to split code from some problematic module into separate modules. This award winning diagram got the title "the beautiful one" from David Losada during a call with the tech team 😂 Want to see what the "less beautiful ones" look like? Read on! 😃

My Outreachy internship with Ushahidi ends today Tuesday 24th August, 2021. It's been quite a journey. This experience will stay in memory for a looooooooong time. For me, my Outreachy experience is not just all about the the code I worked on in the Ushahidi code base. It's also about the part that members of my family played, that encouraged me not to quit the internship (I almost did). It's also about the part my mentor played, that kept me going too.

I'm grateful that I shook off the fear to talk to my mentor about the challenges that (I thought) would impact my work negatively. She usually responded with the exact opposite of what I thought would happen, if I shared them with her. In cases where she has experienced same, she even briefly shared experience. I found out that she understood even more than I thought. In the end, we (Anna and I) achieved everything on the project timeline (you know about the d3.js task already). I even went ahead to create more work for myself 😂 (you'll see what I mean soon).

Weeks 8 - 13 summary

There is a concept called the CAGED system on the guitar, which allows the guitarist to visualise notes on the guitar neck using 5 shapes: C shape, A shape, G shape, E shape and the D shape. Some notes are common to or are shared by any two shapes sitting side by side... This is not a guitar lesson or article but you can read it up if it interests you 😉 I particularly like the tasks in the second half of the internship, because I had to become a guitarist again to solve the tasks (I've started creating time to rehearse as promised in my first Outreachy blog post).

The main task was to split code found in the post module into map module and data module, and then lazy load the data module. Anna introducing the Google jamboard that Monday morning (cover photo diagram) made the very "tasking task" even interesting and fun for me. I made some more diagrams 😃, to help myself and anyone understand the new changes to this part of the code base worked on. It also shows the relationship between routes and the idea behind how the code is lazyloaded. The plan is to add them somewhere in the Ushahidi documentation 🥳

Auth and mode-bar have now become separate modules too. We also moved directives and services that are not shared out of the common module, and into the respective modules where they are only used. I really appreciate Anna, David and Wisdom. They helped me out when I needed anything to be able to carry out some parts of the tasks.

Final note

I took these screenshots (with their permission) during the last Monday meeting with Anna, and the last Monday platform tech call. Meeting with the team was not made compulsory, but I'm glad that I attended. I didn't feel left out the meetings with all seniors in it, being the least there. I will keep playing meeting videos in my memory every Monday 😉

I encourage future Outreachy interns to be open with mentors. Not just code-related challenges, but any challenge you think may impact your work. I have learnt by working at Ushahidi (with Anna Losif as my mentor) that there is a lot to being a good software developer or engineer than just writing code. Thank you Outreachy for the opportunity. Thank you Anna Losif and the entire Ushahidi team for the support throughout the internship. Signing out 👋🏽

Find links to all Outreachy blog posts at the bottom of the Think about your audience blog post.

Find me on github, twitter and/or linkedIn.