/code-reading

Code reading examples for Code Craft November 2020

Creative Commons Zero v1.0 UniversalCC0-1.0

code-reading

Introduction

How often have you had to read an unfamiliar codebase?

We read code many, many times more than we write it, but we spend most of our time learning to write the code, and rarely spend the time to think about how we can improve our understanding of pre-existing code.

Join us as we dig into codebases and find out how to identify the key elements of previously unknown source, identify patterns in the code, and dive into understanding how the internals of code we use is written.

Doing this will help you see how other folks write code, help you pick up a project faster, debug issues in dependencies, and improve your own code writing skills.

JavaScript

Origami Image Service

https://github.com/Financial-Times/origami-image-service

Scottish (Irish) Covid Backend

https://github.com/HSEIreland/covid-green-backend-api

TypeScript

Scottish (Irish) Covid Mobile App

https://github.com/HSEIreland/covid-tracker-app

Java

UK Government Payments Public API

Dropwizard-based Public Payments API.

https://github.com/alphagov/pay-publicapi

Apache James Email Server

Modular server for building mail servers in Java.

https://github.com/apache/james-project

UK Government Payments Reporting

Dropwizard-based API for Pay Ledger.

https://github.com/alphagov/pay-ledger

UK Govermnent Letter sending service

Spring-boot based API for sending physical letters.

https://github.com/hmcts/send-letter-service

CarbonJ - A high-performance drop-in replacement to carbon-relay and carbon-cache

A Java-based Spring Boot application

https://github.com/salesforce/carbonj

Togglz - Feature Flags for the Java platform

https://github.com/togglz/togglz

Scala

UK Government Soft Drinks Levy API

Play-based API for tax subscriptions.

https://github.com/hmrc/soft-drinks-industry-levy

Ruby

Alphagov Publisher

Rails App

https://github.com/alphagov/publisher

Alphagov Email Alert API

Rails App

https://github.com/alphagov/email-alert-api

Go

Image Reflector Controller

Kubernetes custom controller

https://github.com/fluxcd/image-reflector-controller

Kubernetes

Core Kubernetes model

https://github.com/kubernetes/kubernetes

Python

Pretalx Conference Management

https://github.com/pretalx/pretalx

Jira hook handler

https://github.com/InsolvencyService/Jira-Service

DotNet Core

Redundancy Payment Calculator

https://github.com/InsolvencyService/RPSCalculationEngine

Smalltalk

ESug Regis

https://github.com/Lin777/Regis

SUnit

https://github.com/gnu-smalltalk/smalltalk/tree/master/packages/sunit

Teachable

https://github.com/astares/Pharo-Teachable

Erlang

https://github.com/heroku/redo

https://github.com/beam-telemetry/telemetry_poller

Template

# <insert title from repo>

<insert link to the repo>

## <insert single sentence description>

## Where to start?

<link to the main or if no main, some other entry point>

## Threads to pull on

Collaborating remotely

https://excalidraw.com/

https://yuml.me/

Further reading

Dave Thomas https://youtu.be/0AzkH8SYyOc?t=2327

Trisha Gee https://www.youtube.com/watch?v=zV079g7Irks

Kyle Brown https://medium.com/@kylegenebrown/design-patterns-smalltalk-and-the-lost-art-of-reading-code-1727d93fd7fa