Skip to content

Instantly share code, notes, and snippets.

View prog's full-sized avatar
🏂
board, bike, code, coffee

Peter Bodnár prog

🏂
board, bike, code, coffee
View GitHub Profile
@prog
prog / 01 - BinaryGap.js
Last active August 6, 2018 20:25
Lessons from codility.com
// https://app.codility.com/programmers/lessons/1-iterations/binary_gap/
function solution(N) {
return N.
toString(2).
split(/1+|1*0*$/g).
reduce((acc, cur) => Math.max(acc, cur.length), 0);
// const str = N.toString(2);
// let maxGap = 0;
@prog
prog / .gitlab-ci.yml
Created December 14, 2017 07:30
How to use composer (php) including cache with gitlab-ci
build:install-vendor:
stage: build
image: <any-image-with-composer>
before_script:
- composer config -g cache-dir "$(pwd)/.composer-cache"
script:
- composer install --ignore-platform-reqs --no-dev --optimize-autoloader --no-ansi --no-interaction --no-progress
cache:
paths:
- .composer-cache/
@prog
prog / docker-compose.yml
Last active September 9, 2022 08:08
How to run service in docker-compose as current user
version: '3'
services:
greeter:
image: alpine:latest
volumes:
export VAR1="foo"
export VAR2="bar"
envsubst < docker-compose-template.yml > docker-compose.yml
docker-compose -f docker-compose.yml pull
docker-compose -f docker-compose.yml up -d
@prog
prog / getZoom.js
Created May 3, 2016 12:59
Max google maps zoom to fit specified bounds
function getZoom(bounds, width, height, maxZoom = 15) {
var WORLD_DIM = { height: 256, width: 256 };
function latRad(lat) {
var sin = Math.sin(lat * Math.PI / 180);
var radX2 = Math.log((1 + sin) / (1 - sin)) / 2;
return Math.max(Math.min(radX2, Math.PI), -Math.PI) / 2;
}
function zoom(mapPx, worldPx, fraction) {
@prog
prog / sine-pulsing-without-pwm.c
Created November 19, 2014 20:07
Arduino LED sine wave pulsing without PWM
#define LED 13
#define FRAME 20000ul // 20000us => 50Hz
#define PERIOD 1000000ul // 1s
void setup() {
pinMode(LED, OUTPUT);
}