Pull to refresh
14
0
Тимофей @tima_tey

Full stack WEB Developer

Send message

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

А что, если команды внедрения фич и выплат долга периодически менять местами?)

Без навыков поиска исходников, их чтения и понимания, в разработку на Битрикс можно в принципе не соваться, он будет казаться средневековым романом ужасов, при всём разнообразии и избыточности его возможностей )

А где дизассемблинг устройства на платы и винтики ?(

Красота! У меня был проект таких циферблатов, правда на esp8266

Часы на светодиодных лампах
Часы на светодиодных лампах

Я люблю JavaScript

Когда я прочёл заголовок, то подумал, что статья про параллакс-эффект, и что можно в основном потоке вычислять только процент, и передавать его в CSS в виде переменной а-ля...

// берём код из примера
document.addEventListener("scroll", () => {
	var winScroll = document.body.scrollTop || document.documentElement.scrollTop;
    var height = document.documentElement.scrollHeight - document.documentElement.clientHeight;
    var scrolled = (winScroll / height) * 100; 
	document.body.style.setProperty('--scroll',scrolled);
})
#progress {
  background: red;
  width: calc(var(--scroll) * 1%); // если переменная пуста, он нам насчитает 0px
  height: 100px;
  position: fixed;
  transition: .3s; // если нужно прям анимировать
}

И тогда можно вообще дальше не трогать математику на стороне JS, и уже из анимируемых блоков смотреть в эту переменную

Далеко не универсальный способ. Потому что не все БИОСы (или что вы там вместо них сейчас используете) понимают CDFS или UDF на USB накопителе.
Ещё слышал, что её имя сасшифровывают как Disk Destroyer xD

Давно уже закрузочные флешки выпекаю при помощи Multisystem - она и визуальная, и прогресс есть, и несколько разных образов сразу можно закинуть, и плюс-минус корректно распознаётся разными платами.

Какая приятность) Часы от Qlocktwo то и дело всплывают в ленте хабра.
Не так давно делал реализацию этого концепта. Началось всё с короткого оживления их демо, собранного за один вечер, которое вылилось в крутой элемент интерьера.

Как раз на следующей неделе планирую собирать модель в масштабе метр на метр для нашего офиса.

Посмотрел, идея интересная. Сделаю на неделе )))
Думаю… я бы вынес время/температуру/влажность как mode и показывал режим через switch/case — потому что у меня постоянный такт состояний 500, он перечитывает значения, передёргивает полусекунду, и отправляет значения на экран.
Запуски тикеров можно положить в отдельные методы.
// show Ticking time and wait for 15 seconds, than stop ticking and show temp
void setTimeIntervals(){
  tick_ClockColon.attach_ms_scheduled(500, matrix_printColon); //task to print clock colon ":"
  tick_Clock.attach_ms_scheduled(500, matrix_printTime);       //task to get time from ESP8266 RTC & print hh mm
  tick_Mode.once_ms_scheduled(15000, [](){
    stopTimeIntervals();
    setTempIntervals()
 });
}
void stopTimeIntervals(){
  tick_ClockColon.detach();
  tick_Clock.detach();
}
// show Temp and wait for 5 seconds
void setTempIntervals(){
 matrix_printTemp();
 tick_Mode.once_ms_scheduled(5000, setHumidityIntervals );
}
// show Humidity and wait for 5 seconds
void setHumidityIntervals(){
 matrix_printHumidity();
 tick_Mode.once_ms_scheduled(5000, setTimeIntervals );
}

Даже там где анонимные функции — всё равно вполне читаемо и работает
Когда я использовал методы attach() и attach_ms(), у меня периодически падал контроллер, вываливая exception, поэтому почти все циклические вызовы в моём коде висят на attach_ms_scheduled(ms, callback);
И отвязка (остановка) — detach() — читайте Ticker.h
Вечером буду дома — покажу другие примеры из кода, и наверно выложу на гитхаб.
И да, один экземпляр тикера может вести только одну функцию, т.е. если я делаю аттач с другим коллбэком на тот же инстанс, то он перекрывается.
На видео можно проследить наглядно: у каждой лампы свой планировщик (с рандомным таймером) на цветовой переход от жёлтого к красному, один общий на перебор всех слоёв при переключении.
В момент перехода на следующую минуту, я запускаю перебор с 6 по первую лампу через
once_ms_scheduled() со временем кратным обратному номеру лампы (0,250,500,750,1000,1250);
На 5й (на второй справа) лампе он подвисает, потому что в этот момент ещё перезагружает настройку базового оттенка (синего) из файла, и ему похоже не хватает ресурсов.
Этот баг сейчас решен так: Перед перебором ставлю цветовой перелив на паузу и, затем снова запускаю когда он отработал, плюс на время перебора ставлю запрет на изменение оттенка, который тоже происходит только после окончания перебора.
слишком =) поэтому в последних итерациях ПЭТ 1,5мм, ножки на диод смотрят прямоугольным концом, дальше расширяются под 45 градусов
Всю механику заказывал в лазерной мастерской: резка и гравировка.
Похоже на то… На выходных может соберу материалы в кучку, о своих тоже напишу с фото и видео…
Для x64-битного линукса есть репозитории с актуальной версией
Посмотрел с превеликим удоыольствием. Напомнило сюжет сказки про Абсолютно Невозможного, которую читал в детстве.
1

Information

Rating
Does not participate
Location
Тюмень, Тюменская обл. и Ханты-Мансийский АО, Россия
Date of birth
Registered
Activity