Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Вывод в консоль информации о эллементе по клику?

Лучший ответ:
так как сейчас, то в clickHandler'e this это элемент на который ты кликаешь ( console.log(this) попробуй )
пишем эту строчку так, тем самым привязываем хендлер к this то есть классу Game, где это всё происходитcurrentPipe.addEventListener('click', this.emojeClickHandler.bind(this))

// или так

currentPipe.addEventListener('click', () => this.emojeClickHandler());

Худший ответ:
https://jsfiddle.net/svnp9hbk/
т.е. что, вы вот тут вот теряете контекст thiscurrentPipe.addEventListener('click', this.emojeClickHandler);там еще такая строка есть. Нужно либо обернуть ее в стрелочную функцию, либо юзать bind, либо она должна быть стрелочной функцией и.т.д.
и вот тутconsole.log( 'pipe' , 'number= ' + this.randomPipe , ':' , 'emoji= ' , '' + this.randomAnimals)вы методы randomPipe и randomAnimals забыли вызвать, нужно добавить скобки.
Вопрос: Какие аналоги zapier.com вы знаете? Критерии: дешевле, но не менее надёжно?

Лучший ответ:
1. https://ifttt.com (бесплатный, интегрировано 300+ сервисов)
2. https://zapier.com (бесплатно до 5 сервисов, платно 700+)
3. https://cloudhq.net (не все сервисы есть на бесплатном тарифе, но самые популярные, в том числе OneNote, Google Drive, Gmail — есть)
4. https://www.integromat.com/en/

Худший ответ:
Бесплатный русскоязычный аналог https://apiway.ai/
Вопрос: Не удается добавить тень на стыке блоков. Какие есть решения?

Лучший ответ:
у тебя серая тень на сером блоке, как ты её хочешь увидеть? поменяй цвет.

Худший ответ:
Можно добавить тень псевдо-элементом: jsfiddle.net
Хотя, тень у вас и так есть.spoiler.header{
  height: 20px;
  background-color: red;  
  position: relative;
  z-index: 1000;
}

.slider{
  position: relative;
  z-index: 1;
  height: 300px;
  background-color: grey;
}

.slider::before {
  box-shadow: 0 2px 8px #000;
  content: "";
  position: absolute;
  top: -8px;
  width: 100%;
  height: 8px;
}
Вопрос: Как сделать вот такую кнопочку CSS?

Лучший ответ:
Не надо картинкой. Картинки - ущерб))))))))
Да, лучше svg-шкой бахнуть. 
Через css маской можно через clip-path (но это опять же в svg маску рисовать). 
Можно через border-radius поиграться. Но не факт, что точно такой же результат будет.

Худший ответ:
Лучше конечно картинкой, благо она будет небольшой. Можно сделать через SVG, возни много, но зато потом точно будет понятно, что быстрее это сделать через картинку.
Вопрос: Что произойдет, если вставить в разрыв транка неуправляемый свич?

Лучший ответ:
По стандарту тэгированные фреймы должны проходить без проблем. По факту как повезёт.

Худший ответ:
Скорее всего будет работать дальше. Но получите место для возникновения загадочных проблем ;)
Лучше так не делайте.
Вопрос: Как задать ширину классу?

Лучший ответ:
var width = document.getElementById('firstElement').offsetWidth;
document.getElementById("secondElement").style.width = width;
UPD: в этом ответе - на чистом JS
UPD2: актуализировал UPD

Худший ответ:
var elemWidth = $(тут класс который имеет ширину).width();
$(тут класс которому нужно задать ширину).css('width', elemWidth);
Вопрос: PyCharm и бесплатное использование в коммерческой разработке?

Лучший ответ:
Тут, как мне кажется, происходить путаница понятий. Лицензия Apache2 относится к коду IDE. Т.е. ту часть кода, которая открыта под этой лицензией можно в соответствии с ней использовать (в своих проектах, к примеру). Например никто не мешает замутить свою супер-IDE на базе PyCharm CE. Для, к примеру, языка Forth. Или сделать на её основе крутой бесплатный инструмент для разработки всякого AI.
Это всё не имеет отношения к тому, под какой лицензией будут ваши разработки. Тут надо смотреть на лицензии используемых вами библиотек и не налетать на нарушение GPL, например, используя такие либы в коммерческих продуктах с закрытыми исходниками. У QT по этому поводу, к примеру, свои правила...
Так что не парься, reishi - твори!

