Coding: архитектура, программирование и разработка, devops, ITIL/IT management

  • (c) В каждом айтишнике живет два волка:
    1. Чистый код, SOLID, взвешенные архитектурные решения
    2. Работает – не трогай, а то хер его знает где отвалится в этом легаси обосранном
  • о code review / код ревью

  • (GitHub, coding best practices) Google держит миллиарды строк кода в одном репозитории

    Google хранит весь код в монорепозитории Piper: около 2 млрд строк и 86 ТБ истории.
  Читать дальше

Editors и IDE (ee, mcedit, nano; google docs, office 360; gedit, vs code, sublime, atom; pycharm, rubymine)

  • При запуске утилит (например crontab -e, vipw, vigr), которые вызывают системный редактор кода, может потребоваться выбор этого редактора при первом запуске, при последующем будет запускаться то, что выбрано. Изменить можно по select-editor
# vipw
Select an editor. To change later, run 'select-editor'.
  Читать дальше

Security: основная статья

Карта РФ ИБ База

Коварно ввели admin/admin, обстоятельства непреодолимой силы не позволяли обновить php, хак утилита cat и привилигерованный контейнер 🤣😁

https://disk.yandex.ru/i/Pn4ToLvOz7pMVg

  • (Wifi, IoT, security) Изоляция умной техники дома (защита от взлома хостов домашней сети с уязвимого устройства умного дома) возможна на роутере без отдельного ssid через функционал Изоляция Wi-Fi сети по SSID.
  Читать дальше

Artificial Intelligence (AI): Machine learning (ML), Deep Learning (DP); оценка эффективности ML моделей




Американские компании OpenAI и Amazon Web Services (AWS) заключили соглашение о стратегическом партнерстве в области искусственного интеллекта на $38 млрд, сообщает Bloomberg. Соглашение рассчитано на семь лет и предусматривает предоставление OpenAI доступа к облачной инфраструктуре AWS.  Речь идет о сотнях тысяч графических процессоров Nvidia Corp.

  Читать дальше

Coding, Network: API и методы работы с ним (SOAP, REST, JSON, XML, YAML, TOML, YANG, TOML, protocol buffers/Apache Thrift, graphQL; SWAGGER, WSDL, WADL; restconf, netconf; Cisco PXGRID)

  • В общем про api и методы взаимодействия с ними (rest, yang, soap, xml, json, restconf/netconf, etc) в отдельной статье
  • CLI зачастую >>> всех других методов, пример яндекс со своей «Аннушкой» работает именно поверх CLI
    • Мы про это расскажем в докладах, но нет, cli – как общий знаменатель для всего.

  Читать дальше

Linux: bash спец. символы, man, переменные (> >> $ & # ~/$HOME $USER \ | /n \t ^M $? * ; ()), redirect stdout/stderr, ALIAS, bashrc, profile; программирование в bash (полезные скрипты, получение опций в скриптах, функции, условия, циклы, case, массивы)

~ echo $SHELL
/bin/bash

bash-3.2$ echo $SHELL # MACOS
/bin/zsh
  • (ssh, bash) Пересылка сообщений между терминалами

# echo to special terminal
echo "Hello Terminal 3" > /dev/pts/3

# echo to all terminal linux (3 vars)

echo "Your message here" | wall
wall message.txt
  Читать дальше

Методы установки приложений, компиляция приложений и ядра, библиотеки

  • Через средство управления пакетами ОС (Ubuntu: apt-get, CentOS: yum, Gentoo: emerge). Пакет чаще всего имеет не последнюю версия приложения/компилятора (ruby, phantomjs), но она почти гарантированно stable и легко ставится.
Для установки приложений в среде операционной системы GNU/Linux лучше всего пользоваться средствами управления пакетами вашего дистрибутива.
  Читать дальше

Linux: инструменты компрессии и архивации (zip/gzip/bzip, tar/7zip/7zz)

Задачи архивации и сжатия делаются зачастую вместе для создания ужатых архивов ряда файлов. Пример чаще всего используемой мной команды:
# АРХИВАЦИЯ БЕЗ СЖАТИЯ И УДАЛЕНИЯ ИСХОДНЫХ ДАННЫХ (БЫСТРЕЕ ДЕЛАЕТСЯ)
tar -cf trex.tgz /opt/trex/*

# АРХИВАЦИЯ СО СЖАТИЕМ GZIP И УДАЛЕНИЕМ ИСХОДНЫХ ДАННЫХ (БЫСТРЕЕ ПЕРЕДАЕТСЯ/ЗАНИМАЕМ МЕНЬШЕ МЕСТА)
tar --remove-files -czf logs.tgz
  Читать дальше

Linux, работа с дисками – разделы, файлы-папки, файловые системы в ОС, LVM (ls, lsblk, fdisk, find, rm/rmdir/shred/tmpwatch, dd, synctoy, df, du, tree, iotop, parted, mkfs, mount, fstab, fsck, find, clonezilla, parted/gparted, OSFmount, ln, life cd&usb, flock, iotop/iostat/lsof, split, paste)

  • Отдельная статья про оперативную память
  • Отдельная статья про диски (эта)
  • Отдельная статья про права
  • (Disk, enterprise) Mirror.yandex.ru: Storage
    • В текущий момент на трех серверах zfs, на трех серверах использует ext4 (не смог переехать на них на zfs из-за зависимости от старого пропатченного командой storage яндексом драйвера hba как контроллера sas и версии ядра linux для дисковой полки этих серверов; в итоге ядро и драйвер не поменять, а на старом ядре только древняя версия zfs), плюс что если будут проблемы уровня ФС они будут не везде 🙂
    • Планомерно мигрирует storage (все новые репы заводит там) с локального хранения на S3 yandex, но отказываться полностью от локального хранения не планирует (защита от кейса аварии в S3 яндекса и нужны будут недоступные дистрибутивы с зеркала).
  Читать дальше

Linux: ядро (kernel), процессы /proc в ОС и работа с ними (proc, ps, lsof, nice, kill, killall, top, lscpu, interrupts, smp irq affinity, isolcpus, taskset, cpuset/cset shield), утилизация процессора (user/system/idle/iowait/softirq)

  • kernel parameters /proc/cmdline (можно редактировать конфигом GRUB)
  • kernel parameters modification /etc/sysctl.conf
  • (Linux Kernel, Security, Coding practices/релизные циклы)
    Интересное из https://portal.linuxtesting.ru/about-linux-kernel.html#main
    • У ядра Linux примерно двухмесячный релизный цикл. Согласно статистике собранной за 10 последних лет, в работе над каждой версией ядра принимает участие более 1600 различных разработчиков, которые делают в среднем 7 изменений в ядро каждый час (непрерывно в течение 10 лет!),
  Читать дальше