Skip to content

Instantly share code, notes, and snippets.

free hugs


free hugs
View GitHub Profile
todgru /
Last active Jun 10, 2020
Pi-star Notes: FCS YSF Wire-x room numbering C4FM reflectors

Pi-Star Notes

General information about rooms

Networks and "rooms"

There are basically three different networks. YSF, FCS, and the Wires-X Network. The Wires-X network is Yaesu's own network and you need their hardware to access it (or a local repeater that's connected to it). YSF and FCS are open.

todgru / get.js
Created May 21, 2020
vanilla javascript version of lodash get
View get.js
* The behaves the same as the lodash version
* Source:
const get = (obj, path, defaultValue = undefined) => {
const travel = regexp =>
.call(path, regexp)
todgru /
Last active May 15, 2020
software guideline principles for a lazy programmer

Principles for lazy programmers

ongoing list that is sure to change.

setting: you can't show someone the light if they don't open their eyes. know when to shutup.

  1. single responsibility
  2. well written code should make tests easy to write
  3. explicit is better than implicit, except when its not
  4. YAGNI (You Aren't Gonna Need It)
todgru / post-receive
Created Apr 28, 2020 — forked from tlrobinson/post-receive
Super simple git post-receive hook for Node.js + nvm + npm + node-foreman + init (Ubuntu) deployment
View post-receive
#!/usr/bin/env bash
set -u
set -e
export GIT_WORK_TREE="/var/www/"
export NODE_VERSION="0.10"
echo "--> Checking out..."
git checkout -f
todgru /
Last active Apr 28, 2020 — forked from noelboss/
Simple automated GIT Deployment using Hooks. Example to copy dist distribution directory.

Simple automated GIT Deployment using GIT Hooks

Here are the simple steps needed to create a deployment from your local GIT repository to a server based on this in-depth tutorial.

How it works

You are developing in a working-copy on your local machine, lets say on the master branch. Most of the time, people would push code to a remote server like or and pull or export it to a production server. Or you use a service like to act upon a Web-Hook that's triggered that service.

todgru / maupin-chirp.csv
Last active May 26, 2020
maupin area chirp repeaters, uppercase names for because the Yaesu FT70-DR will not display lower case
View maupin-chirp.csv
Location Name Frequency Duplex Offset Tone rToneFreq cToneFreq DtcsCode DtcsPolarity Mode TStep Comment
1 146.52 146.52000 0.00000 Tone 82.5 88.5 023 NN FM 0 nat calling
2 146.46 146.46000 0.60000 Tone 82.5 88.5 023 NN FM 0 overland
3 TIMBERLINE 147.12000 + 0.60000 Tone 100.0 100.0 023 NN FM 5 Timberline
4 DUFER/TYGH RIDGE 147.26000 + 0.60000 Tone 82.5 88.5 023 NN FM 5 Dufur, Tygh Ridge
5 DALLESTHE 146.74000 - 0.60000 Tone 100.0 88.5 023 NN FM 5 The Dalles
6 HOOD RIVER 145.15000 - 0.60000 Tone 94.8 88.5 023 NN FM 5 Hood River, Mount Defiance
7 HOOD RIVER 147.10000 + 0.60000 Tone 100.0 100.0 023 NN FM 5 Hood River, Mount Defiance
8 FOSSIL 146.68000 - 0.60000 Tone 162.2 88.5 023 NN FM 5 Fossil, Snowboard Ridge
9 REDMOND 145.13000 - 0.60000 DTCS 88.5 88.5 026 NN FM 5 Redmond, Cline Butte
todgru /
Created Apr 21, 2020
sequelize nest raw

Returns an undecorated sequelize instance. this should work for many model methods.

const result = await model.findByPk(1, { raw: true, nest: true }
todgru / size.sql
Created Apr 21, 2020
display size of postgres database and table
View size.sql
SELECT pg_size_pretty (
pg_total_relation_size ('"camelCaseTableName"')
SELECT pg_size_pretty (
pg_database_size ('lowercaseddbname')
todgru /
Last active Apr 8, 2020
Remote, Office Not Require - summary of points that stood out for me

Remote, Office not Required

1. If I can't see them, how do I know they're working?

(pg 54) People have amazing ability to live down to low expectations, or live up to high expectations. If there are trust issues with employees, then the employer made poor hiring decision. Employer/Employee trust is fundamental.

2. People’s homes are full of distractions

(pg 58) being easily distracted from work could mean the work is not well defined or the task is menial, pointless. Might be a chance that if someone feels like this, others on the team might feel the same.

todgru /
Last active Nov 15, 2019
vpn route through another vpn pihole pivpn dnsmasq openvpn


Ideally, I like to run one vpn. I have OpenVPN/PiVPN working just fine.

On the PiVPN server, I'd like to run a VPN client to my work office.

It's difficult to get Cisco VPN client and Tunnelblick clients running side-by-side on the same machine, ie my local dev machine, without a seeming hack(see below).

I have it working locally.

  • Cisco AnyConnect Client connect to work VPN. Only specific resources are made available. All other traffic is routed as normal.
You can’t perform that action at this time.