Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Как вывести из массива заголовки title отмеченные checkbox'ом?

Лучший ответ:
Делаете ещё одно вычисляемое свойство, по аналогии с sum - массив title'ов отмеченных элементов:selectedServices() {
  return this.services.reduce((acc, n) => (n.checked && acc.push(n.title), acc), []);
},
Ну и выводите его:<ul>
  <li v-for="n in selectedServices">{{ n }}</li>
</ul>
UPD. А вообще, имеет смысл немного всё переписать, чтобы не обходить массив services полностью дважды (или трижды, четырежды - кто знает, что ещё потребуется делать с выбранными элементами в будущем). Сделаем selectedServices массивом не title'ов, а самих выбранных элементов:selectedServices() {
  return this.services.filter(n => n.checked);
},
Рендеринг title'ов, соответственно, станет выглядеть так:<ul>
  <li v-for="n in selectedServices">{{ n.title }}</li>
</ul>
И используем selectedServices для вычисления суммы, здесь трогать свойство checked больше не надо:sum() {
  return this.selectedServices.reduce((acc, n) => acc + n.cost, 0);
},

Худший ответ:
уот так уот!snippet
Вопрос: Как запретить слать запросы, если нажали на определенную кнопку в течение какого то времени?

Лучший ответ:
Судя по тому, как вопрос сформулирован - то есть без понимания того, как работает веб-сайт, то самое простое решение - это тупо заблокировать кнопку. 

Нормальным же решением будет использование очереди. 
Нажатие на кнопку помещает задачу в очередь, причем сначала проверяет - есть ли такое задание. Если есть - возвращает ошибку, "задание уже выполняется".

Худший ответ:
Я бы заблокировал кнопку. Вариант 2 на нгинксе настроить кэш на этот запрос на 10 сек. Вариант 3 использовать редис и кэшировать на теже 10 сек
Вопрос: Лучшие библиотеки для автоматизации в браузере, помимо Selenium?

Лучший ответ:
 Есть ли аналоги у Selenium?
 Есть ли аналог selenium?
 Аналоги selenium для python?
 Какой самый лёгкий аналог selenium?
 Есть ли аналог Selenium, но для EXE приложений?
 Что использовать вместе Selenium?
Такие вопросы здесь задают каждый день. Может пора учится пользоваться поиском?

Худший ответ:
Что у вас тормозит? сам браузер или управление?

Пишите приложение на вашем любимом языке программирования и используйте вебконтролы - .net - WebBrowser, mono - firefox, jawa и другие - WebKit, еще есть на базе chromium

В этом случае работаете напрямую со страницей минуя посредника. В 99% случаев достаточно просто инжектить javascript на страницу.

p.s. избавиться от браузера можно - если реверсить протоколы веб-приложения и симулировать его запросы с помощью curl но это бывает заметно сложнее (а почти невозможно).
Вопрос: Как «будить» iOS приложение после нескольких часов неактивности телефона?

Лучший ответ:
https://developer.apple.com/documentation/uikit/ap...
https://medium.com/snowdog-labs/managing-backgroun...

емнип, это всё что есть. работает своеобразно, но лучше, чем ничего.

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

Худший ответ:
Вангую изобретение отдельного гаджета который будет висеть на wi fi сети и делать то что вам нужно. Телефон для этих целей зачем? Народ для этого умные колонки выпускает и не привязан к разным осям. И со своих серверов со своим гаджетом может многое делать. Даже незаявленные киллер фичи есть - но нам об этом не скажут))
Вопрос: Как получить данные из JSON строки?

Лучший ответ:
Убери @ и смотри что возвращает json_last_error
https://www.php.net/manual/ru/function.json-last-e...

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

Лучший ответ:
То что у вас на картинке, это разметка текста, по сути html. Конкретно же в Дискорде используется язык разметки Markdown.
Картиночки "смайликов" перед текстом, называются emoji (эмоджи).
К Питону или ДжаваСкрипту это всё отношение не имеет. Так как вам нужно сначала создать текстовое сообщение, сверстать его. А потом уже отправлять любым удобным вам способом.

