Vikhrmodels/habr_qa_sbs huggingface dataset:
Вопрос: Простые табы для сайта на jQuery, бывает еще проще?

Лучший ответ:
За ссылки с href=# надо отрывать руки. Что это за ссылка, которая никуда не ведет? Далее, при отключенном яваскрипте у вас будет пустая страница. далее, зачем тянуть 150-Кб тяжелый фреймворк, от которого айфон подвисает, ради табов? 

Далее. Вот у вас написано

#wrapper div { display:none; }

Что, если внутри сождержимого таба есть еще дивы? А если внутри таба есть еще один блок табов? А?

Далее, а что если табов больше 3-х?

Сделано на троечку, на уровне школьника, который впервые прочел сайт htmlbook.ru и захотел что-то сотворить. С кучей ошибок. Плохо, короче говоря.

И что значит «без использования хешей»? Это почему еще?

К слову, табы можно сделать вообще без яваскрипта, но вам видимо еще до этого далеко. Также, верстку табов можно сделать семантичнее — погуглите, у Сергея Чикуенка была статья на эту тему.

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

Лучший ответ:
Есть такой способ - открыли страницу, скопировали текст, сохранили в файл txt, далее повторяем по необходимости нужное количество раз.
Я, например, провел тест и затратил на 100 таких приёмов 300 секунд с учетом что страницы открываются быстро.
таким образом, через 9000-12000 секунд Ваша задача будет решена.Справочно: 12000 секунд = 3,5 часа.

Худший ответ:
Это классический парсер.
1. В программе указываешь ссылки где находится контент.
2. Выполнив к ним запрос получаешь контент.
3. "Копаешься" в этом контенте, и извлекает только то, что нужно.
4. Что-то с этим делаешь (сохраняешь в бд, файлы, шлёшь письма, ...).
Вариантов конкретной реализации - масса.
Вопрос: А чем компенсировать обратную ЭДС?

Лучший ответ:
У вас там два реле и замок? Зачем два реле? Почему не 3 или 4?
Выход ардуйни выводите на оптроазвязку. Опторазвязка включает сразу мощное реле, которое коммутирует ваш электромагнит.

Худший ответ:
Одно короткое слово - опторазвязка.
Вопрос: Почему слетают шрифты при загрузке сайт на хостинг?

Лучший ответ:
99% разница в путях к шрифтам, на сервере другая структура папок и шрифты не доступны по текущему адресу.

Худший ответ:
Скиньте полный путь от корневой папки до нужного шрифта
Составлю путь
Вопрос: WordPress: По каким причинам могут не отображаться сабменю установки и редактирования плагинов?

Лучший ответ:
Данная вещь реализуется через define('DISALLOW_FILE_MODS', true); в config.php.

Худший ответ:
В коде можно удалить пункты меню, чекните functions.php на предмет наличия remove_menu_page.
P.S. Ну и собственно говоря можно сделать так чтобы настоящий администратор не отображался в списке пользователей.
Вопрос: Восстановление файлов БД MySQL на Debian GNU/Linux 6.0

Лучший ответ:
В залитом дампе БД удалялась перед заливанием (стандартный DROP DATABASE IF EXISTS), значит удалялся и файл, в котором хранилась БД, а затем был создан заново при создании БД дампом.
«БД» в MySQL это папка где хранятся файлы форм(структура таблиц)/индексов/данных. Если таблицы InnoDB то индексы/данные хранятся в другом месте — все в одном файле, и этот файл не удаляется при DROP DATABASE — просто место помечается как свободное. При DROP DATABASE удаляется папка с формами.
Если InnoDB настроено как innodb_file_per_table, тогда в папке лежат *.ibd файлы с данными а в ibdata1 хранится только метаданные.

При наличии бекапов некоторых файлов есть несколько вариантов восстановления: Из .frm и ibdata1/ib_logfile{0,1}, при наличии схемы и *.ibd файлов

В вашем же случае, имхо, проще восстановится с бекапа предыдущего дня…

Худший ответ:
>Причины того, почему бэкап оказался коцнутым, здесь обсуждать не имеет смысла
Хоть намекните дабы другие не напоролись на подобное
Вопрос: Arduino simbank — как читать несколько сим карт?

