Skip to content

Instantly share code, notes, and snippets.

Jeff Tchang tachang

Block or report user

Report or block tachang

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@tachang
tachang / smtpforwarder.py
Created Aug 31, 2018
SMTP Forwarding Script
View smtpforwarder.py
import smtpd
import asyncore
class CustomSMTPServer(smtpd.SMTPServer, object):
def process_message(self, peer, mailfrom, rcpttos, data):
print 'Receiving message from:', peer
print 'Message addressed from:', mailfrom
print 'Message addressed to :', rcpttos
print 'Message length :', len(data)
@tachang
tachang / load_database.sh
Created Dec 19, 2017
Scripts that loads a database from S3
View load_database.sh
#!/bin/bash
# This script looks for a database container and reloads the database
# inside the container
DB_CONTAINER_ID=`docker ps --filter="ancestor=postgres:9.6" -q`
read -p "Enter Amazon Access Key: " AMAZON_ACCESS_KEY
read -p "Enter Amazon Secret Key: " AMAZON_SECRET_KEY
@tachang
tachang / ReactControlledInputWithState.jsx
Created Dec 14, 2017 — forked from markerikson/ReactControlledInputWithState.jsx
React controlled input with internal state example
View ReactControlledInputWithState.jsx
class ControlledInputWithInternalState extends Component {
constructor(props) {
super(props);
this.state = {
isValid : true,
value : props.value
};
}
@tachang
tachang / gist:2117833a395504bae0bde9979f4e201e
Created Mar 10, 2017
How to install NodeJS without root
View gist:2117833a395504bae0bde9979f4e201e
wget https://nodejs.org/dist/v6.10.0/node-v6.10.0-linux-x64.tar.xz
tar xvfJ node-v6.10.0-linux-x64.tar.xz
echo 'export PATH=$HOME/node-v6.10.0-linux-x64/bin:$PATH' >> ~/.bashrc
. ~/.bashrc
@tachang
tachang / gist:ad8c2d0548e59ce353773ca75a5006c1
Created Jul 26, 2016
Hacky way to get it to require js format
View gist:ad8c2d0548e59ce353773ca75a5006c1
/**
* CSS conic-gradient() polyfill
* By Lea Verou — http://lea.verou.me
* MIT license
*/
var cg;
(function(){
@tachang
tachang / gist:cc1ab7100762f10d0e30
Created Nov 15, 2015
Chicktech Robotics Workshop Notes
View gist:cc1ab7100762f10d0e30
May need to give world read/write permissions to Arduino device:
chmod o+rw /dev/ttyUSB0
View gist:2953eaab3ec2ae911846
### Keybase proof
I hereby claim:
* I am tachang on github.
* I am tachang (https://keybase.io/tachang) on keybase.
* I have a public key whose fingerprint is 1C43 0026 4CF6 D6D5 BEFF F03B DC2A 8174 F1BB CD35
To claim this, I am signing this object:
@tachang
tachang / recreate_snapshot.sh
Created Apr 10, 2015
Recreate LVM snapshot
View recreate_snapshot.sh
#!/bin/bash
# Stop crashplan temporarily
/etc/init.d/crashplan stop
# Unmount the datasnapshot
umount /mnt/datasnapshot
# Destroy snapshot and recreate it
lvremove -f /dev/example-vg/datasnapshot
@tachang
tachang / network-restart.sh
Created Apr 10, 2015
Cleanly restart the default libvirt network
View network-restart.sh
#!/bin/bash
#
# Yury V. Zaytsev <yury@shurup.com> (C) 2011
#
# This work is herewith placed in public domain.
#
# Use this script to cleanly restart the default libvirt network after its
# definition have been changed (e.g. added new static MAC+IP mappings) in order
# for the changes to take effect. Restarting the network alone, however, causes
# the guests to lose connectivity with the host until their network interfaces
View gist:8ed00d576494999a07c6
Option 1)
<div>
<h3>Header</h3>
</div>
- Use position relative on h3. Problem is that it looks on the outside but the markup is on the inside.
You can’t perform that action at this time.