Skip to content

Instantly share code, notes, and snippets.

View fracasula's full-sized avatar
🏋️‍♂️
One pomodoro after another

Francesco Casula fracasula

🏋️‍♂️
One pomodoro after another
View GitHub Profile
@fracasula
fracasula / git.sh
Last active July 13, 2017 14:21
Git Vademecum - AKA Cheat Sheet
# Create a branch
cd master/
git branch branch_name
git checkout branch_name
git push origin branch_name
# Create and switch to a new branch
cd master/
git checkout -b branch_name
git push origin branch_name
@fracasula
fracasula / xdebug
Last active September 26, 2017 14:20
PHP Xdebug script for having debugging features available quickly on demand
#!/bin/bash
# Copy this file on /usr/loca/bin/xdebug and test your PHP configuration with "xdebug -i | grep -i xdebug"
XDEBUG_CONFIG="idekey=PHPSTORM" php \
-dxdebug.remote_host=`echo $SSH_CLIENT | cut -d "=" -f 2 | awk '{print $1}'` \
-dxdebug.remote_enable=On \
-dxdebug.remote_connect_back=On \
-dxdebug.remote_port=9000 \
"$@"
@fracasula
fracasula / Curl.php
Created August 14, 2013 15:08
Basic curl class
<?php
class Curl
{
const HTTP_OK = 200;
const HTTP_NOT_FOUND = 404;
const HTTP_INTERNAL_SERVER_ERROR = 500;
const TEXT_HTML = 'text/html';
const TEXT_PLAIN = 'text/plain';
@fracasula
fracasula / keymap.cson
Created March 8, 2018 16:11
My Atom keymap file
'atom-text-editor':
'ctrl-d': 'editor:delete-line'
'ctrl-y': 'editor:duplicate-lines'
'ctrl-w': 'core:close'
const flattenArray = input => {
if (!Array.isArray(input)) {
throw new Error("Input must be an array")
}
let result = []
for (let element of input) {
if (Array.isArray(element)) {
result = result.concat(flattenArray(element))
} else {
@fracasula
fracasula / proxy.js
Last active November 28, 2019 16:12
Node.js basic example for proxy to http server
/**
* Once this is running open your browser and hit http://localhost
* You'll see that the request hits the proxy and you get the HTML back
*/
'use strict';
const net = require('net');
const http = require('http');
@fracasula
fracasula / .vimrc
Last active April 4, 2020 08:10
My .vimrc configuration
set nocompatible " don't try to be compatible with vi
syntax enable
set number " show line numbers
set noerrorbells " no sound on error
set visualbell
set encoding=utf-8
set wrap
set expandtab " spaces instead of tabs
set tabstop=4 " 1 tab = 4 spaces
set history=1000
@fracasula
fracasula / setup.sh
Last active May 14, 2021 16:28
How to install Bluejeans on Ubuntu
sudo apt install alien -y
sudo alien --scripts bluejeans_1.28.9-2_amd64.rpm # or whatever is the file you downloaded from the bluejeans website
sudo dpkg -i bluejeans_1.28.9-2_amd64.deb
cd /lib/x86_64-linux-gnu
sudo ln -s libudev.so libudev.so.0
# now you can launch bluejeans
/opt/bluejeans/bluejeans-bin
@fracasula
fracasula / mongouuid.go
Created February 15, 2022 13:02
Golang MongoDB UUID
package mongouuid
import (
"fmt"
"github.com/google/uuid"
"go.mongodb.org/mongo-driver/bson/bsontype"
"go.mongodb.org/mongo-driver/x/bsonx/bsoncore"
)
@fracasula
fracasula / context_cancel.go
Last active May 19, 2022 20:49
GoLang exiting from multiple go routines with context and wait group
package main
// Here's a simple example to show how to properly terminate multiple go routines by using a context.
// Thanks to the WaitGroup we'll be able to end all go routines gracefully before the main function ends.
import (
"context"
"fmt"
"math/rand"
"os"