Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Отправляйся в погоню за легендарными сокровищами Бабы Яги в 3D!
А в это время Баба Яга отправится в погоню за тобой.

Убеги от Бабы Яги

Аркады, Мидкорные, 3D

Играть

Топ прошлой недели

  • Rahlkan Rahlkan 1 пост
  • Tannhauser9 Tannhauser9 4 поста
  • alex.carrier alex.carrier 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
0 просмотренных постов скрыто
87
tproger.official
tproger.official
3 года назад
Типичный программист

За кого бы отдали свой голос?⁠⁠

За кого бы отдали свой голос? IT, IT юмор, Rust, C++, PHP, Python, Java, Cobol, Swift, Kotlin, Выборы
Показать полностью 1
IT IT юмор Rust C++ PHP Python Java Cobol Swift Kotlin Выборы
48
5
alexmarned
3 года назад

А доводилось ли вам писать поисковый движок наподобие google?⁠⁠

Поисковый робот - простая задача, оббежать страницы и собрать данные. К тому времени я уже написал полсотни парсеров и думал что это займёт пару часов, написать своего робота. Пусть он будет примитивный, но наверняка облегчит мне работу с поставщиками. Нашел пример в интернете, разобрался и в выходной под вечер нашёл для этого время.


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


То, что тогда получилось, можно увидеть здесь

http://alexmarned.zzz.com.ua/baza/poisk-kontaktov-na-sajte/  На данный момент это уже очень старая версия, не стал ничего менять и перезаписывать, конечно сейчас все и работает, и выглядит по-другому.


Я дорабатывал поисковик урывками, без надежды когда-либо решить все возникающие вопросы – их список рос быстрее чем весной растёт сорняк. Данные не записывались из-за кодировки (отчасти я эту проблему поборол, частично это ещё проблема), были сайты, которые грузились минутами – сайт не завис, просто так выводится информация на сайте, по три сотни фотографий за раз, по двести документов на странице, по 50 и даже 100 Мбайт информации на странице (были и по 500 Мбайт).

Были другие языки на сайтах, а мои скрипты были рассчитаны на русский и украинский языки. Добавлял английский, немецкий, другие и программа отказывалась работать, бесконечно выпадали ошибки.


И мои знания тогда были очень слабы, это бы можно было назвать пет проектом, только я использовал его в работе. Одновременно я учил алгоритмы и учил языки - сперва я пытался запустить поисковик перебирая варианты, потом сдавался, лез в теорию и ух ты, да такой алгоритм уже давно разработан, воспользуюсь и я таким же готовым кодом.


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


И сейчас поисковик тоже в работе. Пусть там нет интерфейса, я делал интерфейс и забросил, поскольку я постоянно дорабатываю код поисковика. Я добавил сбор аналитики по сайтам и могу сказать, что наши сайты далеки от совершенства и клиенты часто уходят, не дождавшись ответа от сайта. Обновляйте свои сайты, рекомендации от google_a вполне обоснованы.


Наименьшей проблемой был вопрос – «А как зацепиться за поисковый запрос и вытащить информацию по направлению?» И потом поиск по найденному, тут пытался, пытаюсь и буду дальше изучать, и делать свой поиск. Мне это не только интересно, но и очень нужно в практическом плане.


В общем, чтобы сделать первую версию своего поисковика, у меня ушло 9 месяцев. С учетом тех моих знаний, наверное, это было быстро, сейчас бы написал за неделю или меньше – но откуда бы я получил такие знания, не пройдя этот путь? У меня основной язык php, а там задачи уровня «записать в базу, считать с базы, проверить данные, вывести данные». Да, там может быть столько связей и данных, что голова начинает болеть, только поисковик — это задачи немного пошире.


И я по-прежнему учу алгоритмы, паттерны, языки (из-за стилей добавляемых wordpress я вплотную занялся изучением javascript), дорабатываю поиск по сайтам и поиск в найденном, немного машинного обучения и это сильно помогает найти данные в интернете. А найденные данные, это найденные контрагенты, клиенты, поставщики, юристы, бухгалтеры и всё что нужно. В общем это нужная в хозяйстве вишь, без дела не лежит.


