<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://paulmcbride.com/</id>
    <title>PaulMcBride.com</title>
    <updated>2026-04-15T18:11:23.077Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <author>
        <name>Paul McBride</name>
        <email>hello@paulmcbride.com</email>
        <uri>https://paulmcbride.com</uri>
    </author>
    <link rel="alternate" href="https://paulmcbride.com/"/>
    <link rel="self" href="https://paulmcbride.com/atom"/>
    <subtitle>The tech ramblings of Paul McBride</subtitle>
    <logo>https://paulmcbride.com/static/banner.jpeg</logo>
    <icon>https://paulmcbride.com/static/favicons/favicon.ico</icon>
    <rights>All rights reserved 2026, Paul McBride</rights>
    <contributor>
        <name>Paul McBride</name>
        <email>hello@paulmcbride.com</email>
        <uri>https://paulmcbride.com</uri>
    </contributor>
    <entry>
        <title type="html"><![CDATA[5 Reasons to Learn React]]></title>
        <id>/posts/5-reasons-to-learn-react</id>
        <link href="https://paulmcbride.com/posts/5-reasons-to-learn-react"/>
        <updated>2017-10-19T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[React is a big buzzword word right now. In fact, it has been a big buzz word for a few years now. Today I'll discuss 5 reasons to learn React.]]></summary>
        <content type="html"><![CDATA[<p>React is a big buzzword word right now. In fact, it has been a big buzz word for a few years now and with good reason. React has shot to meteoric success since its release in May 2013. Today I'll discuss 5 reasons to learn React. 1\. Performance React is light…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/5-reasons-to-learn-react">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Async/Await – Wait, What?]]></title>
        <id>/posts/async-await</id>
        <link href="https://paulmcbride.com/posts/async-await"/>
        <updated>2017-09-07T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[JavaScript and promises go hand in hand. Find out how async/await can help make your asynchronous code easier to read and understand.]]></summary>
        <content type="html"><![CDATA[<p>With the release of the Async/Await syntax in JavaScript we now have a succinct and highly legible way of writing asynchronous code. In this article, I'll cover how to use Async/Await functions and why they are better than promises. Let's start by using the Fe…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/async-await">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Building a Second Brain]]></title>
        <id>/posts/building-a-second-brain</id>
        <link href="https://paulmcbride.com/posts/building-a-second-brain"/>
        <updated>2023-01-25T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[My review of the book Building a Second Brain by Tiago Forte]]></summary>
        <content type="html"><![CDATA[<p>Building a Second Brain is a book about notes, written by Tiago Forte in June 2022. It covers what Tiago believes to be a productive an useful way to take and use notes. I thoroughly enjoyed this book so below I'll share my summary. What is a Second Brain? Sim…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/building-a-second-brain">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Dev Ops - An Introduction to AWS Lambda]]></title>
        <id>/posts/dev-ops-introduction-aws-lambda</id>
        <link href="https://paulmcbride.com/posts/dev-ops-introduction-aws-lambda"/>
        <updated>2017-10-26T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Deploying code to the cloud has never been easier. Let's learn how AWS Lambda can help you run fast scalable app around the globe.]]></summary>
        <content type="html"><![CDATA[<p>If you've ever looked into AWS (Amazon Web Services), you'll know how overwhelming it can be. There are close to 100 different products and services with countless possible applications. If AWS wasn't confusing enough, the services have cryptic names making ne…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/dev-ops-introduction-aws-lambda">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Don't Trust the Cascade]]></title>
        <id>/posts/dont-trust-the-cascade</id>
        <link href="https://paulmcbride.com/posts/dont-trust-the-cascade"/>
        <updated>2019-03-21T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[CSS in it's current form is not a good fit for how we build websites. I now write CSS in JavaScript and I think you should too.]]></summary>
        <content type="html"><![CDATA[<p>If you've been on the internet recently, you've probably heard of CSS-in-JS. The technology has been growing in popularity recently but not everyone is a fan. Today, I'd like to shed some light on what it is and help you decide if it is right for your next pro…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/dont-trust-the-cascade">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[The Filter Function - Functional Programming in JavaScript]]></title>
        <id>/posts/filter-function-javascript</id>
        <link href="https://paulmcbride.com/posts/filter-function-javascript"/>
        <updated>2017-11-16T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[The filter function is used for plucking elements from an array that match a predicate function in JavaScript. Check it out!]]></summary>
        <content type="html"><![CDATA[<p>In today's episode, we'll learn how to use the filter function and how it can be chained with other array functions such as map. If you've not seen the previous episode, you can find it here. The Map Function. The filter function is part of the array object. I…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/filter-function-javascript">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[I Learned How to Type]]></title>
        <id>/posts/i-learned-how-to-type</id>
        <link href="https://paulmcbride.com/posts/i-learned-how-to-type"/>
        <updated>2023-05-10T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[I spent the last week learning how to properly type, this is how it went.]]></summary>
        <content type="html"><![CDATA[<p>Hi, I'm Paul. I'm 31 years old and this week I learned how to type. I've been using computers almost daily since I was 7 years old. Back then it was for playing games and chatting with my friends. These days it's for work (and still playing games). There is ra…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/i-learned-how-to-type">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Inaction is a Slow Death]]></title>
        <id>/posts/inaction-is-a-slow-death</id>
        <link href="https://paulmcbride.com/posts/inaction-is-a-slow-death"/>
        <updated>2024-01-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Embrace the discomfort of doing the right thing. It's better than the discomfort of a mediocre life.]]></summary>
        <content type="html"><![CDATA[<p>Doing the right thing is hard. It's often easier to do nothing at all. We make these kinds of decisions dozens of times per day. It is constant and it is exhausting. It can feel safer not to make decisions at all and to just let life happen. I'm going to try a…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/inaction-is-a-slow-death">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[JavaScript Arrow Functions]]></title>
        <id>/posts/javascript-arrow-functions</id>
        <link href="https://paulmcbride.com/posts/javascript-arrow-functions"/>
        <updated>2017-07-24T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Do you want to write beautiful JavaScript? Learn about JavaScript Arrow functions and how to use them.]]></summary>
        <content type="html"><![CDATA[<p>With the release of EcmaScript2015/ES6, JavaScript has undergone major changes. Amongst these major changes is the addition of javascript arrow functions. In this article , am going to explain what an arrow function is and how to use it. What is an arrow funct…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/javascript-arrow-functions">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[JavaScript Fetch API]]></title>
        <id>/posts/javascript-fetch-api</id>
        <link href="https://paulmcbride.com/posts/javascript-fetch-api"/>
        <updated>2017-09-14T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[The fetch API is used for making network requests in the browser. In this article we'll learn how it works]]></summary>
        <content type="html"><![CDATA[<p>The JavaScript Fetch API replaces XMLHttpRequest for making network requests from client side apps. One of the main differences is that XMLHttpRequest uses callback functions to handle the response where as Fetch uses promises. Let's look at an example of each…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/javascript-fetch-api">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[JavaScript Spread Operator]]></title>
        <id>/posts/javascript-spread-operator</id>
        <link href="https://paulmcbride.com/posts/javascript-spread-operator"/>
        <updated>2017-08-10T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[The keywords let and const are now part of Javascript. Let's explore what they do and how they differ from the var keyword.]]></summary>
        <content type="html"><![CDATA[<p>The Javascript spread operator is something I use on a daily basis. If you use Redux, or need to write any kind of functional JavaScript then you need to know how to use the spread operator. So what is the spread operator and how is it used? Lets see what the…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/javascript-spread-operator">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Kagi Search - A Long-term Review]]></title>
        <id>/posts/kagi-search</id>
        <link href="https://paulmcbride.com/posts/kagi-search"/>
        <updated>2024-03-25T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Search is often the doorway to the web. Kagi Search is a new, privacy focused search engine that I've been using for the past year. Here's my review.]]></summary>
        <content type="html"><![CDATA[<p>You've probably heard the saying that if you don't pay for a product, you are the product. With Google search, this has never been more true. These days, it is not unusual that the first page of results contains more ads than useful results. I don't blame Goog…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/kagi-search">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Make it work, Make it right, Make it fast]]></title>
        <id>/posts/make-it-work-make-it-right-make-it-fast</id>
        <link href="https://paulmcbride.com/posts/make-it-work-make-it-right-make-it-fast"/>
        <updated>2024-01-26T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Don't fall into the trap of premature optimisation. Before you spend time and money building the perfect app or feature, build a cheap prototype to make sure it is possible and people actually want it.]]></summary>
        <content type="html"><![CDATA[<p>Writing software is hard. One of the main reasons for this is that there are so many ways to achieve the same thing. Each implementation of a feature has tradeoffs. It is easy to fall into the trap of premature optimisation and waste a lot of time trying to bu…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/make-it-work-make-it-right-make-it-fast">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[The Map Function - Functional Programming in JavaScript]]></title>
        <id>/posts/map-function-javascript</id>
        <link href="https://paulmcbride.com/posts/map-function-javascript"/>
        <updated>2017-11-09T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Check out the first episode in this series of screencasts on functional programming in JavaScript. In this episode, we'll look at the Map function.]]></summary>
        <content type="html"><![CDATA[<p>Today I am pleased to bring you what will be the first episode in a series of videos on Functional Programming in JavaScript. This episode covers the map function. To see more of my videos, check out my other screencasts The map function is part of the array o…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/map-function-javascript">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Module Caching in Node]]></title>
        <id>/posts/module-caching-node</id>
        <link href="https://paulmcbride.com/posts/module-caching-node"/>
        <updated>2017-10-12T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[In Node.js we use the CommonJS module pattern for sharing code between files. In this article, I'll explain what module caching is and how it works.]]></summary>
        <content type="html"><![CDATA[<p>In Node.js we use the CommonJS module pattern for sharing code between files. In this article, I'll explain how to use the require keyword and how it's related to module caching in Node. CommonJS CommonJS is the pattern used in Node.js to share functionality f…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/module-caching-node">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Personal Websites are Important]]></title>
        <id>/posts/personal-websites-are-important</id>
        <link href="https://paulmcbride.com/posts/personal-websites-are-important"/>
        <updated>2023-01-06T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[A personal website gives the freedom to share your ideas, thoughts, and passions with the world on your own terms.]]></summary>
        <content type="html"><![CDATA[<p>Having a personal website is more important and relevant today than it's ever been. With the rise of social media, it is easy to get lost in the noise. A personal website gives you the freedom to share your ideas, thoughts, and passions with the world on your…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/personal-websites-are-important">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Pure Functions – Functional Programming in JavaScript]]></title>
        <id>/posts/pure-functions</id>
        <link href="https://paulmcbride.com/posts/pure-functions"/>
        <updated>2017-11-30T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Pure functions have no side effects and and they always return the same results given the same arguements. Let's find out how they work.]]></summary>
        <content type="html"><![CDATA[<p>In this episode of Functional Programming in JavaScript, we discuss pure functions. You probably already use pure functions all the time and are unaware of what they are or what advantages they bring to your code base. Watch the Youtube below to find out why p…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/pure-functions">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Reduce – Functional Programming in JavaScript]]></title>
        <id>/posts/reduce-function-javascript</id>
        <link href="https://paulmcbride.com/posts/reduce-function-javascript"/>
        <updated>2017-11-23T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[In this episode, we look at the reduce function and how to use it. We will use it to transform an array into an object and use it to recreate the filter.]]></summary>
        <content type="html"><![CDATA[<p>In this episode, we look at the reduce function and how to use it. Reduce is a massively flexible function. In this video, we use it to transform an array of data into an object and use it to recreate the filter function. How it's used An example of how the re…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/reduce-function-javascript">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Rubber Duck Debugging]]></title>
        <id>/posts/rubber-duck-debugging</id>
        <link href="https://paulmcbride.com/posts/rubber-duck-debugging"/>
        <updated>2017-08-24T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Rubber duck debugging is the name given to the technique or explaing what your code does to a rubber duck. I use it all the time! Let's find out more.]]></summary>
        <content type="html"><![CDATA[<p>It sounds crazy, right? A rubber duck is the perfect debugging partner. It has no arms or legs and sure as hell can't read or write code. So how can our little yellow friend help us write better code? Today we're going to learn about Rubber Duck Debugging. Let…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/rubber-duck-debugging">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[My SaaS Tech Stack]]></title>
        <id>/posts/saas-tech-stack</id>
        <link href="https://paulmcbride.com/posts/saas-tech-stack"/>
        <updated>2023-01-12T18:30:00.000Z</updated>
        <summary type="html"><![CDATA[A look into the tech choices I made when building the job boards, WeCode NI and WeCode Remote.]]></summary>
        <content type="html"><![CDATA[<p>Building software involves a lot of compromise. Everything has pros and cons. In this article I'd like to share what I used to build WeCode NI. It's a job board for developers in Northern Ireland. It's not a complicated app, but has plenty of moving parts incl…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/saas-tech-stack">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Sunsetting WeCode NI]]></title>
        <id>/posts/sunsetting-wecode-ni</id>
        <link href="https://paulmcbride.com/posts/sunsetting-wecode-ni"/>
        <updated>2024-02-11T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[After 5 years of running WeCode NI, I have decided to shut it down.]]></summary>
        <content type="html"><![CDATA[<p>This week, I decided to shut down WeCode NI. For those unaware, WeCode NI was a job board for developers in Northern Ireland. I created it almost 5 years ago following a frustrating job search. Most job adverts were managed by recruitment agencies, so it was d…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/sunsetting-wecode-ni">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Things I don't know at the start of 2019]]></title>
        <id>/posts/things-i-dont-know-2019</id>
        <link href="https://paulmcbride.com/posts/things-i-dont-know-2019"/>
        <updated>2019-01-20T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Life as a developer is a life of constant learning. I've taken stock of some of the things I don't know at the beginning of 2019]]></summary>
        <content type="html"><![CDATA[<p>I recently read an article by Dan Abramov where he listed all of the technologies he wasn't familiar with. Dan is someone I look up to and seeing this kind of honesty from him only added to my respect. After reading his article I took stock of what I know and…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/things-i-dont-know-2019">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Tools of the Trade - Front End Developer]]></title>
        <id>/posts/tools-trade-frontend-developer</id>
        <link href="https://paulmcbride.com/posts/tools-trade-frontend-developer"/>
        <updated>2017-08-31T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[The number of tools used by front end developers has exploded over the past few years. Let's looks at a few of the most popular.]]></summary>
        <content type="html"><![CDATA[<p>The work of a front-end developer is complicated. There is a lot of compiling and minifying code, moving assets around and installing dependencies! Let's not forget actually writing the code too. In today's article, I'm going to talk about some of the tools of…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/tools-trade-frontend-developer">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Use the Debugger]]></title>
        <id>/posts/use-the-debugger</id>
        <link href="https://paulmcbride.com/posts/use-the-debugger"/>
        <updated>2023-11-09T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[I recently started using the chrome debugger and I wish I'd started sooner. Learn what I was missing out on and how to get started.]]></summary>
        <content type="html"><![CDATA[<p>Recently I was working on a bug in my day job where a 3rd party dependency was misbehaving. Usually when something like this happens in code I have control over, I'd sprinkle in a few console.logs to find out what was going on. Most of the time this would help…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/use-the-debugger">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Using the Node.js Cluster Module]]></title>
        <id>/posts/using-node-cluster-module</id>
        <link href="https://paulmcbride.com/posts/using-node-cluster-module"/>
        <updated>2017-09-28T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Using the Node.js Cluster module is an easy way to achieve significant performance gains for your app. Find out how to use it in this article.]]></summary>
        <content type="html"><![CDATA[<p>As we know, Node.js is a single threaded JavaScript runtime. A node process can only use a maximum of 1 CPU core and around 1.5GB of RAM. In this article, I will show you how we can use the Node.js cluster module to node processes to allow your app to take ful…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/using-node-cluster-module">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Var, Let and Const - The Differences]]></title>
        <id>/posts/var-let-const</id>
        <link href="https://paulmcbride.com/posts/var-let-const"/>
        <updated>2017-07-25T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[With the release of ES2015, we now have three ways of defining variables in JavaScript. `var`, `let` and `const`. Let me explain the difference.]]></summary>
        <content type="html"><![CDATA[<p>With the release of ES2015, we now have three ways of defining variables in JavaScript. var, let and const. Let me explain the difference. Pun fully intended. There are some important differences between them and in this article, we'll discuss the differences…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/var-let-const">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Up and Running with Webpack 4]]></title>
        <id>/posts/webpack-4</id>
        <link href="https://paulmcbride.com/posts/webpack-4"/>
        <updated>2018-03-04T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Webpack 4 has finally been released and it is pretty great! If you are looking for zero config JavaScript bundling, then Webpack 4 is the tool for you!]]></summary>
        <content type="html"><![CDATA[<p>After much anticipation, Webpack 4 has finally been released and it is pretty great! If you are looking for zero config JavaScript bundling, then Webpack 4 is the tool for you. In this article, we’ll talk about the changes made from version 3 and how to get up…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/webpack-4">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[What I want from life]]></title>
        <id>/posts/what-i-want-from-life</id>
        <link href="https://paulmcbride.com/posts/what-i-want-from-life"/>
        <updated>2023-01-09T15:00:00.000Z</updated>
        <summary type="html"><![CDATA[Success looks different to each person. This is what success looks like for me and what I want to get out of my time on earth.]]></summary>
        <content type="html"><![CDATA[<p>What success looks like will be different for each person. What someone wants out of life will depend on what they have now, how they grew up, and what stage of life they are at. In this article I'll share what I want from life. By sharing these details, I hop…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/what-i-want-from-life">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[What is the Fediverse?]]></title>
        <id>/posts/what-is-the-fediverse</id>
        <link href="https://paulmcbride.com/posts/what-is-the-fediverse"/>
        <updated>2024-10-11T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Today, social media websites are owned and operated by a handful of billionaires vying for your attention so they can advertise to you. The Fediverse is the antithesis of these legacy social media sites and might be our only shot at a better future for the social web. In this post, I'll dive into what the Fediverse is and what I think it means for the future of the social web.]]></summary>
        <content type="html"><![CDATA[<p>Today, social media websites are owned and operated by a handful of billionaires vying for your attention so they can advertise to you. The Fediverse is the antithesis of these legacy social media sites and might be our only shot at a better future for the soc…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/what-is-the-fediverse">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[What programming language should I learn first?]]></title>
        <id>/posts/what-programming-language-should-i-learn-first</id>
        <link href="https://paulmcbride.com/posts/what-programming-language-should-i-learn-first"/>
        <updated>2017-05-20T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Picking which programming language to learn first? Find out where to start by getting an idea of how each language is used and why you should use it.]]></summary>
        <content type="html"><![CDATA[<p>Picking a programming language is one of the first things you have to decide when you want to learn how to write code. In this article, I aim to help make this decision easier and give you all the information you needed to answer the question "What programming…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/what-programming-language-should-i-learn-first">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
    <entry>
        <title type="html"><![CDATA[Writing is Thinking]]></title>
        <id>/posts/writing-is-thinking</id>
        <link href="https://paulmcbride.com/posts/writing-is-thinking"/>
        <updated>2024-01-02T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Writing is a great way to organize your thoughts and ideas. It's a tool for leveling up your thinking and communication skills.]]></summary>
        <content type="html"><![CDATA[<p>The most energy-hungry part of the human body is the brain. Our large brains are what set us apart from other animals and have made us one of the dominant species on this planet. To me, it makes sense then that when we do that hard work of thinking we should t…</p><div style="margin-top: 50px; font-style: italic;"> <strong><a href="https://paulmcbride.com/posts/writing-is-thinking">Keep reading</a>.</strong> </div> <br /> <br />]]></content>
        <author>
            <name>Paul McBride</name>
            <email>hello@paulmcbride.com</email>
            <uri>https://paulmcbride.com</uri>
        </author>
    </entry>
</feed>