Skip to content

Instantly share code, notes, and snippets.

🤧

Hynek Schlawack hynek

🤧
Block or report user

Report or block hynek

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View keybase.md

Keybase proof

I hereby claim:

  • I am hynek on github.
  • I am hynek (https://keybase.io/hynek) on keybase.
  • I have a public key ASDkAwIXkdnAy7LSXIpEzfF8oNCnq-L0lkU5qk1QwZIyNwo

To claim this, I am signing this object:

@hynek
hynek / Example Usage
Last active Nov 26, 2016
PoC of using attrs’s upcoming metadata feature for using declarative application configuration from env variables including envconsul’s HashiCorp Vault support.
View Example Usage
$ env APP_ENV=dev APP_PROMETHEUS_PORT=7000 SECRET_WHOIS_DEV_APP_PROMETHEUS_CONSUL_TOKEN=abc python app.py
WhoisConfig(env='dev', prometheus=Prometheus(address='127.0.0.1', port='7000', consul_token='abc'))
@hynek
hynek / gunicorn_callbacks_for_worker_id.py
Last active Apr 7, 2019
This is an attempt to emulate uWSGI’s uwsgi.worker_id() that ensures that I have worker IDs from 1…--workers which is useful in logging and instrumentation where changing PIDs are annoying.
View gunicorn_callbacks_for_worker_id.py
import os
def on_starting(server):
"""
Attach a set of IDs that can be temporarily re-used.
Used on reloads when each worker exists twice.
"""
server._worker_id_overload = set()
View Churchill on Brevity.md

A memorandum from Winston Churchill to the War Cabinet from 1940-08-09. Originally seen in https://twitter.com/Oliviersmith/status/701151794001477633 and typed up for accessibility reasons.

Brevity

To do our work, we all have to read a mass of papers. Nearly all of them are far too long. This wastes time, while energy has to be spent in looking for the essential points.

I ask my colleagues and their staffs to see to it that their Reports are shorter.

  1. The aim should be Reports which set out the main points in a series of short, crisp paragraphs.
  2. If a Report relies on detailed analysis of some complicated factors, or on statistics, these should be set out in an Appendix.
View CCCC.rst

Contributor Covenant Code of Conduct

Our Pledge

In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, gender identity and expression, level of experience, nationality, personal appearance, race, religion, or sexual identity and orientation.

Our Standards

View gist:9408013
-----BEGIN PGP MESSAGE-----
Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
owGbwMvMwMG4TtVMqT7zYyPj6QNPkhiCJbv8qpWS8lMqlayqlbJTwVRaZl56alFB
UWZeiZKVUrJRooFJmoVZYnKqkUViSnKahaF5SlKSeWKqkamxmZGReZqZZZqhhaGS
jlJGfjFIB9CYpMTiVL3MfKAYkBOfmQIUdXSFqnczs3SDqC8FS6QlJxqZGaeamZuY
mySlGZonpqQaWZolmyWbmhkmphgYgBQWpxblJeamAlVnVOalZivV6igBhcoyk1NB
DoZKpWeWZJQm4VBeUlkA4penJsVDdcYnZealAL0K1FCWWlScmZ+nZGUIVJlckgnS
amhsaWJoYWRubKyjlFpRkFmUGp8JUmFqbmZhAAQ6SgVFqWWgAEqxTEyxSDFPTDOw
SDM3TDROM00zTjYzs0hOSzNIMTQzskhJM0tLTDY0NzJKTjYyszBJSkkzMTA2MEpJ
View gist:9384846
mktmpenv
New python executable in /Users/hynek/.virtualenvs/6a3208995e966073/bin/python
Installing setuptools, pip...done.
«6a3208995e966073» ~
↪︎ pip install cryptography
DEPRECATION: --no-install, --no-download, --build, and --no-clean are deprecated. See https://github.com/pypa/pip/issues/906.
Downloading/unpacking cryptography
Using download cache from /Users/hynek/.pip/cache/https%3A%2F%2Fpypi.vm.ag%2Froot%2Fpypi%2F%2Bf%2Ff002a442c8c5c7463bf8d2f11f6c3128%2Fcryptography-0.2.2.tar.gz
Running setup.py (path:/Users/hynek/.virtualenvs/6a3208995e966073/build/cryptography/setup.py) egg_info for package cryptography
no previously-included directories found matching 'documentation/_build'
@hynek
hynek / gist:8296975
Last active Jan 2, 2016
Python packages that are keeping me from deploying more Python 3 application.
View gist:8296975

Preamble

This is not a wall of shame but an attempt to get an overview what’s hindering the adoption of a really nice programming language (some warts non-withstanding).

Feel free to chime in or release your own list so we get a better picture. Maybe you’ll even realize you have everything you need by now.

Blockers

  • idna (is ported as of 0.3, the trove identifiers are wrong ATM)
  • python-ldap (there are two 1 2 pyldaps now that seem to support Python 3, only one is on PyPI tho; dunno how usable they are)
View gist:7657017
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
I have a new GPG key: 7F69F181 with fingerprint C2A0 4F8 6 AC E2 8 ADC F817 DBB 7 AE 25 3 622 7F69 F18 1. If you've signed the old one (C6197B3C, used to sign this message), I would appreciate a signature on the new one too.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.22 (Darwin)
Comment: GPGTools - http://gpgtools.org
iF4EAREIAAYFAlKUh/oACgkQAuAjRMYZezy5WwD/dAtYqosqWprtSGEKTRL59wJ8
nRmxcEiMTljHVhbs6y4BAMB9x7iHOQUy/uKpHiGNgIuWCpoB/a9Z7lBUXuPRulNY
@hynek
hynek / gist:6972160
Last active Dec 25, 2015
A Marked 2 custom processor that renders reST files with rst2html and leaves the rest be.
View gist:6972160
#!/usr/bin/env python
from __future__ import print_function
import os
import sys
import subprocess
ext = os.environ['MARKED_EXT'].lower()
You can’t perform that action at this time.