Если это интересно, то плюсуйте, задавайте вопросы - распишу подробнее, я не одну книгу изучил, что бы его написать.

Показать полностью
[моё] Бизнес Программирование Производство Python PHP Текст
6
24
Yaonkey
Yaonkey
3 года назад
Программирование на PHP

Почему мы не любим Legacy?⁠⁠

Всем ку! Не так давно я задался вопросом, а почему мне нравится такая нудная работа? На самом деле, ответ кроется не на поверхности. Чтобы понять всю суть любви к программированию, нужно копнуть немного глубже, нежели просто придерживаясь тех фактов, что у программистов высокая заработная плата (хотя, по секрету, это не совсем так).

Почему мы не любим Legacy? Программирование, Legacy, Код, PHP, Разработка, Длиннопост

Многим разработчикам действительно нравится создавать нечто новое, решать сложные и необычные задачи, однако, на практике, все выходит совершенно обратно. Чаще всего задачи скучные и однотипные, а работать приходится не с неизведанным и новым, а с устаревшим и скудным.

Почему мы не любим Legacy? Программирование, Legacy, Код, PHP, Разработка, Длиннопост

И ведь действительно, большинство наработок, используемых в бизнес-проектах, уже достаточно стары (возьмем банальные Java 8, PHP 3 или 5, C++7). Почему же так происходит? Все дело в том, что бизнесу не нужны новомодные решения (если речь не о стартапах) - бизнесу нужна стабильность, чтобы она стабильно приносила деньги с минимальными затратами, то есть для бизнеса лучше написанная система 2003 года, зато стабильная. Когда речь доходит до обновления какой-либо системы или сервиса с legacy-кодом, то процесс затягивается надолго, ибо бизнес начинает просчитывать риски, бюджет, время. Нельзя обновить систему так, чтобы она приносила убытки - это, как минимум, глупо.

В программировании достаточно часто встречаются такие проекты-динозавры, которые придерживаются принципа "работает - не трогай". И, чаще всего, джун, изучающий самые новые технологии, после успешно пройденного собеседования, сильно огорчачется, ведь ему приходится перелопачивать код, который в последний раз до него трогал только дед Василий в 1998 году, не закончивший пару фич из-за наступления маразма. И вот паренек (или девушка) трогает код динозавров с функциональным стилем, на старой CRM alpha-версии, используя при этом технологии, которые джун не изучал, ведь... он думал, что сфера ИТ никогда не стоит на месте, а шутки про legacy всегда были смешными, но смешно все, пока с этим не столкнешься.

Почему мы не любим Legacy? Программирование, Legacy, Код, PHP, Разработка, Длиннопост

Сфера IT действительно не стоит на месте, сервисы обновляются чуть ли не каждый день, каждый день появляется новый фреймворк, обновление для языка и т.д., но все забывают главное - бизнес должен быть стабильным. Просто крупным компаниям совершенно невыгодно переписывать базу, да и зачем, если это просто займет время и толком ничего не изменит (лишь на 0.0003 мс быстрее станет). Legacy делаются с упором на то, что никто и никогда не будет в него лезть, код должен быть максимально непонятным, держащимся на костылях и goto.

Почему мы не любим Legacy? Программирование, Legacy, Код, PHP, Разработка, Длиннопост

Никаких обновлений - на кой черт они нам нужны, правда? На самом деле, если написать код, оставив комментарии, распределив должным образом модели, расписав контроллеры с возможностью масштабирования и очистить базу от ненужного, то систему можно смело отправлять в Legacy, не боясь мысли о том, что ее придется обновить лет так через 15.

Показать полностью 4
[моё] Программирование Legacy Код PHP Разработка Длиннопост
32
7
Yaonkey
Yaonkey
3 года назад
Программирование на PHP

Работа разработчиком в ИП⁠⁠

