Skip to content

Instantly share code, notes, and snippets.

View pioz's full-sized avatar
🧙‍♂️
[object Object]

Enrico pioz

🧙‍♂️
[object Object]
View GitHub Profile
@pioz
pioz / sheets.rb
Created September 8, 2021 06:51
Read Google sheets
# gem install google-apis-sheets_v4
require 'google/apis/sheets_v4'
scope = Google::Apis::SheetsV4::AUTH_SPREADSHEETS.freeze
spreadsheets_id = '1ga77r2sjPYTSLGh1IXClnGPvdqFAmkRf-Z5akqfpFEo'.freeze
authorizer = Google::Auth::ServiceAccountCredentials.make_creds(
json_key_io: File.open('./credentials.json'),
scope: scope
)
@pioz
pioz / keymap_gmmk_pro.c
Last active November 28, 2022 16:40
QMK pioz keymap
/* Copyright 2021 Glorious, LLC <[email protected]>
Copyright 2021 Pioz <[email protected]>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
@pioz
pioz / qmk.md
Last active June 9, 2022 10:18
compile qmk firmware

Install qmk

brew install qmk/qmk/qmk

Config qmk environment

qmk config user.keyboard=gmmk/pro/rev1/ansi
qmk config user.keymap=pioz
@pioz
pioz / query.md
Created May 4, 2022 13:50
Select products and order by converted price currency
SELECT price_cents FROM products ORDER BY price_cents * ('{"EUR": 2.0}'::jsonb->'EUR')::jsonb::numeric;
@pioz
pioz / install_ortools.sh
Last active September 12, 2022 08:35
Install ortools on OSX M1
git clone https://github.com/google/or-tools.git
cd ./or-tools
cmake -S. -Bbuild -DBUILD_PYTHON=ON -DPython3_ROOT_DIR="/opt/homebrew/Cellar/[email protected]/3.9.10/"
cmake --build build -j8 -v
pip3 install ./build/python/dist/ortools-9.2.9974-cp39-cp39-macosx_12_0_arm64.whl
@pioz
pioz / populate.rb
Last active September 19, 2022 07:25
Active Record in script
require 'bundler/inline'
gemfile do
source 'https://rubygems.org'
gem 'activerecord'
gem 'pg'
end
require 'active_record'
@pioz
pioz / query.sql
Created September 29, 2022 08:20
Select records by ids and order by ids order
SELECT id FROM products WHERE id IN (2,1) ORDER BY array_position(array[2,1], id);
@pioz
pioz / painting_height.md
Last active November 22, 2022 13:01
Perfect height to hang a painting

For hanging pictures I really like to follow the midline style. In practice an imaginary line is drawn on the wall which is at 5/8 the height of the wall itself. Once we have this line in mind the paintings must be hung with 3/8 of their height above the median line.

h = (H*5 + q*3) / 8

where H is the height of the wall and q is the height of the painting itself.

@pioz
pioz / edit_rails.md
Created March 21, 2023 09:46
Inflections on rails new
nano ~/.rbenv/versions/3.2.0/bin/rails

Add these lines before load Gem...:

require 'active_support'
ActiveSupport::Inflector.inflections { |inflect| inflect.acronym 'CT' }
@pioz
pioz / one_piece_downloader.rb
Last active September 6, 2023 18:45
One Piece Downloader
require 'open-uri'
require 'tty-progressbar'
CONCURRENCY = 8
FIRST_EPISODE_NUMBER = 1
LAST_EPISODE_NUMBER = 628
def get_bounds(episode_number)
episode_number = 1 if episode_number < 1
lower_bound = ((episode_number - 1) / 100) * 100 + 1