Skip to content
View tonytw1's full-sized avatar
  • United Kingdom

Organizations

@eelpie

Block or report tonytw1

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
tonytw1/README.md

Personal projects

Non dressage code which solves problems I'm interested in.

Squirrel Detector

Squirrel Detector uses a retrained TensorFlow model and some pragmatic tools (python, MQTT) to monitor the garden wildlife.

Wellynews

Wellynews aggregates community news from my home town.

Shows sensible evolution of a long-running project into separate services which can then develop into standalone applications in their own right.

Demonstrates a commitment to openness and Internet standards by supporting RSS views of all content.

OpenStreetMap Jigsaw

OpenStreetMap Jigsaw is a fairly unhinged exploration of the geometry of the OpenStreetMap dataset. Transforms the ~ 5 billion elements of an OSM extract into sorted graph of shapes which it exposes as a JSON API.

This graph is used to infer readable place names from the arrangement of nested shapes. Lots of trade-offs and optimizations to make this run to completion on an obtainable computer.

Language specific competence

Attempting to show competence and a vague understanding of how computers work.

Go

Gauge controller demonstrates some Go basics like structs and locks. This application is routing metrics; probably a good example of the systems programming glue which Golang excels at.

Packaged as a container image to defer conversations about where it actually runs. Google Cloud Build for infrequent builds.

Go's most interesting feature is it's build in http server. This completely short circuits the need to agree on an application framework; just use net/http and get building.

Kotlin

NominatimAC is an example of a Spring Boot / Kotlin application which has been migrated inflight from Java. The proper documentation of optional values was an important improvement over Java.

This application has ~ 100 million records in its dataset demonstrating knowledge of working with large (won't fit in memory) data streams.

Whakaoko is another Kotlin / Spring Boot application with more moving parts and persistence. Long-lived run time which has todo real work against flaky third party URLs. Includes some token Kotlin coroutines.

I used Kotlin for Advent of Code 2023 and it seemed to produce lower line counts than Java. The syntaxes for filtering, mapping and sorting were alot more memorable than their Java equivalents.

Java

Java is still an important language which is predominant in whiteboard interview settings.

General Java competence is demonstrated in these Advent of Code 2022 submissions.

This intuition on line 45 of Day 15 part 2 was considered fairly novel by my peers.

Includes some token stream usage.

Scala

Cards is an example of how I'd use Scala and Play Framework for a standalone service.

Scala Futures and WS Client are a good fit for the long-running async HTTP fetches this application makes. Been my simplist Play Framework application, this will be the Scala 3 migration canary.

Commercial code

Unsquashed real world code. Dealing with uncertainty and been a good neighbour in a shared code base.

Show me a hill you'd die on...

This: guardian/grid#4286 Fast feedback from tests slowly dies if we don't spend alittle keeping out tools working smoothly.

Other

Android

Been able to customise your device using the skills from your day job was a big draw. Been able to read and contribute to front end code bases is still a useful collaboration skill.

I developed 2 Android apps with large user bases; Guardian Lite and London Bus Times Preview. The latter received a highly commended award in Transport for London's 2013 accessible app competition.

Pinned Loading

  1. squirrel-detector squirrel-detector Public

    Retraining a TensorFlow object detection model to look for squirrels.

    Python 13 2

  2. power-meter power-meter Public

    Retrofitting a domestic electricity meter to obtain local consumption data using an Arduino and Raspberry Pi

    C++

  3. nominatim-ac nominatim-ac Public

    Elasticsearch backed place name autocomplete based on Open Street Map Nominatim data

    Kotlin 30 2

  4. analogue-dashboard analogue-dashboard Public

    Warmer, smoother production metrics

    C++ 2

  5. home-assistant-carbon-intensity home-assistant-carbon-intensity Public

    Adds Home Assistant support for the National Grid's Carbon Intensity API in Great Britain.

    Python 3 2

  6. trello-changelog trello-changelog Public

    Summary changelog generated from Trello boards

    Scala