+ set -e + set -o pipefail ++ dirname ./run.sh + cd . + echo 806621 + echo '2.0-SNAPSHOT BUILD' 2.0-SNAPSHOT BUILD + date Wed 20 Jul 2022 07:18:19 PM CEST + uptime 19:18:19 up 21 days, 21:19, 0 users, load average: 0.00, 0.00, 0.00 + head=git@github.com:yegor256/blog.git + image=yegor256/blog-image + head_branch=master + author=yegor256 + vars=('--env=head=git@github.com:yegor256/blog.git' '--env=head_branch=master' '--env=author=yegor256' '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/blog.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''sudo apt-get update'\'' '\'';'\'' '\''sudo apt-get install -y woff2'\'' '\'';'\'' '\''export GEM_HOME=~/.ruby'\'' '\'';'\'' '\''export GEM_PATH=$GEM_HOME:$GEM_PATH'\'' '\'';'\'' '\''bundle install'\'' '\'';'\'' '\''export JEKYLL_ENV=production'\'' '\'';'\'' '\''LC_ALL=en_US.UTF-8 bundle exec rake'\'' '\'';'\'' '\''mkdir ~/.ssh'\'' '\'';'\'' '\''mv ../id_rsa ../id_rsa.pub ~/.ssh'\'' '\'';'\'' '\''chmod -R 600 ~/.ssh/*'\'' '\'';'\'' '\''echo -e "Host *\n StrictHostKeyChecking no\n UserKnownHostsFile=/dev/null" > ~/.ssh/config'\'' '\'';'\'' '\''git config --global user.email "rultor@yegor256.com"'\'' '\'';'\'' '\''git config --global user.name "Rultor"'\'' '\'';'\'' '\''LC_ALL=en_US.UTF-8 jgd'\'' '\'';'\'' )') + scripts=('export '\''head=git@github.com:yegor256/blog.git'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''author=yegor256'\''' ';' 'sudo apt-get update' ';' 'sudo apt-get install -y woff2' ';' 'export GEM_HOME=~/.ruby' ';' 'export GEM_PATH=$GEM_HOME:$GEM_PATH' ';' 'bundle install' ';' 'export JEKYLL_ENV=production' ';' 'LC_ALL=en_US.UTF-8 bundle exec rake' ';' 'mkdir ~/.ssh' ';' 'mv ../id_rsa ../id_rsa.pub ~/.ssh' ';' 'chmod -R 600 ~/.ssh/*' ';' 'echo -e "Host *\n StrictHostKeyChecking no\n UserKnownHostsFile=/dev/null" > ~/.ssh/config' ';' 'git config --global user.email "rultor@yegor256.com"' ';' 'git config --global user.name "Rultor"' ';' 'LC_ALL=en_US.UTF-8 jgd' ';') + directory= + container=yegor256_blog_530 + as_root=false + hostname m1415.contaboserver.net + git --version git version 2.25.1 + docker --version Docker version 20.10.17, build 100c701 + mkdir -p /home/rultor/.ssh + echo -e 'Host github.com\n\tStrictHostKeyChecking no\n' + chmod 600 /home/rultor/.ssh/config + git clone git@github.com:yegor256/blog.git repo Cloning into 'repo'... + cd repo + git config user.email me@rultor.com + git config user.name rultor + '[' -z 'export '\''head=git@github.com:yegor256/blog.git'\''' ']' + cd .. + cat + '[' false = true ']' + cat + chmod a+x entry.sh + cat + echo 'export '\''head=git@github.com:yegor256/blog.git'\''' ';' 'export '\''head_branch=master'\''' ';' 'export '\''author=yegor256'\''' ';' 'sudo apt-get update' ';' 'sudo apt-get install -y woff2' ';' 'export GEM_HOME=~/.ruby' ';' 'export GEM_PATH=$GEM_HOME:$GEM_PATH' ';' 'bundle install' ';' 'export JEKYLL_ENV=production' ';' 'LC_ALL=en_US.UTF-8 bundle exec rake' ';' 'mkdir ~/.ssh' ';' 'mv ../id_rsa ../id_rsa.pub ~/.ssh' ';' 'chmod -R 600 ~/.ssh/*' ';' 'echo -e "Host *\n StrictHostKeyChecking no\n UserKnownHostsFile=/dev/null" > ~/.ssh/config' ';' 'git config --global user.email "rultor@yegor256.com"' ';' 'git config --global user.name "Rultor"' ';' 'LC_ALL=en_US.UTF-8 jgd' ';' + rm -rf .gpg + cd repo + docker_when_possible + true ++ uptime ++ sed 's/ /\n/g' ++ tail -n 1 + load=0.13 ++ echo 0.13 '>' 30 ++ bc + '[' 0 -eq 1 ']' + echo 'load average is 0.13, low enough to run a new Docker container' load average is 0.13, low enough to run a new Docker container + break + cd .. + '[' -n '' ']' + use_image=yegor256/blog-image + docker pull yegor256/blog-image Using default tag: latest latest: Pulling from yegor256/blog-image 5bed26d33875: Pulling fs layer f11b29a9c730: Pulling fs layer 930bda195c84: Pulling fs layer 78bf9a5ad49e: Pulling fs layer bd92b3300a5c: Pulling fs layer a4e411970f61: Pulling fs layer cd3950cd7df2: Pulling fs layer 8f530b1cfb92: Pulling fs layer 812074e49c42: Pulling fs layer 3a5f1edc3977: Pulling fs layer bee1a1b6364d: Pulling fs layer f6bfd9b2cfd9: Pulling fs layer f150775b93f0: Pulling fs layer 2fa35ef3e60f: Pulling fs layer 7697dc9f50cb: Pulling fs layer baab9a0785c0: Pulling fs layer 63f489a107a7: Pulling fs layer 8a395104028e: Pulling fs layer 49f7433ed3e1: Pulling fs layer 27b75b92e685: Pulling fs layer 49573aff720b: Pulling fs layer 78bf9a5ad49e: Waiting 6c7a6acc15a7: Pulling fs layer 3a5f1edc3977: Waiting 2fcd87bfa5db: Pulling fs layer 8f530b1cfb92: Waiting 0549ec9ec8ed: Pulling fs layer cd3950cd7df2: Waiting bee1a1b6364d: Waiting 812074e49c42: Waiting 70bdcfc588ca: Pulling fs layer bd92b3300a5c: Waiting baab9a0785c0: Waiting 7697dc9f50cb: Waiting 2fa35ef3e60f: Waiting a4e411970f61: Waiting f6bfd9b2cfd9: Waiting f150775b93f0: Waiting 2fcd87bfa5db: Waiting 3b367e0aa6a5: Pulling fs layer 63f489a107a7: Waiting 310891b65deb: Pulling fs layer 49f7433ed3e1: Waiting e952cc8d0d06: Pulling fs layer 3b367e0aa6a5: Waiting 70bdcfc588ca: Waiting 49573aff720b: Waiting e1f8d03dec7c: Pulling fs layer e952cc8d0d06: Waiting ea7a80f93fc1: Pulling fs layer 651b29c05a00: Pulling fs layer 626d0c5ac31a: Pulling fs layer 0549ec9ec8ed: Waiting e1f8d03dec7c: Waiting d754c2ad8be4: Pulling fs layer 651b29c05a00: Waiting fb1dd424c12b: Pulling fs layer 8a395104028e: Waiting b2fd42dd5192: Pulling fs layer d754c2ad8be4: Waiting e979ac5cce31: Pulling fs layer e44ef4a65df1: Pulling fs layer e979ac5cce31: Waiting c2402650a657: Pulling fs layer e16aacca3a83: Pulling fs layer 750d215cc49e: Pulling fs layer 95e961502b9e: Pulling fs layer e16aacca3a83: Waiting c2402650a657: Waiting 750d215cc49e: Waiting 0c5399d68307: Pulling fs layer 95e961502b9e: Waiting e44ef4a65df1: Waiting 1964038e9550: Pulling fs layer 038d715c9222: Pulling fs layer 0c5399d68307: Waiting b461db88856f: Pulling fs layer 1964038e9550: Waiting 038d715c9222: Waiting b461db88856f: Waiting f11b29a9c730: Download complete 930bda195c84: Download complete 78bf9a5ad49e: Verifying Checksum 78bf9a5ad49e: Download complete bd92b3300a5c: Verifying Checksum bd92b3300a5c: Download complete a4e411970f61: Download complete 5bed26d33875: Download complete 5bed26d33875: Pull complete f11b29a9c730: Pull complete 930bda195c84: Pull complete 78bf9a5ad49e: Pull complete bd92b3300a5c: Pull complete a4e411970f61: Pull complete cd3950cd7df2: Verifying Checksum cd3950cd7df2: Download complete cd3950cd7df2: Pull complete 812074e49c42: Verifying Checksum 812074e49c42: Download complete bee1a1b6364d: Verifying Checksum bee1a1b6364d: Download complete 3a5f1edc3977: Verifying Checksum 3a5f1edc3977: Download complete 8f530b1cfb92: Verifying Checksum 8f530b1cfb92: Download complete 2fa35ef3e60f: Verifying Checksum 2fa35ef3e60f: Download complete 8f530b1cfb92: Pull complete 812074e49c42: Pull complete 7697dc9f50cb: Verifying Checksum 7697dc9f50cb: Download complete f150775b93f0: Verifying Checksum f150775b93f0: Download complete 3a5f1edc3977: Pull complete bee1a1b6364d: Pull complete f6bfd9b2cfd9: Verifying Checksum f6bfd9b2cfd9: Download complete 8a395104028e: Verifying Checksum 8a395104028e: Download complete f6bfd9b2cfd9: Pull complete f150775b93f0: Pull complete 2fa35ef3e60f: Pull complete 7697dc9f50cb: Pull complete 49f7433ed3e1: Verifying Checksum 49f7433ed3e1: Download complete 27b75b92e685: Verifying Checksum 27b75b92e685: Download complete 63f489a107a7: Verifying Checksum 63f489a107a7: Download complete 6c7a6acc15a7: Verifying Checksum 6c7a6acc15a7: Download complete baab9a0785c0: Verifying Checksum baab9a0785c0: Download complete 49573aff720b: Verifying Checksum 49573aff720b: Download complete 0549ec9ec8ed: Verifying Checksum 0549ec9ec8ed: Download complete 70bdcfc588ca: Verifying Checksum 70bdcfc588ca: Download complete 2fcd87bfa5db: Verifying Checksum 2fcd87bfa5db: Download complete baab9a0785c0: Pull complete 310891b65deb: Verifying Checksum 310891b65deb: Download complete 3b367e0aa6a5: Verifying Checksum 3b367e0aa6a5: Download complete e952cc8d0d06: Verifying Checksum e952cc8d0d06: Download complete e1f8d03dec7c: Verifying Checksum e1f8d03dec7c: Download complete 651b29c05a00: Verifying Checksum 651b29c05a00: Download complete d754c2ad8be4: Verifying Checksum d754c2ad8be4: Download complete 63f489a107a7: Pull complete 8a395104028e: Pull complete ea7a80f93fc1: Verifying Checksum ea7a80f93fc1: Download complete 49f7433ed3e1: Pull complete 27b75b92e685: Pull complete 626d0c5ac31a: Verifying Checksum 626d0c5ac31a: Download complete 49573aff720b: Pull complete 6c7a6acc15a7: Pull complete 2fcd87bfa5db: Pull complete 0549ec9ec8ed: Pull complete 70bdcfc588ca: Pull complete e979ac5cce31: Verifying Checksum e979ac5cce31: Download complete 3b367e0aa6a5: Pull complete 310891b65deb: Pull complete e952cc8d0d06: Pull complete e1f8d03dec7c: Pull complete ea7a80f93fc1: Pull complete 651b29c05a00: Pull complete 626d0c5ac31a: Pull complete d754c2ad8be4: Pull complete e44ef4a65df1: Verifying Checksum e44ef4a65df1: Download complete fb1dd424c12b: Verifying Checksum fb1dd424c12b: Download complete e16aacca3a83: Verifying Checksum e16aacca3a83: Download complete fb1dd424c12b: Pull complete 750d215cc49e: Download complete 95e961502b9e: Download complete 0c5399d68307: Verifying Checksum 0c5399d68307: Download complete 1964038e9550: Verifying Checksum 1964038e9550: Download complete c2402650a657: Verifying Checksum c2402650a657: Download complete 038d715c9222: Verifying Checksum 038d715c9222: Download complete b461db88856f: Verifying Checksum b461db88856f: Download complete b2fd42dd5192: Verifying Checksum b2fd42dd5192: Download complete b2fd42dd5192: Pull complete e979ac5cce31: Pull complete e44ef4a65df1: Pull complete c2402650a657: Pull complete e16aacca3a83: Pull complete 750d215cc49e: Pull complete 95e961502b9e: Pull complete 0c5399d68307: Pull complete 1964038e9550: Pull complete 038d715c9222: Pull complete b461db88856f: Pull complete Digest: sha256:c0913f7feebc3fa3d18bda40e2874f92ef0799dbe95febefcf2e38209bf1d8c5 Status: Downloaded newer image for yegor256/blog-image:latest docker.io/yegor256/blog-image:latest + docker ps --filter=status=exited + grep --quiet '\syegor256_blog_530\s*$' + ls -al . total 56 drwx------ 3 rultor rultor 4096 Jul 20 19:19 . drwxrwxrwt 14 root root 4096 Jul 20 19:19 .. -rwxrwxr-x 1 rultor rultor 363 Jul 20 19:19 entry.sh -rw-rw-r-- 1 rultor rultor 1679 Jul 20 19:18 id_rsa -rw-rw-r-- 1 rultor rultor 396 Jul 20 19:18 id_rsa.pub -rw-rw-r-- 1 rultor rultor 7 Jul 20 19:18 pid drwxrwxr-x 26 rultor rultor 4096 Jul 20 19:19 repo -rwxrwxr-x 1 rultor rultor 5024 Jul 20 19:18 run.sh -rw-rw-r-- 1 rultor rultor 722 Jul 20 19:19 script.sh -rw-rw-r-- 1 rultor rultor 57 Jul 20 19:18 secrets.yml -rw-rw-r-- 1 rultor rultor 10275 Jul 20 19:22 stdout ++ pwd ++ pwd + docker run -t --rm -v /tmp/rultor-EIQR:/main --env=head=git@github.com:yegor256/blog.git --env=head_branch=master --env=author=yegor256 '--env=scripts=( '\''export '\''\'\'''\''head=git@github.com:yegor256/blog.git'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''head_branch=master'\''\'\'''\'''\'' '\'';'\'' '\''export '\''\'\'''\''author=yegor256'\''\'\'''\'''\'' '\'';'\'' '\''sudo apt-get update'\'' '\'';'\'' '\''sudo apt-get install -y woff2'\'' '\'';'\'' '\''export GEM_HOME=~/.ruby'\'' '\'';'\'' '\''export GEM_PATH=$GEM_HOME:$GEM_PATH'\'' '\'';'\'' '\''bundle install'\'' '\'';'\'' '\''export JEKYLL_ENV=production'\'' '\'';'\'' '\''LC_ALL=en_US.UTF-8 bundle exec rake'\'' '\'';'\'' '\''mkdir ~/.ssh'\'' '\'';'\'' '\''mv ../id_rsa ../id_rsa.pub ~/.ssh'\'' '\'';'\'' '\''chmod -R 600 ~/.ssh/*'\'' '\'';'\'' '\''echo -e "Host *\n StrictHostKeyChecking no\n UserKnownHostsFile=/dev/null" > ~/.ssh/config'\'' '\'';'\'' '\''git config --global user.email "rultor@yegor256.com"'\'' '\'';'\'' '\''git config --global user.name "Rultor"'\'' '\'';'\'' '\''LC_ALL=en_US.UTF-8 jgd'\'' '\'';'\'' )' --hostname=docker --privileged --memory=6g --memory-swap=16g --oom-kill-disable --cidfile=/tmp/rultor-EIQR/cid -w=/main -v /var/run/docker.sock:/var/run/docker.sock --name=yegor256_blog_530 yegor256/blog-image /main/entry.sh WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. + set -e + set -o pipefail + shopt -s dotglob + useradd -m -G sudo r + usermod -s /bin/bash r + echo '%sudo ALL=(ALL) NOPASSWD:ALL' + cp -R /root/.bashrc /root/.cache /root/.composer /root/.config /root/.gem /root/.gnupg /root/.m2 /root/.npm /root/.profile /root/texmf /home/r + cp -R ./cid ./entry.sh ./id_rsa ./id_rsa.pub ./pid ./repo ./run.sh ./script.sh ./secrets.yml ./stdout /home/r + rm -rf repo + chown -R r:r /home/r + chmod a+x /home/r/script.sh + su --login r --command /home/r/script.sh mesg: cannot open /dev/pts/0: Permission denied + set -e + set -o pipefail + shopt -s expand_aliases + alias 'sudo=sudo -i' + export HOME=/home/r + HOME=/home/r + cd /home/r/repo + export head=git@github.com:yegor256/blog.git + head=git@github.com:yegor256/blog.git + export head_branch=master + head_branch=master + export author=yegor256 + author=yegor256 + sudo -i apt-get update Get:1ohttp://ppa.launchpad.net/deadsnakes/ppa/ubuntu bionic InRelease [15.9 kB] Get:2ohttps://deb.nodesource.com/node_10.xtbioniciInRelease.[4,5841B]89.91.38)] Get:3 http://ppa.launchpad.net/git-core/ppa/ubuntuvbionictInRelease.[20.81kB])] Get:4 http://ppa.launchpad.net/ondrej/php/ubunturbioniciInReleaseh[20.8skB]3 In Get:5 http://security.ubuntu.com/ubuntufbionic-securityiInReleaseh[88.7skB]4 In Hit:6 http://archive.ubuntu.com/ubuntu bionicaInReleaseInRelease 2,587 B/88.7 k Get:7ahttp://archive.ubuntu.com/ubuntu1bionic-updates5InReleasee[88.7skB]88.7kk Get:8 http://ppa.launchpad.net/deadsnakes/ppa/ubuntu8bionic/main[amd64ePackages [45.3 kB] Get:9 http://ppa.launchpad.net/git-core/ppa/ubuntu/bionic/main7amd640Packagesn[3,170 B] Get:10Ihttp://archive.ubuntu.com/ubuntuobionic-backportsiInReleasea[74.6]kB] Get:11Ihttp://ppa.launchpad.net/ondrej/php/ubuntusbionic/main]amd64tPackagesh[174 kB] Get:12Ihttp://archive.ubuntu.com/ubuntufbionic-updates/multiversehamd64sPackages [29.8 kB] Get:13Ihttp://security.ubuntu.com/ubuntugbionic-security/main0amd64WPackageso[2,901 kB] Get:14ahttps://deb.nodesource.com/node_10.xgbionic/main3amd64WPackageso[767aB]r Get:15ahttp://archive.ubuntu.com/ubuntu1bionic-updates/restricted3amd64,Packages [1,105 kB] Get:16ahttp://archive.ubuntu.com/ubuntu1bionic-updates/main%amd64BPackages [3,333 kB] Get:173http://archive.ubuntu.com/ubunturbionic-updates/universehamd64sPackages7[2,304 kB] Get:183http://security.ubuntu.com/ubuntu bionic-security/restrictediamd64rPackages [1,063 kB] Get:196http://archive.ubuntu.com/ubunturbionic-backports/universe2amd64,Packages [12.9 kB] Get:206http://archive.ubuntu.com/ubuntusbionic-backports/main]amd64PPackages9[12.2 kB] Get:216http://security.ubuntu.com/ubuntu bionic-security/multiversePamd64ePackages [22.8 kB] Get:226http://security.ubuntu.com/ubuntu bionic-security/universe amd64 Packages [1,527 kB] Fetchedo12.8gMBeins3sr(4,135[kB/s)ckages 1,507kkB/1,527kkB399%] Reading package lists... Done + sudo -i apt-get install -y woff2 Reading package lists... Done Building dependency tree... 50% Reading state information... Done woff2 is already the newest version (1.0.2-1build0.1). 0 upgraded, 0 newly installed, 0 to remove and 285 not upgraded. + export GEM_HOME=/home/r/.ruby + GEM_HOME=/home/r/.ruby + export GEM_PATH=/home/r/.ruby:/usr/local/rvm/gems/ruby-2.6.0:/usr/local/rvm/gems/ruby-2.6.0@global + GEM_PATH=/home/r/.ruby:/usr/local/rvm/gems/ruby-2.6.0:/usr/local/rvm/gems/ruby-2.6.0@global + bundle install Fetching gem metadata from https://rubygems.org/.......... Fetching gem metadata from https://rubygems.org/. Resolving dependencies... Using rake 12.3.2 32mFetching concurrent-ruby 1.1.100m 32mInstalling concurrent-ruby 1.1.100m 32mFetching i18n 1.12.00m 32mInstalling i18n 1.12.00m 32mFetching minitest 5.16.20m 32mInstalling minitest 5.16.20m 32mFetching thread_safe 0.3.60m 32mInstalling thread_safe 0.3.60m 32mFetching tzinfo 1.2.100m 32mInstalling tzinfo 1.2.100m 32mFetching activesupport 5.2.8.10m 32mInstalling activesupport 5.2.8.10m 32mFetching public_suffix 4.0.70m 32mInstalling public_suffix 4.0.70m 32mFetching addressable 2.8.00m 32mInstalling addressable 2.8.00m 32mFetching ast 2.4.20m 32mInstalling ast 2.4.20m Using bundler 2.1.4 Using colorator 1.1.0 32mFetching colorize 0.8.10m 32mInstalling colorize 0.8.10m Using eventmachine 1.2.7 32mFetching http_parser.rb 0.8.00m 32mInstalling http_parser.rb 0.8.0 with native extensions0m 32mFetching em-websocket 0.5.30m 32mInstalling em-websocket 0.5.30m 32mFetching ffi 1.15.50m 32mInstalling ffi 1.15.5 with native extensions0m 32mFetching ethon 0.15.00m 32mInstalling ethon 0.15.00m 32mFetching faraday-net_http 2.0.30m 32mInstalling faraday-net_http 2.0.30m 32mFetching ruby2_keywords 0.0.50m 32mInstalling ruby2_keywords 0.0.50m 32mFetching faraday 2.3.00m 32mInstalling faraday 2.3.00m 32mFetching fastimage 2.1.50m 32mInstalling fastimage 2.1.50m 32mFetching json 1.8.60m 32mInstalling json 1.8.6 with native extensions0m 32mFetching rb-fsevent 0.11.10m 32mInstalling rb-fsevent 0.11.10m Using rb-inotify 0.10.1 32mFetching listen 3.7.10m 32mInstalling listen 3.7.10m 32mFetching thor 0.20.30m 32mInstalling thor 0.20.30m GemWrappers: Can not wrap missing file: thor 32mFetching fontcustom 2.0.00m 32mInstalling fontcustom 2.0.00m GemWrappers: Can not wrap missing file: fontcustom Using forwardable-extended 2.6.0 32mFetching mercenary 0.3.60m 32mInstalling mercenary 0.3.60m Using mini_portile2 2.4.0 32mFetching nokogiri 1.9.10m 32mInstalling nokogiri 1.9.1 with native extensions0m 32mFetching parallel 1.22.10m 32mInstalling parallel 1.22.10m 32mFetching typhoeus 0.8.00m 32mInstalling typhoeus 0.8.00m 32mFetching yell 2.2.20m 32mInstalling yell 2.2.20m 32mFetching html-proofer 3.7.50m 32mInstalling html-proofer 3.7.50m GemWrappers: Can not wrap missing file: htmlproofer 32mFetching jaro_winkler 1.5.40m 32mInstalling jaro_winkler 1.5.4 with native extensions0m Using sassc 2.4.0 Using jekyll-sass-converter 2.1.0 Using jekyll-watch 2.2.1 32mFetching kramdown 2.1.00m 32mInstalling kramdown 2.1.00m Using kramdown-parser-gfm 1.1.0 32mFetching liquid 4.0.10m 32mInstalling liquid 4.0.10m Using pathutil 0.16.2 32mFetching rouge 3.29.00m 32mInstalling rouge 3.29.00m Using safe_yaml 1.0.5 32mFetching unicode-display_width 1.4.10m 32mInstalling unicode-display_width 1.4.10m Using terminal-table 1.8.0 32mFetching jekyll 4.0.10m 32mInstalling jekyll 4.0.10m 32mFetching jekyll-bits 0.150m 32mInstalling jekyll-bits 0.150m 32mFetching jekyll-feed 0.15.10m 32mInstalling jekyll-feed 0.15.10m 32mFetching sawyer 0.9.20m 32mInstalling sawyer 0.9.20m 32mFetching octokit 4.25.10m 32mInstalling octokit 4.25.10m 32mFetching jekyll-gist 1.5.00m 32mInstalling jekyll-gist 1.5.00m 32mFetching jekyll-paginate 1.1.00m 32mInstalling jekyll-paginate 1.1.00m 32mFetching jekyll-plantuml 1.3.40m 32mInstalling jekyll-plantuml 1.3.40m 32mFetching jekyll-redirect-from 0.16.00m 32mInstalling jekyll-redirect-from 0.16.00m 32mFetching sass-listen 4.0.00m 32mInstalling sass-listen 4.0.00m 32mFetching sass 3.7.20m 32mInstalling sass 3.7.20m GemWrappers: Can not wrap missing file: sass GemWrappers: Can not wrap missing file: sass-convert GemWrappers: Can not wrap missing file: scss 32mFetching jekyll-sass 1.1.00m 32mInstalling jekyll-sass 1.1.00m 32mFetching jekyll-sitemap 1.4.00m 32mInstalling jekyll-sitemap 1.4.00m 32mFetching jslint 1.2.00m 32mInstalling jslint 1.2.00m GemWrappers: Can not wrap missing file: jslint 32mFetching mini_mime 1.1.20m 32mInstalling mini_mime 1.1.20m 32mFetching mail 2.7.10m 32mInstalling mail 2.7.10m 32mFetching multi_json 1.15.00m 32mInstalling multi_json 1.15.00m 32mFetching nuggets 1.6.00m 32mInstalling nuggets 1.6.00m 32mFetching parser 3.1.2.00m 32mInstalling parser 3.1.2.00m GemWrappers: Can not wrap missing file: ruby-parse GemWrappers: Can not wrap missing file: ruby-rewrite 32mFetching powerpack 0.1.30m 32mInstalling powerpack 0.1.30m 32mFetching pygments.rb 1.2.10m 32mInstalling pygments.rb 1.2.10m 32mFetching rainbow 2.2.20m 32mInstalling rainbow 2.2.2 with native extensions0m 32mFetching redcarpet 3.4.00m 32mInstalling redcarpet 3.4.0 with native extensions0m GemWrappers: Can not wrap missing file: redcarpet 32mFetching ruby-progressbar 1.11.00m 32mInstalling ruby-progressbar 1.11.00m 32mFetching rubocop 0.62.00m 32mInstalling rubocop 0.62.00m GemWrappers: Can not wrap missing file: rubocop 32mFetching rubocop-rspec 1.30.10m 32mInstalling rubocop-rspec 1.30.10m 32mFetching scss_lint 0.57.10m 32mInstalling scss_lint 0.57.10m GemWrappers: Can not wrap missing file: scss-lint 32mFetching trollop 2.9.90m 32mInstalling trollop 2.9.90m 32mFetching uuidtools 2.1.50m 32mInstalling uuidtools 2.1.50m 32mFetching w3c_validators 1.3.40m 32mInstalling w3c_validators 1.3.40m 32mBundle complete! 30 Gemfile dependencies, 78 gems now installed.0m 32mUse `bundle info [gemname]` to see where a bundled gem is installed.0m 32mPost-install message from fontcustom:0m >> Thanks for installing Font Custom! Please ensure that fontforge is installed before compiling any icons. Visit <http://fontcustom.com> for instructions. 32mPost-install message from jekyll:0m ------------------------------------------------------------------------------------- Jekyll 4.0 comes with some major changes, notably: * Our `link` tag now comes with the `relative_url` filter incorporated into it. You should no longer prepend `{{ site.baseurl }}` to `{% link foo.md %}` For further details: https://github.com/jekyll/jekyll/pull/6727 * Our `post_url` tag now comes with the `relative_url` filter incorporated into it. You shouldn't prepend `{{ site.baseurl }}` to `{% post_url 2019-03-27-hello %}` For further details: https://github.com/jekyll/jekyll/pull/7589 * Support for deprecated configuration options has been removed. We will no longer output a warning and gracefully assign their values to the newer counterparts internally. ------------------------------------------------------------------------------------- 32mPost-install message from sass:0m Ruby Sass is deprecated and will be unmaintained as of 26 March 2019. * If you use Sass as a command-line tool, we recommend using Dart Sass, the new primary implementation: https://sass-lang.com/install * If you use Sass as a plug-in for a Ruby web framework, we recommend using the sassc gem: https://github.com/sass/sassc-ruby#readme * For more details, please refer to the Sass blog: http://sass.logdown.com/posts/7081811 32mPost-install message from nuggets:0m nuggets-1.6.0 [2018-07-12]: * Added <tt>JSON.*_{multi,canonical}</tt>. 32mPost-install message from trollop:0m ! The 'trollop' gem has been deprecated and has been replaced by 'optimist'. ! See: https://rubygems.org/gems/optimist ! And: https://github.com/ManageIQ/optimist + export JEKYLL_ENV=production + JEKYLL_ENV=production + LC_ALL=en_US.UTF-8 + bundle exec rake Building Jekyll site... Configuration file: /home/r/repo/_config.yml Source: /home/r/repo Destination: /home/r/repo/_site Incremental build: disabled. Enable with --incremental Generating... WARN: No front image in /2010/03/04/pdd.html WARN: No front image in /2013/12/29/proto.html WARN: No front image in /2014/04/06/introduction.html WARN: No front image in /2014/04/06/movies-for-thanasis.html WARN: No front image in /2014/04/06/phandom.html WARN: No front image in /2014/04/09/xembly-intro.html WARN: No front image in /2014/04/11/jcabi-http-intro.html WARN: No front image in /2014/04/14/jcabi-dynamo-java-api-of-aws-dynamodb.html WARN: No front image in /2014/04/15/definition-of-done.html WARN: No front image in /2014/04/15/github-guidelines.html WARN: No front image in /2014/04/18/jcabi-http-server-mocking.html WARN: No front image in /2014/04/20/how-hourly-rate-is-calculated.html WARN: No front image in /2014/04/21/s3-http-basic-auth.html WARN: No front image in /2014/04/24/java-xml-parsing-and-traversing.html WARN: No front image in /2014/04/26/incremental-requirements-with-requs.html WARN: No front image in /2014/04/27/typical-mistakes-in-java-code.html WARN: No front image in /2014/04/28/xml-xpath-hamcrest-matchers.html WARN: No front image in /2014/04/29/w3c-java-validators.html WARN: No front image in /2014/05/01/dynamodb-local-maven-plugin.html WARN: No front image in /2014/05/05/oop-alternative-to-utility-classes.html WARN: No front image in /2014/05/13/why-null-is-bad.html WARN: No front image in /2014/05/14/object-oriented-github-java-sdk.html WARN: No front image in /2014/05/18/cloud-autoincrement-counters.html WARN: No front image in /2014/05/21/mysql-maven-plugin.html WARN: No front image in /2014/05/23/avoid-java-static-logger.html WARN: No front image in /2014/05/26/amazon-s3-java-oop-adapter.html WARN: No front image in /2014/06/01/aop-aspectj-java-method-logging.html WARN: No front image in /2014/06/09/objects-should-be-immutable.html WARN: No front image in /2014/06/19/avoid-string-concatenation.html WARN: No front image in /2014/06/20/limit-method-execution-time.html WARN: No front image in /2014/06/21/casperjs-with-maven.html WARN: No front image in /2014/06/24/jekyll-github-deploy.html WARN: No front image in /2014/06/25/xml-and-xslt-in-browser.html WARN: No front image in /2014/06/26/sass-in-java-webapp.html WARN: No front image in /2014/06/29/custom-lexer-in-jekyll.html WARN: No front image in /2014/07/03/how-to-read-manifest-mf.html WARN: No front image in /2014/07/20/liquibase-in-maven.html WARN: No front image in /2014/07/21/read-only-master-branch.html WARN: No front image in /2014/07/24/rultor-automated-merging.html WARN: No front image in /2014/07/29/docker-in-rultor.html WARN: No front image in /2014/07/31/travis-and-rultor.html WARN: No front image in /2014/08/03/cacheable-java-annotation.html WARN: No front image in /2014/08/15/retry-java-method-on-exception.html WARN: No front image in /2014/08/18/fluent-jdbc-decorator.html WARN: No front image in /2014/08/19/how-to-release-to-maven-central.html WARN: No front image in /2014/08/22/art-of-software-testing.html WARN: No front image in /2014/08/25/deploy-to-cloudbees.html WARN: No front image in /2014/08/26/publish-to-rubygems.html WARN: No front image in /2014/08/29/docker-non-root.html WARN: No front image in /2014/09/02/java-ssh-client.html WARN: No front image in /2014/09/10/anti-patterns-in-oop.html WARN: No front image in /2014/09/13/deploying-to-heroku.html WARN: No front image in /2014/09/22/remote-programming-interview.html WARN: No front image in /2014/09/23/built-in-fake-objects.html WARN: No front image in /2014/09/24/why-monetary-awards-dont-work.html WARN: No front image in /2014/10/03/di-containers-are-evil.html WARN: No front image in /2014/10/05/ten-hosted-continuous-integration-services.html WARN: No front image in /2014/10/06/software-project-lifecycle.html WARN: No front image in /2014/10/08/continuous-integration-is-dead.html WARN: No front image in /2014/10/21/incremental-billing.html WARN: No front image in /2014/10/23/paired-brackets-notation.html WARN: No front image in /2014/10/26/hacker-vs-programmer-mentality.html WARN: No front image in /2014/11/03/empty-line-code-smell.html WARN: No front image in /2014/11/07/how-immutability-helps.html WARN: No front image in /2014/11/14/hits-of-code.html WARN: No front image in /2014/11/20/seven-virtues-of-good-object.html WARN: No front image in /2015/01/10/windows-appveyor-maven.html WARN: No front image in /2015/01/21/if-then-throw-else.html WARN: No front image in /2015/02/02/xsl-transformations-in-java.html WARN: No front image in /2015/02/05/jcabi-parent-maven-pom.html WARN: No front image in /2015/03/26/jaxb-vs-xembly.html WARN: No front image in /2015/03/29/rultor-with-appveyor.html WARN: No front image in /2015/04/13/tacit-css-framework-for-dummies.html WARN: No front image in /2015/04/22/favorite-software-books.html WARN: No front image in /2015/04/30/iterating-adapter.html WARN: No front image in /2015/05/18/cookie-based-authentication.html WARN: No front image in /2015/06/08/deadly-sins-software-project.html WARN: No front image in /2015/06/11/wikipedia-bug-definition.html WARN: No front image in /2015/06/25/xml-data-xsl-views-takes-framework.html WARN: No front image in /2015/08/18/multiple-return-statements-in-oop.html WARN: No front image in /2015/09/07/maven-repository-amazon-s3.html WARN: No front image in /2015/11/03/chatbot-better-than-ui-for-microservice.html WARN: No front image in /2016/03/15/wring-dispatcher-github-notifications.html WARN: No front image in /2016/03/30/jare-instant-free-cdn.html WARN: No front image in /2016/11/18/software-conferences-to-attend.html WARN: No front image in /2017/06/13/dynamodb-rack-maven.html WARN: No front image in /2017/06/22/object-oriented-input-output-in-cactoos.html WARN: No front image in /2017/06/27/my-environment.html WARN: No front image in /2017/07/25/my-favorite-websites.html WARN: No front image in /2017/09/05/rehttp-http-repeater.html WARN: No front image in /2018/10/30/mailanes.html WARN: No front image in /2018/11/06/ruby-threads.html WARN: No front image in /2019/02/03/cloudrepo.html WARN: No front image in /2019/02/05/zache.html WARN: No front image in /2019/04/17/nutch-from-java.html WARN: No front image in /2019/06/26/syncem.html YouTube video nsYGC2aUwfQ found: Puzzle Driven Development (webinar #23) YouTube video LmSaC_OjIbQ found: M28: Microtasking works only if you can decompose tasks, PDD helps you do exactly that YouTube video qRZYJGYdrwk found: XDSD: management without meetings YouTube video REj8pJesMVI found: The Alternative to Fluent Interfaces in Java (webinar #33) YouTube video nsYGC2aUwfQ found: Puzzle Driven Development (webinar #23) YouTube video LmSaC_OjIbQ found: M28: Microtasking works only if you can decompose tasks, PDD helps you do exactly that File /home/r/repo/uml/d892698103dc5669949527a8754c5f26.svg created (3442 bytes) YouTube video 7DYr8GYzJ6Q found: The Philosophy of Bugs (webinar #17) YouTube video qRZYJGYdrwk found: XDSD: management without meetings YouTube video qRZYJGYdrwk found: XDSD: management without meetings YouTube video qRZYJGYdrwk found: XDSD: management without meetings YouTube video 7EytYc7K5JA found: eXtremely Distributed Software Development, at DevTernity YouTube video qRZYJGYdrwk found: XDSD: management without meetings YouTube video tCr9dtGdi2c found: XDSD: How Extreme is Your Team YouTube video psrp3TtaYYI found: What's Wrong About Utility Classes? (webinar #6) YouTube video D0dqC_3Bch8 found: Objects vs. Static Methods (webinar #1) YouTube video o3aNJX7AP3M found: What is Wrong About NULL in OOP? (webinar #3) YouTube video 4SRoLYxvIQ8 found: Practical Example of AOP with AspectJ (in Russian with English subtitles) File /home/r/repo/uml/52d3d016f2264bbf660a23d5bbe84203.svg created (8675 bytes) YouTube video KwP7Ay9Z-hc found: Immutable Objects vs. Common Sense (webinar #2) YouTube video EnhRgXrHCC4 found: How Immutability Helps in OOP (in Russian with English subtitles) YouTube video p7m7_iiqaHI found: How Much Immutability Is Enough? YouTube video 2a2nWELIk-Y found: Yegor Bugayenko | Kyiv DevOps, September, 2015 YouTube video gL4XwP-EBOg found: Continuous Integration May Have Negative Effects YouTube video Ht0JI41kA4I found: Pre-flight Build Pitfalls YouTube video NflR7DKwxDY found: Deployment Scripts Are Dead. Meet Rultor. YouTube video rEK3Rk2lX3M found: Cactoos 0.12 polishing and releasing (webinar #27) YouTube video NflR7DKwxDY found: Deployment Scripts Are Dead. Meet Rultor. YouTube video _61CuGhyv-o found: Practical Example of a One-Click Release YouTube video WSgP85kr6eU found: Why Getters-and-Setters Is An Anti-Pattern? (webinar #4) YouTube video F4N25kZ2zQU found: Object Oriented Lies (in Russian with English subtitles) YouTube video l6MpCBzwDbg found: What Fake Objects Are For? (webinar #8) YouTube video EDKbYVEInMU found: Built-in Fake Objects YouTube video F6NwcQyEY18 found: How Monetary Awards Can Work? YouTube video MNxG1xcA2uA found: Object Thinking Meetup #3: Yegor Bugayenko / How to Inject Less? YouTube video oV6Utb5Jows found: Dependency Injection Container is a Bad Idea (webinar #9) YouTube video qRZYJGYdrwk found: XDSD: management without meetings YouTube video LB_YLWhGrco found: Meetings-free Programming YouTube video 3IXk5yEJMIs found: Continuous Integration is Dead YouTube video gL4XwP-EBOg found: Continuous Integration May Have Negative Effects YouTube video Ht0JI41kA4I found: Pre-flight Build Pitfalls YouTube video 0fuEgmibJc4 found: Who Is a Software Architect? YouTube video PNSezrlemsY found: Hacker vs Designer Mentality YouTube video AvVQ5NjS_Nk found: Who is a Software Architect? (webinar #13) YouTube video PNSezrlemsY found: Hacker vs Designer Mentality YouTube video GS45LzE3LPQ found: How Much Do You Cost? YouTube video 6mfo_FHL3PE found: How we decide how much to pay programmers? YouTube video KwP7Ay9Z-hc found: Immutable Objects vs. Common Sense (webinar #2) YouTube video EnhRgXrHCC4 found: How Immutability Helps in OOP (in Russian with English subtitles) YouTube video p7m7_iiqaHI found: How Much Immutability Is Enough? YouTube video hTs_R0dFoFM found: M77: Lines-of-Code don't show anything meaningful, but Hits-of-Code are pretty accurate YouTube video WSgP85kr6eU found: Why Getters-and-Setters Is An Anti-Pattern? (webinar #4) YouTube video 7DYr8GYzJ6Q found: The Philosophy of Bugs (webinar #17) YouTube video DEqcn4-freM found: Why ORM is an Anti-Pattern? (webinar #10) YouTube video aER4uwyFbqQ found: ORM is offensive (in Russian with English subtitles) YouTube video 63tS3HNmhiE found: ORM is a perfect anti-pattern YouTube video 03PXmPc7Q3g found: ORM is an Offensive Anti-Pattern YouTube video KwP7Ay9Z-hc found: Immutable Objects vs. Common Sense (webinar #2) YouTube video EnhRgXrHCC4 found: How Immutability Helps in OOP (in Russian with English subtitles) YouTube video p7m7_iiqaHI found: How Much Immutability Is Enough? YouTube video PVvLQGnyDrQ found: Gradients of Immutability (webinar #20) YouTube video 9yjtsCK6Wdk found: A Few Thoughts About Constructors in OOP (webinar #7) YouTube video DLk_5BmgTVk found: How to Avoid Outsourcing Disaster YouTube video oiNI2jF46h0 found: Make Customers Trust You YouTube video TxYi7J0vKC8 found: M80: Every two weeks you should hire a new auditor to review your software project YouTube video GlBf5-g4nGk found: M98: If you think that your team is doing fine, you are a bad manager YouTube video p7m7_iiqaHI found: How Much Immutability Is Enough? YouTube video KwP7Ay9Z-hc found: Immutable Objects vs. Common Sense (webinar #2) YouTube video EnhRgXrHCC4 found: How Immutability Helps in OOP (in Russian with English subtitles) YouTube video Rip_04Bv3Jk found: How to be Honest and Keep a Client? YouTube video ibT5oKToMoQ found: Daily Stand-Up Meetings Are Evil (webinar #11) YouTube video dE0_j4Kk6jo found: Meetings Help Us and Kill Our Projects YouTube video ues5Dks37zI found: M138: Morning stand-ups are nothing else but guilt-triggers YouTube video pt9uHp35fwM found: Meetings Or Discipline YouTube video b6r2W3P9vgY found: Blame the Project YouTube video YBQoTZ-1X-o found: How to Cut Corners and Stay Cool (webinar #15) YouTube video YBQoTZ-1X-o found: How to Cut Corners and Stay Cool (webinar #15) YouTube video D0dqC_3Bch8 found: Objects vs. Static Methods (webinar #1) YouTube video psrp3TtaYYI found: What's Wrong About Utility Classes? (webinar #6) YouTube video D0dqC_3Bch8 found: Objects vs. Static Methods (webinar #1) YouTube video ibT5oKToMoQ found: Daily Stand-Up Meetings Are Evil (webinar #11) YouTube video biE86esgFAE found: Seven Enemies of Our Motivation (in Russian with English subtitles) YouTube video WpP4rIhh5e4 found: Don't Create Objects That End With -ER (webinar #5) YouTube video nheD2LNYrpk found: Takes, Java Web Framework, Intro (webinar #12) YouTube video SCcJcSVBSpU found: Tacit CSS Framework @ Porto Codes 2017 YouTube video 9yjtsCK6Wdk found: A Few Thoughts About Constructors in OOP (webinar #7) YouTube video 0fuEgmibJc4 found: Who Is a Software Architect? YouTube video PNSezrlemsY found: Hacker vs Designer Mentality YouTube video AvVQ5NjS_Nk found: Who is a Software Architect? (webinar #13) YouTube video 0fuEgmibJc4 found: Who Is a Software Architect? YouTube video AvVQ5NjS_Nk found: Who is a Software Architect? (webinar #13) YouTube video DLk_5BmgTVk found: How to Avoid Outsourcing Disaster YouTube video l6MpCBzwDbg found: What Fake Objects Are For? (webinar #8) YouTube video lgScAwsYWCc found: M137: Don't ask your programmers to estimate, tell them how much you have YouTube video ZtWmlKi3ivc found: Seven Sins of a Software Project YouTube video hkXLOxZ6Fs4 found: Seven Sins of a Software Project YouTube video nheD2LNYrpk found: Takes, Java Web Framework, Intro (webinar #12) YouTube video 3blBn65iQmU found: Why Private Static Literals are Evil? (Webinar #48) YouTube video ibT5oKToMoQ found: Daily Stand-Up Meetings Are Evil (webinar #11) YouTube video LB_YLWhGrco found: Meetings-free Programming YouTube video dE0_j4Kk6jo found: Meetings Help Us and Kill Our Projects YouTube video AwrMKTFyohg found: #NoMagic YouTube video pt9uHp35fwM found: Meetings Or Discipline YouTube video KUUzUb9arNg found: M39: Meeting are evil and must be replaced by a disciplined process of decision making YouTube video ODxm7w2DE-g found: #NoSalaries File /home/r/repo/uml/19b92d0465e2e819ffcf88cf46c6e333.svg created (3984 bytes) YouTube video QMcDa2eyRBY found: Need Robust Software? Make It Fragile YouTube video nCGBgI1MNwE found: Need It Robust? Make It Fragile! YouTube video wd-SA1HVmLg found: How Do You Know When Your Product is Ready to be Shipped? YouTube video ZVn7ufg-tk0 found: Micromanagement (in Russian with English subtitles) YouTube video 0Jte_LGR5Zk found: M32: Micromanagement happens when tasks are big and motivation is not explicit YouTube video Z70PMGaxGhY found: How to win $4096 in the next year Quality Award? (webinar #29) YouTube video 9j5pq71BS5U found: Software Outsourcing, 10 Years Ahead (in Russian with English subtitles) YouTube video mHCwlZSlZeU found: Chat Bots are the new UI File /home/r/repo/uml/eee0d1bcdb7b9318e937e99e04e39ff7.svg created (3469 bytes) YouTube video jUil-aTImgU found: How Do You Talk To Your Microservice? File /home/r/repo/uml/d103661ebf8494340e260442970bf4af.svg created (4627 bytes) YouTube video Xj226o2xI9Y found: Chat Bots vs UI YouTube video vOMqDcSXnT0 found: Microservices as Chat Bots YouTube video kPmbRkSWYnY found: M130: The root cause of most software problems is the chaos in the code YouTube video xbovkm0tTn0 found: Talk "MEETING-FREE SOFTWARE DEVELOPMENT, IN DISTRIBUTED TEAMS" by Yegor Bugayenko YouTube video pt9uHp35fwM found: Meetings Or Discipline YouTube video b6r2W3P9vgY found: Blame the Project YouTube video F6NwcQyEY18 found: How Monetary Awards Can Work? YouTube video ibT5oKToMoQ found: Daily Stand-Up Meetings Are Evil (webinar #11) YouTube video WSgP85kr6eU found: Why Getters-and-Setters Is An Anti-Pattern? (webinar #4) YouTube video DEqcn4-freM found: Why ORM is an Anti-Pattern? (webinar #10) YouTube video Mj1gA5mEk68 found: Unit Testing vs Debugging (webinar #26) YouTube video o3aNJX7AP3M found: What is Wrong About NULL in OOP? (webinar #3) File /home/r/repo/uml/b5d40b6498ca48f6d2efc8671dd6d1e6.svg created (4512 bytes) File /home/r/repo/uml/aecf8b3862f82e6d5d8d27e948d45c83.svg created (5570 bytes) YouTube video _Q0cNykXB04 found: Printers Instead of Getters in OOP (webinar #18) YouTube video g1ctRcW214w found: Java Annotations Are a Big Mistake (webinar #14) YouTube video oV6Utb5Jows found: Dependency Injection Container is a Bad Idea (webinar #9) YouTube video cv23Z6xpwDw found: Java Annotations Are a Bad Idea YouTube video WSgP85kr6eU found: Why Getters-and-Setters Is An Anti-Pattern? (webinar #4) YouTube video Xk9tIqwca3k found: Smart Classes and Functionality-Poor Interfaces (webinar #16) YouTube video zaKTNK8g2-M found: Who Is a Project Manager? (webinar #19) YouTube video sZoJ3gO4PSo found: Who Manages Who? (in Russian with English subtitles) YouTube video cGcCcxx4xrg found: Java vs OOP (JavaDay Kyiv) File /home/r/repo/uml/653125b6c32d12b7325dba52054c09ca.svg created (3536 bytes) File /home/r/repo/uml/cad4de541e1ab10d3d9d751c661fe63f.svg created (3481 bytes) YouTube video PVvLQGnyDrQ found: Gradients of Immutability (webinar #20) YouTube video DjrA7_Uymok found: Inheritance vs. Subtyping (webinar #24) YouTube video AwrMKTFyohg found: #NoMagic YouTube video Z70PMGaxGhY found: How to win $4096 in the next year Quality Award? (webinar #29) YouTube video Nm274dGikFc found: Naked Data in OOP (webinar #22) File /home/r/repo/uml/45d05ab3bd9a93ad88ec209352b62f60.svg created (3256 bytes) YouTube video GWLpAZqvqSc found: How to Deal With Conflicts in a Software Team (Webinar #21) YouTube video 4i-OK4IA4vA found: M158: Eliminating team conflicts leads to less collaboration, not more YouTube video rC17YwowURQ found: Synchronized Decorators for Thread-Safety (Webinar #32) YouTube video Wcy53ZSF78o found: Decorating Envelopes in OOP (webinar #31) YouTube video ZhWOlaMqppM found: How I didn't get a job at Amazon (in Russian with English subtitles) YouTube video nsYGC2aUwfQ found: Puzzle Driven Development (webinar #23) YouTube video 1bAixLaOCSA found: Java Day Minsk 2017 | Yegor Bugayenko - Object Oriented JUnit Tests YouTube video CCr8hRE_TUs found: Object-Oriented Flavor for JUnit Tests YouTube video ZdHCrsQsoMI found: M136: Any software product has an unlimited number of bugs YouTube video Op3EIwhMxrg found: M33: You don't need to be loyal to your employers, use them for your own good! YouTube video 4ZWHs1mloUw found: RAII in Java (Webinar #52) YouTube video KYd24FN58wg found: Object-Oriented Java Web App from Scratch in One Hour: ThreeCopies.com (Webinar #28) YouTube video 7WmsiV22IXM found: Lazy Loading via Java Lambda (Webinar #30) YouTube video Z70PMGaxGhY found: How to win $4096 in the next year Quality Award? (webinar #29) YouTube video 9yjtsCK6Wdk found: A Few Thoughts About Constructors in OOP (webinar #7) YouTube video uhDmHkMAYnM found: Micro-management vs. micro-tasking (webinar #25) YouTube video tHeXxLdGqqI found: M19: Want to pay-by-result? You have to do microtasking first, otherwise nothing will work. YouTube video 1rmZN3r5SWg found: M27: Microtasking enables more accurate and precise estimates of a software project's future YouTube video F3bjFXFRsI8 found: M20: Reporting bugs and deciding whether they should be fixed are two separate activities! YouTube video 55mwAbuDrV8 found: Quality vs. Quantity (in Russian) YouTube video REj8pJesMVI found: The Alternative to Fluent Interfaces in Java (webinar #33) YouTube video AwrMKTFyohg found: #NoMagic YouTube video GozQCUH2D0I found: M22: Both full-time hiring and outsourcing will lead your project to failure, Zerocracy won't. YouTube video rC17YwowURQ found: Synchronized Decorators for Thread-Safety (Webinar #32) YouTube video vXUwE3FGfpg found: #NoAltruism YouTube video Hrk_Jorc5z4 found: M127: The ability to explain a problem so that it's understood is the most important soft skill YouTube video -drZbHxydMc found: When do you validate your objects? (Webinar #35) YouTube video FNWyN_Q10TI found: What's wrong with global variables? (Webinar #36) YouTube video _ppWQCCT8zE found: M16: You either report bugs or implement features. You can't do any of that? You are out. YouTube video RNRaVmbWZXI found: M7: Don't be afraid to ask difficult qstns before you get into a partnership, or get ready to lose YouTube video oXj9UWm1134 found: Names of objects, methods and variables in OOP (Webinar #37) YouTube video zljJpADEf_E found: M6: Keeping all source code in a single monolithic repository is a terrible idea! YouTube video 9tC7p2UTLsU found: M5: Professional programmers always need a second opinion, to make sure their code is good enough YouTube video Z70PMGaxGhY found: How to win $4096 in the next year Quality Award? (webinar #29) YouTube video ezE0hRH9BnQ found: M54: Make sure you control your programmers and do it explicitly and openly YouTube video fVMml2vpP-Y found: M13: A message without a context is unprofessional and very annoying for the listener; don't do it! YouTube video 2oAW9LmYJI4 found: M8: Since most tech editors have no idea what they are doing, ignore them YouTube video gMJNz9AWbQE found: M1: Your enthusiasm may only harm the project if you can't deliver it incrementally YouTube video PYq05UAwzNk found: M2: We must fully trust the architect, but regularly review the decisions he or she is making YouTube video mKZOuJ7AAas found: M30: Pay equality and smaller pay gap mean only one thing: the management is weak YouTube video SoXV_scCMNY found: Logging, the Object-Oriented Way YouTube video bVzEPOZ_mDU found: A practical example of making an object-oriented HTTP server in Java (webinar #42) YouTube video YXqHaZJD9R8 found: Yegor Bugayenko YouTube video Qxvk9z0tEP8 found: M123: One README should be enough for any open source project YouTube video WlI6IZ6M7vY found: M74: If your project doesn't have a formal Risk List, you are doing management wrong YouTube video KPbKqTXfZwA found: M89: Deliver your trust continuously, not discrete YouTube video _4pk5GNUySg found: M91: Full-timers want to look smart, freelancers want to deliver results YouTube video 5FckPa6aOok found: M193: What is fun and joy for you, being a programmer? YouTube video Z70PMGaxGhY found: How to win $4096 in the next year Quality Award? (webinar #29) YouTube video eeXdDvIVu-Y found: What Is Cohesion in OOP? (Webinar #49) YouTube video CmUzNPqCF4s found: M120: Don't wait for your manager to tell you what to do, do what you think is right (open source) File /home/r/repo/uml/b9cc42a8e5ed92f94f4362cfd328fb0d.svg created (13795 bytes) File /home/r/repo/uml/930f06f36724929287c1ee82fd95c77b.svg created (8633 bytes) YouTube video rsWrgxm8ktU found: Fat and Skinny Design (Webinar #51) File /home/r/repo/uml/c415b43f6d14c18e66db32e9d5d6e8b2.svg created (18168 bytes) YouTube video D12gi1x6Cdw found: M105: Open source developers inevitably have better soft and tech skills YouTube video nErn5G_JHhE found: Veil Objects to Replace DTOs (Webinar #50) YouTube video jjeW1hTtRh0 found: M114: The performance of programmers can be measured, with the right metrics YouTube video fJvUTlPHSvU found: Encapsulation Is Dead, Let's Use Distance of Coupling Instead (Webinar #55) YouTube video Yj1VFGK9vqc found: M143: Daily reports are a perfect guilt-triggering instrument for a lazy team YouTube video Z70PMGaxGhY found: How to win $4096 in the next year Quality Award? (webinar #29) YouTube video WZlIb5oxDBQ found: M152: There is no management without personal responsibility YouTube video TmAJPeM4UlE found: M153: How managers in self-managing orgs judge your performance? YouTube video vaFPNdNaOAY found: M160: Traditional top-down planning doesn't work, try better alternative YouTube video QaKIw1Bh3Oc found: EOLANG: Basics YouTube video ulrMXmIcC4w found: M167: Sometimes you have to be an imposter, either you like it or not YouTube video 65baOBHeVMI found: Yegor Bugayenko: Opening YouTube video dlPk1AE2aQk found: M170: recruiters may do a better job if listen to us programmers YouTube video 939ntzufGB0 found: M178: Try to focus your team on artifacts and their delivery status YouTube video 2IwBc9UI4Sg found: SIMBA: Simplified Management by Artifacts (at Merge Conf) YouTube video Qii3yrQJdHs found: M179: Calibrated Achievement Points (CAP) to measure R&D productivity YouTube video 8qfd93SyXpM found: SSD 13/16: Test-Driven Development YouTube video 4I8BflW7EpU found: M188: I don't think ML will ever be able to write code YouTube video jiEJnLBowHc found: M190: Make sure the bugs you report explain the simplest possible scenarios YouTube video Y0Zx_sdVG48 found: M199: Unit tests are the Safety Net that you can't afford to not use 373 AMP pages generated in 41.91s places.txt generated tags.txt generated stats.svg generated + unset BUNDLE_GEMFILE + cd /tmp ++ dirname /home/r/repo/_glyphs/compile.sh + dir=/home/r/repo/_glyphs + target=/home/r/repo/_temp/icons + mkdir -p /home/r/repo/_temp/icons + fontcustom compile /home/r/repo/_glyphs --output=/home/r/repo/_temp/icons --font-name=icons --templates=css --no-hash --force --autowidth + cat /home/r/repo/_temp/icons/icons.css ++ date +%s + sed -E 's|"./icons([^"]+)"|"https://www.yegor256.com/css/icons\1?1658337893"|g' create .fontcustom-manifest.json status Forcing compile. create /home/r/repo/_temp/icons/icons.ttf /home/r/repo/_temp/icons/icons.svg /home/r/repo/_temp/icons/icons.woff /home/r/repo/_temp/icons/icons.eot /home/r/repo/_temp/icons/icons.woff2 create /home/r/repo/_temp/icons/icons.css 1mTracebackm (most recent call last): 23: from /home/r/.ruby/bin/ruby_executable_hooks:24:in `<main>' 22: from /home/r/.ruby/bin/ruby_executable_hooks:24:in `eval' 21: from /home/r/.ruby/bin/jekyll:23:in `<main>' 20: from /home/r/.ruby/bin/jekyll:23:in `load' 19: from /home/r/.ruby/gems/jekyll-4.0.1/exe/jekyll:15:in `<top (required)>' 18: from /home/r/.ruby/gems/mercenary-0.3.6/lib/mercenary.rb:19:in `program' 17: from /home/r/.ruby/gems/mercenary-0.3.6/lib/mercenary/program.rb:42:in `go' 16: from /home/r/.ruby/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `execute' 15: from /home/r/.ruby/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `each' 14: from /home/r/.ruby/gems/mercenary-0.3.6/lib/mercenary/command.rb:220:in `block in execute' 13: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/commands/build.rb:18:in `block (2 levels) in init_with_program' 12: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/command.rb:89:in `process_with_graceful_fail' 11: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/command.rb:89:in `each' 10: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/command.rb:89:in `block in process_with_graceful_fail' 9: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/commands/build.rb:36:in `process' 8: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/commands/build.rb:65:in `build' 7: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/command.rb:28:in `process_site' 6: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/site.rb:75:in `process' 5: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/site.rb:183:in `generate' 4: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/site.rb:183:in `each' 3: from /home/r/.ruby/gems/jekyll-4.0.1/lib/jekyll/site.rb:185:in `block in generate' 2: from /home/r/repo/_plugins/validate_dates.rb:24:in `generate' 1: from /home/r/repo/_plugins/validate_dates.rb:24:in `each' /home/r/repo/_plugins/validate_dates.rb:29:in `block in generate': 1mwrong path of '_posts/2022/jul/2022-07-20-command-line-defaults.md', it has to start with _posts/2022/jun/2022-06-21- (1;4mRuntimeErrorm1m)m rake aborted! Jekyll failed with pid 11414 exit 1 /home/r/repo/Rakefile:86:in `block in <top (required)>' /home/r/.ruby/bin/ruby_executable_hooks:24:in `eval' /home/r/.ruby/bin/ruby_executable_hooks:24:in `<main>' Tasks: TOP => default => build (See full trace by running task with --trace) container 19fbd046383e0f5b458bd055c4833080356971d66ba58e65e4d5af7b986c54e2 is dead Wed 20 Jul 2022 07:24:59 PM CEST