TN#
Home
About
Work
  • Projects
  • Experiments
Writing
  • All
  • Articles
  • Tutorials
Now
Contact
Tsholofelo Ndawonde.

Software Engineer

Open to opportunities
HomeAboutWorkProjectsWritingBlogTutorialsNowContactPrivacy

© 2026 Tsholofelo Ndawonde. All rights reserved.

South Africa

    Blog

    1. Home
    2. Blog

    Writing about the things I discover while building software — from architecture and engineering decisions to lessons learned along the way.

    See all writing →
    I Learned Machine Learning by Building an F1 Predictor in C#
    machine-learningSeptember 1, 20269 min

    I Learned Machine Learning by Building an F1 Predictor in C#

    I explore how I learned machine learning by building an F1 race prediction model in C# using ML.NET, OpenF1 data, and familiar software engineering principles.

    Read More
    Beyond REST vs SOAP: Understanding Modern API Architectures
    API architectureAugust 13, 20266 min

    Beyond REST vs SOAP: Understanding Modern API Architectures

    I clarify the key differences between REST, SOAP, GraphQL, gRPC, and Webhooks—not as competing "API types," but in the context of their roles as an architectural style, a protocol, a query language, a framework, and an event mechanism, respectively. This analysis was prompted by a challenging moment during a technical interview, and it aims to untangle the terminology, helping you choose the right tool for your needs rather than getting caught up in debates like "REST vs SOAP."

    Read More
    Testing in Dev Cycle
    Integration testingMay 1, 20266 min

    Testing in Dev Cycle

    This is my perspective on testing and its impact on becoming a better developer versus merely writing more code about one's code.

    Read More
    Back to Fundamentals: Mastering Class, Record, Interface, Internal, and Sealed in C#
    C# FundamentalsMarch 21, 20266 min

    Back to Fundamentals: Mastering Class, Record, Interface, Internal, and Sealed in C#

    Stop guessing which C# keywords to use. Master the CIDIS model to choose between class, record, interface, internal, and sealed with confidence. Learn how focusing on these C# fundamentals reduces bugs, improves code quality, and helps your team release faster.

    Read More
    JSON Web Token vs Cookie — Choosing the Right Authentication Strategy
    AuthenticationFebruary 5, 20266 min

    JSON Web Token vs Cookie — Choosing the Right Authentication Strategy

    A comprehensive comparison of JWT and cookie-based authentication, exploring how each works, their security implications, and when to use each approach in modern web applications.

    Read More
    From Race Conditions to Reliable Messaging: What I Learned Building an Event-Driven System
    MessagingFebruary 5, 20266 min

    From Race Conditions to Reliable Messaging: What I Learned Building an Event-Driven System

    How a simple user ID generation problem led me to understand race conditions, delivery semantics, and the Outbox/Inbox patterns that power modern distributed systems.

    Read More