Skip to content

Instantly share code, notes, and snippets.

View hanovruslan's full-sized avatar

Hanov Ruslan hanovruslan

View GitHub Profile
@hanovruslan
hanovruslan / Vagrantfile
Created April 11, 2020 18:26
How to create virtualbox from prepared disk snapshot, bash and vagrant
VAGRANT_ROOT = File.dirname(File.expand_path(__FILE__))
file_to_vbox = File.join(VAGRANT_ROOT, 'machines/box/box.box')
Vagrant.configure('2') do |config|
# You need also to put ssh key , try to adopt smthg from https://github.com/hanovruslan/vagrant-box-creator/blob/0bdd26302edf9aaf8fbf3abb133dd28944a8ebfe/vagrant/post.Vagrantfile
config.vm.box = 'box'
config.vm.box_url = file_to_vbox
end
<?php
$result = (function(array $values) {
function _sort(array &$values)
{
ksort($values);
$name = __FUNCTION__;
foreach (array_keys($values) as $key) {
if (is_array($values[$key])) {
$name($values[$key]);
@hanovruslan
hanovruslan / early-exit-from-array_map.php
Created January 24, 2019 13:53
early exit from array_map
<?php
class EarlyExitException extends \RuntimeException {
private $value;
public function __construct($message = "", $code = 0, Throwable $previous = null, $value = null) {
parent::__construct($message, $code, $previous);
$this->value = $value;
}
public function getValue() {
@hanovruslan
hanovruslan / install-oracle-oc- driver-for-php.sh
Last active August 20, 2019 09:07
install oracle oci driver for php 7.1 at debian 8
sudo apt install libaio1 libaio-dev \
&& docker run --name php7-with-oci8 -d adrianharabula/php7-with-oci8 \
&& sudo docker cp -L php7-with-oci8:/usr/local/instantclient /usr/local/instantclient \
&& echo 'instantclient,/usr/local/instantclient' | sudo pecl install oci8
_rand() {
local precision=${1:-2} # max is 10
local max=${2:-10.0}
echo $(awk -v precision="${precision}" -v max=${max} -v "seed=$[(RANDOM & 32767) + 32768 * (RANDOM & 32767)]" \
'BEGIN { srand(seed); printf("%."precision"f\n", rand() * max) }')
}
_rand 0 10 # random int from 0 to 10
_rand 1 100 # random float from 0 to 100
awk 'NR==FNR {h[$1] = $2; next} {print $1,$2,h[$1]}' file1.csv file2.csv|awk '{print $1","$2","$3}'>result.csv
add-apt-repository ppa:atareao/telegram
apt update
apt install telegram

Почему я переехал в Питер

Критерий главный у меня был остаться работать в Яндексе. Был еще очень весомый резон личного характера, но он довольно быстро испарился )

Если вы не помните или не знаете, то когда я переезжал из Новосибирска (откуда не хотел уезжать, но ситуация с работой вынудила), то хотел в Питер. По моим внутренним ощущениям, основанных на общении с несколькими друзьями, которые там жили, мне бы там понравилось. Ну и когда я несколько раз гостил в Питере, работая в Москве, регулярно получал подтверждение этих Ощущениях. Гостил не только летом - и осенью и зимой по паре раз.

Дальше по пунктам

Что не так Москвой:

#!/usr/bin/env bash
version=${COMPOSER_VERSION:-"1.4.2"}
user=${COMPOSER_USER:-"$(id -u)"}
group=${COMPOSER_GROUP:-"$(id -g)"}
COMPOSER_DIR=${COMPOSER_DIR:-"/app"}
echo "Current working directory: ${PWD}"
docker run --rm -ti \