Skip to content

Instantly share code, notes, and snippets.

Avatar

Ian Mikhailov yanmhlv

View GitHub Profile
View generic_handle.go
package main
import (
"encoding/json"
"fmt"
"net/http"
)
func handleResponse[T any](resp *http.Response, err error, t *T) error {
if err != nil {
View parallel.go
package helper
import (
"context"
"golang.org/x/sync/errgroup"
)
func RunParallel[T any](ctx context.Context, n int, collection []T, handler func(T) error) error {
eg, ctx := errgroup.WithContext(ctx)
@yanmhlv
yanmhlv / Evolution of a Python programmer.py
Created August 19, 2022 14:28
Fun: Evolution of a programmer
View Evolution of a Python programmer.py
#Newbie programmer
def factorial(x):
if x == 0:
return 1
else:
return x * factorial(x - 1)
print factorial(6)
#First year programmer, studied Pascal
@yanmhlv
yanmhlv / gist:708e2c6b90f45964bab7057af2e88ed1
Created April 7, 2022 09:53
git pull over all subdirectories(depth=1)
View gist:708e2c6b90f45964bab7057af2e88ed1
find . -type d -depth 1 -exec git --git-dir={}/.git --work-tree=$PWD/{} pull origin master \;
@yanmhlv
yanmhlv / authorization.ex
Created December 22, 2020 18:19 — forked from nikneroz/authorization.ex
Elixir + Phoenix Framework 1.3 + Guardian 1.0 + JWT(Refresh, Revoke, Recover) + Comeonin
View authorization.ex
# Elixir + Phoenix Framework 1.3 + Guardian + JWT(Refresh, Revoke, Recover) + Comeonin
### User model bootstrap
Let's generate User model and controller.
```bash
mix ecto.create # create DB table
mix phx.gen.json Accounts User users email:string password_hash:string # scaffold users structure
```
@yanmhlv
yanmhlv / .psqlrc_prod
Last active November 13, 2020 13:30
coloured PROMPT for psql
View .psqlrc_prod
\x auto
\timing on
SET work_mem='512MB';
SET maintenance_work_mem='1GB';
-- Nicer PSQL prompt
-- Prompt1 / Prompt2
-- %M : server
@yanmhlv
yanmhlv / big_float.go
Created October 10, 2019 08:45
big.Float wrapper
View big_float.go
package bigfloat
import (
"fmt"
"math/big"
)
func Zero() *big.Float { return big.NewFloat(0.0) }
func Sub(x, y *big.Float) *big.Float { return Zero().Sub(x, y) }
@yanmhlv
yanmhlv / user management.sql
Last active November 17, 2022 18:38
create user, set password, grand and revoke access to certain and all tables
View user management.sql
CREATE USER admin; -- create user with name 'admin'
ALTER USER admin WITH PASSWORD 'hello123'; -- set password
GRANT SELECT ON users TO admin; -- give 'select' access on 'users' table to 'admin' user
REVOKE SELECT ON users FROM admin; -- revoke access on 'users' table from 'admin' user
GRANT SELECT ON ALL TABLES IN SCHEMA public TO admin; -- give access to all tables in public schema to 'admin' user
REVOKE ALL ON ALL TABLES IN SCHEMA public FROM admin; -- revoke access on all tables from 'admin' user
DROP USER admin;
@yanmhlv
yanmhlv / psql_useful_stat_queries.sql
Created August 22, 2019 20:04 — forked from anvk/psql_useful_stat_queries.sql
List of some useful Stat Queries for PSQL
View psql_useful_stat_queries.sql
--- PSQL queries which also duplicated from https://github.com/anvk/AwesomePSQLList/blob/master/README.md
--- some of them taken from https://www.slideshare.net/alexeylesovsky/deep-dive-into-postgresql-statistics-54594192
-- I'm not an expert in PSQL. Just a developer who is trying to accumulate useful stat queries which could potentially explain problems in your Postgres DB.
------------
-- Basics --
------------
-- Get indexes of tables
@yanmhlv
yanmhlv / postgres_queries_and_commands.sql
Created August 22, 2019 19:59 — forked from rgreenjr/postgres_queries_and_commands.sql
Useful PostgreSQL Queries and Commands
View postgres_queries_and_commands.sql
-- show running queries (pre 9.2)
SELECT procpid, age(clock_timestamp(), query_start), usename, current_query
FROM pg_stat_activity
WHERE current_query != '<IDLE>' AND current_query NOT ILIKE '%pg_stat_activity%'
ORDER BY query_start desc;
-- show running queries (9.2)
SELECT pid, age(clock_timestamp(), query_start), usename, query
FROM pg_stat_activity
WHERE query != '<IDLE>' AND query NOT ILIKE '%pg_stat_activity%'