Худший ответ:
а кто узнает? (с)
Вопрос: Как называются электродвигате для движения по нескольким осям сразу?

Лучший ответ:
Таких не существует. Используется два шаговых двигателя.

Худший ответ:
Они называются 2-в-1 - два двигателя в одном корпусе.
Честно - ни разу таких не видел.
Вопрос: Как выровнять inline-block вертикально по центру?

Лучший ответ:
Советую прочитать эту статью, там описаны все варианты центрирования по горизонтали и вертикали для строчных (включая inline-block) и блочных элементов.

Худший ответ:
codepen.io/Geyan/pen/WxgVBa 
Скажем надо добавить ещё один блок-родитель для текста , и дальше увидите
Вопрос: Почему не работает регулярка?

Лучший ответ:
Используйте php.net/manual/ru/class.domdocument.php

Худший ответ:
для начала все символы / должны быть экранированные так \/
и второй момент можно проверить свою регулярку тут
Вопрос: Какой учебник по Android Вы посоветуете?

Лучший ответ:
Здравствуйте.
Из книг могу посоветовать следующие:
1. П. Дейтел, Х. Дейтел, А. Уолд. Android для разработчиков. 3-е издание(2016);
2. Брайан Харди, Билл Филлипс,Крис Стюарт, Кристин Марсикано.Программирование под Android. 2-е издание (2016).
Но у книг есть один веский недостаток - они выпускаются уже устаревшими.
Если хотите иметь полную информацию по последним версиям Android, а также нововведениям в SDK, то официальная документация наше все - https://developer.android.com/index.html
Также есть хороший ресурс с гайдами - https://guides.codepath.com/android

Худший ответ:
Ещё на джавараш есть переведённый бесплатный курс https://javarush.ru/quests/QUEST_GOOGLE_ANDROID но не уверен, что там по последнему андроиду
Вопрос: Как быстро заменить цифры в однотипных документах на разные только в одном месте?

Лучший ответ:
Попробуйте так:
1. Сделайте резервную копию файлов
2. Создайте файл update.js (код ниже) в директории с файлами
3. Запустите node update.js
update.jsconst fs = require('fs');
fs.readdirSync('.')
  .filter(file => file.indexOf('.php') !== -1)
  .forEach(file =>
    fs.writeFileSync(file,
      fs.readFileSync(file, { encoding: 'utf8' })
        .replace('1', parseInt(file))));

Худший ответ:
так напишите скрипт на node.js или на php который пройдется по файлам и произведет замену.
- получить список файлов
- прочитать каждый
- заменить подстроку
- записать файл
каждый из этих пунктов легко гуглится. делов на минут 10.
Вопрос: Какие ВУЗы предоставляют дистанционное обучение в Европе и США?

Лучший ответ:
Для себя в свое время нугаглил такой набор ссылок:
www.uopeople.edu
mcdvo.com.ua
https://distant.tsi.lv/
https://www.riseba.lv/ru/distancionnoe-obucenie
https://vk.com/university_lbk
Думал в LBK диплом получить - это колледж с возможностью обучаться 3 года вместо 5, но диплома достаточно для bluecard, но как-то не сложилось, а теперь у них сайт не работает и группа в вк выглядит мертвой...
А так вроде дистанционное обучение на русском в Европе в Латвии практикуется, в основном

Худший ответ:
scpd.stanford.edu/admissions/apply-and-enroll/mast...
Если не ошибаюсь там стоит что-то около 5к$ за некоторые курсы + экзамены на поступление
Вопрос: Можно ли использовать известных персонажей в своей игре?

Лучший ответ:
Есть такая формулировка "Похожи до степени смешения". Т е в случае суда будет назначена экспертиза, которая возьмет Марио и Шарио и будет решать, это плагиат или просто некая похожесть. Будет ли среднестатистический потребитель ассоциировать Шарио с Марио или будет считать его самобытным персонажем?
Кстати, есть еще один обходной путь. Если будет позиционировать, что Шарио - это пародия на Марио, а не плагиат и эксплуатация образа, то с точки зрения авторского права это вполне законно.

