Skip to content

Commit c4a9fa9

Browse files
committed
rn-133: add interview with Olamide Caleb Bello
1 parent 44d589c commit c4a9fa9

File tree

1 file changed

+207
-3
lines changed

1 file changed

+207
-3
lines changed

rev_news/drafts/edition-133.md

Lines changed: 207 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,213 @@ This edition covers what happened during the months of February and March 2026.
2929
### Support
3030
-->
3131

32-
<!---
33-
## Developer Spotlight:
34-
-->
32+
## Developer Spotlight: Olamide Caleb Bello
33+
34+
_Editor’s note: This edition features a retrospective interview with a
35+
contributor who contributed to Git through a mentoring program.
36+
We hope the reflections shared by the Outreachy contributor will
37+
provide an insightful perspective that benefits the community.
38+
As always, we welcome your thoughts and feedback!_
39+
40+
* **Who are you and what do you do?**
41+
42+
I’m Olamide Caleb Bello, a software engineer based in Nigeria. I studied
43+
Economics, but I’ve always been curious about technology and how
44+
Systems work behind the scenes. That curiosity led me to start teaching
45+
myself web development, and over time I found myself drawn more
46+
towards backend and systems-oriented work.
47+
48+
I became especially interested in understanding how complex tools are
49+
built and maintained, which led me to open source. I contributed to Git
50+
as part of the Outreachy program, where I got to work on improving parts
51+
of Git’s internal workflows.
52+
53+
These days, I enjoy working on tools that make development smoother
54+
for others, and I’m particularly interested in open source and
55+
distributed systems.
56+
57+
* **How did you initially become interested in contributing to Git,
58+
and what motivated you to choose it as your Outreachy project?**
59+
60+
I initially saw Git as just a tool I needed to get my work done. For a
61+
long time, my workflow was basically just `git add`, `git commit`, `git push`,
62+
and `git pull`, without thinking much about what was happening underneath.
63+
That started to change when I ran into some particularly messy merge conflicts
64+
that forced me to slow down and really question how Git was managing
65+
history and combining changes.
66+
67+
Around the same time, I was becoming more interested in systems in
68+
general, thinking about tools like the kernel, systemd, and Git
69+
itself, and how they work under the hood. That experience pushed me to
70+
look deeper into Git’s internals, and I quickly realized how much
71+
depth there was beneath the surface.
72+
73+
When I came across the Outreachy project, choosing Git felt natural, I
74+
wanted to challenge myself and contribute to a tool I had used for
75+
years but didn’t fully understand, while learning from experienced
76+
maintainers.
77+
78+
* **How do you feel your contribution has impacted the Git community
79+
or the broader open source ecosystem?**
80+
81+
[My work](https://cloobtech.hashnode.dev/beginning-my-outreachy-opensource-internship-at-git-overview-and-project-description)
82+
focused on reducing Git’s reliance on global state by refactoring
83+
repository-specific variables into a more localized structure. Each repository
84+
instance now manages its own configuration independently, improving modularity
85+
and reducing the risk of cross-repository issues.
86+
87+
Through this work, I came to appreciate how changes at this level contribute to
88+
Git’s long-term direction, particularly efforts to make it more reusable as a
89+
library. Even though these changes aren’t directly visible to users, they make
90+
the system safer and easier to extend.
91+
92+
Being part of that process gave me a deeper respect for the level of thought
93+
and the care that goes into maintaining Git.
94+
95+
* **Is there any aspect of Git that you now see differently after
96+
having contributed to it?**
97+
98+
Before contributing, I thought Git was just a bunch of commands I
99+
typed every day. Working on it showed me a whole hidden world,
100+
how configurations are saved and read, how each repository handles
101+
its own settings, and what the index is really doing behind the scenes.
102+
Some of it was so intricate I almost felt like Git was trolling me!
103+
104+
Seeing all this up close turned what felt like a simple tool into a
105+
carefully designed system, and it gave me a much deeper appreciation
106+
for the thought and care behind every command.
107+
108+
* **How do you balance your contributions with other responsibilities
109+
like work or school?**
110+
111+
At the moment, I’m not tied to a full-time job or school, but I spend a lot
112+
of time learning new tech and doing freelance work. I usually dedicate small,
113+
focused sessions to Git contributions, sometimes just an hour here or there,
114+
and it’s surprising how much progress you can make that way. This rhythm lets
115+
me keep learning, experimenting, and contributing without feeling overwhelmed.
116+
117+
* **Can you share how Outreachy helped enhance your technical and
118+
non-technical skills (like communication, project management,
119+
etc.)?**
120+
121+
Outreachy was a huge growth opportunity for me, both technically and personally.
122+
On the technical side, I deepened my understanding of Git internals, learned to
123+
work effectively in a large C codebase, and tackled complex refactoring of core
124+
systems. On the non-technical side, I honed my communication skills by engaging
125+
actively on the Git mailing list, responding to feedback, and documenting my
126+
work clearly for others. The experience also helped me improve project
127+
discipline, learning how to plan and iterate on tasks in a structured way.
128+
129+
* **What was your biggest takeaway or learning from Outreachy that
130+
you now apply regularly in your work?**
131+
132+
My biggest takeaway from Outreachy was learning how even small, careful changes
133+
can have a big impact in a large system like Git. During Outreachy, for even
134+
the tiniest change, I had to run over 32,000 test cases just to be
135+
sure it wouldn’t break anything! I approach my work by breaking tasks into
136+
smaller steps, testing thoroughly, and thinking through the consequences
137+
before making changes. This mindset has become a regular part of how I work,
138+
whether I’m contributing to open source or building my own projects.
139+
140+
* **What was the biggest challenge you faced during your contributions
141+
to Git, and how did you overcome it?**
142+
143+
The toughest part of contributing to Git was navigating its huge and complex
144+
C codebase. I had to wrap my head around global variables, repository-specific
145+
state, and how configs were stored and read. At first, it felt overwhelming,
146+
and I constantly worried that even a small change might break something.
147+
148+
I overcame this by tackling one piece at a time, reading the code carefully,
149+
testing thoroughly, and admittedly, disturbing my mentors quite a bit! 😂 I’m
150+
especially grateful to Christian Couder and Usman Akinyemi, who guided me
151+
patiently. Christian taught me how to ask questions properly, showed me how to
152+
debug effectively, and always encouraged me to think through problems step by
153+
step. Usman was equally supportive, often checking in and joining coding
154+
sessions with me. Both helped me understand Git’s internal architecture and
155+
gave me the confidence to contribute safely and effectively.
156+
157+
* **Have you thought about mentoring new GSoC / Outreachy students?**
158+
159+
Yes, I have thought about mentoring future GSoC or Outreachy students. Since I’m
160+
still relatively new to open source myself, I want to focus on contributing and
161+
learning for now. However, I do hope to co-mentor in the next Outreachy program,
162+
sharing what I’ve learned and helping others navigate the experience.
163+
164+
* **If you could get a team of expert developers to work full time on
165+
something in Git for a full year, what would it be?**
166+
167+
If I had a team of expert developers working full time on Git for a year, I
168+
would focus on further improving its modularity and internal architecture.
169+
My goal would be to make Git easier to embed and reuse as a library, reducing
170+
reliance on global state and improving the safety of multi-repository
171+
operations.
172+
173+
This would not only make Git more maintainable for contributors but also open
174+
up new possibilities for other projects to integrate Git functionality
175+
more easily.
176+
177+
* **If you could remove something from Git without worrying about
178+
backwards compatibility, what would it be?**
179+
180+
If I could remove anything from Git without worrying about backwards
181+
compatibility, I’d simplify some of the legacy parts of its internal state.
182+
These older structures can be confusing and tricky to work with, and removing
183+
them would make Git’s internals cleaner and easier to reason about.
184+
185+
* **What upcoming features or changes in Git are you particularly
186+
excited about?**
187+
188+
I’m particularly excited about Git’s ongoing libification efforts, which make
189+
it easier for other projects to embed and reuse Git functionality. Changes that
190+
reduce global state and improve repository isolation also excite me, because
191+
they make multi-repository operations safer and Git’s internals easier to work
192+
with. I’m curious to see how these improvements will open up new possibilities
193+
for both contributors and external tools that rely on Git.
194+
195+
* **What is your favorite Git-related tool/library, outside of Git
196+
itself?**
197+
198+
I’d say my favorite Git-related tool is `gitingest`. It’s really handy for
199+
exploring repositories programmatically and testing workflows. I’ve found it
200+
especially useful while learning Git internals.
201+
202+
* **What is your toolbox for interacting with the mailing list and for
203+
development of Git?**
204+
205+
I mainly use `git send-email` to submit patches, read threads on
206+
[lore.kernel.org/git](https://lore.kernel.org/git), and reply via
207+
Gmail. This setup helps me follow discussions and iterate on my
208+
contributions smoothly.
209+
210+
211+
* **How do you envision your own involvement with Git or other open
212+
source projects in the future?**
213+
214+
I’m here to stay in open source. I want to keep contributing to Git and other
215+
projects, learning as I go, taking on bigger challenges, and helping new
216+
contributors find their footing. Open source has become a big part of how I
217+
grow as a developer, and I hope to keep giving back for years to come.
218+
219+
* **What is your advice for people who want to start Git development?
220+
Where and how should they start?**
221+
222+
My advice for anyone starting Git development is to begin small and be curious.
223+
A great resource I found helpful is the [MyFirstContribution](https://git-scm.com/docs/MyFirstContribution)
224+
document. Start by reading the guides, experimenting locally, and submitting
225+
small patches. Interacting with the mailing list, asking questions, and iterating
226+
on feedback will help you learn and grow as a contributor.
227+
228+
* **Would you recommend other students or contributors to participate
229+
in the GSoC, Outreachy or other mentoring programs, working on
230+
Git? Why? Do you have advice for them?**
231+
232+
Absolutely, I would recommend programs like GSoC or Outreachy for anyone
233+
interested in Git or open source. These programs provide structured mentorship,
234+
exposure to real-world projects, and the chance to learn directly from
235+
experienced developers. My advice is to start small, be curious, ask questions,
236+
and don’t be afraid to iterate on feedback. Every contribution, no matter how
237+
minor it may seem, is a valuable learning experience.
238+
35239

36240
## Other News
37241

0 commit comments

Comments
 (0)