Худший ответ:
Такое сообщение может отправить только бот (хотя могут быть и обходные пути с помощью браузера, но они мне не известны). Что вы показываете называется Embed. Вот видео, в котором делается похожее на python:
https://www.youtube.com/watch?v=XKQWxAaRgG0
+Документация по discord.py (раздел с embed):
https://discordpy.readthedocs.io/en/latest/api.htm...
+Ещё есть русскоязычное видео, но оно не актуально:
https://www.youtube.com/watch?v=wNrPuU0c-8Y
Вместо Bot.say там нужно писать ctx.send. Это связано с тем, что discord.py была обновлена с версии async до rewrite
Вопрос: Как добавить генератор документов на основании введенных пользователем данных на сайт?

Лучший ответ:
Как финансист юристу ( :)) могу посоветовать сразу исходить из того, что у сайта будет какой-то бэкэнд и вот там-то и будет происходить основная работа. Делаем АПИ, который, скажем, принимает введенные пользователем данные в виде JSON, на их основе генерирует документ и, например, выкладывает в заданную папку, а УРЛ отдает назад на фронт для ссылки "Скачать документ". Ну, или если сайт делается на чем-то вроде Джанго/Node.JS, то можно обойтись без АПИ (там по сути бэк генерирует фронт на лету). 

Я сейчас проектирую примерно такую же вещь с бизнес-планами и как раз колеблюсь между вариантами "бэк и фронт общаются через АПИ" и "написать все на Джанго и не париться".

PS: Как вариант можно попробовать no-code/low-code решение, скажем в виде сайта на Тильде с формой, отправляющей данные в Таблицы Гугл (не помню, умеет ли Тильда делать это напрямую, но вроде должна), а там уже небольшой скрипт на Google App Script (который по сути JavaScript) генерирует документ и отправляет по почте заказчику. Или подвесить к той же Тильде свой сервис через вебхук и т.д. В общем, вариантов полно, вопрос только в навыках разработчика и деталях ТЗ.

Худший ответ:
Владимир, спасибо большое! Все стало понятно. А не посоветуете разработчика? А то не знаю как выбрать, кроме как в гугле искать. Или может вам будет интересно раз над таким же проектом работаете? Мне абсолютно не срочно.
Вопрос: Какой блокировщик рекламы наиболее эффективен сейчас для Firefox и Chrome?

Лучший ответ:
uBlock один из самых эффективных как по мне.

Худший ответ:
AdBlock Plus + NoScript - и Ваши волосы будут белые и пушистые... :)
Вопрос: Не могу подключиться к своему сайту на WAMP по внешнему IP. Что делать?

Лучший ответ:
у тебя по 80 порту идет роутинг на две машины, определись с одной, вторую удали.

Худший ответ:
Начинаем с основ - вы уверены, что у вас белый и не динамический IP?
Далее, какая у вас схема сети? Если есть NAT, настроен ли на нем проброс порта 80 (кстати, пора бы уже использовать SSL и порт 443).
Разрешает ли ваш провайдер работу по привилегированным портам?
Вопрос: Какой алгоритм предпочитаете для проверки целостности данных/файлов?

Лучший ответ:
Так от чего мы защищаемся?
Если от случайных повреждений, то вообще пофиг и смотреть можно на самый быстрый (например xxhash)
Если от злоумышленника, то любой криптографический. Ну и, кстати, sha1 сломан только в том смысле, что можно создать два файла с одним хешом. Подобрать коллизию  к выбранному файлу всё ещё нельзя.

Худший ответ:
md5 и sha512 да любой дело в производительности
Вопрос: Что такое COM объект, как происходит его разработка, какие особенности реализации COM Microsoft?

Лучший ответ:
1) Еще одна безумная инкарнация попытки микрософта по встраиванию одной программы в другую. До этого были DDE, OLE, ActiveX и прочий зоопарк. Про это даже легенды слагают.

