Skip to content

Instantly share code, notes, and snippets.

View magnetikonline's full-sized avatar
💡
I have an idea!

Peter Mescalchin magnetikonline

💡
I have an idea!
View GitHub Profile
@magnetikonline
magnetikonline / README.md
Created August 4, 2020 03:03
DynamoDB local quick usage guide.

DynamoDB local quick usage guide

Running a local version of DynamoDB inside a Docker container.

Commands

$ docker pull amazon/dynamodb-local:latest
$ docker run --publish 8000:8000 amazon/dynamodb-local

# in another terminal
@magnetikonline
magnetikonline / README.md
Last active May 2, 2020 12:37
Golang io.TeeReader() example.

Golang io.TeeReader() example

  • Opening a source words file.
  • Create a io.TeeReader(), writing read file chunks also to a gzip writer.
  • Output source chunks as read and total bytes.
  • Finally, output compressed bytes and total compressed size.

Output

$ go run main.go
@magnetikonline
magnetikonline / README.md
Last active February 5, 2025 16:52
GitHub token validation regular expressions.
@magnetikonline
magnetikonline / README.md
Last active January 22, 2025 13:41
VirtualBox create host-only interface and attach to VMs.
@magnetikonline
magnetikonline / README.md
Created June 3, 2019 01:22
Git correct a commit via --fixup

Git correct a commit via --fixup

Initial commit state:

$ git log --oneline
733e2ff Second widget done
fb2f677 First widget done
ac5db87 First commit
@magnetikonline
magnetikonline / README.md
Last active May 11, 2024 13:11
Modify DHCP DNS servers for Optus supplied (Vividwireless) Huawei B315 4G modem.

Modify DNS for Optus supplied Huawei B315 4G modem

The Huawei B315 modem supplied by Optus for the (now defunt) Vividwireless service is a workable but sadly rather crippled device, even down to the inability to modify assigned DNS servers from it's DHCP server away from Optus DNS to something sane (Google DNS/Cloudflare/etc.).

This script should allow for the easy update of assigned DNS servers and has been tested with Google Chrome.

Usage

  • Log into router web UI (e.g. http://192.168.0.1).
  • From the same browser session, open the "web developer tools" pane.
@magnetikonline
magnetikonline / README.md
Created November 20, 2018 12:01
GitHub pull request timeline toggle "force-pushed" events bookmarklet.

GitHub pull request toggle "force-pushed" events bookmarklet

Since November 2018, GitHub have started to display forced push events to pull request page timelines. This bookmarklet will toggle display of these events if they are getting in the way of meaningful commits.

Add the code below as the URL of a new bookmark:

javascript:((d)=>{if(d.getElementById('nuke-fp')==null){let e=d.createElement('style');e.id='nuke-fp';e.innerHTML='.nuke-fp{display:none}';d.getElementsByTagName('head')[0].appendChild(e)}for(let e of Array.from(d.querySelectorAll('.discussion-timeline .discussion-item-head_ref_force_pushed'))){e.classList.toggle('nuke-fp')}})(document)

Tested with Chrome 70.0.3538.102.

@magnetikonline
magnetikonline / example.js
Last active November 14, 2018 12:58
JavaScript asynchronous generator and iteration example.
'use strict';
async function* delayList() {
function delay(timeout) {
return new Promise((resolve,reject) => {
setTimeout(() => resolve(`dealyed for: ${timeout}ms`),timeout);
});
@magnetikonline
magnetikonline / README.md
Last active December 22, 2023 11:04
Python function to determine if a given IPv4 CIDR "fits" into another.

CIDR fit

Python function to determine if a given IPv4 CIDR fits into another.

How cidr_fit(cidr_a,cidr_b) works:

  • For both CIDR's given:
    • Splits each CIDR into address and prefix size parts.
    • Converts the address part to a 32 bit binary string.
      • Example: 192.168.0.1 becomes 11000000101010000000000000000001.