The Accidental Developer: Why I Didn't Study Computer Science — and Why I Have No Regrets
My journey from a phone-only hacker kid in KwaZulu-Natal to a full-stack developer and data engineering learner — without ever studying Computer Science. Here's why that path was exactly right for me.
"Why Didn't You Study Computer Science? Do You Regret It?"
I get asked this sometimes.
It's a fair question. I'm a full-stack developer building modern web applications with tools like TanStack Start and Hono.js. I'm currently deep into a Data Engineering programme through DataCamp. I write about modern web architecture and replacing legacy systems. On paper, I look like someone who should have taken the classic CS route.
But I didn't. And I wouldn't change a thing.
The "Hacker" Kid Who Didn't Own a Computer
Growing up in KwaZulu-Natal, I was fascinated by computers from a distance — because actually owning one was never an option. Hollywood painted hackers as cool, mysterious figures who could bend technology to their will. I wanted to be that person, even if they were usually the villains in the movies.
The First Smartphone (2016)
In 2016, I got my first smartphone. While most kids my age were lost in games like Mili Militia, I treated the phone differently. I used it for document processing, tinkering, and trying to understand how everything worked. It was a tool first, entertainment second.
That small shift in mindset was the earliest sign of who I would become.
Grade 10: The Science Stream Gamble
When it was time to choose subjects, I picked the science stream — not because I dreamed of becoming a doctor, but because it included Computer Applications Technology (CAT). That was the closest I could get to real computer time in school.
We started with basic HTML in Grade 10. It didn't click immediately. I was still figuring myself out and easily distracted. But being in the computer lab kept me exposed to the world I loved. That exposure mattered more than I realised at the time.
The Pandemic Pivot
Grade 11 brought COVID-19 and suddenly we had unexpected time at home.
Learning HTML on a Facebook Group
I found a Facebook group where people were learning to code. That's when HTML finally started making sense. Using nothing but that same smartphone, I pushed through the struggles with CSS and the confusion of JavaScript. It was slow and frustrating, but I kept going.
Returning to Matric
By the time we returned to school for matric, I could build basic websites. More importantly, I finally knew what I wanted to be: a developer.
My focus in CAT shifted dramatically. I started loving the coding sections. While classmates used the school computers only for assignments, I was following YouTube tutorials on my phone and coding along in whatever mobile editor I could find.
For one school practical, we were only expected to use HTML. Instead, I added interactive JavaScript and proper CSS styling. It was messy, imperfect, and completely mine — but it worked.
What Learning on a Phone Taught Me
Looking back, the constraints shaped me in ways a traditional classroom probably couldn't.
-
It taught me audacity. Debugging JavaScript on a tiny 5-inch screen at midnight quickly kills the idea that you need perfect conditions or permission to build things. If I could learn like that, I could tackle almost anything.
-
It taught me how to learn. I had to hunt for good tutorials, filter noise from signal, and solve problems without a teacher nearby. By university, I was already a skilled information seeker — long before I knew the field had a name.
-
It taught me to chase what's new. Without a fixed curriculum, I developed an instinct for technologies with real momentum. I learned to spot stagnation early and move toward fresher approaches.
-
And slowly, it taught me taste. You build ugly things first, notice what's off, and iterate. Over time you start to feel when code isn't just correct but right — when a UI feels respectful instead of merely functional. That education started on my phone and YouTube. I'm still refining it.
The University Detour
After matric, I didn't qualify for Computer Science. In many stories, that would be the dramatic low point. For me, it was just another pivot.
BIS Publishing (Wrong Fit)
After a gap year, I started BIS Publishing at the University of Pretoria. I enjoy writing, so it felt like a solid alternative. But one semester in, it was clear it wasn't the right fit.
Information Science (The Right Fit)
I switched to Information Science.
That's where everything clicked.
Information Science at UP isn't the library-focused field many assume. It's about information systems — how information flows through societies, how technology shapes access to knowledge, the ethics of data, and the real value of information. It gave me something self-teaching alone couldn't: a strong theoretical foundation.
YouTube taught me how to build. Information Science taught me why it matters.
Web development suddenly felt bigger than making pages load. It became a way to participate in the knowledge society and create systems that genuinely serve people.
By my first year, I was deep into Node.js and React — not just following tutorials, but deliberately building toward real mastery.
The Data Engineering Turn
Late 2024, a random TikTok video about data roles caught my attention. Data engineering resonated deeply. I researched it and applied to DataCamp's programme.
I'm currently working through it and learning constantly.
Mobile Apps: Easier Than I Thought
In June 2025, I recently started building mobile apps using React Native and Expo.
To my surprise, it was significantly easier than I thought. The mental model from web development transferred smoothly, and Expo's tooling removed almost all the friction I expected from native development.
Where I Stand Today
My formal background is straightforward:
-
Degree: BIS Information Science, University of Pretoria
-
Current focus: Data Engineering (DataCamp)
-
Self-taught strength: Modern web development and now mobile apps
My Current Stack
I'm a pragmatist at heart. My current stack reflects that:
-
TanStack Start instead of the more common default — because the ecosystem and developer experience just feel better for what I want to build.
-
Hono.js over heavier alternatives — lightweight, clean, and built for modern JavaScript runtimes without unnecessary overhead.
-
React Native + Expo for mobile — surprisingly smooth, cross-platform, and enjoyable to work with.
What Actually Drives Me
I have a deep dislike for legacy systems — not the people maintaining them, but the friction, technical debt, and manual processes they force on organisations that deserve better.
My real passion is replacing outdated infrastructure with modern, efficient alternatives. That drive shows up in everything I build and write about.
Do I Regret Not Studying Computer Science?
No.
Would a CS degree have given me deeper theoretical knowledge in algorithms and formal computer science? Probably. Would it have made me stronger in some technical areas? Maybe.
But my unconventional path gave me something equally valuable:
-
Real resourcefulness born from limited tools.
-
A broader perspective on information as a social and ethical force.
-
The habit of constantly adapting and seeking what's next.
-
A pragmatic mindset focused on solving actual problems for real people and organisations.
Information Science complemented my self-taught skills perfectly. It added context and depth without boxing me into a narrow technical lane.
One Line to Sum It Up
If I had to sum myself up in one line, it would be this:
A pragmatic, self-taught full-stack developer with formal Information Science training, building modern systems to replace legacy infrastructure — while learning data engineering and mobile development along the way.
Not a CS graduate. Not an imposter. Just a developer who took the long way, learned different lessons, and wouldn't trade those lessons for anything.
Comments
No comments yet. Be the first to share your thoughts!
Sign in to join the discussion and leave a comment.
Subscribe to the Newsletter
Get notified when new articles go live. No spam, unsubscribe anytime.