<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Projects on tomcampbell.xyz</title>
    <link>https://tomcampbell.xyz/projects/</link>
    <description>Recent content in Projects on tomcampbell.xyz</description>
    <image>
      <title>tomcampbell.xyz</title>
      <url>https://tomcampbell.xyz/cover.png</url>
      <link>https://tomcampbell.xyz/cover.png</link>
    </image>
    <generator>Hugo -- 0.146.0</generator>
    <language>en</language>
    <lastBuildDate>Tue, 26 May 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://tomcampbell.xyz/projects/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Translink Service Performance Dashboard</title>
      <link>https://tomcampbell.xyz/projects/translink-dashboard/</link>
      <pubDate>Tue, 26 May 2026 00:00:00 +0000</pubDate>
      <guid>https://tomcampbell.xyz/projects/translink-dashboard/</guid>
      <description>&lt;figure&gt;&lt;a href=&#34;https://datastudio.google.com/reporting/6e2515b8-3fbe-48c8-983e-939764f2db1a&#34;&gt;
    &lt;img loading=&#34;lazy&#34; src=&#34;https://tomcampbell.xyz/images/translink-dashboard.png&#34;
         alt=&#34;Click image to see the live dashboard&#34;/&gt; &lt;/a&gt;&lt;figcaption&gt;
            &lt;p&gt;Click image to see the live dashboard&lt;/p&gt;
        &lt;/figcaption&gt;
&lt;/figure&gt;

&lt;h2 id=&#34;technologies&#34;&gt;Technologies&lt;/h2&gt;
&lt;p&gt;&lt;strong&gt;Data Ingestion &amp;amp; Processing:&lt;/strong&gt; Python (pandas) in Google Cloud Run, protocol buffers, parquet&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Data Storage:&lt;/strong&gt; Google Cloud Storage, BigQuery&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Data Transformation &amp;amp; Visualisation:&lt;/strong&gt; SQL, Google Data Studio (formerly Looker)&lt;/p&gt;
&lt;h1 id=&#34;purpose&#34;&gt;Purpose&lt;/h1&gt;
&lt;p&gt;Are the buses running on time? If not, where and how badly are they late? Which routes are consistently late, or consistently early? How well does the fleet perform at peak hour versus during the middle of the day? Why does Translink have open data, but not an interactive dashboard where I can see all of this?&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