Лучший ответ:
Берете 10 коннекторов для сим, GSM-модем, все коннекторы и модем параллелите по данным, питание на каждую сим подаете отдельно от контроллера.
Далее, прошивкой включаете модем и даете питание на первую сим, читаете смс, выключаете модем, перeключаете питание на вторую сим... и так по кругу.

Худший ответ:
Учитывая специфику архитектуры, я бы сделал модульное решение. По одному МК на каждую симку, и отдельный МК для диспетчеризации.
Этот МК есть в виде Nano Pro, который очень дешево стоит, и занимает мало места.
Вопрос: Как обновиться с debian6 до debian8 без остановки сервера?

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

Худший ответ:
Что из себя представляет сайт? Есть ли какой-то бэкенд?
Предполагаю, что 1 сервер рядом, перенос приложения, настройка репликации (если надо) + Haproxy, добавление записей в DNS и т.д.
Сделайте себе тестовый стенд из пары виртуальных машин и проработайте все шаги.
Вопрос: OpenConnect+AnyConnect. Как сделать авторизацию по сертификату?

Лучший ответ:
А в чем конкретно проблема? Там, вроде, в конфигурационном файле все расписано, достаточно указать путь до сертификата.

Худший ответ:
Вопрос решен. Ниже ссылка на инструкцию, язык хоть и китайский, но все равно все понятно. Плюс добавил/убавил парочку строк.blog.sina.com.cn/s/blog_637246230102ve0h.html
Вопрос: Парковки головок на жестких дисках WD?

Лучший ответ:
Шесть лет юзаю грины и никакую парковку не включаю, горя не знаю. У вас горе толи от ума то ли от глупости

Худший ответ:
А какая у Вас проблема с частой парковкой головок ЖД? Они по тому и Грины, что при малейшем простое паркуются и останавливают шпиндель для энергосбережения. Пока идёт частое обращение, диск отвечает оперативно. Если нужна быстрая реакция накопителя в любой момент, берите Блек. Хотя я пользуюсь только Сигейтами, но это дело вкуса. Удачи.
Вопрос: Как из плоского массива с объектами сделать вложенный (иерархический)?

Лучший ответ:
Вот так jsfiddle.net/alexandrupausan/qjxpLhfu
Гугл знает больше, если искать на языке, которым пользуется полтора миллиарда человек ;)
https://www.google.nl/search?q=javascript+flat+arr...

Худший ответ:
var arr = [
   {'uid': '1', 'parentUid': null},
   {'uid': '2', 'parentUid': null},
   {'uid': '11', 'parentUid': '1'},
   {'uid': '12', 'parentUid': '1'},
   {'uid': '21', 'parentUid': '2'},
   {'uid': '22', 'parentUid': '2'},
   {'uid': '13', 'parentUid': '1'},
   {'uid': '23', 'parentUid': '2'},
   {'uid': '231', 'parentUid': '23'},
   {'uid': '232', 'parentUid': '23'},
   {'uid': '111', 'parentUid': '11'},
   {'uid': '112', 'parentUid': '11'},
   {'uid': '1111', 'parentUid': '111'}
   ];
   
   arr.sort(function(a,b){
   	return Number(a['parentUid']) - Number(b['parentUid']);
   });
   console.log(arr);
UPD: сорян, понял что нужно дерево. Ответ ниже.
Вопрос: Что написать для портфолио?

Лучший ответ:
Сам нахожусь в аналогичной ситуации. Полгода назад прочесывал гугл в поисках "проектов для практики". Искал с уклоном в Java, но думаю адаптировать - не проблема.
Дабы не засорять ответ здесь, вот ссылка на pastebin.
Прошу прощения за оформление, ибо собиралось долго и по кускам. Надеюсь, будет полезно.

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

Лучший ответ:
Попросите, чтобы Вам дали тестовое задание, или если есть время/желание, участвуйте в в open-source проектах

Худший ответ:
Для клиентов важно решение из задач. Если можете опишите задачи клиентов и то, что вы именно решили, если это не секретная информация. Сделав при этом упор на то, как эти задачи помогли бизнесу клиента + просто собирайте отзывы с настоящими именами и лицами, думаю позвонить спросить, хороший ли работник и придирчивому клиенту не составит труда. Для иностранных - просто перевод отзывов.
Вопрос: В чем преимущества сервера, расположенного в Европе, для сайта с аудиторией из России?

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

