Joshua Walsh's Blog

Joshua Walsh

Joshua Walsh is a Sydney-based software engineer and is passionate about technology.

  1. Tips for getting started with open source

    Published 2019-06-24. Updated 2019-06-24.

    The open source movement represents a tremendous opportunity for developers like you. It can help you improve your coding and communication skills while learning to effectively collaborate with strangers. It might provide you with fulfillment, a sense that you are contributing to The Greater Good. Or perhaps it will just help to make your resume look a bit better.

    But if you haven’t contributed before, the open source community can seem intimidating, even if you’re an experienced developer. Open-sourcerers are geniuses, wizards, heroes! How could you possibly be so insolent as to request their attention, to waste their time with your questions and contributions?

    I’m not an expert on open source, just someone who’s dabbled. I’m going to share some things that helped me and hopefully they will help you too.

  2. Running nginx and PHP-FPM in separate Docker containers

    Published 2019-06-23.

    This is a story of how setting up some game servers turned into an exploration of the seemingly-uncharted depths of FastCGI.

    Was it worth spending so much time on this? Probably not. But at least I learned some things along the way.

  3. Fast & flexible content snippets in Gatsby

    Published 2019-05-30.

    Many sites display an excerpt of content on listing pages in order to give visitors a preview of the article. This snippet is your opportunity to entice people to click on the article and read it. The easiest way to generate a snippet is to just take the first x characters of the post.

    Many articles start with a few introductory paragraphs to provide context or make the article seem more relatable. But does this introduction best represent the meat of the article? Wouldn’t it be nice to allow authors to choose which paragraph(s) got used to generate the preview snippet? I will first discuss the obvious way to solve this problem, then I will show you a better way.

    Thanks to this approach my generated path---index-***.json file has shrunk from ~170KiB to ~4KiB, and that’s with only two blog posts. Larger websites could realise significant absolute savings.

  4. Gatsby on AWS, the right way

    Published 2019-01-10. Updated 2019-01-20.

    There are plenty of articles online about hosting Gatsby using AWS S3+CloudFront, and there are even a couple of articles about using CodeBuild/CodePipeline for CI/CD (Continuous Integration & Continuous Delivery). But I believe they all over-simplify things, and miss out some real opportunities for improvement. While setting up this blog site my perfectionism kicked in, and I think that I can give you some tips on how to make your website just a little bit better. Plus we’re going to make /r/frugal proud and do it on a shoestring budget. If you already own a domain name, you can run a high-performance website for a few bucks per month, or maybe even for free.

  5. Making an animated Hilbert Curve using WebGL

    Published 2019-01-07.

    On 2018-04-21 I read a blog post about using Hilbert Curves to map the internet in a way that humans could visually understand. Within the post there’s an animation of a small section of the internet which was moving through the Hilbert Curve. As soon as I saw this I wondered what it would look like if a much bigger Hilbert Curve was animated. Given that a large number of pixels would have to be updated every single frame, this seemed like the perfect opportunity to try out WebGL.

© Joshua Walsh 2019