<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Yameen Munir — Writing</title>
    <link>https://yameenmunir.com/writing/</link>
    <atom:link href="https://yameenmunir.com/rss.xml" rel="self" type="application/rss+xml" />
    <description>Case studies and reflections by Yameen Munir — AI &amp; Data Science, and freelance web development in London.</description>
    <language>en-GB</language>
    <lastBuildDate>Sun, 30 Aug 2026 19:34:12 GMT</lastBuildDate>
    <item>
      <title>Graduating with First Class Honours in Computer Science</title>
      <link>https://yameenmunir.com/writing/graduation-first-class/</link>
      <guid isPermaLink="true">https://yameenmunir.com/writing/graduation-first-class/</guid>
      <pubDate>Mon, 27 Jul 2026 12:00:00 GMT</pubDate>
      <description>Yameen Munir on finishing a BSc (Hons) Computer Science at London South Bank University with First Class Honours — the work behind it, and the people who helped.</description>
      <category>Milestone</category>
      <category>Graduation</category>
      <category>University</category>
      <content:encoded><![CDATA[<p>First Class Honours. Officially.</p>
<p>Three years ago I started my BSc (Hons) Computer Science at London South Bank University. This week I finished it with a First.</p>
<p>It hasn&#39;t been a straight line. Dissertation deadlines, coursework at 2am, job applications running alongside every module, and a lot of late nights trying to make sense of gradient boosting models while also trying to make sense of everything else going on. But it&#39;s done, and I&#39;m proud of it.</p>
<h2>Thank you</h2>
<p>None of this happens alone, so a few thank yous.</p>
<p>To my lecturers — thank you for the teaching, the patience, and pushing me to actually understand the material, not just pass the module. Particular thanks to Faria Hossain, Safia Barikzai, and Daqing Chen; your teaching shaped this degree more than you probably realise.</p>
<p>To Aarbaz Alam, my dissertation supervisor — thank you for the guidance through every draft, every setback, and every &quot;let&#39;s rethink this section&quot; moment. This degree wouldn&#39;t look the way it does without you.</p>
<p>A special thank you to May Metwaly. You were amazing in supporting me and were always there for me, especially when it mattered most. I won&#39;t forget that.</p>
<p>A big thanks to Musa Bhola for the advice and wisdom along the way — it shaped how I approached a lot of this.</p>
<p>And to my friends Joey Hall, Thai Son Nguyen, Saiful Haque Umar, Ritvik Panwar, Mohammed Ageli, and Recep Alici — thank you for the support, the laughs, and for keeping me grounded through it all.</p>
<p>On to the next thing.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Building a Full Ed-Tech Web Presence for Infinitum Education</title>
      <link>https://yameenmunir.com/writing/infinitum-education-case-study/</link>
      <guid isPermaLink="true">https://yameenmunir.com/writing/infinitum-education-case-study/</guid>
      <pubDate>Fri, 26 Jun 2026 12:00:00 GMT</pubDate>
      <description>A freelance case study on the Infinitum Education platform — IFP landing pages, application flows and terms pages built in WordPress and Elementor with a cross-functional team.</description>
      <category>Web Development</category>
      <category>WordPress</category>
      <category>Case Study</category>
      <category>Freelance</category>
      <content:encoded><![CDATA[<p>Wrapped up my freelance contract with Infinitum Education. Here&#39;s what building a full ed-tech web presence actually looks like.</p>
<p>Over the past months I&#39;ve been working alongside Qaiser K., Kabeer Uddin and Anna Shykhutska to build out the Infinitum Education platform from the ground up — IFP landing pages, FAQs, application flows, terms pages and more, all in WordPress and Elementor.</p>
<p>It wasn&#39;t just &quot;make it look nice.&quot; It was coordinating across a team, hitting moving deadlines, handling late-stage content changes, and shipping pages that had to convert.</p>
<h2>New skills I picked up along the way</h2>
<ul>
<li>Advanced Elementor templating and component reuse at scale</li>
<li>WordPress content workflows with multiple stakeholders</li>
<li>Writing copy that balances SEO and readability for an education audience</li>
<li>Managing scope creep professionally — harder than it sounds</li>
<li>Cross-functional collaboration: dev, content and ops all in one project</li>
</ul>
<p>Freelance teaches you things a classroom never could. Every project is a live environment.</p>
<p>Big thanks to Qaiser, Kabeer and Anna for the collaboration — a genuinely good team to work with. The site is live at <a href="https://www.infinitumeducation.com/">infinitumeducation.com</a>.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Building MKP London — Four Post Office Branches from One Codebase</title>
      <link>https://yameenmunir.com/writing/mkp-london-case-study/</link>
      <guid isPermaLink="true">https://yameenmunir.com/writing/mkp-london-case-study/</guid>
      <pubDate>Mon, 01 Jun 2026 12:00:00 GMT</pubDate>
      <description>A freelance case study on MKP London LTD — a single-codebase website for four Post Office branches, with a real-time AI customer assistant, an automated pricing pipeline and local SEO.</description>
      <category>Web Development</category>
      <category>AI Integration</category>
      <category>Case Study</category>
      <category>Freelance</category>
      <content:encoded><![CDATA[<p>Just shipped one of the most complete freelance projects I&#39;ve worked on to date.</p>
<p>I built the full website for MKP London LTD — a group of four Post Office branches across London and Essex that have served their communities since 1996. The client is Mohasin Khan, Founder, CEO and Postmaster, and the brief was to give MKP a proper digital presence that matched the quality of the service they provide in branch.</p>
<h2>What I built</h2>
<ul>
<li>A fully custom website — no templates — serving all four branches from a single codebase. Forest Gate, Kentish Town, Leytonstone and Corringham each get their own branch page, with live open/closed status, busy-times charts, maps, directions and branch-specific information.</li>
<li>A 24/7 AI customer-service assistant trained on every branch, every service, and all Royal Mail, DPD and Evri pricing. It knows what time it is and whether each branch is open at that exact moment, so a customer asking &quot;are you open right now?&quot; gets a correct, real-time answer.</li>
<li>An automated price pipeline that pulls rate data every 30 minutes, runs sanity checks before anything goes live, and keeps the website, the price checker and the chatbot in sync from one master source. No more manual price updates, and no more contradictions between pages.</li>
<li>Full local SEO across all four postcodes, structured-data markup for Google rich results, 29 custom Open Graph images, an <code>llms.txt</code> file so AI assistants like ChatGPT and Gemini can accurately recommend the branches, and Google Search Console set up with a full indexing plan.</li>
<li>16 in-depth customer guides covering passports, customs, Western Union, travel money, driving licences and banking — written to bring in organic search traffic and cut down on repetitive questions hitting the branches.</li>
<li>Security hardening across the stack: CSP headers, rate limiting on the contact form and chatbot, HTTPS enforcement and locked-down resource loading.</li>
</ul>
<h2>What I took away</h2>
<p>Building for real customers is completely different from building for yourself. Every decision had an actual person on the other end of it.</p>
<p>The automated price pipeline taught me that scraping data is the easy part — knowing when to trust it is the hard part. Validation and sanity checks aren&#39;t an afterthought; they&#39;re the whole architecture.</p>
<p>The AI chatbot was the most technically interesting piece. Getting it to reason about time correctly took careful prompt engineering and context design, not just feeding it a knowledge base.</p>
<p>The site is live at <a href="https://mkplondon.co.uk">mkplondon.co.uk</a>.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Awarded the Student Inclusivity Award at LSBU</title>
      <link>https://yameenmunir.com/writing/lsbu-inclusivity-award/</link>
      <guid isPermaLink="true">https://yameenmunir.com/writing/lsbu-inclusivity-award/</guid>
      <pubDate>Tue, 03 Feb 2026 12:00:00 GMT</pubDate>
      <description>Yameen Munir receives the LSBU School of Computer Science and Digital Technologies Award for Student Inclusivity, and reflects on three years of building community.</description>
      <category>Award</category>
      <category>University</category>
      <content:encoded><![CDATA[<p>Feeling incredibly grateful today.</p>
<p>I&#39;m proud to share that I&#39;ve been awarded the School of Computer Science and Digital Technologies Award for Student Inclusivity at London South Bank University.</p>
<p>This recognition means a great deal as I reflect on my three-year journey at university — a journey shaped by growth, resilience, community, and the privilege of supporting others along the way. Inclusivity has always been a core value for me, so receiving an award that represents those principles is truly special.</p>
<p>According to the certificate, I &quot;was presented the School of Computer Science and Digital Technologies award for Student Inclusivity&quot; on 3rd February 2026.</p>
<p>I&#39;m deeply thankful to my classmates, lecturers, mentors, and everyone who has been part of this chapter. Your support and encouragement made these three years unforgettable. A special thank you to Aarbaz Alam, Safia Barikzai, and Daqing Chen for their guidance and for always believing in me.</p>
<p>Excited for the next steps, and ready to carry these values forward into my career and future projects.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Cost-Aware Predictive Maintenance for a Vehicle Fleet</title>
      <link>https://yameenmunir.com/writing/cost-aware-predictive-maintenance/</link>
      <guid isPermaLink="true">https://yameenmunir.com/writing/cost-aware-predictive-maintenance/</guid>
      <pubDate>Sun, 01 Feb 2026 12:00:00 GMT</pubDate>
      <description>An LSBU AI coursework write-up — benchmarking Gradient Boosting, MLP and Random Forest against £10/£500 asymmetric error costs, reaching 95% recall at a cost-calibrated threshold, plus a decision-support agent.</description>
      <category>Machine Learning</category>
      <category>Cost-Sensitive ML</category>
      <category>Python</category>
      <category>LSBU</category>
      <content:encoded><![CDATA[<p>An AI coursework project (LSBU, CSI_6_ARI) built around a question that plain accuracy can&#39;t answer: when a missed failure costs far more than a false alarm, what should the model actually optimise for?</p>
<p>The system predicts vehicle failures for a fleet, working from <strong>170 anonymised sensor readings per vehicle</strong> across a dataset with a <strong>1.66% failure rate</strong> — severely imbalanced, the same &quot;predict the majority class and score well&quot; trap as most real fault-detection problems.</p>
<h2>Benchmarking against cost, not accuracy</h2>
<p>I preprocessed with median imputation and variance filtering, then benchmarked <strong>Gradient Boosting, an MLP and Random Forest</strong>. Instead of comparing them on accuracy or F1, I evaluated against the actual business cost: <strong>£10 per false positive, £500 per false negative</strong>. That reframes model selection entirely — the &quot;best&quot; model is the one with the lowest expected cost, at a decision threshold tuned for that cost ratio rather than left at 0.5.</p>
<p>The champion <strong>MLP reached 95% recall</strong> at its cost-calibrated threshold — accepting more false alarms on purpose, because each one is cheap and each missed failure is not.</p>
<h2>From prediction to decision</h2>
<p>A probability isn&#39;t an action. On top of the model I built a lightweight decision-support agent that maps failure probability to one of three responses — <strong>continue monitoring, schedule an inspection, or intervene immediately</strong> — so the output is something a maintenance team can act on directly.</p>
<h2>What I took from it</h2>
<p>Cost-sensitive thinking. Once you write down what each type of error actually costs, a lot of the usual ML defaults — 0.5 thresholds, accuracy comparisons, balanced-class assumptions — stop making sense, and the modelling decisions start to follow from the economics.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Predicting Road Accident Severity Across the City of London</title>
      <link>https://yameenmunir.com/writing/road-accident-severity-analysis/</link>
      <guid isPermaLink="true">https://yameenmunir.com/writing/road-accident-severity-analysis/</guid>
      <pubDate>Tue, 20 Jan 2026 12:00:00 GMT</pubDate>
      <description>An LSBU Data Mining write-up — SMOTE-rebalanced severity prediction reaching 92% recall on fatal accidents across 1,983 collisions, with Apriori rules surfacing wet dark dual carriageways at 58× lift.</description>
      <category>Data Mining</category>
      <category>Machine Learning</category>
      <category>Python</category>
      <category>LSBU</category>
      <content:encoded><![CDATA[<p>Coursework for LSBU&#39;s Data Mining &amp; Big Data Analytics module, but with a real question behind it: can two years of collision data tell you where and when the fatal accidents happen, so resources can go there first?</p>
<p>I worked with <strong>1,983 City of London road accidents from 2022–2023</strong>, aiming to predict severity and surface the conditions that drive the worst outcomes — the kind of analysis that feeds into emergency resource allocation and council safety planning.</p>
<h2>The hard part: imbalance</h2>
<p>The target was badly skewed — <strong>85.9% slight, 13.7% serious, 0.5% fatal</strong>. A model that predicts &quot;slight&quot; every time scores 86% accuracy and is useless. So accuracy was never the metric that mattered; recall on the rare, serious classes was.</p>
<p>I cleaned the data with z-score outlier removal and mode imputation, then used <strong>SMOTE</strong> to rebalance the training set before fitting a Decision Tree classifier for severity prediction. It reached <strong>75.2% accuracy and, more importantly, 92% recall on fatal accidents</strong> — it caught almost all of the cases that matter.</p>
<h2>Finding the patterns</h2>
<p>Prediction tells you <em>what</em>; I wanted <em>why</em>. Mining <strong>Apriori association rules</strong> over the accident conditions surfaced concrete risk patterns — the strongest being <strong>wet dual carriageways after dark</strong>, which reached a 73% fatal-confidence rule with <strong>58× lift</strong> over the base rate. Across the board, road type, surface condition and lighting were the strongest predictors of a fatal outcome.</p>
<h2>What I took from it</h2>
<p>The metric <em>is</em> the model. Choosing recall-on-fatal over accuracy, and rebalancing the data to make that possible, changed what the project was actually optimising for — and turned it into something you could hand to someone making safety decisions.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Building a Restaurant Website That Transformed a Local Business</title>
      <link>https://yameenmunir.com/writing/gupshup-case-study/</link>
      <guid isPermaLink="true">https://yameenmunir.com/writing/gupshup-case-study/</guid>
      <pubDate>Fri, 09 Jan 2026 12:00:00 GMT</pubDate>
      <description>A freelance case study: designing and building a full-stack website for Gup Shup — Chit Chat Chai, with Toast POS ordering, reservations, live status and local SEO.</description>
      <category>Web Development</category>
      <category>Case Study</category>
      <category>Freelance</category>
      <content:encoded><![CDATA[<p>A few weeks ago, I walked past Gup Shup — Chit Chat Chai in Collier Row and noticed something: amazing authentic Indo-Pakistani food, a warm atmosphere, but no website. No online ordering. No digital presence.</p>
<p>Being a web developer and someone who cares deeply about my local community, I couldn&#39;t just walk by. I reached out to Mohasin Khan, the owner, and said, &quot;Let me help you get online.&quot;</p>
<p>Fast forward to today, and I&#39;ve completed a comprehensive website for Gup Shup.</p>
<h2>Core features</h2>
<ul>
<li>9 fully responsive custom pages</li>
<li>Toast POS ordering integration for seamless online orders</li>
<li>Toast Tables reservation system</li>
<li>Toast Loyalty rewards program</li>
<li>Live opening-status indicator</li>
<li>Local SEO optimisation for &quot;Indo-Pakistani restaurant Romford&quot;</li>
<li>Mobile-first design with custom green &amp; yellow branding</li>
<li>Instagram video integration and an interactive gallery</li>
</ul>
<h2>Technical highlights</h2>
<ul>
<li>React.js and Node.js full-stack development</li>
<li>Schema markup for enhanced local search</li>
<li>Google Maps integration</li>
<li>Dark mode with brand-consistent theming</li>
<li>Accessibility features (ARIA labels, semantic HTML)</li>
<li>Performance optimisation for fast loading</li>
</ul>
<h2>Post-launch enhancements</h2>
<p>After the initial launch, I added navigation enhancements and footer action buttons, redesigned the Order Online page with delivery-partner integration, and implemented a range of technical fixes to perfect the user experience.</p>
<h2>Why I did this</h2>
<p>Because I believe that when local businesses thrive, our community thrives — and I have the skills to make that happen. There are so many incredible small businesses in Romford and beyond that deserve a strong online presence.</p>
<p>If you know a local business that could use help building a new website, maintaining an existing one, or streamlining operations through custom tech, I&#39;d love to hear about it.</p>
<p>Visit Gup Shup — Chit Chat Chai at 3 Clockhouse Lane, Collier Row, Romford, RM5 3PH, or online at <a href="https://www.gupshupchitchatchai.com/">gupshupchitchatchai.com</a>.</p>
]]></content:encoded>
    </item>
    <item>
      <title>A Full-Stack Homestay Exchange Platform, Built Ethically</title>
      <link>https://yameenmunir.com/writing/homestay-exchange-project/</link>
      <guid isPermaLink="true">https://yameenmunir.com/writing/homestay-exchange-project/</guid>
      <pubDate>Sat, 27 Dec 2025 12:00:00 GMT</pubDate>
      <description>Reflecting on the Homestay Exchange App — a role-based full-stack React and Supabase platform built with accessibility, data protection and ethics at the centre.</description>
      <category>Full Stack</category>
      <category>React</category>
      <category>Accessibility</category>
      <content:encoded><![CDATA[<p>A reflection on full-stack development, and on building software that has to answer to law and ethics as well as to users.</p>
<p>I&#39;ve really enjoyed collaborating with Atqa Manzoor and Zach Mammadov on the Homestay Exchange App, developed as part of my ICT Law &amp; Technology module. The project is a full-stack web platform designed to connect international students with hosts in a socially impactful and ethically responsible way.</p>
<p>This module pushed me far beyond theory and into real-world software engineering, requiring us to consider not only technical implementation but also accessibility, data protection, ethics, and user trust. I worked across the entire stack, contributing to frontend architecture, backend logic, database design, authentication flows, and inclusive accessibility features.</p>
<h2>What I learned from this project</h2>
<ul>
<li>Designing and scaling a role-based application (students, hosts, administrators)</li>
<li>Building secure authentication, authorisation, and verification workflows with real legal and ethical considerations</li>
<li>Developing accessibility-first interfaces, including voice guidance, colour-blind modes, and senior-friendly UI</li>
<li>Structuring large React applications using context providers and modular services</li>
<li>Working collaboratively in an agile team, balancing feature delivery, technical debt, UX, and compliance</li>
</ul>
<p>Beyond the technical growth, working with Atqa and Zach strengthened my communication, planning, and code-review skills, and highlighted how critical collaboration is in delivering responsible and maintainable software.</p>
<p>This project has been an important step in my development as a software engineer — especially in learning how technology must align with law, ethics, accessibility, and social impact. Proud of what we&#39;ve achieved so far, and motivated to keep improving it.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Designing a Normalised Manufacturing Database in SQL Server</title>
      <link>https://yameenmunir.com/writing/manufacturing-database-design/</link>
      <guid isPermaLink="true">https://yameenmunir.com/writing/manufacturing-database-design/</guid>
      <pubDate>Mon, 01 Dec 2025 12:00:00 GMT</pubDate>
      <description>An LSBU Big Data &amp; Databases write-up — ER modelling in Chen notation, normalisation to 3NF/BCNF in SQL Server, five parameterised T-SQL queries, and a Power BI dashboard.</description>
      <category>SQL</category>
      <category>Database Design</category>
      <category>Power BI</category>
      <category>LSBU</category>
      <content:encoded><![CDATA[<p>Coursework for LSBU&#39;s Big Data &amp; Databases module: design and build a relational database for a fictional manufacturer, LSBU Manufacturing Ltd, then actually query it in anger.</p>
<h2>Modelling</h2>
<p>I modelled the domain across <strong>nine entities</strong> — Department, Employee, Manager, Machine, Maintenance, Production, Operator, ShiftAssignment and Product — starting from an ER diagram in Chen notation. From there I derived the functional dependencies and normalised the schema to <strong>3NF/BCNF</strong>, then implemented it in Microsoft SQL Server with proper constraints and bulk-loaded sample data.</p>
<h2>Querying</h2>
<p>The point of a clean schema is what you can ask of it. I wrote <strong>five parameterised T-SQL queries</strong> covering CTEs, stored procedures, triggers and window functions:</p>
<ul>
<li>shift-frequency ranking across operators</li>
<li>maintenance-threshold detection, with indexing to keep it fast</li>
<li>a self-join trigger that validates manager salaries against their reports</li>
<li>rolling department-salary aggregations with window functions</li>
</ul>
<p>Then a <strong>Power BI dashboard</strong> on top, turning the query output into something an operations team could read at a glance.</p>
<h2>What I took from it</h2>
<p>Normalisation isn&#39;t academic tidiness — it&#39;s what makes the interesting queries possible without fighting the schema. Getting to BCNF first meant the triggers and window functions were straightforward to write, rather than contorted around redundant data.</p>
]]></content:encoded>
    </item>
    <item>
      <title>Predicting Cricket Match Outcomes with Machine Learning</title>
      <link>https://yameenmunir.com/writing/cricket-match-prediction/</link>
      <guid isPermaLink="true">https://yameenmunir.com/writing/cricket-match-prediction/</guid>
      <pubDate>Mon, 15 Jul 2024 12:00:00 GMT</pubDate>
      <description>An early machine-learning project by Yameen Munir — an end-to-end pipeline predicting cricket match outcomes and player performance, with scikit-learn models and interactive visualisations.</description>
      <category>Data Science</category>
      <category>Machine Learning</category>
      <category>Python</category>
      <content:encoded><![CDATA[<p>One of my first end-to-end machine-learning projects: a pipeline that predicts cricket match outcomes and player performance from historical match data.</p>
<h2>What I built</h2>
<p>The work ran from raw data all the way to results. I engineered features from historical match records — form, venue, match context — then trained and evaluated models with scikit-learn. On top of that I built a set of visualisations exploring runs, wickets and win probability, so the model&#39;s behaviour was something you could look at rather than just a score on a page.</p>
<h2>What I took from it</h2>
<p>This was where I learned that the model is the small part. Most of the effort went into getting the data into a shape worth modelling — deciding what a &quot;feature&quot; even is when the raw records are messy and inconsistent — and into checking that the evaluation was honest rather than flattering.</p>
]]></content:encoded>
    </item>
  </channel>
</rss>