Худший ответ:
Бытует мнение, что российские хостинги менее качественные и дороже. Насчёт дороже я где-то соглашусь, да и что качество российских не дотягивает до мировых, но и в европах не везде всё хорошо. Тот же немецкий ДЦ Хетцер, который используют 90%  хостингов "в Германии" (потому что дешево) использует изношенные винты (много об этом писалось на разных формумах).
Вопрос: Как произвести анализ загруженности локальной сети и выявить источник большого трафика?

Лучший ответ:
1) Настроить мониторинг своих свичей, и смотреть по графикам, на каких портах максимум трафика. Начать с аплинк-портов -- сколько трафика уходит в направлении "север-юг" (т.е. с коммутатора "наверх", к маршутизатору). Затем искать, в какой порт этот трафик вошёл.
2) Ваш роутер не поддерживает netflow. Поменяйте его на какой-нибудь микротик, он умеет netflow. Анализируя netflow, можно понять, какой трафик превалирует, с каких локальных адресов и куда.

Худший ответ:
Поднимите программный маршрутизатор/межсетевой экран на МикроТик x86 (придётся таки потратиться на лицуху). Там всё и увидите. В Torch. Или выделяя правила на firewall по трафикам.
Вопрос: React.js: как из одного модуля передать данные в другой?

Лучший ответ:
Мне кажется, вариант вполне нормальный. И вот: habrahabr.ru/post/266559

Худший ответ:
Ну для этого, насколько я понимаю, и придумали Flux - почитайте
Вопрос: Как реализовать анимации в React?

Лучший ответ:
Если вам нужно плавно скрыть элемент - CSSTransitionGroup  вполне подойдет. Прочтите документацию - https://facebook.github.io/react/docs/animation.html (не вижу смысла здесь ее переписывать). В общем принцип работы таков - компонент CSSTransitionGroup сохранит элемент в DOM на время перехода (анимации) и сразу после ее завершения - удалит (если речь об удалении DOM).
Вот так у меня выглядит код для такого меню:<CSSTransitionGroup transitionName="ProductCategoriesMenu--submenu-transition" transitionEnter={false}>
          {category.products.length && isCategorySelected ? this.renderSubMenu(category) : null}
        </CSSTransitionGroup>.ProductCategoriesMenu--submenu-transition-leave {
  max-height: 1000px;
  overflow: hidden;
}

.ProductCategoriesMenu--submenu-transition-leave-active {
  max-height: 0;
  transition: max-height 1s cubic-bezier(0.22, 0.61, 0.36, 1);
}

Худший ответ:
Вроде как можно через componentWillMount и componentWillUnmount навешывать классы для анимаций и уже на css её реализовывать.. Нет ?
Вопрос: Алгоритм для быстрой проверки соответствия строки шаблонам?

Лучший ответ:
Простое решение можно реализовать через префиксное дерево. Запихиваем все шаблоны, а потом сравниваем по строчке из множества.
Если требуется сделать разово и на большом объеме данных, я бы поступил так. Определим на строках обычный лексикографический порядок (если есть строка и её префикс, то префикс меньше). Каждому шаблону со звездочкой {s}* сопоставим две строки {s} и {s}$, где $ больше 0 и 1. Шаблону без звезды, просто ставим {s} и {s}&, где & < 0 и 1. А теперь, начиная с первого символа, запускаем цифровую сортировку на строках, полученных из шаблона, + проверяемых строках. 
В полученной последовательности шаблоны образуют скобочную последовательность. Все, что находится внутри скобок матчится с соответствующим шаблоном.
Из положительного, это сделать проще, когда строки не влезают в память. Число разрядов на сравнение можно ограничить длиной самого длинного шаблона.

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

Лучший ответ:
Вы ее не возвращаете. Лол

Худший ответ:
Весь смысл асинхронности в том, что вы не возвращаете результат в основной скрипт, вы не дожидаетесь этого результата. Все, что вы хотите сделать с результатом - нужно делать в пределах колбэк функции.
Вопрос: Каковы этапы ИТ-карьеры?

