Skip to content

Instantly share code, notes, and snippets.

View santisbon's full-sized avatar

Armando C. Santisbon santisbon

View GitHub Profile
@santisbon
santisbon / Search my gists.md
Last active April 22, 2024 14:15
How to #search gists

Enter this in the search box along with your search terms:

Get all gists from the user santisbon.
user:santisbon

Find all gists with a .yml extension.
extension:yml

Find all gists with HTML files.
language:html

@santisbon
santisbon / Update-branch.md
Last active March 21, 2024 15:50
Deploying from #Git branches adds flexibility. Bring your feature branch up to date with master and deploy it to make sure everything works. If everything looks good the branch can be merged. Otherwise, you can deploy your master branch to return production to its stable state.

Updating a feature branch

First we'll update your local master branch. Go to your local project and check out the branch you want to merge into (your local master branch)

$ git checkout master

Fetch the remote, bringing the branches and their commits from the remote repository. You can use the -p, --prune option to delete any remote-tracking references that no longer exist in the remote. Commits to master will be stored in a local branch, remotes/origin/master.

@santisbon
santisbon / XMLHttpRequestLoadImagePromise.js
Last active August 16, 2023 19:00
Using XMLHttpRequest to load an image in a #javascript #promise. Based on Mozilla Developer Network documentation.
/*jslint devel: true, browser: true, es5: true */
/*global Promise */
function imgLoad(url) {
'use strict';
// Create new promise with the Promise() constructor;
// This has as its argument a function with two parameters, resolve and reject
return new Promise(function (resolve, reject) {
// Standard XHR to load an image
var request = new XMLHttpRequest();
@santisbon
santisbon / Good taste.md
Last active July 13, 2023 15:16
What makes good taste? #linux #linus #torvalds

On Good Taste

Linus Torvalds in an interview talked about the idea of good taste in code or what I like to call elegance. As one might expect from two slides meant to make a point during a talk, he omits a lot of details to keep it short and simple. This post digs into the specifics of his example (deleting an element from a list) and adds another example (inserting an element in a list) including working code.

Example from Linus

This is an example of removing an element from a singly-linked list. It's one of the first data structures you learn about when you start learning about computer science and programming. The reason it doesn't show particularly good taste is because we have that condition at the end where we take a different action depending on whether the element we want to remove is at the beginning of the list or somewhere in the middle.

![Bad taste](http://

@santisbon
santisbon / Find files.md
Last active March 16, 2023 15:59
How to find files and text in the shell and work with them. #linux #search

Assuming there's a /test folder with .txt files in it. Note how the * character is escaped to prevent expansion.

Linux and Cygwin

find /test -name \*.txt -exec sed -i 's/oldValue/newValue/g' {} \;

macOS
In sed the -i option edits files in-place instead of printing to standard output and requires a file extension.
Use "" to overwrite the file in place.

@santisbon
santisbon / promises.js
Last active March 16, 2023 15:59
#javascript #promise example based on Mozilla Developer Network documentation
/*jslint devel: true, browser: true, es5: true */
/*global Promise */
var promiseCount = 0;
function testPromise() {
'use strict';
promiseCount += 1;
var thisPromiseCount = promiseCount;
@santisbon
santisbon / XMLHttpRequestPromise.js
Last active March 16, 2023 15:58
Shows the implementation of a method which uses a #javascript #Promise to report the success or failure of an XMLHttpRequest. Based on Mozilla Developer Network documentation.
/*jslint devel: true, browser: true, es5: true */
/*global Promise */
// $http function is implemented in order to follow the standard Adapter pattern
function $http(url) {
'use strict';
var core = {
// Method that performs the ajax request
ajax : function (method, url, args) {
@santisbon
santisbon / upgradeNode.sh
Last active March 16, 2023 15:56
Allows having different versions of #node in UNIX-based systems. If you just want to update node on OS X or Windows you can run the installer downloaded from the NodeJS site.
#!/bin/bash
sudo su
npm cache clean -f
# The n package is a Node helper
npm install -g n
# Instead of using "stable", you could specify a version:
# n 4.4.0
n stable
@santisbon
santisbon / angular-fullstack generator cheat sheet.md
Last active March 16, 2023 15:55
Commonly used commands when developing with the angular-fullstack Yeoman generator. #angular

Cheat sheet

Update npm and install the necessary packages

$ sudo npm install -g npm
$ sudo npm install -g yo grunt-cli gulp-cli bower generator-angular-fullstack

Create a folder for your project and cd into it

@santisbon
santisbon / Sync-a-Fork.md
Last active March 16, 2023 15:54
#git #fork

Sync a Fork

Add a reference to the original repo

List the remote for your fork

$ git remote -v

Add a new remote "upstream" that will be synced with the fork