PHP: определение языка пользователя сайта

В ранние годы, чаще всего определяли языка пользователя на основании его IP. Да и до исх пор так часто делают. И всё чаще ошибаются из-за широкого распространения VPN и всяческих аномайзеров. Поэтом правильнее будет полагаться на стандарт W3C, согласно которому браузер должен передавать на сервер в заголовке HTTP заполненую переменную HTTP_ACCEPT_LANGUAGE. Собстевенно в PHP оно попадает в $_SERVER[‘HTTP_ACCEPT_LANGUAGE’]. Далее остается распрасить переменную с сортировкой по «весам»:

Получаем массив вида:

RGB лента + Raspberry Pi

На днях собрал себе очередную игрушку на raspberry pi для загородного дома. А именно по датчику движения в коридоре будет включаться RGB лента, цель которой дать освещение достаточное для «дойти до выключателя». Не, я конечно натыкал и «проходных» выключателей аж 3 штуки, но всё равно иной раз приходиться идти до них, нащупывать их в темноте, попутно спотыкаясь о валяющуюся на полу пилу, циркуляру и электрокосу 😉 Пока правда собрал «на коленке», для проверки работы ленты. Получилось примерно так:

https://www.youtube.com/watch?v=qSEB7YS0lw8

Лента самая китайская на контроллере WS2812b, 5V , 60 диодов на метр, 5 метров (1300р). Блок питания S-100W-5 (1000р).

Схема подключения:

Результат выложил на Гитхаб: https://github.com/donpadlo/rgb_led_effect

alsa : нет звука

Потратил минут 20 чтобы собрать сборник рецептов почему может не быть звука в терминале Ubuntu

1) Проверить нашла ли alsa вашу звуковую карту вообще

2) Установить/переустановить alsa и pulseaudio

3) Проверить регуляторы звука, может быть просто в mute

4) Перезагрузить настройки

5) Посмотреть туда ли вставлен джек

6) Переинициализировать

Как много нам открытий чудных (с)

А вы знали, что ячейку в Excel можно разделить диагональной линией? Вот так:

Для этого достаточно в свойствах ячейки в «границах» щелкнуть по середине окна (там где точка оранжевая). Ну соответственно в связи с этим открываются возможности для всяких извращений типа с заголовками типа:

Линию подчеркивания закрасить белым цветом

1С: просмотр содержимого временных таблиц в отладчике

Часто при отладке хитромудрых конфигураций необходимо подсмотреть содержимое временных таблиц. Начиная с платформы 8.13 это можно посмотреть прямо в отладчике. Пусть например временные тблицы у нас находятся в переменной МенеджерВТ. Нажимаем Shift-F9,  вводим МенеджерВТ, нажимаем расчитать, проваливаемся в значение «Временные таблицы запроса» и видим названия временных таблиц:

Далее зная имена таблиц, можно получить содержимое каждой из них или по индексу или по имени:

МенеджерВТ.Таблицы[0].ПолучитьДанные().Выгрузить()

1 5 6 7 8 9 67