Лучший ответ:
 Сделать пару проектов самому Поработать Junior, при этом штудируя всю необходимую литературу Изучать иностранный язык (англ) Через полгода стать Middle Брать на себя ответственность и быть активным и заметным в компании Через 2-3 года стать Senior А дальше уже на что сил и способностей хватит.
Главное все это время учиться учиться учиться. За 3 года нужно научиться свободно владеть английским языком. 
И не бояться делать ошибок. Не делает ошибок только лентяй, и бездельник.

Худший ответ:
Все этапы можно найти в  биографиях известных в ИТ-сфере людей. 
Гугл и википедия в помощь.
По сути эти этапы  похожи на этапы в других сферах деятельности.
Вопрос: Хочу сделать свое собственное Android-устройство. Где найти всю необходимую информацию?

Лучший ответ:
https://developer.android.com/things/hardware/inde... - не проще? и можно обойтись без кастомных сборок

Худший ответ:
Сборка Андроида делается под КОНКРЕТНУЮ модель.
То есть сначала берете подержанную трубку, а затем уже делаете сборку.
Вопрос: Что можно сделать при большой нагрузке на сервер?

Лучший ответ:
* memcached
* правильная настройка nginx. В том числе кешировать на стороне пользователя не только статику, скажем на 3 секунды.
* убрать все лишнее
* перенести базу на другой сервер.
* перенести статику на CDN

Худший ответ:
из бесплатных хорош плагин  WP Super Cache  из платных берите рокет - на порядок лучше и проще.
если не из РФ, то CloudFire - на 37% мне трафик сжимает.
Еще поставьте плагин профайлер, отрубите "прожорливые" плагины, т е минимизировать кол-во запросов к БД.
Вопрос: Где найти/купить фоновое видео для сайта?

Лучший ответ:
Youtube Ходят легенды там можно найти видео

Худший ответ:
Посмотрите https://web2033.com/coverr-video-on-homepage/
Вопрос: JQuery: кто-нибудь знает аналог PHP-функции scandir()?

Лучший ответ:
Я бы, на вашем месте, для начала, выучил предназначение языков программирования. JS (А вы сейчас говорите именно про "браузерный" js), и, в частности, библиотека jQ работает на КЛИЕНТЕ В БРАУЗЕРЕ. Она НЕ МОЖЕТ и НЕ ДОЛЖНА по своей сути работать с файловой системой сервера. Если уж вам нужно это сделать, выполняйте асинхронный запрос с помощью jQuery и тащите данные с сервера.

Худший ответ:
это невозможно сделать на джейквери. передайте переменную с изображениями из php  в джавасрипт а дальше хоть с джейквери хоть без него ...
Вопрос: Возможна ли компиляция ядра ОС под Windows?

Лучший ответ:
Да. Вы не поверите, но программисты Microsoft ядро для своей ОС компилируют под Windows.
Причём именно с помощью Visual Studio.

Худший ответ:
Ядро какой ос? Linux? Если используя именно компилятор от Майкрософт (а именно он идет с VisualStudio) - то скорее всего нет - разные понимания стандарта с/с++, так что скорее всего нахватаете ошибок. Если запихнуть в VS какой нить gcc (так можно) - то при наличии всех либ и исходников - да, можно.
P.S. - VisualStudio ничего не компилирует. Это продвинутый блокнот. Компилирует компилятор.
Вопрос: Удалить из строки?

Лучший ответ:
Например, с помощью регулярки:$str = preg_replace( '/=.+$/', '', $str );
В переменной $str ваша строка

Худший ответ:
Ответ Camaro67 не совсем верный. Он удаляет "=" только если после него что-то есть
Правильнее $str = preg_replace('/=.*/', '', $str);. Тогда "=" удаляется в любом случае.$str = preg_replace('/=[0-9]?/', '', $str); - удаляет все цифры после "=" и до первой буквы. Цифры после букв удалены не будут.
Вопрос: Как настроить на CloudFlare зеркало сайта?

Лучший ответ:
1. На хостинге, для вашего сайта, настраиваете дополнительное DNS имя.
2. Добавляете в Cloudflare новый домен, этот самый, второй, указываете тот же IP адрес, который и на первом домене.
Готово :)

