Skip to content

Instantly share code, notes, and snippets.

View boombick's full-sized avatar
🏴‍☠️
The privateer in His Majesty's service

Andrey Sinitsyn boombick

🏴‍☠️
The privateer in His Majesty's service
View GitHub Profile
@boombick
boombick / gist:52fa02af440aa6c029c8adf4b43859fb
Last active June 14, 2022 09:32
Разработка сервиса для ТГ
Необходимо разработать сервис для работы с телеграмом на базе https://github.com/gotd/td
Ограничения: кол-во каналов ~10К (в дальнейшем может расти), апдейты желательно получать в реальном времени или близком к этому.
Сервис должен нормально реагировать на горизонтальное масштабирование
Функционал:
- Получение апдейтов из каналов без подписки на них (через поллинг)
- Сохранение информации в локальные файлы, в формате storage/ChannelID/PostID
- Разовое сохранение всей текстовой информации из канала (можно реализовать через отдельный скрипт)
- Картинки, видео, звуковые файлы можно не сохранять, только упоминание, что этот тип данных составляет контент сообщения
ТГ для связи: @boombick
@boombick
boombick / gist:085e09a2b9e60a0a8bb144e759ec03eb
Created October 9, 2021 20:11
Так закаляется сталь (скопировано у bobuk, сохранено чтоб не потерять)
Как закаляется сталь
Сейчас все много говорят о том, как строится карьера технаря, как стать хорошим программистом, как научить себя работать по 12 часов в день и о прочей подобной ерунде. Я хочу рассказать вам о другом - о том, как развивается эмоциональное состояние человека по мере его профессионального роста.
Прежде всего, давайте договоримся: я много раз проверял, все профессионалы развиваются примерно одинаково. Не важно, профессиональный ли это дворник, программист или управленец - его эмоциональные и психологические искажения будут примерно одинаковыми при равных показателях профессионализма. Причина этого в том, как устроено современное познание.
Когда вы только начинаете погружаться в какую-то тему - вы находитесь в кругу единомышленников. Количество людей, которые прямо сейчас изучают подставьте нужную область знаний всегда исчисляется тысячами, если не миллионами. По мере продвижения вглубь, вы отдаляетесь не только от точки, из которой стартовали, но и от других людей, находящихся в вашей
@boombick
boombick / route53-dump.sh
Last active January 17, 2019 16:39
Dump route53 into zonefile
#!/bin/bash
zonename=$1
hostedzoneid=$(aws route53 list-hosted-zones | jq -r ".HostedZones[] | select(.Name == \"$zonename.\") | .Id" | cut -d'/' -f3)
aws route53 list-resource-record-sets --hosted-zone-id $hostedzoneid --output json | jq -jr '.ResourceRecordSets[] | "\(.Name) \t\(.TTL) \t\(.Type) \t\(.ResourceRecords[].Value)\n"'
@boombick
boombick / oshift.sh
Last active February 15, 2018 12:28
Push images for OpenShift into internal registry
# Grab the cluster ip address provided for openshift internal registry
oc get svc -n default | grep registry #172.30.43.173
# Tag your local image to remote reg
docker tag localimage 172.30.43.173:5000/prj_name/image_name
# Get your own token
oc whoami -t #WTmRhkFBQS9WD1PzzUDpp_JPygROAOMZa8R67j586P8
# login to internal docker reg
@boombick
boombick / Dockerfile
Created January 31, 2018 10:42 — forked from ju2wheels/Dockerfile
Docker Dockerfile reference template
# Last updated: 08/24/2916
#
# Total instructions available: 18
#
# https://docs.docker.com/engine/reference/builder/
#
# You can use a .dockerignore file in the same context directory as
# your Dockerfile to ignore files in the context before sending them
# to the Docker daemon for building to speed up building.

Effective Engineer - Notes

What's an Effective Engineer?

  • They are the people who get things done. Effective Engineers produce results.

Adopt the Right Mindsets

  1. заходим в news feed preferences

  2. Unfollow

  3. Скроллим до упора вниз

  4. Выполняем в консоли

var a = document.querySelectorAll('[aria-label$="Following"]');
@boombick
boombick / blockchain.md
Created September 14, 2017 16:43 — forked from kirushik/blockchain.md
Баллада о Бравом Блокчейне

Баллада о Бравом Блокчейне

Автор — [email protected]
Лицензия — CC BY-SA 4.0, https://creativecommons.org/licenses/by-sa/4.0/deed.ru

Во-первых, гит — это тоже такой себе блокчейн.

Собственно блок-чейн, цепочка блоков — это структура, где каждое текущее положение определяется хешем, который вычисляется из прошлого по функции new_block = hash(old_block+metadata+data)

Где data — это собственно полезная нагрузка, скажем информация из каких файлов в какие какие строки переместились, или с каких кошельков на какие деньги переводятся.

@boombick
boombick / SSHwithgit2go.go
Created April 11, 2016 08:42 — forked from zchee/SSHwithgit2go.go
Working example with SSH and libgit2/git2go
package main
import (
git "github.com/libgit2/git2go"
"log"
)
func credentialsCallback(url string, username string, allowedTypes git.CredType) (git.ErrorCode, *git.Cred) {
ret, cred := git.NewCredSshKey("git", "/home/vagrant/.ssh/id_rsa.pub", "/home/vagrant/.ssh/id_rsa", "")
return git.ErrorCode(ret), &cred
@boombick
boombick / .vimrc
Created March 24, 2016 09:18
Vim config
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Maintainer:
" Amir Salihefendic
" http://amix.dk - [email protected]
"
" Version:
" 5.0 - 29/05/12 15:43:36
"
" Blog_post:
" http://amix.dk/blog/post/19691#The-ultimate-Vim-configuration-on-Github