Сначала были Windows API и DLL Hell. Революцией N1 было DDE - помните, как ссылки позволили нам создавать статусные строки, отражающие текущую цену акций Microsoft? Примерно тогда же Microsoft создала ресурс VERSION INFO, исключающий DLL Hell. Но другая группа в Microsoft нашла в DDE фатальный недостаток - его писали не они!
2) Долго, мучительно и с кучей копания в дебаггере. Спецификация COM - огромный многостраничный документ, которых вы боитесь.
3) Они были популярны в 1998 году и около того времени. Тогда даже рабочий стол форточки сделали таковым объектом. За 10 лет популярность пошла на спад, так как оказалось что кроме встраивания экселя в ворд, это все нафиг никому не надо (особенно в ТАКОМ виде), а программы могут общаться между собой не при помощи монструозного бинарного интерфейса с маршалингом, и даже не при помощи километров XML в SOAP, а гораздо более легковесными посылками и обращениями к REST API. Сейчас это чудо можно встретить разве что при работе с DirectX.

Худший ответ:
Это способ интерфейсного взаимодействия разработанный (я бы сказал слизанный с corba). Activex не мог быть раньше ибо это развитие ком. Предыдущий комментатор, судя по всему, опечатался.
1) ком объект это сущность класса который реализует IUnknown.
2)ну, с помощью компьютера. Слишком абстрактный вопрос. Обычно ты описываешь интерфейс и его реализацию , ну и потом дергаешь этот интерфейс. Всё достаточно просто.
3) ох уже эта молодежь. Особенности реализации описаны обычно в многостраничной литературе.
Вопрос: Возможно ли купить такой крепеж для телеком шкафа?

Лучший ответ:
В слесарке закажи.

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

Лучший ответ:
Мне 48 лет, из них больше 30 я в IT. Образование - 8 классов и "подворотня".
Мне иногда ужасающе нехватает высшего образования.
Все-таки лучше когда "школу обучения" прививают специалисты.
То что "программит на (чемугодно)" не столкнется с чем-то из математики - не верь.
Сидишь такой фигачишь сайты, и тут хренак - GIS-проект, и ты начинаешь натягивать теорему арксинусов на геоид Красовского, потому что нужны расстояния между точками поверхности.
Или задача фильтрации данных, и ты пытаешься осилить преобразование Фурье.
Или данные от источника могут поступать с запоротыми битами, потому что источник болтается на орбите, и ты впарываешься в коды Боуза-Чоудхури-Хоквингема...

Википедия? Агась! 
https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%B4_%...
Стало понятнее? Вот-вот... 

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

Худший ответ:
Конечно нужна, чтобы заграницу свалить
Вопрос: Для чего в вызове функции ставить двойные скобки?

Лучший ответ:
Чтобы передать кортеж из нескольких параметров, одним параметром. Но у вас в коде будет ошибка, так как вы объявили функцию с двумя параметрами, а при её вызове передаете один параметр.

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

Лучший ответ:
Связь могие ко многим. Как ещё?

Худший ответ:
В таблице с товарами делаешь колонку warehouse_id куда записываешь id склада. В моделях создаёшь связи и через with в запросе достаёт все товары определенного склада. Документацию читай, там все понятно на примерах показано.
Вопрос: Как сделать чтобы товары помеченные на удаление не выгружались на сайт?

Лучший ответ:
Легкий способ хотите?
Добавьте реквизит к товару и аналогичное свойство в Битрикс, например INDELETE со значением Y.
На стороне 1с запустить обработку, которая заполнит реквизит - по признаку "ПометкаУдаления".
В Init.php добавляете событие "После добавления элемента" - если содержит заполненное новое свойство - то удалить в Битриксе или деактивировать товар.

Второй способ:
В обработчик ПередВыгрузкой в 1с добавить что-то типа такого
Отказ=Источник.ПометкаУдаления;

Третий способ:
Зайти сюда /bitrix/admin/1c_admin.php?lang=ru
и просто выбрать нужный вариант)

Ведь, если у вас штатный модуль обмена, то в xml должно попадать ПометкаУдаления

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

Худший ответ:
Вам надо в настройках обмена с сайтом, в 1с добавить отбор по Номенклатуре у неё есть свойство пометка удаления. Поставьте равно ложь.
Вопрос: Что быстрее, Phalcon или чистый PHP?

Лучший ответ:
Быстрее то, что лучше написано. Сравнение Phalcon и Modx уже приводили. А drupal 7, который на php5.6 работает быстрее, чем drupal 8 на php7.