Худший ответ:
Нельзя использовать. Такие игры не проходят модерацию либо быстро удаляются.
Вопрос: Нормально ли отдавать статику с помощью node.js?

Лучший ответ:
Лучше поставить nginx, так как он явно лучше будет, когда много не очень быстрых соединений, особенно по памяти. Еще лучше конечно статику на CDN закинуть.

Худший ответ:
Хуже не будет.
Вопрос: Python. Что делает эта строка?

Лучший ответ:
Buf = [0]*K
эквивалентно следующей конструкции:Buf = [0 for i in range(K)]
Т.е. Buf - список, каждый элемент которого - 0.

Худший ответ:
умножение списка. Сядьте в оболочку и потренируйтесь.... 
>>> dd = [0] * 7
>>> dd
[0, 0, 0, 0, 0, 0, 0]
>>>
Вопрос: Как оптимизировать анимацию css3 на старых устройствах?

Лучший ответ:
Не нужно ничего анимировать в старых браузерах. Там эффекты должны быть просты, вкл/выкл. Никаких промежуточных анимаций. У людей и так все тормозит, древние компы едва тянут современные сайты, а тут еще анимация. Гвоздь в гроб.

Худший ответ:
не нужно анимировать позиционирование, анимируйте через transform translate
Вопрос: Знаете ли Вы толковые статьи об опровержении теории цвета?

Лучший ответ:
Опровержение мифа - дело неблагодарное и чаще всего бесполезное
Как вариант, поставьте на 3 (больше лучше) разных монитора заставки из полосок с цветами радуги и покажите насколько сильно отличаются цвета на нормальных мониторах и на тех, которые используют конечные юзеры
Ваш единственный маркер в такого рода вещах - A/B тестирование
И его результаты вам могут сильно не понравится
Также не стоит идти против течения, если у вас нет чуйки в данной области

Худший ответ:
Только тестирование с помощью реальных пользователей выручит в этой ситуации. Очень хорошо помогает в спорах типа, "зеленая или синяя кнопка" такой инструмент как https://optimize.google.com/ 
context-up.ru/google-optimize
Вопрос: Как правильно задать высоту блока когда между верх и ниж. контентом большое расстояние?

Лучший ответ:
Как тебе такой вариант?К левому блоку.navigation {
    background: #31475E;
    bottom: 0;
    left: 0;
    position: fixed;
    text-align: left;
    top: 0;
    width: 250px;
}К правому блоку.page {
    padding-left: 250px;
}В левом блоке делаем footer.footer {
    bottom: 0;
    position: absolute;
}

Худший ответ:
display: flex; для родительского блока
можно еще и с заменой направления главной оси и justify-content: spact-between
Вопрос: Какие есть варианты подключения интернета на linux ubuntu через терминал?

Лучший ответ:
Необходимо получить у провайдера необходимые данные.

Худший ответ:
как подключить то не знаю что. к сожалению
Вопрос: Что такое asyncio и в чём реальное отличие от многопоточности?

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

Худший ответ:
apache - многопоточный веб-сервер.
nginx - асинхронный.
Угадайте почему на задачи обслуживающие 100500 запросов в секунду ставят nginx?
Вопрос: Аутентификация в Lumen: Middleware vs Provider?

Лучший ответ:
Почему не объединить работу в Middleware? 
Service Provider и Middleware отвечают за разные вещи. И один не заменяет второй. 
Разделение ответсвенности.Какой практической цели служит Service Provider?
Service Provider умеет делать только что, что от него необходимо. В нем вся логика работы.
Middleware содержит логику для работы с запросом, оно не знает КАК ИМЕННО авторизовывать пользователя. Оно знает что нужно дернуть AuthServiceProvider::guest(), например, и в зависимости от результата пропустить запрос дальше или прервать его.
Для простых приложений это не критично, можно хоть один GodObject на всё сделать, и оно будет работать.
Нужно мысль в плане расширения функционала.

Худший ответ:
Потому что называется HTTP Middleware. Т.е. мидлавейр ничего не знает о вашей базе данных и тп
Вопрос: Определение СУБД. Что относится к субд?

Лучший ответ:
SAP, 1c предприятие и прочие программы которые работают с базами данными) СУБД? Если нет, то почему? 
Они работают с базами, а не обеспечивают работу баз. В их случаях СУБД это MS SQL Server, Oracle, Postgres и.т.п.

