<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
    <channel>
        <title><![CDATA[James Haworth Wheatman: Blog and Development Journal]]></title>
        <description><![CDATA[An RSS feed for my website - you can consume this to be notified whenever I post something.       I'm a Tech Lead on full-stack web and mobile applications and I write about Tech Quality,      Training, and Leadership amongst other things that interest me!]]></description>
        <link>https://www.jameshw.dev</link>
        <image>
            <url>https://www.jameshw.dev/avatar.png</url>
            <title>James Haworth Wheatman: Blog and Development Journal</title>
            <link>https://www.jameshw.dev</link>
        </image>
        <generator>RSS for Node</generator>
        <lastBuildDate>Mon, 11 May 2026 23:48:04 GMT</lastBuildDate>
        <atom:link href="https://www.jameshw.dev/feed.xml" rel="self" type="application/rss+xml"/>
        <pubDate>Mon, 11 May 2026 23:48:02 GMT</pubDate>
        <language><![CDATA[en-GB]]></language>
        <ttl>1440</ttl>
        <item>
            <title><![CDATA[10x Your Thought Leadership with the Insight Maturity Model]]></title>
            <description><![CDATA[Most “thought leadership” informs, but rarely changes how people think or act. This article introduces the ]]></description>
            <link>https://www.jameshw.dev/blog/2026-03-22/insight-maturity-model</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2026-03-22/insight-maturity-model</guid>
            <category><![CDATA[Thought Leadership]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 22 Mar 2026 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Test-Driven Documentation: Turn Your Test Suite into an Executable Spec]]></title>
            <description><![CDATA[Tests and documentation both describe how software behaves—but they fail in opposite ways. Tests can verify behaviour without knowing whether it matters; documentation can be validated by humans but not automatically verified. This article introduces ]]></description>
            <link>https://www.jameshw.dev/blog/2026-01-15/test-driven-documentation</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2026-01-15/test-driven-documentation</guid>
            <category><![CDATA[Testing]]></category>
            <category><![CDATA[Documentation]]></category>
            <category><![CDATA[Systems]]></category>
            <category><![CDATA[Playwright]]></category>
            <category><![CDATA[Docusaurus]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Thu, 15 Jan 2026 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Web Scrapers Maxing Out My Vercel Fast Data Transfer]]></title>
            <description><![CDATA[Development Journal Entry made on 2026-01-09]]></description>
            <link>https://www.jameshw.dev/journal/2026-01-09/fast-data-transfer</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2026-01-09/fast-data-transfer</guid>
            <category><![CDATA[Robots.txt]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Fri, 09 Jan 2026 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Adobe CEP ExtendScript Hot Module Reloading]]></title>
            <description><![CDATA[Development Journal Entry made on 2025-12-16]]></description>
            <link>https://www.jameshw.dev/journal/2025-12-16/extendscript-hot-module-reloading</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2025-12-16/extendscript-hot-module-reloading</guid>
            <category><![CDATA[Adobe CEP]]></category>
            <category><![CDATA[ExtendScript]]></category>
            <category><![CDATA[HMR]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 16 Dec 2025 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Slack Attachments as a Package Deployment System]]></title>
            <description><![CDATA[Development Journal Entry made on 2025-12-16]]></description>
            <link>https://www.jameshw.dev/journal/2025-12-16/slack-attachments-as-package-deployment</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2025-12-16/slack-attachments-as-package-deployment</guid>
            <category><![CDATA[GitHub]]></category>
            <category><![CDATA[GitHub Actions]]></category>
            <category><![CDATA[Slack]]></category>
            <category><![CDATA[Adobe CEP]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 16 Dec 2025 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Promisifying Callbacks in TypeScript]]></title>
            <description><![CDATA[Development Journal Entry made on 2025-12-01]]></description>
            <link>https://www.jameshw.dev/journal/2025-12-01/promisifying-callbacks-in-typescript</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2025-12-01/promisifying-callbacks-in-typescript</guid>
            <category><![CDATA[JavaScript]]></category>
            <category><![CDATA[TypeScript]]></category>
            <category><![CDATA[Clean Code]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Mon, 01 Dec 2025 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[On the Importance of Server-side Validation (or How to Hack a Form)]]></title>
            <description><![CDATA[I document a few learnings I made on how easy it is to bypass client-side validation using the Chrome DevTools, which outlines the importance of server-side validation of form inputs.]]></description>
            <link>https://www.jameshw.dev/blog/2025-08-25/chrome-dev-tools-local-overrides</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2025-08-25/chrome-dev-tools-local-overrides</guid>
            <category><![CDATA[Security]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Mon, 25 Aug 2025 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Quantifying Code “Understandability” with Bounded Contexts]]></title>
            <description><![CDATA[I explore an idea I’ve been considering recently - assessing the understandability by discovering the bounded contexts within a codebase based on mutation of state.]]></description>
            <link>https://www.jameshw.dev/blog/2025-03-25/bounded-contexts</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2025-03-25/bounded-contexts</guid>
            <category><![CDATA[Code]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 25 Mar 2025 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Tailwind CSS Typing Text Animation ]]></title>
            <description><![CDATA[Development Journal Entry made on 2025-02-08]]></description>
            <link>https://www.jameshw.dev/journal/2025-02-08/typing-animation</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2025-02-08/typing-animation</guid>
            <category><![CDATA[Tailwind]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sat, 08 Feb 2025 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Story Points Aren’t Dead–You’re Just Making the Wrong Optimisation!]]></title>
            <description><![CDATA[Story Points measure complexity, not time; misalignment occurs when Project Managers equate them to timelines. To enhance delivery speed, focus on value-adding tasks and avoid using Story Points as time proxies, which can obscure underlying issues.]]></description>
            <link>https://www.jameshw.dev/blog/2025-01-26/story-points-arent-dead</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2025-01-26/story-points-arent-dead</guid>
            <category><![CDATA[Scrum]]></category>
            <category><![CDATA[Agile]]></category>
            <category><![CDATA[Story Points]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 26 Jan 2025 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[React: Element type is invalid: expected a string or a class/function but got: undefined]]></title>
            <description><![CDATA[Development Journal Entry made on 2025-01-23]]></description>
            <link>https://www.jameshw.dev/journal/2025-01-23/undefined-component</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2025-01-23/undefined-component</guid>
            <category><![CDATA[React]]></category>
            <category><![CDATA[Debugging]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Thu, 23 Jan 2025 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[VS Code Extension: VSChameleon]]></title>
            <description><![CDATA[Development Journal Entry made on 2025-01-21]]></description>
            <link>https://www.jameshw.dev/journal/2025-01-21/vschameleon</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2025-01-21/vschameleon</guid>
            <category><![CDATA[VSCode]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 21 Jan 2025 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Recurring Tasks in Notion]]></title>
            <description><![CDATA[Development Journal Entry made on 2025-01-04]]></description>
            <link>https://www.jameshw.dev/journal/2025-01-04/notion-recurring-tasks</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2025-01-04/notion-recurring-tasks</guid>
            <category><![CDATA[Notion]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sat, 04 Jan 2025 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Not Your Everyday Tech Lead: What Does It Mean to Be TL in a Lean Software Company?]]></title>
            <description><![CDATA[This talk given at Tech Lead Conf 2024 discusses the role of a Tech Lead in a Lean software company and the challenges they face. It emphasises the importance of problem-solving and continuous improvement in software development. I share my struggles as a Tech Lead and the importance of distinguishing between being a maker and a manager. I also highlight the significance of identifying root causes and solving problems to prevent future issues.]]></description>
            <link>https://www.jameshw.dev/blog/2024-06-15/tech-lead-conf</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2024-06-15/tech-lead-conf</guid>
            <category><![CDATA[Software Craft]]></category>
            <category><![CDATA[Tech Lead]]></category>
            <category><![CDATA[Management]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sat, 15 Jun 2024 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[The Micromanagement Trap: A Tale of Three Managers]]></title>
            <description><![CDATA[After a conversation with my sister about her concerns about becoming a micromanager, I got together some thoughts about the causes of what we call “micromanagement”. It’s not caused by spending too much time with your reports and it’s not solved by lowering your standards for the quality of work…]]></description>
            <link>https://www.jameshw.dev/blog/2024-05-11/micromanagement</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2024-05-11/micromanagement</guid>
            <category><![CDATA[Management]]></category>
            <category><![CDATA[Leadership]]></category>
            <category><![CDATA[Ways of Work]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sat, 11 May 2024 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[TypeScript Migration Using Codemods]]></title>
            <description><![CDATA[A Dev Yokoten is a chance for developers to raise the tech awareness of others within the company by sharing something cool, or non-standard that they did to innovate on their project.

In this Yokoten, I shared the refactor work I have been managing on a massive legacy codebase.]]></description>
            <link>https://www.jameshw.dev/blog/2024-03-12/migrating-to-typescript-with-codemods</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2024-03-12/migrating-to-typescript-with-codemods</guid>
            <category><![CDATA[Codemods]]></category>
            <category><![CDATA[TypeScript]]></category>
            <category><![CDATA[Refactoring]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 12 Mar 2024 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[FizzBuzz in BASIC on a Sinclair ZX81]]></title>
            <description><![CDATA[Development Journal Entry made on 2024-03-10]]></description>
            <link>https://www.jameshw.dev/journal/2024-03-10/fizzbuzz-in-basic</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2024-03-10/fizzbuzz-in-basic</guid>
            <category><![CDATA[BASIC]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 10 Mar 2024 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Adding Static Typing to 381 GraphQL Queries with Codemods]]></title>
            <description><![CDATA[Development Journal Entry made on 2024-03-04]]></description>
            <link>https://www.jameshw.dev/journal/2024-03-04/graphql-static-typing-codemod</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2024-03-04/graphql-static-typing-codemod</guid>
            <category><![CDATA[Codemods]]></category>
            <category><![CDATA[GraphQL]]></category>
            <category><![CDATA[TypeScript]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Mon, 04 Mar 2024 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[DRY vs WET - is Everyone Wrong About The Biggest Question in Software Engineering?]]></title>
            <description><![CDATA[Using mantras and reducing complex topics down to catchy acronyms like DRY and WET reduces cognitive strain on developers in picking up Software Craft, but the oversimplification and misuse of these principles can have implications on code quality.]]></description>
            <link>https://www.jameshw.dev/blog/2024-02-18/dry-vs-wet</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2024-02-18/dry-vs-wet</guid>
            <category><![CDATA[Software Craft]]></category>
            <category><![CDATA[Clean Code]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 18 Feb 2024 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Live Chat: WebSockets with NestJS Mini-Hackathon ]]></title>
            <description><![CDATA[Development Journal Entry made on 2024-01-31]]></description>
            <link>https://www.jameshw.dev/journal/2024-01-31/nestjs-websockets-hackathon</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2024-01-31/nestjs-websockets-hackathon</guid>
            <category><![CDATA[WebSockets]]></category>
            <category><![CDATA[NestJS]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Wed, 31 Jan 2024 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[What Does it Mean to Be a Tech Lead in a Lean Software Company?]]></title>
            <description><![CDATA[I discuss my mental model of what it means to be a Tech Lead working in a software agency that uses Lean. This is quite different from the standard perception of TL, which seems to commonly be synonymous with “senior dev”. Senior devs are distinct from TLs and valuable in their own way, but what distinguishes the two?]]></description>
            <link>https://www.jameshw.dev/blog/2024-01-24/lean-tech-lead</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2024-01-24/lean-tech-lead</guid>
            <category><![CDATA[Lean]]></category>
            <category><![CDATA[Software Craft]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Wed, 24 Jan 2024 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Toyota Talent: Build a System to Train Your People]]></title>
            <description><![CDATA[I’m currently looking at how we train our people at Theodo, so I recently read Toyota Talent to help me understand some of the aspects of how Toyota train their employees and how this fits into the Lean model. Training your people is a no-brainer and I’m interested in particular in how to break down a job and focus on standardising the core tasks to produce stable outputs to work. Here are my notes on the topic…]]></description>
            <link>https://www.jameshw.dev/blog/2024-01-10/toyota-talent</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2024-01-10/toyota-talent</guid>
            <category><![CDATA[Lean]]></category>
            <category><![CDATA[Training]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Wed, 10 Jan 2024 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[The Elusive Definition of “Leadership”]]></title>
            <description><![CDATA[“Leadership” has a fuzzy definition. Many of us aspire to be leaders, but it’s difficult to know how to develop these skills when we don’t know exactly what the term means. Here, I look to break down one frame through which we can look at leadership and some concrete steps for how anyone can become a leader.]]></description>
            <link>https://www.jameshw.dev/blog/2023-12-30/kaizen-leadership-model</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2023-12-30/kaizen-leadership-model</guid>
            <category><![CDATA[Lean]]></category>
            <category><![CDATA[Leadership]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sat, 30 Dec 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Disconnected references after class component refactor - always use useRef!]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-11-28]]></description>
            <link>https://www.jameshw.dev/journal/2023-11-28/disconnected-references</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-11-28/disconnected-references</guid>
            <category><![CDATA[React]]></category>
            <category><![CDATA[useRef]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 28 Nov 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Universal Apps: A Single, Unified Codebase Powering iOS, Android, macOS, Windows, and Web]]></title>
            <description><![CDATA[Both React Native and Electron.JS offer abstractions which allow developers to use established web technologies to build applications on native mobile and desktop platforms respectively - the concept of “Universal” Apps takes this a step further. This article discusses how we might use the lessons described in Robert C. Martin’s Clean Architecture to create a single app which can be distributed natively across all platforms.]]></description>
            <link>https://www.jameshw.dev/blog/2023-09-24/universal-application-architecture</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2023-09-24/universal-application-architecture</guid>
            <category><![CDATA[React Native]]></category>
            <category><![CDATA[NextJS]]></category>
            <category><![CDATA[Tauri]]></category>
            <category><![CDATA[Software Craft]]></category>
            <category><![CDATA[Clean Architecture]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 24 Sep 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[NextJS 13’s App Router, React Server Components, and Confusion]]></title>
            <description><![CDATA[NextJS 13 released with some pretty cool features and support for React Server Components (introduced in React 18). Despite this, I’m hearing descent from some colleagues about the changes Vercel have introduced this time round. I want to highlight some of the reasons this release has been so contentious.]]></description>
            <link>https://www.jameshw.dev/blog/2023-09-19/next-js-13-meta-framework-rscs</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2023-09-19/next-js-13-meta-framework-rscs</guid>
            <category><![CDATA[NextJS]]></category>
            <category><![CDATA[React Native]]></category>
            <category><![CDATA[Expo]]></category>
            <category><![CDATA[React Server Components]]></category>
            <category><![CDATA[NextJS 13]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 19 Sep 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Deploy your Dockerised app to Fly.io with BitBucket Pipelines in 15 minutes]]></title>
            <description><![CDATA[In this article, I walk through an example of how to setup a BitBucket Pipeline which automatically deploys the changes to my service when I merge a pull request.]]></description>
            <link>https://www.jameshw.dev/blog/2023-07-31/fly-io-bitbucket-pipeline</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2023-07-31/fly-io-bitbucket-pipeline</guid>
            <category><![CDATA[Fly.io]]></category>
            <category><![CDATA[BitBucket]]></category>
            <category><![CDATA[Continuous Delivery]]></category>
            <category><![CDATA[Docker]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Mon, 31 Jul 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Design Patterns for a Lightweight Java API from Scratch]]></title>
            <description><![CDATA[Design patterns are vital to make sure that your codebase scales and doesn’t deteriorate in quality with over time. In this article, I cover the main design patterns I used in creating a lightweight Java API which processes an HTTP request without using any external libraries or frameworks.]]></description>
            <link>https://www.jameshw.dev/blog/2023-07-30/java-api-design-patterns</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2023-07-30/java-api-design-patterns</guid>
            <category><![CDATA[Java]]></category>
            <category><![CDATA[API]]></category>
            <category><![CDATA[Design Patterns]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 30 Jul 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Build a Lightweight Java API from Scratch]]></title>
            <description><![CDATA[In this article, I cover how you can create a lightweight Java API which processes an HTTP request without using any external libraries.]]></description>
            <link>https://www.jameshw.dev/blog/2023-07-29/lightweight-java-api</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2023-07-29/lightweight-java-api</guid>
            <category><![CDATA[Java]]></category>
            <category><![CDATA[API]]></category>
            <category><![CDATA[Socket]]></category>
            <category><![CDATA[HTTP]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sat, 29 Jul 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[.map(parseInt) does not do what it says on the tin]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-07-20]]></description>
            <link>https://www.jameshw.dev/journal/2023-07-20/map-parseint-to-convert-to-numbers</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-07-20/map-parseint-to-convert-to-numbers</guid>
            <category><![CDATA[JavaScript]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Thu, 20 Jul 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Higher Order Component pattern causing confusion]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-06-09]]></description>
            <link>https://www.jameshw.dev/journal/2023-06-09/higher-order-confusion</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-06-09/higher-order-confusion</guid>
            <category><![CDATA[React]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Fri, 09 Jun 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Finding documentation for old versions of libraries (feat. Flowable)]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-05-17]]></description>
            <link>https://www.jameshw.dev/journal/2023-05-17/flowable-documentation</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-05-17/flowable-documentation</guid>
            <category><![CDATA[Flowable]]></category>
            <category><![CDATA[Groovy]]></category>
            <category><![CDATA[Java]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Wed, 17 May 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Preparing SEO for NextJS 13 site]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-04-09]]></description>
            <link>https://www.jameshw.dev/journal/2023-04-09/nextjs-seo</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-04-09/nextjs-seo</guid>
            <category><![CDATA[Google]]></category>
            <category><![CDATA[SEO]]></category>
            <category><![CDATA[NextJS]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 09 Apr 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Supercharge your Learning with This One Tool for Programmers!]]></title>
            <description><![CDATA[Some people seem to naturally learn much quicker than others - in this article, I share one habit I have taken up which I have noticed supercharges my learning. I had to write an article to share it!]]></description>
            <link>https://www.jameshw.dev/blog/2023-04-02/development-journal</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2023-04-02/development-journal</guid>
            <category><![CDATA[Ways of Work]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 02 Apr 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Setting Up Vercel Audiences with NextJS 13.0.0]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-04-02]]></description>
            <link>https://www.jameshw.dev/journal/2023-04-02/next-audiences</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-04-02/next-audiences</guid>
            <category><![CDATA[NextJS]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 02 Apr 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Initialising the value of a useState based on useRouter with NextJS SSR]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-03-30]]></description>
            <link>https://www.jameshw.dev/journal/2023-03-30/next-js-ssr-router-hook-query-params</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-03-30/next-js-ssr-router-hook-query-params</guid>
            <category><![CDATA[NextJS]]></category>
            <category><![CDATA[React]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Thu, 30 Mar 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Rename files in GDrive programatically with Google Apps Script]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-03-02]]></description>
            <link>https://www.jameshw.dev/journal/2023-03-02/gdrive-apps-script-renaming</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-03-02/gdrive-apps-script-renaming</guid>
            <category><![CDATA[Apps Script]]></category>
            <category><![CDATA[Google Drive]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Thu, 02 Mar 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Case sensitive directory/file names in git]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-02-17]]></description>
            <link>https://www.jameshw.dev/journal/2023-02-17/git-case-sensitivity</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-02-17/git-case-sensitivity</guid>
            <category><![CDATA[Git]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Fri, 17 Feb 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Typescript XOR puzzle: the union operator]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-02-08]]></description>
            <link>https://www.jameshw.dev/journal/2023-02-08/typescript-xor</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-02-08/typescript-xor</guid>
            <category><![CDATA[TypeScript]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Wed, 08 Feb 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Setup Kotlin build.gradle for React Native Expo plugin]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-02-07]]></description>
            <link>https://www.jameshw.dev/journal/2023-02-07/expo-kotlin-plugin</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-02-07/expo-kotlin-plugin</guid>
            <category><![CDATA[Expo]]></category>
            <category><![CDATA[React Native]]></category>
            <category><![CDATA[Kotlin]]></category>
            <category><![CDATA[Android]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 07 Feb 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[EAS CI fails due to gitignore pattern preventing upload of bundle]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-02-06]]></description>
            <link>https://www.jameshw.dev/journal/2023-02-06/eas-ci-broken-by-gitignore</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-02-06/eas-ci-broken-by-gitignore</guid>
            <category><![CDATA[EAS]]></category>
            <category><![CDATA[Expo]]></category>
            <category><![CDATA[React Native]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Mon, 06 Feb 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Debugging React Native Android NativeModules with Expo]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-02-02]]></description>
            <link>https://www.jameshw.dev/journal/2023-02-02/expo-native-modules</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-02-02/expo-native-modules</guid>
            <category><![CDATA[React Native]]></category>
            <category><![CDATA[Expo]]></category>
            <category><![CDATA[Android]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Thu, 02 Feb 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[What Even is Tech Quality and Why Should I Care?]]></title>
            <description><![CDATA[In this talk, I discuss one way that junior developers build up their framework of “Tech Quality” and how we can increase the speed of our progression to become more effective Software Engineers. I focus on promoting a combination of bottom-up and top-down learning and propose my own model which is derived directly from maximising value generation.]]></description>
            <link>https://www.jameshw.dev/blog/2023-01-31/what-is-tech-quality</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2023-01-31/what-is-tech-quality</guid>
            <category><![CDATA[Video]]></category>
            <category><![CDATA[Tech Quality]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 31 Jan 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Drawing a Refactor]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-01-23]]></description>
            <link>https://www.jameshw.dev/journal/2023-01-23/drawing-a-refactor</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-01-23/drawing-a-refactor</guid>
            <category><![CDATA[Ways of Work]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Mon, 23 Jan 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[React Navigation with Typescript for nested navigators]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-01-16]]></description>
            <link>https://www.jameshw.dev/journal/2023-01-16/react-nested-navigator-types</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-01-16/react-nested-navigator-types</guid>
            <category><![CDATA[React Native]]></category>
            <category><![CDATA[React Navigation (v6)]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Mon, 16 Jan 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Debugging Postgres query times - EXPLAIN ANALYZE]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-01-13]]></description>
            <link>https://www.jameshw.dev/journal/2023-01-13/postgresql-query-analysis</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-01-13/postgresql-query-analysis</guid>
            <category><![CDATA[PostgreSQL]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Fri, 13 Jan 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[CircleCI failure after return to project - Poetry update ]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-01-12]]></description>
            <link>https://www.jameshw.dev/journal/2023-01-12/breaking-poetry-update</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-01-12/breaking-poetry-update</guid>
            <category><![CDATA[CircleCI]]></category>
            <category><![CDATA[Python]]></category>
            <category><![CDATA[Poetry]]></category>
            <category><![CDATA[PIP]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Thu, 12 Jan 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Import error for a valid relative file path with Supabase Edge Functions]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-01-10]]></description>
            <link>https://www.jameshw.dev/journal/2023-01-10/import-local-files</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-01-10/import-local-files</guid>
            <category><![CDATA[Supabase]]></category>
            <category><![CDATA[Deno]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 10 Jan 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Create a fade-in/out effect at the edges of a carousel with Tailwind]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-01-06]]></description>
            <link>https://www.jameshw.dev/journal/2023-01-06/carousel-faded-edges</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-01-06/carousel-faded-edges</guid>
            <category><![CDATA[Tailwind]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Fri, 06 Jan 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Deploy Supabase Edge Functions in CI]]></title>
            <description><![CDATA[Development Journal Entry made on 2023-01-04]]></description>
            <link>https://www.jameshw.dev/journal/2023-01-04/deploy-supabase-edge-functions</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2023-01-04/deploy-supabase-edge-functions</guid>
            <category><![CDATA[Supabase]]></category>
            <category><![CDATA[Serverless]]></category>
            <category><![CDATA[CI]]></category>
            <category><![CDATA[GitHub]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Wed, 04 Jan 2023 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[GitHub Action for Expo Go pre-staging preview branch]]></title>
            <description><![CDATA[Development Journal Entry made on 2022-12-31]]></description>
            <link>https://www.jameshw.dev/journal/2022-12-31/pre-staging-automated-expo-preview-deployments</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2022-12-31/pre-staging-automated-expo-preview-deployments</guid>
            <category><![CDATA[React Native]]></category>
            <category><![CDATA[Expo]]></category>
            <category><![CDATA[CI]]></category>
            <category><![CDATA[GitHub]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sat, 31 Dec 2022 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[What Does it Mean to be a Good Software Engineer?]]></title>
            <description><![CDATA[Here I share my thoughts on my own model of what I think it means to be a “good” Software Engineer. This article is addressed to early career Software Engineers who take pride in their craft and are determined to be good at what they do. This is for those of us who want to make the highest possible impact with our careers. I want to precisely articulate what we should care about and why it matters.]]></description>
            <link>https://www.jameshw.dev/blog/2022-12-18/how-to-be-a-good-software-engineer</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2022-12-18/how-to-be-a-good-software-engineer</guid>
            <category><![CDATA[Tech Quality]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 18 Dec 2022 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Create elements “invisible” to touch gestures (pointerEvents)]]></title>
            <description><![CDATA[Development Journal Entry made on 2022-12-16]]></description>
            <link>https://www.jameshw.dev/journal/2022-12-16/pointer-events</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2022-12-16/pointer-events</guid>
            <category><![CDATA[React Native]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Fri, 16 Dec 2022 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Webpack error in Storybook after installing react-map-gl library]]></title>
            <description><![CDATA[Development Journal Entry made on 2022-05-16]]></description>
            <link>https://www.jameshw.dev/journal/2022-05-16/webpack-react-gl</link>
            <guid isPermaLink="true">https://www.jameshw.dev/journal/2022-05-16/webpack-react-gl</guid>
            <category><![CDATA[Webpack]]></category>
            <category><![CDATA[Storybook.js]]></category>
            <category><![CDATA[Mapbox]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Mon, 16 May 2022 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[The Bridge to JSI]]></title>
            <description><![CDATA[In my talk at React Native London, I give an introduction to what React Native is (for React web developers); I explain the current architecture (how it actually works), and continue to explain what the future architecture will look like (JSI).]]></description>
            <link>https://www.jameshw.dev/blog/2022-05-12/bridge-to-jsi</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2022-05-12/bridge-to-jsi</guid>
            <category><![CDATA[React Native]]></category>
            <category><![CDATA[Mobile]]></category>
            <category><![CDATA[Video]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Thu, 12 May 2022 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Why using Poetry is better than PIP]]></title>
            <description><![CDATA[An overview of package management in Python, and why you should probably consider using Poetry as a python package manager over PIP. I also discuss how package management works in the JavaScript ecosystem!]]></description>
            <link>https://www.jameshw.dev/blog/2022-02-17/why-poetry-is-better-than-pip</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2022-02-17/why-poetry-is-better-than-pip</guid>
            <category><![CDATA[Python]]></category>
            <category><![CDATA[PIP]]></category>
            <category><![CDATA[Poetry]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Thu, 17 Feb 2022 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Principles Gathered from Clean Code: A Handbook of Agile Software Craftsmanship]]></title>
            <description><![CDATA[Want to know how to write Clean Code? Robert C. Martin brings us a pragmatic guide to improving the quality of our code. In this article I hope to condense many of the practices that he promotes so you can quickly apply them to your own code.]]></description>
            <link>https://www.jameshw.dev/blog/2022-02-05/principles-from-clean-code</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2022-02-05/principles-from-clean-code</guid>
            <category><![CDATA[Tech Quality]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sat, 05 Feb 2022 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[How to Connect your MySQL Database to your Dockerized Django Application]]></title>
            <description><![CDATA[Recently, a friend of mine was working on a project which was a Django website running inside a Docker container. She wanted to connect her ORM to a MySQL database, but was struggling to find out how to do this. I decided that this couldn't be too difficult to do, so I gave it a go and now I'm sharing my findings.]]></description>
            <link>https://www.jameshw.dev/blog/2021-09-19/connect-mysql-to-docker-and-django</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2021-09-19/connect-mysql-to-docker-and-django</guid>
            <category><![CDATA[Docker]]></category>
            <category><![CDATA[Django]]></category>
            <category><![CDATA[MySQL]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 19 Sep 2021 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[AWS Fargate: Harness the power of Serverless for Long-Running Computational Tasks]]></title>
            <description><![CDATA[We all know the advantages of serverless computing: pay only for what you use; scale up and down with ease; abstract away the complexities of managing servers. In this article, I illustrate how you can acquire these benefits for long computational tasks which are too large for Lambda or Google Cloud Functions to handle. I share a case study from a recent project and how we used AWS Fargate (along with S3, Lambda, DynamoDB, and more!) to create a robust task architecture.]]></description>
            <link>https://www.jameshw.dev/blog/2021-08-21/serverless-for-long-computational-tasks</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2021-08-21/serverless-for-long-computational-tasks</guid>
            <category><![CDATA[AWS]]></category>
            <category><![CDATA[Architecture]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sat, 21 Aug 2021 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Build and Host your Own Blog with Gatsby and GitHub Pages for Free]]></title>
            <description><![CDATA[A step-by-step guide to building your own blog using the Static Site Generation framework Gatsby.JS and deploy to the web for free with GitHub Pages.]]></description>
            <link>https://www.jameshw.dev/blog/2021-08-01/build-your-own-blog-with-gatsby-and-github-pages</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2021-08-01/build-your-own-blog-with-gatsby-and-github-pages</guid>
            <category><![CDATA[GatsbyJS]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 01 Aug 2021 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Writing a Native Ionic Plugin for Capacitor in Less Than 30 Minutes]]></title>
            <description><![CDATA[When the pandemic first started, I decided to develop a contact-tracing mobile app. I was studying Computer Science at the time and decided to use the same cross-platform framework that we were using on our course - Ionic. I wanted to use Google's Nearby Messages API to share packets of information between iOS and Android devices via Bluetooth, but I couldn't find a plugin for this, so I decided to write my own!]]></description>
            <link>https://www.jameshw.dev/blog/2021-07-12/writing-a-native-ionic-plugin-for-capacitor</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2021-07-12/writing-a-native-ionic-plugin-for-capacitor</guid>
            <category><![CDATA[Ionic]]></category>
            <category><![CDATA[Capacitor]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Mon, 12 Jul 2021 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[What I Learned in my Computer Science MSc at UCL]]></title>
            <description><![CDATA[After studying BSc Physics at The University of Sheffield, I moved on to study MSc Computer Science at UCL, where most of my learning was through the projects I built. If you’re looking to study Computer Science, here are four concrete examples of projects you might expect to work on during your degree.]]></description>
            <link>https://www.jameshw.dev/blog/2020-09-01/msc-projects</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2020-09-01/msc-projects</guid>
            <category><![CDATA[PHP]]></category>
            <category><![CDATA[Python]]></category>
            <category><![CDATA[Django]]></category>
            <category><![CDATA[Docker]]></category>
            <category><![CDATA[Ionic]]></category>
            <category><![CDATA[Capacitor]]></category>
            <category><![CDATA[Angular]]></category>
            <category><![CDATA[SQL]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Tue, 01 Sep 2020 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Alumni Interviews: James Haworth Wheatman, former Technology Director and VP of Enactus Sheffield]]></title>
            <description><![CDATA[James joined Enactus Sheffield as a second-year Physics student because he wanted to make a change and become a more responsible citizen. Now, three years later, he works as a software engineer in London, helping clients fulfil their visions for new products they would like to build. Read our first alumni interview to find out what Enactus is all about and what you can learn from the experience if you join.]]></description>
            <link>https://www.jameshw.dev/blog/2020-07-12/enactus-sheffield-alumnus-interview</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2020-07-12/enactus-sheffield-alumnus-interview</guid>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Sun, 12 Jul 2020 00:00:00 GMT</pubDate>
        </item>
        <item>
            <title><![CDATA[Python Natural Language Code Parser]]></title>
            <description><![CDATA[I created a Natural-Language-to-Python parser over a few days called Parseltongue (a way to speak to a Python!); it takes in Natural Language and outputs Python code. The source code itself is written in Python and based on my understanding of work I did with a Natural Language Processing system in 2019-20.]]></description>
            <link>https://www.jameshw.dev/blog/2020-07-03/python-natural-language-code-parser</link>
            <guid isPermaLink="true">https://www.jameshw.dev/blog/2020-07-03/python-natural-language-code-parser</guid>
            <category><![CDATA[Python]]></category>
            <category><![CDATA[Natural Language Processing]]></category>
            <dc:creator><![CDATA[James Haworth Wheatman]]></dc:creator>
            <pubDate>Fri, 03 Jul 2020 00:00:00 GMT</pubDate>
        </item>
    </channel>
</rss>