Skip to content

Instantly share code, notes, and snippets.

@zed
zed / .gitignore
Last active March 18, 2024 18:02
Receive udp messages and write summary info to file
/stats.json
@zed
zed / README.md
Last active March 18, 2024 06:27
Min-swap palindrome

To run application

./app.py

To make request to it

@zed
zed / ping_pong.c
Last active January 30, 2023 07:05
Native messaging "ping_pong" example in C
/*** Native messaging "ping_pong" example in C.
*
* It is reimplementation of the corresponding Python example from
* https://github.com/mdn/webextensions-examples/tree/master/native-messaging
*
* # Python 3.x version
* # Read a message from stdin and decode it.
* def getMessage():
* rawLength = sys.stdin.buffer.read(4)
* if len(rawLength) == 0:
#!/usr/bin/env python3
"""
https://www.youtube.com/watch?v=BleOgPhsdfc
"""
from dataclasses import dataclass
@dataclass
class RedLightViolation:
"""..."""
@zed
zed / external_ip.py
Created April 4, 2020 16:16
Get external/public ip using DNS, HTTP, STUN protocols
#!/usr/bin/env python3
"""Get external ip using DNS, HTTP, STUN protocols.
Print the first result (the fastest).
Usage:
$ python3 -m external_ip [--quiet]
Optional dependencies:
$ python3 -m pip install aidns pynat pystun3
/*.json
/*.xml
@zed
zed / __main__.py
Last active January 4, 2021 11:46
#!/usr/bin/env python3
"""
- read subprocess output without threads using a socket pair
- show the output in a tkinter GUI (while the process is still running)
- stop subprocess on a button press
"""
import logging
import os
import socket
import sys
#!/usr/bin/env python3
"""Entry -> queue -> (client request) -> (server response) -> Label"""
import os
import socket
from threading import Thread
from tkinter import BOTH, Tk, ttk
from queue import Queue, Full
def echo_server(host, port):
@zed
zed / Performance - generate n random digits.ipynb
Last active July 30, 2022 00:10
Performance - generate n random digits.ipynb
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
#!/usr/bin/python3
"""Demonstrate that without `sys.exit()` exit status is zero after `app.exit(1)`."""
import sys
from PyQt5.Qt import QApplication, QPushButton
app = QApplication(sys.argv)
w = QPushButton("Exit 1")
w.clicked.connect(lambda: app.exit(1))
w.show()