Худший ответ:
Если нет, то почему?SAP, 1c предприятие и прочие программы просто работают с базами данными
Вопрос: Какой драйвер лучше использовать на Ubuntu 16.04?

Лучший ответ:
Nouveau, поэтому по-видимому она быстро работает, чем NVIDIA.
1. Nouveau просто принципиально не может работать быстрее, потому что это - свободная приблуда, слепленная из такого же проприетарного дайвера NVIDIA, потому что NVIDIA не даёт полных технических спецификаций на свои чипы.
2. Если вы подберёте проприетарный драйвер NVIDIA для своей карты - это будет лучше. Но не все драйвера NVIDIA работают со всеми картами.
3. Если вам нужная только видеокарта NVIDIA, то разница не так большая... но вот если вам нужны будут программы, использующие параллельные GPU-процессоры карты, библиотеки и средства CUDA - то только проприетарный драйвер NVIDIA.

Худший ответ:
nouveau не использовать, он проблемный (по крайней мере на десктопе). и староват 131 драйвер.ссылка
Вопрос: Как перевести сайт на современный html?

Лучший ответ:
Наймите программиста за деньги

Худший ответ:
начните с обращения в службу поддержки хостера
Вопрос: Как вы относитесь к такому тестовому заданию?

Лучший ответ:
Олег Кулаков: 
Я бы не стала делать по нескольким причинам:
1. Слишком много для халявного задания. 
2. В "темные" игры не играю. Не делаю никаких заданий связанных с фишингом, рефератами, диполомами форексом и т.д. По логике: потом я просто не буду иметь права возмущаться откуда столько разного рода нехороших людей (назовем мягко).

Худший ответ:
Норм задание.
Вопрос: Как бороться с плагиатом мобильного приложения?

Лучший ответ:
Вы базу защищали в роспатенте или оформляли авторское свидетельство через депонирование кода и документации?
Если нет - самое время! (сервис проверил лично, 5% скидка!)

Худший ответ:
Административно - никак. Тк ты сам признался, что реверсил его апп и копировал его БД
Выкатывай обновления чаще, общайся с пользователями и тд
Вопрос: Как создать g code из 3d модели?

Лучший ответ:
Может вам просто использовать подходящий инструмент?
Нет, синема хоть сколько дэ не для станков.

Худший ответ:
Для этой задачи есть CAM-системы. Это такой зверь в который загоняется 3D-модель, настраивается  система координат и строится технологический процесс. С допусками на обработку,, оптимизацией траектории инструмента, корректировками, указанием смены инструмента и т.д.
Но есть нюанс. Нюанс называется связка "станок+стойка", в рамках CAM имеющая вид  конкретного препроцессора под конкретную стойку и типа станка - 4 оси бывают разные. Есть т.н. 3.5, которые тоже 4, да не очень. В частности поворотный стол на некоторых умеет крутиться только на 180, а не на 360, в итоге команда на поворот более 180 выдаст ошибку на железе, хотя симуляция отработала. Иными словами G-код для одной стойки может быть весьма непохож на код для другой стойки, особенно по части понятий стойки относительно положения осей. В своё время я плотно работал со SprutCAM, поскольку там были мои стойки и типы станков и модельки любой сложности корректно перелопачивались в код, который успешно отрабатывался стойкой.
Но систем гораздо больше. Можете ознакомиться с рынком, обычно в доках есть модели стоек и станков. 
А вот по вопросу исходной модели.. ну CAD-файлы тот же Sprut ест любые. Кормил его sldprt, iges, step, m3d.. чем только не кормил, но насчет C4D ничего не скажу. "Не по феншую" оно точно, но экспорт в iges и stl там есть.
Так же многие CAM-системы, вроде MasterCAM или SurfCAM любят (во всяком случае могут) работать с облаком точек и даже парочка плотно связана с Rhino. Соответственно перегнать что-то из C4D в нужный формат не проблема. Вопрос требований точности. Импорт-Экспортные операции им явно не на пользу. Именно поэтому расчётный софт по гребным винтам часто даёт набор координат по которой CAM уже сама строит поверхность. Так нет проблем с кривизной поверхностей, переброшенных 10 раз из формата в формат.
Вопрос: Не подключились шрифты otf что делать?

