Найти в Дзене
здесь и сейчас

Демократизация веб-автоматизации: программирование для социологов

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

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

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

Хотя некоторые приложения, например, автоматизированное тестирование интернет-страниц, в основном полезны для промышленных целей.

Очистка полезна и за пределами индустрии программного обеспечения. Его растущая популярность отражает осознание ценности данных.

По мере того, как много людей начинают интересоваться принятием решений, основанных на данных, интерес к ним растёт.

Источник: https://pixabay.com/vectors/programmer-programming-code-work-1653351/
Источник: https://pixabay.com/vectors/programmer-programming-code-work-1653351/

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

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

Методы Usable Programming (UP) - это идея объединения подходов из языков программирования и взаимодействия человека с компьютером, чтобы сделать программирование доступным для широкой аудитории.

Стандартная страница любого сайта это цикл обратной связи, в котором пользователь выполняет некоторые действия, а страница возвращает определённые данные.

Для чего нужна интернет-автоматизация?

Цель интернет-автоматизации - собрать данные о действиях, которые должен был завершить пользователь через взаимодействие с сайтом, а затем сделать искусственного пользователя (БОТа), который выполняет те же действия. Это ключевая идея, лежащая в основе PBD.

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

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

Источник: https://pixabay.com/photos/businessman-production-planning-3075837/
Источник: https://pixabay.com/photos/businessman-production-planning-3075837/

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

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

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

Источник: https://pixabay.com/photos/programming-code-imac-computer-2115930/
Источник: https://pixabay.com/photos/programming-code-imac-computer-2115930/

К 2009 году технология PBD еще не достигла уровня производства программ, необходимых для сбора наборов данных, которые нужны нетрадиционным программистам для их целевых задач. Примерно в то же время, сеть стала намного сложнее.

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

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

С появлением интерактивных страниц с отслеживанием состояния существующие инструменты начали разрушаться по новым причинам.

Никто не придумал, как заставить синтезатор перепроектировать JavaScript и AJAX, чтобы запускать все нужные варианты поведения и получать все необходимые данные с сервера. Прогресс в области автоматизации PBD остановился.