Худший ответ:
Получил официальный ответ от компании CloudFlare. Так что нельзя зеркало создавать.
Hi,
We do not support mirror/alias domains, you would need to registrar site.ru and then add it Cloudflare the same way you did site.ru.
If you have any more questions, simply reply to this email and we will be happy to help.
Thanks for contacting CloudFlare.
Вопрос: Почта в доменах .рф

Лучший ответ:
Ну, мы используем для подобного корпоративную почту на яндексе, но даже там при создании пишется
Многие крупные почтовые службы и популярные почтовые программы не поддерживают отправку писем на почтовые ящики доменов в зоне.рф. Доставка писем на адреса в зоне.рф гарантирована только в том случае, если они отправлены из веб-интерфейса Яндекс.Почты.

Кроме того, имена ящиков (часть до символа «@») не могут содержать кириллические символы -— это запрещено правилами существующих почтовых протоколов. К примеру, вы не сможете создать ящик вида иван@ваш-домен.рф.

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

Лучший ответ:
 Какой лучший способ изучить основы фреймфорк?
Практика

Худший ответ:
Для начала как понял надо php.net а потом уже о фрейме думать
Вопрос: Как ускорить реакцию на нажатие ссылок в WebView под Android?

Лучший ответ:
Огромное спасибо!
Правда, я не использовал приведенный там код двум причинам:
1) этот код не решает проблему с фантомными кликами (на одно событие происходит два клика)
1) у меня за основу взят jQuery и мне не хотелось бороться с совместимостью. 
Но, потянув за ниточку в одном из комментариев, нашел плагин к jQuery, который замечательно работает (по-крайней мере на моем ViewSonic под Android 2.2)
 Может, кому еще пригодится:

/**
 * jQuery.fastClick.js
 *
 * Work around the 300ms delay for the click event in some mobile browsers.
 *
 * Code based on <code.google.com/mobile/articles/fast_buttons.html>
 *
 * @usage
 * $('button').fastClick(function() {alert('clicked!');});
 *
 * @license Under Creative Commons Attribution 3.0 License
 * @author Dave Hulbert (dave1010)
 * @version 0.2 2011-09-20
 */

/*global document, window, jQuery, Math */

(function($) {

$.fn.fastClick = function(handler) {
 return $(this).each(function(){
 $.FastButton($(this)[0], handler);
 });
};

$.FastButton = function(element, handler) {
 var startX, startY;

var reset = function() {
 $(element).unbind('touchend');
 $(document.fastButton).unbind('touchmove');
 };

var onClick = function(event) {
 event.stopPropagation();
 reset();
 handler.call(this, event);

if (event.type === 'touchend') {
 $.clickbuster.preventGhostClick(startX, startY);
 }
 };

var onTouchMove = function(event) {
 if (Math.abs(event.originalEvent.touches[0].clientX - startX) > 10 ||
 Math.abs(event.originalEvent.touches[0].clientY - startY) > 10) {
 reset();
 }
 };

var onTouchStart = function(event) {
 event.stopPropagation();

$(element).bind('touchend', onClick);
 $(document.fastButton).bind('touchmove', onTouchMove);

startX = event.originalEvent.touches[0].clientX;
 startY = event.originalEvent.touches[0].clientY;
 };

$(element).bind({
 touchstart: onTouchStart,
 click: onClick
 });
};

$.clickbuster = {
 coordinates: [],

preventGhostClick: function(x, y) {
 $.clickbuster.coordinates.push(x, y);
 window.setTimeout($.clickbuster.pop, 2500);
 },

pop: function() {
 $.clickbuster.coordinates.splice(0, 2);
 },

onClick: function(event) {
 var x, y, i;
 for (i = 0; i < $.clickbuster.coordinates.length; i += 2) {
 x = $.clickbuster.coordinates[i];
 y = $.clickbuster.coordinates[i + 1];
 if (Math.abs(event.clientX - x) < 25 && Math.abs(event.clientY - y) < 25) {
 event.stopPropagation();
 event.preventDefault();
 }
 }
 }
};

$(function(){
 document.addEventListener('click', $.clickbuster.onClick, true);
});

}(jQuery));


Худший ответ:
Проверте вот это решение — cubiq.org/remove-onclick-delay-on-webkit-for-iphone
Поделитесь, если протестируете на android
Вопрос: Верстать без фреймвороков это значит быть не професионалом?

