Welcome to Tom's Awesome GeoCities Site!
Nice to meet you!
I'm Tom Fishwick
My main experience from work is as a developer for Elite 3E (VB.Net & SQL) and MatterSphere (C#). This involves creating new screens and workflows and integrating them with various APIs. As well as these I have made an ASP.Net site serving a Vue.JS application, and various other JavaScript applications.
In my spare time I have created various apps in Python, JavaScript, React Native and Android. Plus I have some experience in PHP.
Skills
Skill Experience
Python 5 Years Experience
SQL (MS SQL Server, SQLite, MariaDB) 10 Years Experience
VB.Net 10 Years Experience
C# 7 Years Experience
JavaScript 12 Years Experience
SQL Server Reporting Services (SSRS) 6 Years Experience
MATLAB 1 Year Experience
HTML 12 Years Experience
Docker 2 Years Experience
Projects
Chart the Stock Market
This project started as my answer to FreeCodeCamp Chart the Stock Market. Here I created a flask app with web sockets. This started life with the JavaScript being in charge of the visualisations in D3. This used a huge amount of code to draw the graph. I then decided to get Python to parse the data and draw the graph, passing the Base64 string back to JavaScript. Jupyter Labs was useful to design the function and then I copied the code out into a python file. After quite a few attempts I got the app onto Heroku. This was quite a bit more complicated than I thought it would be. I first found out about the existence of Gunicorn and then how to use it. From this I also found out about using .env files in Python (something that I had done in Node.JS and thought would be a good idea in Python). This has since moved to first Railway.app and now render.com. With the JavaScript becoming TypeScript and being in charge of the visualisations using ChartJS.
Live Link | Source
Predict Health Costs With Regression
This project started as my answer to FreeCodeCamp Predict Health Costs With Regression. Here I created my first Streamlit App, and then discovered how hard it was to put streamlit into a Docker container. Here you can see the difference between the model's predictions and the actual data. You can then use the controls to predict your health costs. I later revisited it to tear out all of the TensorFlow code and replace its model with a Random Forest Regressor
Live Link | Source
Cat and Dog Image Classifier
This started out as my answer to FreeCodeCamp Cat and Dog Image Classifier. I created a Node.JS app which uses TensorFlow.JS with the converted model I made to determine whether the image passed is more likely to be a cat or a dog (with not so great accuracy).
Live Link | Source
SMS Classifier
This project originally started as my answer to FreeCodeCamp SMS Classifier. In this project I created my first Flask Web App (not including the tutorial I did). Plus my first Docker Container (outside of a tutorial). Originally this used TensorFlow as the machine learning library, but I have now changed this to SciKit Learn. In the web app you can test the classification of various texts, the client side JavaScript will post a request to the API which in turn will consult the saved SKLearn model. You can then press the "Add to database" button, this will push it into the local database (a SQLite database inside the Docker container). In the data table at the front end you can flip the classification of messages between spam and ham. You can also delete that entry out of the database. Pressing the "Retrain Model" button will cause the Flask server to retrain the Machine Learning model on the data in the SQLite database. It will then test the model against the validation data from FreeCodeCamp (the main data is also from FreeCodeCamp). This may take a little while, it will then save the model in the Docker container and then use that. To build the model manually you can run the file modelmaker.py.
Source
XKCD Reader
My XKCD Reader app, which uses React-Native to render the XKCD website. The Android APK file (tested on my phone and in the Android emulator) is available at the link above.
Live Link | Source
PizzaKG
This project was something I did after university following the specifications of the SWTKG module which I didn't take.
Live Link | Source
Contact

I would love to hear about your company and how I could help. Please fill in the form, and I'll get back to you as soon as possible.

Posts
Mar 2, 2025 XSLT Pages
I have updated my Sitemap and Atom feeds to display as though they are HTML. Inspired by the idea of not repeating myself, which I wasn’t because generally Jekyll had one copy of this data in the source code, but then two copies in the output.
Feb 8, 2025 UI Update
Here I explain some of the main changes, such as the new NavBar and the removal of BootStrap from the site.
Jan 27, 2025 Blog Questions Challenge
I first saw this challenge on Adactio’s blog.
Nov 30, 2024 Ruby Chess
I created a chess game as part of the Odin Project.
May 26, 2024 React Terminal
We do this not because it is easy, but because we thought it would be easy- Some guy on Reddit
Feb 16, 2024 React
The remaining React pages now lives here.
Feb 3, 2024 VueJS
Continuing on from my previous post where I moved one of my React Pages, I have now removed VueJS from my main site.
Jan 13, 2024 Recipe Box Move
The time finally came when this site got too big and I started moving things.
Jul 8, 2023 Farewell to Railway
Recently Railway.app announced a change to their pricing structure, so I took the opportunity to revamp my flask app that ran on there to chart the stock market. It now uses Chart JS instead of MatPlotLib as the most visible difference from before.
Jan 11, 2023 Scarlet Sentinels Welcomes New Recruits
The Scarlet Sentinels Chapter welcomes Lieutenant Kieran Cadmus and Librarian Zao Urbane as its first Primaris Space Marines.
Dec 29, 2022 End of University
A brief summary of what I did in my university projects
Sep 19, 2022 Machine Learning and Model Railway Making
Making a model railway diorama with the help of a machine learning translation model
Jul 1, 2022 Different Report Types
In my time at McMillan William’s/Taylor Rose MW and as a student at City University I have used various different reporting packages.
May 26, 2022 Automating Documents with Word
A brief look at various ways of automating Word documents
Apr 16, 2022 Kill Team
Sargent Griff Snipa stared out at the wastes of Orthanc. His squad of Boyz had set up shop at a way station halfway between two of the hive cities on the planet. They had been dispatched to locate a human relic, an Inquisitor’s digital gun. Said inquisitor had taunted Big Boss Head-Rippa with it and his transport had been shot down over the way station after his retreat from the Orks at Hive Veritas.
Aug 17, 2021 Blood Bowl 1st Match
My first Blood-Bowl match, with a few embellishments
Under Construction!
Best viewed with:
Visitors since the dawn of time: 12345

Under Construction New! Generate your own 90s page here! Under Construction