Skip to content

Instantly share code, notes, and snippets.

View corlaez's full-sized avatar
🏠
WFH since January 2020

Armando Cordova corlaez

🏠
WFH since January 2020
View GitHub Profile
@corlaez
corlaez / 1-gavotte-f-j-gossec.md
Last active August 7, 2022 21:38
Book1: Gavotte by F J Gossec

Gavotte

Allegretto - F. J. Gossec

(G Major)

A
| A3A4 A3A1 A2A3 A2A0 | D3 E12 D3 xx | A2A3 A2A0 A1A2 A1D3  | A0 A#23 D0 xx |
A'
| A3A4 A3A1 A2A3 A2A0 | D3 E12 D3 xx | A1   D3D1 D3   D1G#3 | D0 A#23 D0 xx |
B
@corlaez
corlaez / README.md
Last active April 11, 2024 07:47
Hexagonal Architecture and Modular Implementation

Hexagonal Architecture

Conceptualized by Alistair Cockburn. Also known as "Ports and Adapters".

In a nutshell:

Application Driver -> Primary Adapter -> Primary Port -> Use Case -> Secondary Port -> Secondary Adapter -> External System/Side Effect
@corlaez
corlaez / ModuleAbcConfiguration.java
Last active September 23, 2021 13:33
Manual, Provider Based and Spring Configuration for Modules
// PseudoCode for Manual DI
public class ModuleAbcConfiguration {
private static ModuleAbcApi moduleAbcApi;
// Test Use (allows to inject mocks)
ModuleAbcApi newTestInstance(externalModule) {
return newInstance(externalModule);
}
// Production Use
@corlaez
corlaez / sinonUsageProblem.js
Created March 26, 2021 20:59
Sinon usage problem example
const sinon = require("sinon");
const auth = { session: () => "real" };
sinon.stub(auth, "session").callsFake(() => {
return "fake";
});
console.log(auth.session());// fake as expected
const holdSession = auth.session;//hapens in app.js app.use(auth.session);
sinon.restore();
console.log(auth.session()); // real as expected
console.log(holdSession()); // fake ... UNEXPECTED!
@corlaez
corlaez / transpose.js
Last active January 18, 2021 04:53
Transpose chords function
function transposeChord(inputChord, halfStepsToTranspose) {
const splittedChord = inputChord.split("/");
if (splittedChord.length > 2) throw new Error("Format error, too many slashes.");
const [transposedChordBase, modifier] = transposeChordBase(splittedChord, halfStepsToTranspose);
const maybeTransposedBass = transposeBass(splittedChord, halfStepsToTranspose);
const transposedChordHasAccident =
transposedChordBase.length > 1 &&
["#", "b"].includes(transposedChordBase.charAt(1));
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>Parent Window</title>
<!-- Use the angular js we use at this moment -->
<script
src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.8.0/angular.js"
integrity="sha512-CiKQCmN86Y1I8Ewkt2gGnSNmsiVrS9Ez5MoudCBhTiBJScg+GjA9OlKdaeI0IuxdCl43Fs5x5zpeew2hfOatOA=="
crossorigin="anonymous"
@corlaez
corlaez / main.js
Created November 3, 2020 21:25
tixy
Math.sin(t)
@corlaez
corlaez / CoronaMidi.txt
Last active September 11, 2020 00:07
CoronaMidi
X:1
T:CoronaMidi (t=d)
M:5/8
K:G
addaaaggdd | dadaccddcc | caggdaacaa | accaaccaac | dddcgadcdc | ddgdagadcd |
gddcdcdaaa | cgaacdddaa | aadcdgdgdg | gcdgdcacdc | ggcdgcadgc | ddagdgcacd |
cacgcagdad | aaddaadaac | daaddacdgd | cgddgacagg | acacgagdaa | cdcgdcdadc |
ddcdgcaggc | dgcddacggd | ddcgdccgdg | ddgcagccga | dcadcagcac | adcdaggddd |
cgdccgggdg | dgaccgaaag | gdaagadgga | gagccddgdc | ccdggdddca | acgagaaaac |
acacgdccaa | cdcagdddgc | cdgddddaca | ggddcgcgac | gdgcdcgdac | gdggcdddgg |
@corlaez
corlaez / README.md
Last active June 11, 2020 05:05
Secure Random String

Class usage

Just paste it to a project that supports kotlin language and write a package declaration on the top. Done.

Run from console

Requires kscript to run as a script:

sdk install kscript
@corlaez
corlaez / docker-compose.yml
Last active May 20, 2020 15:26
Docker mysql socket connection
version: '3.1'
services:
# phpmyadmin:
# image: phpmyadmin/phpmyadmin
# ports:
# - 8080:80
# environment:
# - "PMA_HOST=mysql"
mysql:
image: mysql:5.6