PDF

 

СЖАТИЕ
  1. https://www.ilovepdf.com/ – хороший сервис, использовал для сжатия 13-страничного документа в виде скана под сервис с ограничением в 4МБ. Ужал с 6MB до 1.8MB с хорошим качеством (причем выбор оптимального, а не максимального по сжатию алгоритма)!
Редактирование
  1. Sejda PDF – онлайн сервис.


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

Ruby: работа с массивами

Iteration
each_with_index – из названия понятно, что полезно когда нужен элемент массива и его индекс)
Удаление из массива элементов
.drop(1) – удалить первый элемент (если указать 10 – первые 10 элементов)
a.delete(‘test’) – удалить по значению
arr[0..-3] – удалить последние два элемента
Элемент по ID
В Ruby, как, в принципе, и в PHP,  можно натравить метод какой-то на массив и элемент массива получить в одной строке.


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

Coding: основы регулярных выражений (regexp)

https://regexr.com/ – хороший сайт для создания regexp

http://www.pcre.org/original/doc/html – прекрасная документация к самому популярному синтаксису regexp

man 7 regex – базовое описание регулярных выражений

regex - POSIX.2 regular expressions
Regular expressions ("RE"s), as defined in POSIX.2, come in two forms: modern REs (roughly those of egrep; POSIX.2 calls these "extended" REs) and obsolete REs (roughly those of ed(1); POSIX.2 "basic" REs).


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

Network, Linux: nload, bmon

  • (tcpdump/bmon-nload/ifconfig) Трафик может не фиксироваться на интерфейсе в счетчиках и соответственно в утилитах bmon/nload, которые строят графики на основе счетчиков. Причина отсутствия счетчиков может быть не отсутствие трафика, а необходимость перевода интерфейса в promisc режим. Проверить можно tcpdump – он это делает автоматически.


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

Directory Services, Active Directory, Kerberos

Directory services (на основе курса Google IT Support Professional)
Directory services – сервисы по управлению политиками, примеры – Active Directory (proprietary, not free), OpenLDAP (open, free), Astra Linux Directory, FreeIPA. Оба они и ряд других сервисов полагаются (в основном) на открытые стандарты – в основном x.500 с протоколами Directory Access Protocol (DAP, в последующем Lightweight DAP – LDAP), Directory System Protocol (DSP) и другими.


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

Корпоративные мессенжеры и ВКС

  • https://rocket.chat/ – бесплатный мессенжер
  • https://github.com/jitsi/jitsi-meet – бесплатный ВКС (видео/аудио конференации). Может быть интегрировать в rocket.chat.
  • https://apps.google.com/meet/ – бесплатный ВКС от google


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

Ruby: работа с текстом

 String Class

Индексы

Строка в ruby является объектом класса String.  По индексу строки, по аналогии с индексом массива, можно извлекать, изменять и удалять данные из строки. Причем обращения по индексу идет через те же квадратные скобки, что и для массива.

Обращаясь к строке можно извлечь например первые 6 элементов или последний символ на основе индекса строки, по типу того, как мы извлекаем элементы array:

str[start, lenght]
str[0,6] - извлекаем первые 6 элементов, где 0 - первый символ, 6 - сколько символов от первого
str[7..10]


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

coding: Алгоритмы и структуры данных, оценка сложности алгоритмов (асимптотическая оценка, оценка Big O), решение задач

сложность алгоритмов

Асимптотическая оценка Анализ сравнения затрат времени алгоритмов, выполняемых решение экземпляра некоторой задачи, при больших объемах входных данных, называется асимптотическим. Алгоритм, имеющий меньшую асимптотическую сложность, является наиболее эффективным. В асимптотическом анализе, сложность алгоритма – это функция, позволяющая определить, как быстро увеличивается время работы алгоритма с увеличением объёма данных.


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