Four years of showing up
I started university without a laptop and without knowing what a folder was. This is what the four years to a software engineering degree actually felt like.

I graduated. Bachelor of Science in Software Engineering, NED University of Engineering and Technology, UIT, Karachi.
Alhamdulillah. I want to say that first, and I want to say it plainly, because everything that follows only makes sense to me in that order. I did not plan any of this well. Things kept opening that I had no business expecting, and I have never been able to explain that to myself as cleverness or hard work alone. God was kind to me in ways I did not earn.
I showed up to university without a laptop. That is not a dramatic detail I am adding for effect, it was just the situation. And it was worse than it sounds, because I also did not really know how computers worked. I could barely use MS Word. I was not confident about what a folder was, or why files lived in one place and not another. I remember watching people in my class navigate a machine with the easy fluency of someone who had grown up with one, and quietly understanding that I was starting several steps behind, in a degree that assumed I was not.
Then programming happened in the first semester, and something in me went very quiet and very interested at the same time.
I cannot fully account for why it caught me. It was not that I was good at it. I was slow, and I got stuck constantly, and a lot of my early code worked for reasons I could not have defended. But it was the first thing I had met where being stuck was not the end of the road. You could sit with a problem. You could try the wrong thing and watch exactly how it was wrong. That felt survivable in a way that a lot of learning had not.
So I practised. This was before ChatGPT, before anything would explain my own mistake back to me in plain language. HackerRank problems, one after another, in whatever machine time I could get. When I was stuck, I had Stack Overflow and the patience to read answers to questions that were almost but not quite mine. That gap, between the answer someone else needed and the answer I needed, is where I think I actually learned to program. Nobody was going to close it for me.
Hackathons came next, mostly because friends dragged me into them. I was not winning. I was mostly the person building something slightly too ambitious at two in the morning with a laptop I had borrowed. But hackathons taught me the thing classrooms could not, which is that software is something you do with other people under time pressure, and that finishing something rough beats planning something perfect.
Open source was the turn I did not see coming.
I think I wandered into it half by accident, the way most people do, looking at a repository and realising that all of it, the discussions, the review comments, the arguments about design, the reasons behind decisions, was simply open. I could read how real engineers thought. Nobody was gatekeeping it. For someone who had started out not knowing what a folder was, that was an enormous thing to discover.
My first contributions were small and I was nervous about all of them. What kept me there was not the code, it was that people replied. Maintainers took time to explain things to a student they had never met and owed nothing. I have tried to remember that in every review I have written since.
I kept contributing. Not strategically, not with a plan, mostly because I had come to like it. And over time, that accumulation started turning into things I would not have predicted. Google Summer of Code, working on HNN-Core, with guidance from people at Brown University who were generous with their time well past what the program required. An LFX mentorship with the Linux Foundation. Then AI engineering work, real systems, real users, the kind of problems I used to read about in other people’s repositories.
I am not listing those to impress anyone. I am listing them because I want to be honest that none of them felt like a milestone at the time. Each one felt like the next slightly uncomfortable thing I said yes to, mostly unqualified, usually unsure. The pattern only looks like a path from here.
What I actually learned in four years is smaller than the resume suggests. Showing up repeatedly beats showing up brilliantly. Being visibly confused in public, in an issue thread, in a PR review, is the fastest way to stop being confused. The people who helped me had no incentive to, which means the only sensible response is to do the same for someone else.
And the part I keep coming back to: I was not the most prepared person in that room on day one. Not close. Whatever happened after that, I cannot take credit for the openings themselves. I showed up. God opened doors. That is genuinely how it feels to me, and I do not have a more sophisticated version of it.
If any of this is useful to someone starting out underprepared and a bit embarrassed about it, I wrote more about one specific stretch of it in the third way I found into Google Summer of Code. It is the same lesson in a narrower frame.
To my parents, my teachers, my friends who lent me laptops and patience, and to every maintainer who replied to a nervous student: thank you. Alhamdulillah.