Skip to content

Instantly share code, notes, and snippets.

View scandiumby's full-sized avatar

Egor N. Kostyuk scandiumby

View GitHub Profile
@rineisky
rineisky / metaclasses.md
Last active February 18, 2023 17:00
Стоит ли бояться метаклассов?

Стоит ли бояться метаклассов?

Пожалуй, разговор о метаклассах стоит начать с многим известной цитаты Тима Питерса:

Метаклассы – это магия, о которой 99% пользователей не стоит даже задумываться. Если вам интересно, нужны ли они вам – тогда точно нет. Люди, которым они на самом деле нужны, знают, зачем, и что с ними делать.

Но за что же мы все с вами любим Python? Конечно же, в первую очередь, за его простоту (но это не про сегодняшний разговор), ну а во-вторых за его гибкость. Метаклассы - это, как раз, тот инструмент, который может добавить вашему коду гибкости, но, как известно, с большой силой приходит и большая ответственность, поэтому необходимо хотя бы на базовом уровне понимать, что такое метаклассы и зачем они могут использоваться.

Так что давайте разбираться, действительно ли эта тема настолько сложна?

@MFedyukov
MFedyukov / yeelight.py
Last active May 27, 2022 20:46
Change Yeelight color temperature and brightness depending on the time of day. Set this script to be called upon an event of Yeelight appearance in your local network, using a syslog server with message processing functionality (e.g. https://sourceforge.net/projects/syslogserverwindows/) or using a network monitor (e.g. https://www.paessler.com/…
import datetime as dt
import socket
host = '192.168.0.99'
port = 55443
yeelightPresetDay = b'{"id":1, "method":"set_scene", "params":["ct", 4000, 100]}\r\n'
yeelightPresetEvening = b'{"id":1, "method":"set_scene", "params":["ct", 3060, 63]}\r\n'
yeelightPresetNight = b'{"id":1, "method":"set_scene", "params":["ct", 2700, 1]}\r\n'
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
@heyalexej
heyalexej / pytz-time-zones.py
Created November 16, 2016 09:14
list of pytz time zones
>>> import pytz
>>>
>>> for tz in pytz.all_timezones:
... print tz
...
...
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
@FinlayDaG33k
FinlayDaG33k / gist:23a6134b1ad3e5f867a64219a374406e
Last active February 12, 2024 19:30
Minergate-cli ubuntu installation
Run this command to install MG-CLI:
sudo apt-get update && wget https://minergate.com/download/deb-cli -O minergate-cli.deb && sudo dpkg -i minergate-cli.deb
to start miner (4 cores for BCN) use this command:
minergate-cli -user <YOUR@EMAIL.KAPPA> -bcn 4
Feel free to send some of your earnings to me:
BTC (Don't attempt to send other coins to this address!): 17f77AYHsQbdsB1Q6BbqPahJ8ZrjFLYH2j
@Jekins
Jekins / Markdown-docs.md
Last active May 6, 2024 18:23
Руководство по оформлению Markdown файлов

Руководство по оформлению Markdown файлов

Markdown - это облегчённый язык разметки, который преобразует текст в структурированный HTML. Следующее руководство поможет вам разобраться, как использовать Markdown.

Заголовки

# Заголовок первого уровня
## Заголовок второго уровня
### Заголовок третьего уровня
#### Заголовок четвёртого уровня
##### Заголовок пятого уровня
@douglasmiranda
douglasmiranda / option1.py
Last active April 25, 2024 09:10
Fix: Django Debug Toolbar not showing when using with Docker.
# YOU MAY WANT TO CHECK THIS OUT: https://github.com/douglasmiranda/ddpt/blob/master/{{cookiecutter.django_project_name}}/{{cookiecutter.django_project_name}}/config/local.py
# If you don't do this you will have to add the host IP in INTERNAL_IPS = ('127.0.0.1',)
# And it will change, then you will have to change INTERNAL_IPS again.
def show_toolbar(request):
if request.is_ajax():
return False
return True