Худший ответ:
Phalcon уже мёртв. Его даже обычный Modx делал.
https://modx.pro/sites/7711
Вопрос: Как вытащить отдельные иконки font awesome?

Лучший ответ:
fontello.com - сервис где можно с разных сервисов собрать нужные себе иконки.

Худший ответ:
ответ, сейчас можно скачать отдельно иконки font awesome и использовать их как svg
Вопрос: Почему не работает свойство «justify-self: flex-end;»?

Лучший ответ:
Свойство justify-self относится к модулю CSS Grid и не работает при использовании в Flexbox.

Худший ответ:
это делается такsnippetsnippet
Вопрос: Старт проекта на NodeJS+MongoDB или PHP+MySQL?

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

В целом, итоговая производительность будет больше зависеть больше зависит от качества конкретной реализации, нежели от конкретного стека. У каждого есть куча ньюансов, которые могут создать проблем. Из них низкая сферическая производительность PHP + MySQL на старте - далеко не самая большая проблема.

Лучше не заниматься преждевременной оптимизацией. Сделать прототип на том стеке, что лучше известен. Уточнить требования и уже дальше решить - стоит оптимизировать или нет. А еще лучше сделать два прототипа и решить, что лучше на практическом сравнении. Практическое же сравнение делать на основании тестов из сформированных требований.

Худший ответ:
Функционал простой, прототип собрать быстро и протестировать взлетит или нет...
Почему бы за пару дней не собрать на том же wp, oktober cms(Laravel)?
Вопрос: С чего начать создание внутреннего сайта для гостей отеля (и стоит ли)?

Лучший ответ:
Главные вопросы, которые я бы задал себе, это:
1. Увеличит ли наличие такого сайта количество новых посетителей гостиницы?
2. Будет ли наличие такого сайта ключевым аргументом, чтобы в следующий раз посетитель остановился именно в этой гостинице?
Не знаю как обстоят дела конкретно у вас, но лично я не представляю сценария, при котором наличие подобного сайта будет решающим фактором выбора гостиницы и сможет нивелировать прочие пункты, влияющие на впечатление посетителей. То есть по сути это пустая трата денег и времени на то, что фактически никак не поможет бизнесу конвертировать данные затраты в дополнительную прибыль. Опять же, это мой обывательский взгляд на вещи, может я не прав)
P.S. ну и не стоит забывать что сейчас 2019 год и люди уже давно знают умеют и привыкли искать все что им нужно на сайтах, которые они знают. На крайний случай это решается одним поисковым запросов в гугле формата "p1 в p2", где p1 - то что ищем(рестораны, достопримечательности и тд), а p2 - город.
P.P.S. Почти в любом городе уже есть сайт/мобильное приложение - городской портал, в котором собрано все то, что вы хотите разместить на своем сайте и даже больше. Поэтому можно просто распечатать карточки со ссылкой на этот сайт/портал с пометкой, что на этом сайте можно узнать и найти все что интересует, и в каждом номере гостиницы оставить по одной такой карточке.

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

Лучший ответ:
Установи убунту в вмварь и в неё уже ставь докер, в чем беда то?

Худший ответ:
Поднимаете образ дебиана и работаете, кстати docker for windows прекрасно живет на этой машине.
Вопрос: Чем веб-верстальщику заменить Photoshop и Illustrator?

Лучший ответ:
Figma, Sketch, Zeplin
Просите дизайнера заранее экспортировать файлы например в Зеплин и все. Всем удобно.

Худший ответ:
https://assets.adobe.com/  но не знаю, открывает ли он eps
Вопрос: Как написать калькулятор, на чистом js?

Лучший ответ:
Побеждает тот, у кого самый короткий код 
eval(prompt())
Не, ну а что? Какое условие победы, такой и код.)

Худший ответ:
Вбиваешь в дев консоль и получаешь результат.
Итак я написал код длиной 0 байт. 
Где мой приз в этом дурацком конкурсе?
Вопрос: Почему плохой интернет на Macbook Air?

Лучший ответ:
Для начала проверьте, только ли у этого роутера проблемы с маком. 

А дальше, я уже писал тут несколько раз, но повторю. 

