Была такая священная корова - ООП: "Оооо, нам нужно ООП!"
Теперь священная корова "типизация" - "Оооо, нам нужна типизация!". Зачем она тут? )
"Актуальная библиотека" пишется руками, если своего ума хватает, либо ставится с CPAN, если не хватает. Ну это факт, реально. Поэтому слова "актуальных библиотек не найти" говорит ровно о двух вещах: 1 - своего ума не хватает ее написать (вот мне - не хватает, например, для YOLO) 2 - других умов не нашлось, они для Python писали (о чем и речь была)
По скорости и памяти - ну это домыслы ) Сравнивая системы на perl с системами на PHP подобной сложности - лично у меня _ощущение_ что PHP существенно тормозит, но разве это кому-то мешало использвать PHP?
Да никто не пытается "возбудить интерес" ) Я не продаю ни курсы, ни книги.
Есть работающая штуковина - я об этом говорю. Это инструмент. Есть задачи, решаемые. Вот понадобилось решить с теми же фотографиями - беру инструмент и решаю. Наверное, кто-то решил бы используя python (awk - вряд ли тут подойдет). Кто-то напишет на С. Кто-то решит, заменив видеокамеры. Кто-то "обратится к специалистам, они сделают".
А есть подход "эта лопата старая, поэтому ей копать я не буду, а буду копать новым смартфоном, он тонкий, легкий и современный!".
Да господи, обычная китайская камера. И скорее всего - она как раз и полезет подключаться во внешний мир, к своему облаку. А вот через это облако (пугающим загробным голосом) она-то и может перепрошиться на вариант с бекдорами!
Это не баг, это фича - с какого-нибудь родного приложения подключаться и смотреть, через то облако.
Если бы вы получали телеметрию от древней железяки по email, и вам потребовалось бы интегрировать ее в какую-то систему мониторинга - возможно, консольный awk по крону оказался бы вам очень кстати. И намного более кстати, чем ждать, пока производитель новой системы мониторинга раздуплится написать для вас обновление, поддерживающее эту древнюю железку.
Хотя почему древнюю? Это почти та же задача, которую пришлось не очень давно решать, забирая с email-сервера фотографию, снятую камерами наблюдения, для отправки на обработку в AI на предмет подсчета количества человек. Просто я awk не настолько хорошо знаю, оказалось проще написать на perl перехватывающий smtp-сервер...
Это не совсем правильно, точнее совсем неправильно )
# это скалярное значение
my $x = 1; # или "1", или "корова", или ссылка на массив или хеш.
# это массив, он сам по себе, к $x не относится никак.
my @x = ( 23, "да" );
# это хеш, он тоже сам по себе, к $x не относится никак
my %x = ( name => 'товар', price => 123.43 );
# а вот это длина массива или хеша
$x = @x; # или = %x, или = scalar @x;
# просто она присвоена переменной $x
1 - это UNIX/Linux вещь, не Windows ) Под Windows есть порты разной степени проработанности, но это мягко говоря не совсем то. Если у вас Windows - проходим мимо сразу, лучше не мучаться, там даже форков нет.
2 - в "комплект" обычно входит некоторый набор библиотек, и в общем случае он может быть очень разным, от минимального, где собственно интерпретатор + утилита установки библиотек до такого, куда поназапихано всё что счел нужным запихать автор дистрибутива. А софта там мнооого.
3 - буковки русския подхватывает, но внутренняя кодировка UTF8 у него своя, и чтобы понимал он их так же как стандартные - их нужно в эту кодировку конвертировать, а потом из этой кодировки выконвертировать обратно. Но к счастью это нужно далеко не всегда, в большинстве случаев ему пофиг что там за двухбайтицы такие, оно просто с двухбайтицами работает.
4 - это недостаток. Недостаток же? Ну, неспецифический, но есть.
Вот, и у вас тоже Perl CGI ) CGI это отдельная технология, просто в то время других скриптовых языков в общем-то и не было: sh, tcl да perl. Ну еще бинарники на C/C++. Устарела давным-давно, хотя применение и ей найти можно. Но она - не Perl.
Мне про Ruby намного раньше говорили, в общем-то расхваливали - но как-то не сложилось, а потом не надо было, и случайно уже не попадалась. В общем верю что хорошая - но забИтая PHP-шниками, как наиболее массовым явлением.
Вот об этом я и говорю! Запомненные ассоциации, типа "Perl это CGI" - то же самое что Far это CGI - реальности не соответствует, но на то они и ассоциации.
Удобство. Он легкий, простой, быстрый, напоминает одновременно С и JS. Из недостатков разве что специфическая работа с UTF8 и в некоторых случаях особенности нецелочисленной арифметики, можно получить значения типа 3.00000000000000001 вместо 3.00
А алфабет текущий не менялся уже лет сто. Ну, если не считать редуцирование буквы ё, которая тем не менее пока сохраняется.
Много-много лет назад на вопрос "на чем лучше делать сайты?" Гуру ответил: на Ruby on Rails!
Прошли годы. Попадалось вживую множество сайтов на Perl CGI, на Perl не CGI, на PHP, на Java, на Python, на NodeJS, даже на .NET - но ни разу не попался на Ruby on Rails Как-то так само получилось...
Хм, возможно. Сейчас под рукой нет совсем древней машины, чтобы проверить, но КОГДА-ТО рекомендованное использование было вот такое, с обратными кавычками. Даже книжка была учебная на эту тему, от Sun )
А тут как с PHP: 1 - студенты: мы учили PHP, на нем можно писать сайты! 2 - студенты: мы пишем "сайты на PHP", обращайтесь к нам! 3 - менеджер: хм, нашей конторе нужен сайт, "сайт на PHP" (хз что это такое, наверное то что надо) 4 - менеджер: ищем исполнителей, нам нужен сат на PHP? 5 - веб-контора: а на RoR пойдет? На J2EE? На Perl? 6 - менеджер: нам нужен сайт на PHP! Можете на Perl такой сделать? 7 - веб-контора: ок, вот ваш "сайт на PHP", на Perl, устроит? (pokerface) 8 - менеджер: да, то что надо! У нас теперь есть свой "сайт на PHP"!
OpenVPN использует компрессию + шифрование, с точки зрения загрузки канала это может быть выгоднее чем несжатый трафик. А вот шифрование уже излишнее.
И второй момент, найденный случайно: на стороне сервера есть порт входа и порт TCP - вот несмотря на то что по докам это в принципе разное и одно другому мешать не должно - оно мешает, эти порты лучше разнести. И вот тогда скорость улучшается.
Но это неточно, потому что каналы by design нестабильны, и в зависимости от времени тестирования можно получить разные результаты.
Попробуйте ради интереса iperf3 на обоих сторонах запустить и посмотреть
awk быстрее стартует.
Так что смотря какая задача.
Конечно, копать надо лопатой, а они смартфонами землю роют, бестолочи )
Была такая священная корова - ООП: "Оооо, нам нужно ООП!"
Теперь священная корова "типизация" - "Оооо, нам нужна типизация!". Зачем она тут? )
"Актуальная библиотека" пишется руками, если своего ума хватает, либо ставится с CPAN, если не хватает. Ну это факт, реально.
Поэтому слова "актуальных библиотек не найти" говорит ровно о двух вещах:
1 - своего ума не хватает ее написать (вот мне - не хватает, например, для YOLO)
2 - других умов не нашлось, они для Python писали (о чем и речь была)
По скорости и памяти - ну это домыслы )
Сравнивая системы на perl с системами на PHP подобной сложности - лично у меня _ощущение_ что PHP существенно тормозит, но разве это кому-то мешало использвать PHP?
отключить на регистраторе DHCP сервер, и пусть ваш сервер (роутер?) адреса раздаст. А потом на нём же их и прибить гвоздями к маку камер.
Это как раз не проблема, если вы - хозяин сети.
Если нашли человека на Perl на их условия...
Catalyst тяжеловатый, Mojolicious вроде получше.
ну так оно всякое бывает, вплоть до удаления оттуда всего кроме md.
Не пробовали через md память по 256 байт считывать? )
Да никто не пытается "возбудить интерес" )
Я не продаю ни курсы, ни книги.
Есть работающая штуковина - я об этом говорю. Это инструмент.
Есть задачи, решаемые. Вот понадобилось решить с теми же фотографиями - беру инструмент и решаю. Наверное, кто-то решил бы используя python (awk - вряд ли тут подойдет).
Кто-то напишет на С. Кто-то решит, заменив видеокамеры. Кто-то "обратится к специалистам, они сделают".
А есть подход "эта лопата старая, поэтому ей копать я не буду, а буду копать новым смартфоном, он тонкий, легкий и современный!".
Да господи, обычная китайская камера. И скорее всего - она как раз и полезет подключаться во внешний мир, к своему облаку.
А вот через это облако (пугающим загробным голосом) она-то и может перепрошиться на вариант с бекдорами!
Это не баг, это фича - с какого-нибудь родного приложения подключаться и смотреть, через то облако.
Отрубите ей выход в интернет, и всё.
Если бы вы получали телеметрию от древней железяки по email, и вам потребовалось бы интегрировать ее в какую-то систему мониторинга - возможно, консольный awk по крону оказался бы вам очень кстати.
И намного более кстати, чем ждать, пока производитель новой системы мониторинга раздуплится написать для вас обновление, поддерживающее эту древнюю железку.
Хотя почему древнюю? Это почти та же задача, которую пришлось не очень давно решать, забирая с email-сервера фотографию, снятую камерами наблюдения, для отправки на обработку в AI на предмет подсчета количества человек.
Просто я awk не настолько хорошо знаю, оказалось проще написать на perl перехватывающий smtp-сервер...
Это не совсем правильно, точнее совсем неправильно )
1 - это UNIX/Linux вещь, не Windows )
Под Windows есть порты разной степени проработанности, но это мягко говоря не совсем то.
Если у вас Windows - проходим мимо сразу, лучше не мучаться, там даже форков нет.
2 - в "комплект" обычно входит некоторый набор библиотек, и в общем случае он может быть очень разным, от минимального, где собственно интерпретатор + утилита установки библиотек до такого, куда поназапихано всё что счел нужным запихать автор дистрибутива.
А софта там мнооого.
3 - буковки русския подхватывает, но внутренняя кодировка UTF8 у него своя, и чтобы понимал он их так же как стандартные - их нужно в эту кодировку конвертировать, а потом из этой кодировки выконвертировать обратно.
Но к счастью это нужно далеко не всегда, в большинстве случаев ему пофиг что там за двухбайтицы такие, оно просто с двухбайтицами работает.
4 - это недостаток. Недостаток же? Ну, неспецифический, но есть.
Вот, и у вас тоже Perl CGI )
CGI это отдельная технология, просто в то время других скриптовых языков в общем-то и не было: sh, tcl да perl. Ну еще бинарники на C/C++.
Устарела давным-давно, хотя применение и ей найти можно. Но она - не Perl.
Мне про Ruby намного раньше говорили, в общем-то расхваливали - но как-то не сложилось, а потом не надо было, и случайно уже не попадалась.
В общем верю что хорошая - но забИтая PHP-шниками, как наиболее массовым явлением.
Вот об этом я и говорю!
Запомненные ассоциации, типа "Perl это CGI" - то же самое что Far это CGI - реальности не соответствует, но на то они и ассоциации.
Удобство. Он легкий, простой, быстрый, напоминает одновременно С и JS.
Из недостатков разве что специфическая работа с UTF8 и в некоторых случаях особенности нецелочисленной арифметики, можно получить значения типа 3.00000000000000001 вместо 3.00
А алфабет текущий не менялся уже лет сто. Ну, если не считать редуцирование буквы ё, которая тем не менее пока сохраняется.
Много-много лет назад на вопрос "на чем лучше делать сайты?" Гуру ответил: на Ruby on Rails!
Прошли годы. Попадалось вживую множество сайтов на Perl CGI, на Perl не CGI, на PHP, на Java, на Python, на NodeJS, даже на .NET - но ни разу не попался на Ruby on Rails
Как-то так само получилось...
Хм, возможно. Сейчас под рукой нет совсем древней машины, чтобы проверить, но КОГДА-ТО рекомендованное использование было вот такое, с обратными кавычками. Даже книжка была учебная на эту тему, от Sun )
А тут как с PHP:
1 - студенты: мы учили PHP, на нем можно писать сайты!
2 - студенты: мы пишем "сайты на PHP", обращайтесь к нам!
3 - менеджер: хм, нашей конторе нужен сайт, "сайт на PHP" (хз что это такое, наверное то что надо)
4 - менеджер: ищем исполнителей, нам нужен сат на PHP?
5 - веб-контора: а на RoR пойдет? На J2EE? На Perl?
6 - менеджер: нам нужен сайт на PHP! Можете на Perl такой сделать?
7 - веб-контора: ок, вот ваш "сайт на PHP", на Perl, устроит? (pokerface)
8 - менеджер: да, то что надо! У нас теперь есть свой "сайт на PHP"!
там больше не нужно СНИЛС знать?
видимо когда-то не просматривалась связь между СНИЛС и номером, но с тех пор много данных утекло...
компрессия?
OpenVPN использует компрессию + шифрование, с точки зрения загрузки канала это может быть выгоднее чем несжатый трафик.
А вот шифрование уже излишнее.
И второй момент, найденный случайно: на стороне сервера есть порт входа и порт TCP - вот несмотря на то что по докам это в принципе разное и одно другому мешать не должно - оно мешает, эти порты лучше разнести. И вот тогда скорость улучшается.
Но это неточно, потому что каналы by design нестабильны, и в зависимости от времени тестирования можно получить разные результаты.
Попробуйте ради интереса iperf3 на обоих сторонах запустить и посмотреть
bsdcomp 15