News

(Quick) Colour Picker for MacOS

3/11/2019 A tiny App allowing you to quickly pick a colour (or generate a colour scheme) in seconds from the Mac menu bar. Quick Colour Picker on the…

Ray Tracing with Swift

2/27/2019 Over Christmas I worked through most of The Ray Tracer Challenge with Swift. I've extracted my tests/solutions so if you want to give it…

Immutable Context: state management in React with Hooks, Context and Immer (and TypeScript)

2/9/2019 I made a state management library for React with Hooks, Context and Immer (and TypeScript): Immutable Context . See also an example…

Isometric Data Visualisation

2/5/2019 Honestly if your goals is to accurately communicate information 3D data visualisation isn't always the best choice. But it is fun and…

Kotlin for Processing

1/31/2019 I added the first in a planned series of articles on using Kotlin for Processing . It includes coverage of extending the core language…

Blog

Starting with Flutter (from React Native)

2/27/2019 At the end of 2018/start of 2019 I wanted to fill in my knowledge of modern UI approaches. I have worked with native iOS and Android and…

Getting Started with Functional Music Programming

2/26/2019 One of my 2019 goals is to learn Haskell, to do this I picked up Haskell School of Music which teaches Haskell by showing how it can be…

Upgrading to Elm 0.19 in early 2019

2/19/2019 So I finally got round to updating this Elm App (for presentations) to Elm 0.19 (along with cutting out a bunch of features so it was…

See All Articles.

Welcome

This little website is a list of many of the projects I, James Porter, have released on iOS, Android and the Web.

About

You might want to read about how I made it.

Laptop computer