Skip to content

Instantly share code, notes, and snippets.

View Eihen's full-sized avatar

Emerson Belancieri Eihen

  • Bauru, Brazil
View GitHub Profile

Backend Review

OOP

Encapsulation

Each object has its own private state, and it is not possible to access the state of another object, being only able to invoke a list of public functions. The object manage it's own state and no other class can alter it directly.

Abstraction

#!/usr/bin/env node
const fs = require('fs');
let table = process.argv[2];
let coluna = process.argv[3];
let idColumn = process.argv[4];
let id = process.argv[5];
let buffer = fs.readFileSync(process.argv[6]);
@Eihen
Eihen / v-switch
Last active September 2, 2019 20:28
Simple application version manager
#!/bin/bash
# Application name
APP_NAME="PHP"
# Active application directory
# The directory with all the versions of the application must be this directory prefixed with the version
PHP_ROOT="/c/${APP_NAME}"
# The file that keeps the current application version
#NoEnv ; Performance and compatibility with future releases
; #Warn ; Enable warnings for error detection
SendMode Input ; Superior speed and reliability
SetWorkingDir %A_ScriptDir% ; Consistent starting directory
^+SPACE:: Winset, Alwaysontop, , A
[Unit]
Description=Screen Test
After=network.target
[Service]
Type=forking
User=root
Group=root
Restart=on-failure
RestartSec=3
@Eihen
Eihen / !mariadb-backup
Last active July 4, 2019 12:48
Script to backup mysql databases from multiple connections defined in the .my.cnf file
#!/bin/bash
# Based on Gabriel O'Brien's mariadb-backup.sh (https://github.com/gmobrien/mariadb-backup.sh)
# The main difference is that this script use the mysql config groups to allow backups from multiple connections simultaneously
# Check the original license bellow (https://gist.github.com/Eihen/53be043c217009d5705da28e07a1b1f4#file-license)
# If not in violation of that license you can do whatever you want with this
set -ef -o pipefail
# Set the default values
@Eihen
Eihen / db-importer
Last active July 4, 2019 13:15
Script to import backups from databases made in a remote server into a local database connection over ssh
#!/bin/sh
set -ef -o pipefail
# Script to import backups from databases made in a remote server into a local database connection over ssh
# Designed to be used together with the mariadb-backup script (https://gist.github.com/Eihen/53be043c217009d5705da28e07a1b1f4)
# This program is free software. It comes without any warranty, to the extent permitted by applicable law.
# You can redistribute it and/or modify it under the terms of the Do What The Fuck You Want To Public License, Version 2,
# as published by Sam Hocevar. See http://www.wtfpl.net/ for more details.
@Eihen
Eihen / site-manager
Last active July 4, 2019 13:20
Configurable script to setup a new deployment point for an application
#!/bin/bash
# Configurable script to setup a new deployment point for an application
# It helps you create databases, apache configuration files, pushable git bare repositories, diretory creation and file permissions
# This program is free software. It comes without any warranty, to the extent permitted by applicable law.
# You can redistribute it and/or modify it under the terms of the Do What The Fuck You Want To Public License, Version 2,
# as published by Sam Hocevar. See http://www.wtfpl.net/ for more details.
set -e
@Eihen
Eihen / asf.service
Last active January 18, 2022 12:54
Sample systemd unit service for ArchSteamFarm
[Unit]
Description=ArchSteamFarm
After=network-online.target
[Service]
Type=simple
User={user}
Group={group}
Restart=always
RestartSec=15s
@Eihen
Eihen / media.ahk
Created August 8, 2018 18:05
AutoHotkey script for media shortcuts
; Play/Pause
+F10::
Send, {Media_Play_Pause}
Return
; Previous Song
+F11::
Send, {Media_Prev}
Return