Всем ку! Буквально недавно я устроился веб-разработчиком на PHP в одно местное ИП (если считать по Москве). В общем, работка не пыльная - сидишь в офисе и делаешь сайты на заказ, а также занимаешься их поддержкой. Если так подумать, то что еще нужно для счастья? Думаю, что потребовалось неплохо оплачивать ту часть работы, которую я опишу ниже.

Работа разработчиком в ИП PHP, Программирование, Разработка, ИП, Сайт, Создание сайта, Длиннопост

Все наши ребята занимаются не только разработкой и/или поддержкой сайтов, хотя именно "PHP-разработчик" вписан над графой "Должность", они охватывают больший спектр задач, чем могли себе представить изначально. То есть приходит PHP-разработчик и говорит HR'у: "хочу у вас работать на должности PHP-программист, заниматься созданием бекенда сайтов с нуля или, максимум, с использованием какого-либо движка для упрощения задачи себе и ускорения выполнения задачи для заказчика", в ответ же юнец слышит, что все будет именно так, что именно такой разработчик, выполняющий именно такие задачи, им и нужен. Зеленого принимают, неделька на вливание в коллектив, распределение задач, осознание происходящего.

И вот, наконец, когда зеленый, только прибывший боец, перестает быть таковым, а становится частью команды, то он начинает вкушать плоды той работы, на которую он не подписывался...

Работа разработчиком в ИП PHP, Программирование, Разработка, ИП, Сайт, Создание сайта, Длиннопост

На только вышедшего из фазы "новичок" разработчика перекладываются все задачи, которые только прилетают от заказчиков, пропуская фильтрацию от менеджера(ов), ведь, обычно, менеджеры разбираются в рабочей сфере лишь поверхностно, что является одной из основных причин появления странных, порой почти невыполнимых задач, которые бедолага должен выполнить в настолько короткий срок, что сон становится чем-то из разряда поощерения.

Оплата труда неспящего разработчика, на которого накидывают все больше и больше задач, в какой-то момент перестает иметь ценность, ведь на первом месте у человека, стучащего по клавиатуре, становится выживание — никакие деньги не смогут вернуть потраченное на разработку время.

Заработная плата работника также странно формируется — деньги за выполненные задачи, однако бывают задачи, которые можно выполнять месяцами и что же, сидеть без денег все это время? Нет, конечно! Задачи будут кидать и кидать... Без остановки. Когда у разработчика уже более 50 различных задач, каждая из которых "срочная", то абсолютно размываются какие-либо границы "когда это закончится". Задач становится все больше, времени все меньше, заказчики подгоняют, но у разработчика упал сервер, который в срочном порядке нужно поднять...

Работа разработчиком в ИП PHP, Программирование, Разработка, ИП, Сайт, Создание сайта, Длиннопост

Вот и получается, что на одного разработчика приходится очень много задач, плюс настройка всего, что только может существовать в мире, потому что "нада", а заказчики продолжают ждать выполнение поставленных задач от команды разработчиков.

Каждый работник ИП, устроившись программистом, выполняет роли всех работников, то есть разработчику могут спокойно сказать "иди пиши статью", а сделать он ничего не сможет — штата не хватает, а организация выполнения задач хромает на своих трех сломанных ножках.

В ИП сложно работать, а с ИП трудно иметь дело.

Показать полностью 3
[моё] PHP Программирование Разработка ИП Сайт Создание сайта Длиннопост
8
neigepremiere
3 года назад

Хочу сделать свой первый сайт⁠⁠

поучив html и css сверстал одностраничник, но что дальше делать не имею никакого понятия. Как его загрузить на сервер? как вносить изменения? куда и как записывать данные посылаемые c сайта (имею ввиду почту и номер телефона)? не смог найти толковой информации! Куча статей дающее общие представления, но ничего конкретного или пишут что нужно знать пхп со стажем 1 года и еще 5 фреймворков. Действительно ли нужно выучить пхп и фреймворки для того чтобы создать обычный лендинг и разобраться как это работает? посоветуйте где новичку взять информацию или книгу где по-шагово есть объяснения как разобраться с бекэндом! Немного знаю java(писал калькуляторы и конверторы) . А то про самое интересное не могу узнать толком. Пожалуйста без желчи)))

