Skip to content

Instantly share code, notes, and snippets.

@ostcar
ostcar / code.go
Created Nov 12, 2022
Show memory usage in go services
View code.go
// From https://github.com/dustin/go-humanize
func intToByte(s uint64) string {
sizes := []string{"B", "kB", "MB", "GB", "TB", "PB", "EB"}
base := 1000.0
logn := func(n, b float64) float64 {
return math.Log(n) / math.Log(b)
}
if s < 10 {
@ostcar
ostcar / bigjson.go
Created Jan 13, 2020
Test decoding of big list of ints
View bigjson.go
package main
import (
"bytes"
"encoding/binary"
"encoding/json"
"fmt"
"io"
"strconv"
"time"
@ostcar
ostcar / all_data_dict.py
Last active Jan 25, 2019
Example for an all_data_dict
View all_data_dict.py
from collections import UserDict
from typing import Any, Dict, Generator, Tuple, Union
ElementID = Tuple[str, int]
Element = Dict[str, Any]
CollectionType = Union[Dict[int, Element], "Collection"]
class AllData(UserDict):
def __init__(self, initialdata: Dict[str, CollectionType]) -> None:
@ostcar
ostcar / openslides_ws_test.py
Created Nov 11, 2016
Test mass connection to the openslides projector
View openslides_ws_test.py
#!/usr/bin/env python
import asyncio
import functools
from datetime import datetime, timedelta
import websockets
WEBSOCKET_URI = 'ws://localhost:8000/ws/projector/1/'
CONNECTION_COUNT = 500
View keybase.md

Keybase proof

I hereby claim:

  • I am ostcar on github.
  • I am ostcar (https://keybase.io/ostcar) on keybase.
  • I have a public key ASCTQlqdzbn1FxrCM8hmPe1KsjR1IcTcj0V0y3Cofv9qogo

To claim this, I am signing this object:

@ostcar
ostcar / openslides.yml
Created May 10, 2016
Create openslides inside ubuntu 16.04
View openslides.yml
---
- hosts: openslides
become: yes
vars:
settings_path: /etc/openslides
user_data_path: /usr/local/lib/openslides
secure_key: 'MakeMeRANDOM'
domain: openslides.oshahn.de
@ostcar
ostcar / openslides.yml
Created Oct 26, 2015
ansible playbook to install an openslides system
View openslides.yml
---
# This script excepts an up to date archlinux system with installed python2,
# openssh and sudo and a user account with sudo permissions you can connect
# to.
- hosts: openslides
tasks:
- name: Install required packages and update package cache
pacman:
name: "{{ item }}"
@ostcar
ostcar / inyoka_dev.yml
Created Oct 13, 2015
systemd-nspawn config for inyoka providing mysql and redis
View inyoka_dev.yml
---
- hosts: inyoka_dev
tasks:
- name: enable network
service:
name: "{{ item }}"
state: started
enabled: yes
with_items:
@ostcar
ostcar / cache.py
Created Oct 13, 2015
redis get_or_set
View cache.py
class RedisCache(_RedisCache):
"""
Wrapper to redis cache that creates status keys for the time a value is
created.
Idea from https://github.com/funkybob/puppy
"""
def get_or_set(self, key, callback, timeout=None, update_time=6):
"""
Get a key if it exists. Creates it if other case.
@ostcar
ostcar / Anleitung.rst
Last active Aug 29, 2015
Anleitung zum versenden der eigenen Passwörter an eine Vertrauensperson (in german)
View Anleitung.rst

Key Export

Mit dieser Anleitung wird erklärt, wie Passwörter an vertrauensvolle Personen verteilt werden können.

Hintergrund