1) На старом маке (у меня 2013 late), у меня dir 300 отрубался, если я подключал мышку. Частота BT 2.4 совпадала с wifi. 
2) wifi даже если он поддерживает n 300 mbit, все равно работает на частоте n 150mbit. не помню точно откуда, но вот у маков такая особенность. 

Еще учтите, что ваш роутер дико старый. Если вам дома нужно хорошее wifi   - ну купите вы хороший роутер домой. Они будут работать у вас ближайшие 10 лет отлично.  По крайней мере у меня ни один за 15 лет не ушел из жизни по своей воле.

Худший ответ:
В общем, честно не знаю что сделал и что в конечном итоге помогло. Поставил обратно на место mikrotik, сбросил настройки не оставляя дефолтных. Настроил вручную. 
Скрин настроек mikrotik (Wifi)

Так же сбросил NVram и SMC по инструкциям коих в интернете полно. 

Еще была проблема в том, что при подключении одновременно Macbook и Ноутбука Acer к Wifi сети пинги были нестабильны (огромные задержки и потери). Точно помогло удаление всех файлов из этой папки (/Library/Preferences/SystemConfiguration/). Затем ребут и после этого пинги пошли нормально. 

Ну а вот замер скорости на macbook. Хотя бы так как говорится. 

Speedtest
Вопрос: Как запустить несколько сайтов на одном хосте, так чтоб у каждого был свой набор Docker контейнеров и чтоб они были доступны по одному 80 порту?

Лучший ответ:
Есть готовое решение: nginx-proxy/nginx-proxy
Автоматом перезапускается и генерит конфиг под работающие контейнеры.
Проекты должны торчать портами в одну общую сеть. Можно в несколько: сеть проекта + сеть для портов наружу.

Худший ответ:
На мой взгляд правильнее будет запустить один nginx на все сайты. Иначе если их будет несколько, то они могут конфликтовать. Я у себя так реализовал, то есть у каждого сайта свой конфиг файл в /etc/nginx/sites-enabled.
и все они слушает порт 80.

server {
	listen 80;
	listen [::]:80;

	server_name     etova.ru;
	
	location / {
		proxy_pass http://localhost:8080;
	}
}

server {
	listen 80;
	listen [::]:80;

	server_name     site.ru;
	
	location / {
		proxy_pass http://localhost:8081;
	}
}
Вопрос: Как тут обойтись без флоата?

Лучший ответ:
https://jsfiddle.net/bvuco1hj/
Дичь со .stars div {
float: left;
}
Убираем.
Далее, stars_inner делаем realtive, а красный фон абсолютом.stars__inner {
  position: relative;
}
.stars__progress {
  background: red;
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
}

Худший ответ:
может display: inline-block?
Вопрос: Стоит ли делать однотипные методы во vuex?

Лучший ответ:
Так, конечно же, можно, но теряется смысл мутаций и самого вьюкса. Имена мутаций подсказывают разработчику как самим именем, так и логами мутаций во Vue DevTools, что произошло. И очень желательно, если мутация будет называться каким-то близким к бизнесу именем. Не "установить значение X в положение Y" (то, как ты хочешь сделать), а "показать хэдер" или "сделать пользователя авторизованным".

Худший ответ:
Одна функция отвечает за одно действие, не нужно универсальных методов. Это будет тяжело поддерживать и со временем  вы напихаете в нее еще всякого, она же универсальная.
Вопрос: Почему монтируется папка .env вместо файла .env при попытке поднять Octobercms на docker?

Лучший ответ:
Потому что .env подключается вот такversion: "3.5"
services:
  db:
    build:
      context: ./docker
      dockerfile: postgresql.Dockerfile
    env_file:
      - .env
    restart: always
    volumes:
      - postgres:/var/lib/postgresql/data
    ports:
      - "127.0.0.1:5432:5432"
  redis:
    env_file:
      - .env
    restart: always
    image: redis:3.0
    expose:
      - "6379"UPD:
.env файл обычно (всегда) не ложат в контейнер, скорее наоборот всячески избегают этого,
т.к. в нём хранится чувствительная информация, как правило это различные токены и т.д. 
Хранение подобного в репозитории это плохой тон. Но можно хранить какой-нибудь example.env
 в качестве образца.
В данном образе .env файл создается автоматически при билде образа и содержит одну единственную строку.
Вот команда которой он создается:echo 'APP_ENV=docker' > .env
Если вы внимательно посмотрите в README, то увидите что там об этом говорится .
Помимо этого, автор рекомендует монтировать .env файл из вне, либо копировать его в контейнер (что является общепринятой практикой)
В Readme написано: Database credentials and other sensitive information should not be committed to the repository. Those required settings should be outlined in .env.example
Passing environment variables via Docker can be problematic in production. A phpinfo() call may leak secrets by outputting environment variables. Consider mounting a .env volume or copying it to the container directly.
Честно говоря, не понятно ваше стремление редактировать .env в самом контейнере, вместо того чтобы его пробрасывать внутрь.

Худший ответ:
Попробуйте octobercms-docker-starter-kit.
Вопрос: Как правильнее будет использовать оператор if?

Лучший ответ:
Зависит от содержания success/not_success.
Если внутри not_success, например, нет оператора выхода (return, throw, хоть goto), то во втором случае выполнится сначала not_success, а потом success.

Худший ответ:
Имхо, второй вариант предпочтительнее, если success - это большой кусок кода или в нем есть дополнительные проверки условий (вложенные if).
Вопрос: Как сравнить две папки с документами?

Лучший ответ:
Написать batch-скрипт, в котором через цикл FOR вы пройдете по всем исходным файлам, проверяя несуществование файла с таким же именем в целевой папке и если он не существует, записывая его имя в log-файл.
Делается одной строкой.

Худший ответ:
Все оказалось намного проще! Выделил все файлы в папке 1, копировал в папку 2 с заменой, все замененные файлы оказались выделенными после копирования, сделал вырезать и вставил в папку 3. В папке 2 остались необработанный файлы!
Всем спасибо за варианты!
Вопрос: Почему при запуске Windows ОЗУ загружено на 40%+?

Лучший ответ:
Загрузка 1,4 Гб памяти под Win 10 - это не просто нормально, это даже как-то мало. 4Гб оперативки - это очень мало по современным меркам.

Худший ответ:
А также как можно еще оптимизировать все таким образом, чтобы все более-менее работало.Оно и так все оптимизировано и работает.
А памяти для комфортной работы нужно минимум 8Гб.
Вопрос: Как формируется цифровая подпись?

Лучший ответ:
1. массив объединяется в строку без разделителя
2. результат шифруется методом sha1 без всяких "ключей", с бинарным выводом
3. результат кодируется base64
4. к результату добавляется секретный ключ спереди и сзади
5. результат  шифруется методом md5 с бинарным выводом
6. результат кодируется base64
В целом этот этот алгоритм выглядит так, как будто его составлял пятиклассник, где-то краем уха слашавший про хэширование. Я бы не доверял платёжной системе, которая подписывает транзакции таким способом.

Худший ответ:
Полностью согласен с FanatPHP. А по вашему вопросу: скорее всего вы проигнорировали какое то требование типа расположения параметров в $data строго в алфавитном порядке.
Вопрос: Поможете найти ошибку в создании бота телеграм?

Лучший ответ:
1) Код и ошибки запрещено постить картинками. Нужно текстом в соответствующем теге.
2) Импорты всегда должны быть в начале файла (так принято по стандарту PEP8)
3) Глупо закрашивать токен в коде, при этом оставлять его в ошибке(Facepalm)
4) Библиотека telebot установлена?(скорее всего да)
5) telebot.py переименуйте в что-то другое.

Худший ответ:
Вы не тот telebot поставили. Там в pypi какой-то адище творится с одноимёнными модулями.
Убедитесь, что ставится нужная библиотека:
> pip show telebot                                                        
Name: telebot
Version: 0.0.3
Summary: A Telegram bot library, with simple route decorators.
Home-page: https://github.com/KyleJamesWalker/telebot
Author: Kyle James Walker
Author-email: KyleJamesWalker@gmail.com
License: MIT
Location: /home/svp/.local/lib/python3.6/site-packages
Requires: requests
Required-by: 
Note: you may need to restart the kernel to use updated packages.
Попробуйте ставить так:
pip install git+https://github.com/KyleJamesWalker/telebot
Или где-то лежит такой файл telebot.py и импортируется локально.