Skip to content
Avatar

Highlights

Sponsoring

@benaadams @ImageMagick @JimBobSquarePants @dlemstra
danpetitt/README.md

Hi, I'm Dan Petitt! 👋

Senior Software Engineer at PA Media Group

Co-founder of digiguide.tv

Twitter: coderanger Linkedin: danpetitt GitHub danpetitt

A little more about me...

const dan = {
  pronouns: 'he' | 'him',
  code: ['C#', 'Typescript', 'Javascript', 'HTML', 'CSS', 'C++', 'C'],
  frameworks: ['.net', '.net core', 'NodeJS'],
  platforms: ['Azure', 'AWS'],
  databases: ['SQL Server', 'mySQL'],
  devOps: ['Docker', 'Serverless'],
  tools: ['Jest', 'Cypress', 'Swagger'],
}

My GitHub contributions as a Game of Life

GitHub Game of Life

(Be sure to click on it for the infinite scrolling version.)

What's this?

This takes my GitHub contribution graph and uses it as the initial state for Conway's Game of Life, a popular cellular automaton that is often built by beginning software developers as an easy-to-implement but interesting piece of software.

Conway's Game of Life only defines two initial states for cells, but there are multi-color variants. This is a variant of "Quad Life" (chosen because the GitHub contribution graph has four colors that represent the intensity of contributions for a given day): in the typical Game of Life rules, a graph with a lot of contribution would die out in the first iteration (because the cells would be overcrowded), which seems to punish those with a lot of contributions, giving them a boring Game of Life. Intead, this variant "decays" the level of contribution, so cells will fade away instead of dying immediately.

How does it work?

This uses a JavaScript library called contributions to create a data structure with a GitHub contribution graph, and uses that as the initial state for another JavaScript library called dat-life.


Dan's github stats Top Langs


Pinned

  1. GitHub Action to read an open cover xml file in the project folder and generate a badge to use in readme file

    JavaScript 2

  2. Multi-threaded web test command line tool powered by JSON to automate testing of a website

    C#

  3. Simple .NET COM object for use in scripts and web sites to upload/download/delete/list Azure Storage Blobs

    C#

  4. Simple command line Windows tool to sync two mySQL databases and export a SQL 'differences' file which when executed back onto the target database will bring them both back into sync.

    C++ 1

  5. 1
    #!/bin/sh
    2
    
                  
    3
    # Config options
    4
    
                  
    5
    min_length=4
  6. 1
    # Using nvmrc on Windows
    2
    
                  
    3
    Unfortunately `nvm use` on Windows does not change the node version to that specified in the `.nvmrc` file as its not supported on nvm for Windows: https://github.com/coreybutler/nvm-windows/issues/388
    4
    
                  
    5
    So the easiest solution to this is to use a simple Powershell command that performs an approximation of the command as follows:

3,145 contributions in the last year

Mar Apr May Jun Jul Aug Sep Oct Nov Dec Jan Feb Mon Wed Fri

Contribution activity

March 2021

50 contributions in private repositories Mar 1 – Mar 8

Seeing something unexpected? Take a look at the GitHub profile guide.