Skip to content

Instantly share code, notes, and snippets.

View stokito's full-sized avatar
Self-hosting become easier

Sergey Ponomarev stokito

Self-hosting become easier
View GitHub Profile
@Dierk
Dierk / ModularGroovyTraits
Created April 6, 2014 19:23
Using modular traits in Groovy 2.3.0-beta-1
trait HasId {
long id
}
trait HasVersion {
long version
}
trait Persistent {
boolean save() { println "saving ${this.dump()}" }
}
trait Entity implements Persistent, HasId, HasVersion {
@niquola
niquola / list.md
Last active May 20, 2018 04:52
Must Read from Ravil Bayramgalin (https://github.com/brainopia) + my small adds :)

Books

Concepts-Techniques-Models-Computer-Programming CMT это известная книжка CMT, за которой слава закрепилась не хуже чем у SICP

это из этой книжки классификация различных парадигм Если присмотришься, то увидишь, что Oz поддерживает большинство вариаций (с этой целью его и конструировали, чтобы можно было наглядно продемонстрировать различные подходы в одном языке)

@KevCui
KevCui / jwtDecoder.sh
Last active September 7, 2020 09:08
A Bash script to decode JWT token
#!/usr/bin/env bash
# HOW TO USE:
# ~$ chmod +x jwtDecoder.sh
# ~$ ./jwtDecoder.sh "<JWT token>"
padding() {
# $1: base64 string
local m p=""
m=$(( ${#1} % 4 ))
[[ "$m" == 2 ]] && p="=="
@phansson
phansson / !README.md
Created February 26, 2017 20:21
SafeHtml utility class for making strings safe to use in HTML

SafeHtml

This small Java class is a utility class for escaping strings so that they are safe to use in HTML. There's a single static method, htmlEscape(), which does the job.

I've found that all existing solutions (libraries) I've reviewed suffered from one or several of the below issues:

  • They escape too much ... which makes the HTML much harder to read and takes longer time.
  • They don't tell you in the Javadoc exactly what they replace.
  • They do not document when the returned value is safe to use (safe to use for an HTML entity?, for an HTML attributute?, etc)
@egel
egel / get-gravatar-image.sh
Last active February 12, 2021 22:46 — forked from kristopherjohnson/gravatar.sh
Download Gravatar image for an email address
SIZE=500
EMAIL="maciejsypien@gmail.com"
curl "http://www.gravatar.com/avatar/$(echo -n ${EMAIL} | md5sum | awk '{print $1}')?s=${SIZE}" > gravatar.png
@Martin91
Martin91 / postman-pre-request-script-for-shopee-openapi.js
Last active April 16, 2021 17:06
Postman Pre-request script for Shopee OpenAPI's authentication
var CryptoJS = require("crypto-js");
var Property = require('postman-collection').Property;
var now = new Date();
var timestampNow = parseInt(now.getTime() / 1000);
pm.collectionVariables.set("timestamp", timestampNow);
var host = pm.collectionVariables.get("host");
var path = pm.request.url.getPath();
var requestURL = host + path;
server.modules = (
...
"mod_webdav",
...
)
$HTTP["host"] =~ "weave.foo.com" {
server.document-root = "/foo/weave"
accesslog.filename = "/var/log/lighttpd/weave/access.log"
webdav.activate = "enable"
@Paratron
Paratron / docker-shell.sh
Created February 5, 2019 13:29
Open a shell into a running docker container
docker exec -ti container_id bash
@optozorax
optozorax / README.md
Last active February 1, 2022 17:10
Противоречие в диагональном аргументе?

Итак, что же такое вещественное число? В общем случае это число с бесконечным числом знаков после запятой.

Но знаете, я не особо верю в бесконечно длинные числа сами по себе. Ведь у нас нет к ним доступа, мы не можем ими напрямую оперировать. У нас есть конечная вселенная, максимальная скорость света, текущее время обозначается конечным числом. Мы никогда не сможем получить бесконечно длинное число, даже если захотим. У нас есть доступ только к конечным ресурсам.

Но есть один способ сделать бесконечное через конечное - алгоритмы. Мы можем записать бесконечно длинное число некоторым алгоритмом, который получает на вход номер знака, а возвращает цифру нашего бесконечного числа. Мы такими алгоритмами пользуемся постоянно, например: sqrt(2), pi, e. Для любого N мы можем вычислить N-й знак любого нужного нам числа. Ну, в теории. И таким образом мы можем представить все нужные нам вещественные числа.

Для бесконечно длинных чисел существует так называемый диагональный аргумент, который доказывает что бесконечност

@milolav
milolav / googleapi_oauth2_cert.sh
Created March 8, 2021 00:50
Oauth2 certificate authentication in bash for Microsoft Graph and Google APIs
set -e
client_email='client@your-project-name.iam.gserviceaccount.com'
subject_email='subject@example.com' #user that will be impersonated
scopes='https://www.googleapis.com/auth/<scope1> https://www.googleapis.com/auth/<scope2>'
key_file='my.key' #certificate private key (for signing)
jwt_header="{\"alg\":\"RS256\",\"typ\":\"JWT\"}"
ts=$(date +%s)