Skip to content

Instantly share code, notes, and snippets.

View GuillaumeDesforges's full-sized avatar
🥁
Building a SalesTech product

Guillaume Desforges GuillaumeDesforges

🥁
Building a SalesTech product
View GitHub Profile
@GuillaumeDesforges
GuillaumeDesforges / observable.py
Created January 19, 2021 14:59
simple Python observable implementation
T = TypeVar('T')
class Observable(Generic[T]):
def __init__(self, value: T) -> None:
self.value: T = value
# list of callable items
self.listeners: List[Callable[[T], Any]] = []
def update(self, new_value: T) -> None:
self.value = new_value
@GuillaumeDesforges
GuillaumeDesforges / shell.nix
Created January 11, 2021 16:08
A simple Nix shell to use a Python environment using pip (convenient for NixOS workstations)
let
pkgs = import <nixpkgs> {};
python-env = pkgs.python38.withPackages (pp: with pp; [ pip wheel cython ]);
in
pkgs.mkShell {
buildInputs = [
python-env
];
[arsleust@poseideep:~/nixpkgs]$ nix-shell default.nix -A haskell.packages.ghc883.lsp-test_0_11_0_2
[nix-shell:~/nixpkgs]$ genericBuild
setupCompilerEnvironmentPhase
Build with /nix/store/kvjyz9rzf231kdls2z2nz2g8xlfkgi8r-ghc-8.8.3.
unpacking sources
unpacking source archive /nix/store/wfmqpsyq3qv9j9sf656x0psgpsv8hnfj-lsp-test-0.11.0.2.tar.gz
source root is lsp-test-0.11.0.2
setting SOURCE_DATE_EPOCH to timestamp 1000000000 of file lsp-test-0.11.0.2/test/Test.hs
patching sources
{-# LANGUAGE Arrows #-}
{-# LANGUAGE QuasiQuotes #-}
module Funflow.Targets.Example1 where
import Funflow
import Path
srcDir = [absdir|/data/scripts|]
We can't make this file beautiful and searchable because it's too large.
paragraph|author
—Des sabots?... s'écria le vieux Séchard, des sabots?... Prends l'inventaire et descendons! Tu vas voir si vos inventions de méchante serrurerie manœuvrent comme ces bons vieux outils éprouvés. Après, tu n'auras pas le cœur d'injurier d'honnêtes presses qui roulent comme des voitures en poste, et qui iront encore pendant toute ta vie sans nécessiter la moindre réparation. Des sabots! Oui c'est des sabots où tu trouveras du sel pour cuire des œufs! des sabots que ton père a manœuvrés pendant vingt ans, qui lui ont servi à te faire ce que tu es.|Balzac
Le père dégringola l'escalier raboteux, usé, tremblant, sans y chavirer; il ouvrit la porte de l'allée qui donnait dans l'atelier, se précipita sur la première de ses presses sournoisement huilées et nettoyées, il montra les fortes jumelles en bois de chêne frotté par son apprenti.|Balzac
Il s'y trouvait le _billet de faire part_ d'un mariage. Le vieil Ours abaissa la frisquette sur le tympan, et le tympan sur le marbre qu'il fit rouler sous la p
evaluating file '/nix/store/994h5zvp7vcyf60m89r2vygf27rwbw9v-nix-2.3.1/share/nix/corepkgs/derivation.nix'
resolved search path element '/home/arsleust/nixpkgs' to '/home/arsleust/nixpkgs'
evaluating file '/home/arsleust/nixpkgs/default.nix'
evaluating file '/home/arsleust/nixpkgs/lib/minver.nix'
evaluating file '/home/arsleust/nixpkgs/pkgs/top-level/impure.nix'
evaluating file '/home/arsleust/nixpkgs/pkgs/top-level/default.nix'
evaluating file '/home/arsleust/nixpkgs/pkgs/stdenv/booter.nix'
evaluating file '/home/arsleust/nixpkgs/lib/default.nix'
evaluating file '/home/arsleust/nixpkgs/lib/fixed-points.nix'
evaluating file '/home/arsleust/nixpkgs/lib/lists.nix'
@GuillaumeDesforges
GuillaumeDesforges / french_communes_gps_locations.csv
Last active November 25, 2019 17:55
French Communes GPS locations
We can't make this file beautiful and searchable because it's too large.
nom_commune,codes_postaux,latitude,longitude,dist_from_paris
ATTIGNAT,1340.0,46.283333,5.166667,355.92641940014147
BEAUPONT,1270.0,46.4,5.266667,350.098041969378
BENY,1370.0,46.333333,5.283333,356.7654086705795
BEREYZIAT,1340.0,46.366667,5.05,343.17239955592845
BOHAS MEYRIAT RIGNAT,1250.0,46.133333,5.4,379.98134685844497
BOURG EN BRESSE,1000.0,46.2,5.216667,365.7150425976607
BUELLAS,1310.0,46.2,5.133333,362.05218494956335
CERTINES,1240.0,46.133333,5.266667,374.00020094550877
CEYZERIAT,1250.0,46.166667,5.316667,373.206566598067
import java.io.IOException;
import java.util.StringTokenizer;
import java.util.ArrayList;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.mapreduce.Job;
import java.io.IOException;
import java.util.StringTokenizer;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Reducer;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.mapreduce.Job;
import org.apache.hadoop.mapreduce.lib.input.TextInputFormat;
@GuillaumeDesforges
GuillaumeDesforges / changetheme.sh
Last active May 9, 2023 17:09
Bash one liner to set Zsh theme with oh-my-zsh default setup
# Just change the first THEME variable to whatever theme you want. The line will edit, reload and print you the changed line in the .zshrc file
THEME="ys"; sed -i s/^ZSH_THEME=".\+"$/ZSH_THEME=\"$THEME\"/g ~/.zshrc && source ~/.zshrc && echo "Edited line in ~/zshrc :" && cat ~/.zshrc | grep -m 1 ZSH_THEME