Лучший ответ:
Вы не поверите, но вот это: "content/fonts/DINpro/DINpro-Bold.ttf"
и вот это: "../fonts/DINPro/DINPro-Bold.otf" - это не одно и то же. У вас в CSS используется первый вариант (такого файла у вас просто нет), а нужен второй вариант - такой файл у вас есть.

Худший ответ:
1. oft не все браузеры используют, делайте еще и ttf
2. ссылка должна быть ../fonts/DINpro/DINpro-Bold.otf или со слешем впереди, он ищет папку content в папке с css файлом и он прав.
Вопрос: Как запомнить значение переменной после перезагрузки страницы?

Лучший ответ:
localStorage.setItem("isLoggedIn", loggedIn)

инициализация переменной
loggedIn: boolean = (localStorage.getItem("isLoggedIn") === 'true') || false
но у вас и так это есть
в чем сложность то?

Худший ответ:
Ответ сильно зависит от того, зачем это нужно. Как вариант - записать в cookie.
Однако, допустим, у юзера открыто несколько окон с этой страницей - тогда непонятно, как различать эти переменные от разных страниц.
Есть ещё разные варианты перезагрузки страницы - например, переход куда-то на другую страницу (в т.ч. на другой сайт) и возврат обратно.
Это не ответ, а только указание на возможные сложности.
Вопрос: Что не так с моей валидацией в yii2?

Лучший ответ:
Я вам несколько иначе постараюсь объяснить. Валидаций может быть 2 - серверная и клиентская.
Смотрите: когда мы говорим, что email - unique, мы же не передаем клиенту, в js-валидатор перечень всех занятых email-ов, такая проверка осуществляется уже на сервере, если на стороне клиента прошли другие валидации. Тоже самое и с собственноручно написанными php-проверками, они не трансформируются же в js-код и выполняются на сервере в момент вызова метода validate() модели. Поэтому самому для себя, для понимания, что происходит - откройте исходный код html-страницы с формой и посмотрите, какие правила валидации прописаны в js, это здорово поможет разобраться в ситуации. 
Что касается решения проблемы, то либо используйте ajaxValidation, как вам уже написали выше, либо присмотритесь к валидатору Compare Validator. В вашем случае для email не прописано правило unique, следовательно могу сделать вывод, что подсветка зеленым инпутов происходит еще до отправки формы на сервер, т.е. серверная валидация не отрабатывает.

Худший ответ:
В представлении разрешите ajax-валидацию:<?php $form = ActiveForm::begin([
    'enableAjaxValidation' => true,
    'validationUrl' => ["site/entry"] // опциональный параметр, указывает метод для валидации. По умолчанию обработчик формы.
]); ?>
В контроллере проводите валидацию:if (Yii::$app->request->isAjax) {
    Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;

    $model->load(Yii::$app->request->post());
    return \yii\widgets\ActiveForm::validate($model);
}
PS В консоли разработчика браузера убедитесь, что запросы уходят и ответы корректные приходят. Это поможет в решении других ошибок ;)
Вопрос: Что делать module 'csv' has no attribute 'writer'?

Лучший ответ:
лежит ли рядом файл csv.py? если да - то импортирован будет именно он

Худший ответ:
Решилось переустановкой Python
Вопрос: Какие css сетки используете вы и почему?

Лучший ответ:
Smart-grid.
Отличная поддержка и невероятно удобное использование. 
Минус: нет документации, нужно самому разбираться, но оно того стоит. Автор проводит платные курсы, потому и нет документации.

Худший ответ:
вот это тоже ничего - https://github.com/jgthms/bulma
Вопрос: Горизонтальный masonry на css?

Лучший ответ:
обертка с whitespace nowrap и overflow-x auto
внутри блоки inline-block 
ну и внутри уже наборы ваших элементов
там простор для фантазии, но я бы сделал обычной сеткой или флексами

Худший ответ:
Возможно вам подойдёт Css grids
Вопрос: Как загрузить файл на Облако Mail средствами php?

Лучший ответ:
попробуйте добиться 1 в 1 совпадения вывода в хттп отладчик (ну, кроме Date) от браузера и вашего скрипта, не факт, что курлом вы правильно аплоадите

