Skip to content
View Skenvy's full-sized avatar

Sponsoring

@rvm

Block or report Skenvy

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
Skenvy/.md

G'day 🀠

Caution

Likey, nothing better symbolises the chaotic vibe of my approach to coding than this; the time when I was 15, stumbled upon a broken umbrella, and had no qualms asking, or answering: "Could you fit all the pieces of an umbrella in an apple?"

An apple with pieces of an umbrella poking through it.

whoami πŸ€·β€β™‚οΈ

Important

Howdy, I'm Nathan, a.k.a. Skenvy, "30's"-year-old Australian 'devops' human.

I'm building inconsequential projects for fun and learning. The more inconsequential the better.

Degree'd in Computer Engineering, Maths and Geology, I've spent several years working across a range of technical roles: FPGA development, product support, Azure apps, "consulting", "data", and for the last few years as something that is 'SRE-adjacent', "devops"-y cloud thangs.

Tip

My dotfiles are their own how-to, from main. home is my home. Or, make yourself at home, too. Home Is Where the Dotfile Is.

Ethos 🚎

Have you ever wanted to start a cult? Thankfully in the software dev space, there's already a variety of cults to choose from!

The "Cult of Done" is a nice set of quip-based motivationals, if those would help you. I first encountered it on NoBoilerplate @ yt.

The Cult of Done Manifesto
  1. There are three states of being. Not knowing, action and completion.
  2. Accept that everything is a draft. It helps to get it done.
  3. There is no editing stage.
  4. Pretending you know what you're doing is almost the same as knowing what you are doing, so just accept that you know what you're doing even if you don't and do it.
  5. Banish procrastination. If you wait more than a week to get an idea done, abandon it.
  6. The point of being done is not to finish but to get other things done.
  7. Once you're done you can throw it away.
  8. Laugh at perfection. It's boring and keeps you from being done.
  9. People without dirty hands are wrong. Doing something makes you right.
  10. Failure counts as done. So do mistakes.
  11. Destruction is a variant of done.
  12. If you have an idea and publish it on the internet, that counts as a ghost of done.
  13. Done is the engine of more.

These are licensed Creative Commons by Bre and Kio, but I can't find a link to the original license.

Of course, the value of anything like this is in the self-determination of adopting it. This doesn't need to be a serious thing, and it's best when it isn't. These aren't hard and fast rules, anymore than you choose for them to be! A preface that only feels necessary after seeing several tirade-esque posts admonishing the use of any motivational tools while trying to find the original source for the CoD manifesto.

My take?

Gif of Marge's iconic 'I just think they're neat' line.

Tools πŸ› οΈ

Generic

IDE

  • vsc
  • vim

Cloud

  • AWS (via CFN/CDK/TF)
  • GCP (via TF)

CICD

  • GitHub Actions
  • BuildKite

Containerisation

  • Docker
  • Docker-Compose
  • K8s
  • Helm
  • K9s

Db

  • PostgreSQL
  • BigQuery
  • RedShift
  • dabbled in Cassandra

VC

  • Git
  • Mercurial

Methodologies

  • Agile
  • Kanban
  • Scrum
Languages

Primary

  • Python
  • Bash
  • Java
  • Yaml (lol)
  • Make (lol).

Secondary

  • C#
  • Go
  • Ruby
  • PowerShell
  • Julia
  • R
  • VHDL

Currently learning

  • Rust
  • Kotlin+Android
  • Erlang/Gleam

Always learning

  • JS
  • TS
  • Node

Projects πŸ“‚

Note

I maintain several niche packages that besides their respective typical hosts, also live in GitHub Packages.

There's also my gists. One that I have favourited because I regularly access it is SSH for multiple GH accounts.

  1. julia-release: A github action to release a julia project in a way that feels more ideologically alligned with how I'm familiar with releasing, as opposed to julia's officially recommended release pattern.
  2. dependabot-linguist A ruby package that can be used to have a guess as to what sort of dependabot configuration is appropriate for a given repository, with the primary use case of automating the configuration across multiple repositories without the need to manually investigate their contents.
  3. Collatz: An attempt at a personal Rosetta Stone and collation of language-fu-isms, all attempting to achieve sort of the same thing, along with various general repository health examples, and learning github actions. There's probably more collatz repositories on GitHub than you could poke a stick at. This is just one of them. I picked the topic to match the goal of "personal Rosetta Stone" rather than the other way round. The choice of topic came from having a bunch of python scripts written years ago that went down a rabbit-hole, so I made this to make myself stick to KISS.
  4. Sudoku: A java JFrame implementation of a sudoku solver I wrote circa 2013 and have been sitting on with the desire to one day convert it into an android app. The distinction between this and other solvers is that this tries to catagorise the difficulty of the puzzle by which tactics it needed to solve it, that is to say, it tries to solve it using only specific techniques, in order, without resorting to heuristics / brute force that would be unobtainable for a person.

Publications πŸ–¨οΈ

License πŸ“„

Note

Skenvy by Nathan Levett is licensed under CC-BY-SA-4.0

Pinned Loading

  1. Collatz Collatz Public

    Functions related to the Collatz/Syracuse/3N+1 problem.

    Python 6 1

  2. dotfiles dotfiles Public

    This is my dotfile repository. It follows the "$HOME is a repo" pattern, with bells attached.

    Shell 1 1

  3. julia-release julia-release Public

    An action to proctor the CD (release and registering) of a julia project.

    Shell 1

  4. dependabot-linguist dependabot-linguist Public

    Use linguist to check the contents of a repository, and then scan for dependabot ecosystems relevant to those languages!

    Ruby 2 1

  5. Sudoku Sudoku Public

    Initially a Java JFrame implementation of a Sudoku solver.

    Java 1

  6. SSH for multiple GH accounts SSH for multiple GH accounts
    1
    # SSH for multiple GH accounts
    2
    While a proper `~/.ssh/config` can be great, this should be a minimal way to set up new keys for using multiple accounts on Mac, Windows, and WSL, and covers some of the traps in simultaneous use of **Windows _AND_ WSL**.
    3
    ## Creating a new key
    4
    To connect from "this machine" to a new GH account. While `~` will be different from your windows and WSL's perspective, WSL's `~/.ssh` _should_ be a **soft link** to your window's `~/.ssh`, so it's ok to use either
    5
    ```