[моё] Backend Web Web-программирование Программирование PHP Текст
22
15
PHPProg
PHPProg
3 года назад
Программирование на PHP

Скрипт для веб камер с RTSP⁠⁠

Мой первый пост, готов принять критику.

Скрипт позволяет сохранять видео с камер поддерживающих RTSP.

- Имеется удобное добавление, редактирование камер в систему.

- Имеется возможность добавления фильтров для обработки видео.

- Анализ видео на наличие звуков, удаление видео с "тишиной"

- Установка времени работы камер(запись только тогда когда необходимо)

- Анализ видео на наличие разговоров и получение текстовой версии.

Скрипт для веб камер с RTSP PHP, Веб-камеры, Web-программирование, Длиннопост

Список всех камер, для камеры указывается ссылка RTSP и параметры для ffmpeg (чтобы сохранять поток в видео файл) Каждую камеру можно запустить и остановить отдельно, также указать время работы.

Скрипт для веб камер с RTSP PHP, Веб-камеры, Web-программирование, Длиннопост

Раздел для управления фильтрами, возможность добавлять, редактировать фильтры, которые применяются для обработки видео файлов. В системе реализованы фильтры удаления шума из видео(есть камеры которые стоят около кондиционеров и шум удаляет на ура), нормализация видео файла, бывает что видео поток обрывается из за плохого интернет канала, получение из видео текста(есть возможность добавлять словари для разных языков)

Скрипт для веб камер с RTSP PHP, Веб-камеры, Web-программирование, Длиннопост

Основная страница для просмотра видео, есть возможность выбрать камеру и просмотреть видео записи по временным меткам. Для каждого видео имеется возможность просмотреть и применить фильтры, если имеется текст, он отображается с временными метками, по нажатию на которые видеоплеер переходит на указанное время.

Реализованы автоматические скрипты для обработки видео(удаление видео с тишиной или без движения), видео с текстом или помеченные отправляются в Telegram чат.

Скрипт для веб камер с RTSP PHP, Веб-камеры, Web-программирование, Длиннопост

Для минусов укажу комментарий, спасибо если дадите публиковаться.

Дубликатов не найдено, выдает скрины каких то приложений.

Показать полностью 3
[моё] PHP Веб-камеры Web-программирование Длиннопост
6
4
alexmarned
3 года назад

Учу питон, пишу парсеры. Часть 3⁠⁠

И вот я пишу парсеры. На php. Есть функционал в стандартной установке, есть библиотеки для парсинга, есть примеры. Да вот неприятность – владельцам сайтов и хостингов сильно не по душе, когда их парсят и борются с этим всеми средствами. И почти сразу же меня начали блокировать. Я перебрал несколько вариантов, добавлял куки, агентов, настройки, разные варианты и подходы – не получается. Вернее, не получается стабильно.


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


Стал искать другие варианты – одни для меня тогда были сложные, другие непонятно как сделать, остановился на питоне (так посоветовали). Попробовал учебные примеры – получилось. Стал писать парсер для моего случая и ничего не получается. Отложил в сторону парсеры, взял учебник питона и стал его листать. Я уже учил этот язык лет десять назад, половину прошёл и забросил, тогда у меня не было для него практического применения. Стал учить заново.


Учебные примеры довольно простые, только какие-то пустые – ну зачем мне срезы, стринговые операции, операции с кортежами? Стал мучать именно парсеры; библиотека BS4 для парсинга рекомендуется во всех статьях и есть несколько видео её применения. Через пару недель по вечерам первый успех – стало собираться со страниц учебных примеров именно то, что мне нужно. И приступил к нужным мне сайтам – тут опять неприятность – на каких-то сайтах получается, на некоторых вообще ничего не получается. То дизайн на сайтах такой, что никак за элемент не зацепится, то пагинация настолько оригинальная, что работает только через стрелки пагинации, разные проблемы.