Худший ответ:
Попробуйте отправить файл контекстом в бинарном виде
Вопрос: Как запустить несколько скриптов в NodeJS?

Лучший ответ:
pm2, разные порты и все дела

Худший ответ:
Ну по пробуйте все организовать в виде модулейmodule1.js - серверmodule2.js -записи БДindex.js -запускаемый файл//module2.js
function module2() {
  console.log('module2 started);
  setTimeout(function () {
    setInterval(function () {
      console.log(('module2 timer:' + new Date().getTime()));
    }, 2000);
  }, 1000);
}

module.exports = module2;//index.js
const module1 = require('./module1'),
          module2 = require('./module2');

module1();
module2();
Вопрос: Какое время ответа сервиса должно быть при разработке api?

Лучший ответ:
В старой книжке по юзабилити было сказано примерно так: 
0,1 s (или 100 ms) - предел, до которого пользователю кажется, что система работает мгновенно и никаких прогресс баров не требуется.
1 s (или 1000 ms) - предел, до которого пользователь замечает небольшую задержку, но в целом ему кажется, что все работает нормально. 
10 s (или 10 000 ms) - пользователь перестает следить за процессом и ему кажется что система подвисла. 
В целом логика проста: меньше - лучше. Думаю, что предел когда все можно считать OK - до 1 секунды, лучше 500 ms (если конечно речь не про вызов API в цикле - тогда надо чтобы все запросы уложились в этот предел). Если отклик больше имеет смысл для той системы (обычно некий пользоваельский интерфейс), которая использует API - добавить какую-то анимацию вроде индикатора загрузки - в этом случае пользователь спокойней переносит б0льшие интервалы отклика, так как видит что система что-то делает. Обычно в веб приложении, которое лезет за данными (особенно если это не по одному элементу а обработка пакетом) в какие-то внешние системы делают индикатор. Можно довольно просто навесить какую-то анимацию на все AJAX вызовы с помощью api.jquery.com/category/ajax/global-ajax-event-handlers - на старт показывать на завершение скрывать. Есть много готовых решений.

Худший ответ:
Смотря что за сервис и с чем его едят. 
У меня есть несколько сервисов, которые забирают данные по крону. Вот, там мне в целом все равно 100мс или 10с отдается запрос (утрировано). 
Если вы, делаете что-то, что требует оперативного обмена информацией, то до секунды вполне рабочий вариант. Но опять же, отдавать какой-нибудь json с списком 10 новостей для сайта визитки в течение секунды не айс. Тут надо разбираться.
Если же вы не можете повлиять на сервис отдающий (1с, sap и т.д.), железо там плохое, данные сложные, то есть куча вариантов как и тут избавиться от беды. Начиная от сервера прокладки, до раннего запроса информации.
Тут надо плясать от ситуации.
Вопрос: Кто может объяснить или дать источник, который объясняет что вот это значит — function(event, ui)?

Лучший ответ:
function(event, ui) {}
Эта запись означает, что при вызове функции внутри функции первый переданный ей аргумент будет доступен по идентификатору event, а второй - по идентификатору ui. Event это объект события, а в случае с jQuery UI ui это объект который передаёт вам jQuery UI, его содержимое зависит от контекста.
Вы никогда не поймёте что происходит если будете игнорировать ссылки на образовательные материалы, которые вам в каждом вашем вопросе присылают до чёрта. Попробуйте хоть один учебник до конца прочитать. Думаю, тогда вам всё станет понятно.

Худший ответ:
function(event, ui) {}
Эта запись означает, что при вызове функции внутри функции первый переданный ей аргумент будет доступен по идентификатору event, а второй - по идентификатору ui. Event это объект события, а в случае с jQuery UI ui это объект который передаёт вам jQuery UI, его содержимое зависит от контекста.
Вы никогда не поймёте что происходит если будете игнорировать ссылки на образовательные материалы, которые вам в каждом вашем вопросе присылают до чёрта. Попробуйте хоть один учебник до конца прочитать. Думаю, тогда вам всё станет понятно.
Вопрос: Как добавить массив в базу данных?

Лучший ответ:
Текстом:$text_array = serialize($arr1);
$text_array уже как строку в базу сохраняете, а при чтении unserialize() из строки и получаем массив.

Худший ответ:
сериалайз или json и пишится в строку.