Лучший ответ:
Быть профессионалом - значит знать и правильно применять необходимые инструменты для наиболее эффективного решения задачи. А также НЕ применять, если в этом нет необходимости.

Худший ответ:
Если брать целый фреймворк то нет, много лишнего будет, маленькие проекты конечно лучше самому писать, но с фреймворка можно брать к примеру сетку и это упростит жизнь. Так, что заказчик в корне не прав.
Вопрос: Как автоматический копировать/перемещать файлы?

Лучший ответ:
Абсолютно бесплатный PowerShell умеет мониторить содержимое папки.
Можно взять за основу скрипт , прописать нужные пути,  и в блоки с  -SourceIdentifier FileCreated  и -SourceIdentifier FileChanged вставить switch типа $a=Get-Item ($folder+"\/"+$name)
switch ($a.Extension)
{
'.mp3' {Write-Host "AudioFile"; Copy-Item $a.FullName -Destination d:\test\Audio}
'.txt' {Write-Host "TextFile"; Copy-Item $a.FullName -Destination d:\test\Text}
'.bat' {Write-Host "batchfile"}
}

Худший ответ:
А не проще задать сортировку/фильтр по формату/типу и вручную все сделать?
Вопрос: Изучение С для программирования микроконтроллеров?

Лучший ответ:
Внимание: Всё что пишу, пишу про голое железо или простые RTOS (стм32 и тд)
Это программирование делится на три части:
1. Это железо! С железом проблем нет, читаем мануал, используем рекомендуемую производителем железа библиотеку по работе с железом получаем гарантированный результат. Трудно будет только по началу. Но это опыт наживной и относительно лёгкий.
2. Реалтайм и инженерное мастерство и инженерный опыт: Часто проги под МК работать будут в реальном времени налету, ждать никто не будет. Дважды измеренная величина всегда будет отличаться, произойти может что угодно и в какой угодно последовательности. Клоки и тактовая плавает. Количество переданных и принятых данных всегда будет разное даже по одному и тому же уарту. Всё это должна учитывать ТВОЯ программа и не падать при любом раскладе. Как видишь программа будет иметь дело с гораздо большим количеством случайностей чем при программировании в вебе/ПК и повторяемости событий почти не будет. И надо быть чуточку инженером и знать что у всего с чем работаешь есть отклонения и шум в результатах, особенно аналоговых и АЦП. 
3. Это программирование на Си как обычном языке. Тут всё просто и понятно, мануалов море - выбирай по вкусу и цвету.
4. ОБЩЕЕ АЛГОРИТМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ. Неважно что это железо но алгоритм оптимально но не слишком перфекционистки. Ты должен реализовать и язык тебе тут не поможет, он не связан с алгоритмом и наборов удобных библиотек гораздо меньше чем под ПК и веб.
5. НЕ УЧИ АССЕМБЛЕР. не углубляйся в схемотехнику, достаточно будет уровня уверенного ардуинщика.  Ассемблер сейчас нужен не для написания программ а вылизывания отлично сделанной проги которая уже продаётся но нужно выжать ещё 5-10% быстродействия, ТОЛЬКО ТОГДА. Всё остальное делается либо конфигами либо LD файлом линкера. Дебри схемотехники тоже не нужны, главное понимание как и почему это работает, без всяких четырёх полюсников и глубоких анализов фазовых задержек.

Худший ответ:
программирование контроллеров отличается работой с периферийными устройствами.
если кратко то нужно писать/читать память в нужном порядке
начните с мигания диодом, дисплея, шима, уарта и т.п. дальше станет понятно куда двигаться
Вопрос: Web-socket. Можно ли при подключении передать параметры как в урл?

Лучший ответ:
Если кому понадобится: // клиент
var socket = new WebSocket("ws://localhost:8889/one?two=three");// сервер
var WS = new require('ws');
var socket = new WS.Server({port: 8889});

socket.on('connection', function (client, data) {
	console.log(data.url); // > one?two=three

	client.on('message', function (message) {});
	client.on('close', function () {});
});

Худший ответ:
ну правильнее передать то что ты хочешь при коннекте а не так socket.on('connect', function () {
     socket.send(/* тут то что нужно отправить */);
});