Мне опять подсказали - нужно использовать Selenium. А это много сложнее, с моими скудными знаниями это было сложно. Только это хоть и медленный и очень непростой вариант, но именно он помог мне получать данные почти с любой страницы. Язык пришлось очень сильно доучить, ушло больше полугода и это на базис. Сейчас нормальные курсы предлагают  обучить базе языка за 2,5 года, думаю это реальный срок. Я учил быстрее, под практическую задачу,  только у меня от этой учёбы были постоянные головные боли и полное непонимание как что работает.


С тех пор я написал почти сотню парсеров на BS4, и больше 400 парсеров на selenium и до сих пор не всё получается. То с кодировкой проблемы, то с очисткой данных проблемы (так вот зачем в книгах по питону столько места на первый взгляд бесполезного материала ), то не пишется в базу или не могу получить элемент. Вот сейчас опыт больше 500 парсеров, постоянно учу и практикуюсь и не всегда получается написать простой парсер.


И питон на первый взгляд простой язык, на деле оказался настолько же простой, как и php. Во многом они пересекаются, по другому и быть не могло, и всё таки они для разных целей.


И немного попробовал python для модных ныне вещей – распознавание текста, фото, нейронные сети, обработка текста и многое другое. Делал это на основе того, что я неплохо знаю математику и много прикладных вещей, включая статистику. Даже сделал пару небольших сервисов, массово они не взлетели. Тут не всё однозначно, с учётом моего опыта судить сложно, но есть что показать и рассказать. Не пробовал только веб разработку на питоне, на мой взгляд на пыхе это делать проще и выгоднее. И ещё удобно делать математику на python, я напишу что думаю о тех, кто говорит – «программисту математика не нужна». И последнее нужно довольно долго объяснять, продолжу на следующей неделе.

Показать полностью
[моё] Программирование Обучение Фриланс PHP Python Текст
5
alexmarned
3 года назад

Как я учил php или часть вторая⁠⁠

Итак я стал учить php. Я не знал вообще ничего из него – ни истории создания, ни применения, ни что это серверный язык – вообще ничего. Мне просто нужно было поправить тему сайта и везде писали, что это делается через этот язык.

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


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


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

Этого хватило, чтобы немного поправить шаблон сайта. Плюс модули, пробовал по рекомендациям, из двух десятков удавалось запустить один и этому радовался.

И как-то так получалось, что все модули и плагины требуют именно ту тему, которую делал автор или нужно эти модули самостоятельно дорабатывать. Вот и мне понадобилась доработка плагина, нужен javascript, а я его совершенно не знаю – один язык не получается нормально выучить, куда там ещё что-то учить. С горем пополам доработал я свою тему и успокоился. Даже начал учить новое по своей основной работе и всё стало получаться гораздо лучше.


Только прошло совсем немного времени и мне опять понадобились доработки сайта. Полез на форумы, там объясняли, что нужно лезть в движок, по-другому никак. А в движке ООП, которое я не знаю – опять присел за учебники.


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


Итак, я стал заново учить язык и учить ООП. Учебники выучил, знаний почти не добавилось – ну как-то слишком всё упрощено и выхолощено. Стал разбирать реальные примеры, правильно сделанных движков очень мало, это я потом понял.


Мучался долго, наконец начало получаться. И может хорошо, что сразу не получилось по советам с форумов – в движок влазить нельзя, для того ооп и существует. Доработал тему и погрузился в свою основную работу.


Ненадолго расслабился – а потом по работе мне понадобилось собрать материал для работы, это гигабайты информации и вручную собирать, так поседею раньше, чем соберу сотую часть. Залез в интернет и там узнал, что мне нужны парсеры. Знаний у поэтому вопросу никаких, но пишут, что на php это можно делать. Ну php я «немного» знаю, должен справиться. К тому моменту я уже понимал, что php я знаю вообще поверхностно, какой баран написал, что это очень простой язык? Ну приступил и сразу обломался.


Продолжу на следующей неделе.

Показать полностью
[моё] Программирование Фриланс PHP Обучение Бизнес Текст
9
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии