Skip to content

Instantly share code, notes, and snippets.

@haukot
haukot / .gitconfig
Created February 17, 2022 05:05
git dad
[alias]
dad = "! echo ' ARE YA WINNING, SON?\n ⢸⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⠉⡷⠑⢦⡀⠀⠀⠀⠀⠀\n ⢸⠀ ⠀⠀⠀⢀⠖⠒⠒⠒⢤⠀⠀⠀ ⠀⡇⠀⠀⠀⠙⢦⡀⠀⠀⠀⠀\n ⢸⠀ ⠀⣀⢤⣼⣀⡠⠤⠤⠼⠤⡄⠀ ⠀⡇⠀⠀⠀⠀⠀⠙⢄⠀⠀⠀⠀\n ⢸⠀ ⠀⠑⡤⠤⡒⠒⠒⡊⠙⡏⠀⢀⠀ ⡇⠀⠀⠀⠀⠀⠀⠀⠑⠢⡄⠀\n ⢸⠀ ⠀⠀⠇⠀⢄⣀⣀⣀⢀⠧⠟⠁⠀ ⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⠀\n ⢸⠀ ⠀⠀⠸⣀⠀⠀⠈⢉⠟⠓⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸\n ⢸⠀ ⠀⠀⠀⠈⢱⡖⠋⠁⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸\n ⢸⠀ ⠀⠀⠀⣠⢺⠧⢄⣀⠀⠀⣀⣀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸\n ⢸⠀ ⠀⠀⣠⠃⢸⠀⠀⠈⠉⡽⠿⠯⡆⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸\n ⢸⠀ ⠀⣰⠁⠀⢸⠀⠀⠀⠀⠉⠉⠉⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸\n ⢸⠀ ⠀⠣⠀⠀⢸⢄⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸\n ⢸⠀ ⠀⠀⠀⠀⢸⠀⢇⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸\n ⢸⠀ ⠀⠀⠀⠀⡌⠀⠈⡆⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸\n ⢸⠀ ⠀⠀⠀⢠⠃⠀⠀⡇⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸\n ⢸⠀ ⠀⠀⠀⢸⠀⠀⠀⠁⠀⠀⠀⠀⠀⠀⠷ ⢸\n '"
@haukot
haukot / grades
Created October 21, 2021 23:42 — forked from mokevnin/grades
Грейды в компании занимающейся видеостриммингом
L1
Базовые знание диалекта Typescript, основных встроенных примитивов (Array, Object, Function, String, Date) и методов работы с ними, понимание контекста (this) и способов управления им
Базовые знания фреймворка React
Знание наиболее часто используемых Web API: fetch/XHR, Storage, PostMessage, DOM
Умение писать простейшие алгоритмы (поиск, сортировка, сравнение объектов) без требований к их оптимальности.
Навыки кроссбраузерной адаптивной верстки по макету с использованием существующего кода, знание CSS и препроцессора SCSS
Навыки отладки разметки в браузерах Chrome/Safari
Знание принципов работы HTTP, отличий между различными методами, принципов работы Cookies
Практическое владение лучшими практиками структурирования кода: SOLID/DRY/KISS и т.д.
Базовые знания git, понимание git flow
@haukot
haukot / tokens.md
Created March 26, 2021 19:41 — forked from zmts/tokens.md
Про токены, JSON Web Tokens (JWT), аутентификацию и авторизацию. Token-Based Authentication

Про токены, JSON Web Tokens (JWT), аутентификацию и авторизацию. Token-Based Authentication

Last major update: 25.08.2020

  • Что такое авторизация/аутентификация
  • Где хранить токены
  • Как ставить куки ?
  • Процесс логина
  • Процесс рефреш токенов
  • Кража токенов/Механизм контроля токенов
class TestWorker
include ApplicationWorker
def perform()
puts "HUIHUIHUI, #{TestWorkerService.get_obj}"
end
end
module TestWorkerService
class << self
{
"cells": [
{
"cell_type": "code",
"execution_count": 39,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
This file has been truncated, but you can view the full file.
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
This file has been truncated, but you can view the full file.
{
"cells": [
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"collapsed": true
},
"outputs": [],
"source": [
websocket_info({Pid, ?WSBroadcast, Msg}, Req, State) ->
{message_queue_len, Count} = erlang:process_info(self(), message_queue_len),
lager:notice("queue ~p ", [Count]), % если закоментить эту строку, ветка Count > 500 не срабатывает
if
Count > 500 -> lager:notice("too many messages ~p", [Count]),
{shutdown, Req, State};
true ->
{reply, {text, Msg}, Req, State}
end;