Как стать автором
Обновить

Все потоки

Сначала показывать
Порог рейтинга

Почему вам не стоит использовать Styled

JavaScript *ReactJS *
Из песочницы

Технология css-in-js существует уже довольно давно. Ещё в начале своего профессионального опыта я встречал подходы, в которых стайлинг локальных частей интерфейса пробрасывался в html через javascript в виде css директив. Иногда это необходимая мера, хотя необходимой она случается изредка, но раз в год, как говорится, и палка стреляет. У меня на опыте был пример построения раздела интерфейса, в котором устанавливаемое на сайт пользователя модальное окно можно рестайлить через кодовый редактор с live preview. css-in-js бывает оправдан, поэтому хочу сразу оговориться - хоронить никакой подход не стоит. Но и идеализировать его как универсальную пилюлю тоже не надо. Рендер стилей, привязанный к логике рендера компонентов в контексте всего проекта - это просто свой путь со своими приключениями, появившийся на мой взгляд в общей психопатии привязывать к state всё что только можно. Что если посмотреть - откуда взялась эта техногогия? На сегодняшний день на рынке проектирования интерфейсов сложился монополист react, диктующий программистам свои правила игры, и который даже без использования styled модуля имеет в себе простейщую инверсию управления cssInJs.
React - важный персонаж в этой теме. Он, словно useEffect всего современного front-end - стал центром силы, средоточием зла в виде голого state management, не предусматривающего из коробки ничего иного.

Читать далее
Всего голосов 11: ↑9 и ↓2 +7
Просмотры 1.4K
Комментарии 4

Новости

Краткая история календаря и фантазии о шестидневной неделе

Читальный зал Научно-популярное Будущее здесь Астрономия

Привет, Хабр.

Календарная система – одна из тех вещей, что не даёт покоя новаторам уже далеко не первый век. История знает десятки, если не сотни календарей и, наверное, ещё большее число предложений по оптимизации, но раз за разом всё возвращается к устоявшемуся виду, протягивая хвост атавизмов ещё на столетия вперёд.

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

Читать далее
Всего голосов 15: ↑14 и ↓1 +13
Просмотры 1.5K
Комментарии 6

Домашняя лаборатория

Настройка Linux **nix *Разработка под Linux *
Из песочницы

Угадай данную статью написал ChatGPT или нет?

Хотите потестировать приложение, или опробовать в работе инструмент? В этой статье опишу то, как организовал тестовый стенд на Linux. Стенд поддерживает работу с доменами, умеет генерировать TLS сертификаты, легко масштабируется, окружение строится по принципе IaaC, не требует много ресурсов, легко разворачивается скриптами или SCM, есть UI, не зависит от внешних сервисов.

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

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

Читать далее
Всего голосов 11: ↑10 и ↓1 +9
Просмотры 2.1K
Комментарии 6

Как мы нашли применение Chat GPT в нашем IT продукте (игре для разработчиков)

Python *JavaScript *Java *Разработка игр *Лайфхаки для гиков
Кейс

Последние две недели интернет пестрит рассказами о всемогущей Chat GPT и ее возможностях. Вот и мы решили не оставаться в стороне и рассказать, как нашли применение для такой перспективной технологии, и сэкономили сотни человека часов для команды.

Читать далее
Всего голосов 12: ↑5 и ↓7 -2
Просмотры 2.5K
Комментарии 4

Пет-проект, который пока не умер

Разработка веб-сайтов *VueJS *Flask *
Из песочницы

Представьте, что вы решили завести маленький пет-проект. Вернее даже не вы решили, а вас попросила матушка помочь с одной рутинной задачей, которая возникает в ее браузерной игре. Вам увиделось множество вещей, которые можно автоматизировать и оптимизировать в процессе, который может занимать до 6 часов непрерывного и утомительного труда в день, и так родился проект.

Дальнейшая судьба проекта, конечно, зависит от многих факторов и скорее всего вы его забросите (как и остальные ваши 150 пет-проектов, которые никто не увидит), но даже в самом рождении этого проекта необходимо решить множество архитектурных и религиозных вопросов, а своим опытом их решения я решил поделиться с вами, чтобы вы не допускали подобных ошибок или указали мне на те ошибки, которые возможно я еще не заметил.

Читать далее
Всего голосов 7: ↑5 и ↓2 +3
Просмотры 2.2K
Комментарии 1

Художники против нейросетей: справедливый протест или неолуддизм?

Блог компании RUVDS.com Обработка изображений *Законодательство в IT Читальный зал Искусственный интеллект

В 2022 году изображения, сгенерированные нейросетями, были примерно везде. Часть аудитории они успели изрядно подзадолбать, но в целом подборки всё более причудливых изображений продолжают уверенно собирать тонны лайков и репостов почти на всех площадках. Однако отнюдь не все были рады происходящему.

Пока соцсети продолжали заполняться терабайтами изображений, сгенерированных Midjourney и её «коллегами», в декабре 2022 года в международном сообществе цифровых художников началась акция протеста в стиле киберпанк: художники на этой и на других платформах массово возмутились распространением изображений, созданных нейросетями.
Читать дальше →
Всего голосов 28: ↑26 и ↓2 +24
Просмотры 4K
Комментарии 66

Данные, блокчейн и роботы: Ocean Protocol и Robonomics Network

Умный дом Интернет вещей Криптовалюты
Из песочницы

Вряд ли для кого-то секрет, что главной движущей силой развития современных технологий, являются данные. Данные окружают нас везде, они генерируются непрерывно, но при этом реально доступны очень ограниченному числу людей и компаний, которые распоряжаются ими на свое усмотрение, не часто открывая их широкому кругу исследователей.

Сотрудничество проектов Ocean Protocol и Robonomics Network показывает, как использовать современные технологии для создания автономных систем и устройств IoT, генерирующих данные и предоставляющих к ним доступ.

Читать далее
Всего голосов 5: ↑3 и ↓2 +1
Просмотры 275
Комментарии 1

Игра «Жизнь» — как собрать произвольный шаблон всего из 15 глайдеров

Программирование *Математика *Научно-популярное Игры и игровые консоли
Перевод

В сообществе игры «Жизнь», изобретённой Джоном Конвеем, отмечали знаковое достижение, совершённое 9 ноября 2022 года. Идея, на воплощение которой ушли годы – проект «обратный шестометатель» — наконец дошла до той стадии, когда в наличии имелись все компоненты для этой сущности, позволявшие достичь заявленной цели.  

Цель проста. Выбираем любой шаблон, который можно собрать в «Жизни» - например, Тихоходку. Начинаем с небольшого количества шаблонов (пока 15), так, чтобы в пустой вселенной для «Game of Life» присутствовали только они. С течением времени из этих глайдеров должен собраться данный шаблон. Никакого остаточного мусора, разбросанной основы – только чистый синтез того, что вы выберете. Данный пост рассказывает, как устроен этот механизм, как мы до него дошли, и почему это так круто.

Читать далее
Всего голосов 30: ↑26 и ↓4 +22
Просмотры 1.6K
Комментарии 6

Легенды на SH-3

Блог компании Timeweb Cloud Старое железо
Ретроспектива
Приветствую всех!
Думаю, многие из нас хоть раз слышали о клавиатурных КПК. И как-то так получилось, что едва ли не самым узнаваемым аппаратом подобного класса стал HP Jornada 720.



Но сегодня речь пойдёт о других, более старых устройствах, оснащённых процессором иной архитектуры.

В ходе статьи узнаем, на что способны подобные девайсы, где найти софт для них, что примечательного в них есть, а также ещё много чего интересного.
Читать дальше →
Всего голосов 17: ↑16 и ↓1 +15
Просмотры 1.6K
Комментарии 4

Резервное копирование 1С в Yandex Cloud, включая БД и виртуальные машины

Блог компании ЕАЕ-Консалт Резервное копирование *Облачные сервисы * *

У многих компаний 1С работает в Yandex.Cloud — это удобно, снижает инфраструктурную нагрузку на собственные вычислительные мощности. Но у каждого решения есть проблемы, которые уменьшают эффективность, а соответственно лояльность и удовлетворенность пользователей. Когда речь идёт об 1С в Yandex.Cloud, проблемой, осложненной жизнь, и неоптимальными, является резервное копирование.

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Просмотры 816
Комментарии 1

Задача коммивояжера (TSP) точное решение — метод целочисленного линейного программирования (Integer programming)

Высокая производительность *Python *Совершенный код *Алгоритмы *

Дочитав эту статью до конца, вы сможете решать точно задачу коммивояжёра на сотню элементов за считанные секунды!

Заинтригованы? Тогда, добро пожаловать под кат.

Читать далее
Всего голосов 33: ↑33 и ↓0 +33
Просмотры 3K
Комментарии 15

Как подключить препроцессор SASS/SCSS к Django

CSS *Python *Программирование *Django *
Туториал

"Тачка на прокачку" уже давно не выходит. А вот "Django на прокачку" снова продолжает вас радовать. В сегодняшнем эпизоде мы:

1.       Узнаем, что такое препроцессоры и чем они интереснее обычного CSS;

2.       Разберёмся с SASS и SCSS, узнаем, чем они отличаются;

3.       И рассмотрим на практике, как использовать SASS/SCSS в Django-проекте.

Как обычно, меньше болтовни – больше кода. Центрирует картинку Макс. Выходит за рамки Егор. Статью написали авторы канала PyLounge. Поехали!

Подключить SASS/SCSS к Django
Всего голосов 4: ↑2 и ↓2 0
Просмотры 569
Комментарии 2

Как обеспечить «вдвое больше за половину времени»

Управление разработкой *Управление проектами *Agile *Управление продуктом *Статистика в IT

В текущем состоянии индустрии разработки подход к эффективности работы какой-то странный. Мы пользуемся не привязанными к жизни метриками, уповаем на локальные оптимизации и мучаем людей.

Всё может быть куда лучше, и эта статья предлагает методику непрерывного совершенствования эффективности разработки. Рассуждение построено на уже зарекомендовавших себя теориях, включая философию Деминга, теорию ограничений, бережливое производство и других.

Вперёд к оптимизациям систем!
Всего голосов 12: ↑9 и ↓3 +6
Просмотры 1.1K
Комментарии 7

Звездолёт «Энтерпрайз» в жизни: какой вклад внесла обсерватория SOFIA на самолёте

Научно-популярное Астрономия

29 сентября по финансовым причинам НАСА закрыло проект Стратосферной обсерватории ИК-астрономии (Stratospheric Observatory for Infrared Astronomy или SOFIA). Агентство разработало телескоп совместно с Немецким центром авиации и космонавтики (DLR). SOFIA представляет из себя летающую обсерваторию, размещённую на борту самолёта Boeing 747SP. Летательный аппарат модифицировали для установки телескопа длиной 2,7 м. SOFIA способна делать инфракрасные снимки космоса из верхних слоёв атмосферы.

Читать далее
Всего голосов 18: ↑16 и ↓2 +14
Просмотры 1.3K
Комментарии 0

Истории

Как поступить в китайский университет

Учебный процесс в IT Образование за рубежом
Из песочницы

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

В Китае есть несколько университетов высоко находящихся в QS рейтинге.

Читать далее
Всего голосов 10: ↑8 и ↓2 +6
Просмотры 1.4K
Комментарии 1

Рекурсивные регулярные выражения

C++ *Node.JS *API *IT-компании
Аналитика

Принялось решение добавить регулярные выражения в свой язык программирования. По началу я подумал, что мне совершенно незачем в них разбираться и в интернете, наверняка, уже есть полно готовых библиотек. Стал искать, нашёл какие-то осколки кода на С++, которые ничего не дают. Пришлось самому разобраться, что такое регулярные выражения тут. Ради спортивного интереса, я решил сделать свою библиотеку на С++.

Стал делать и подумал, а почему бы мне не добавить туда своих тараканов. Я решил добавить две конструкции:

{namesubexpression} - вызов под выражения по имени "namesubexpression",
($namesubexpression:BodyExpression) - описание под выражения с именем "namesubexpression".

Само описание под выражения может встречаться в любом месте структуры регулярного выражения и игнорируется при поиске, подобно закоментированым: (#MeComment).
Сразу же возникает проблема бесконечной рекурсии.
Вот пример рекурсивного регулярного выражения, который недопустим: ($E:{E}){E}

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

Вот пример текста, который можно спарсить рекурсивным регулярным выражением (РРВ): [[[[[A]]]]]
А вот его РРВ: ($RRE:\[({RRE}|A)\]){RRE}

Я также решил добавить три зарезервированные конструкции:
{:String} соответствует выражению: (("(\\.|[^"])*")|('(\\.|[^'])*'))
{:Digit} соответствует выражению: (-?[0-9]+.?[0-9]*[Ee]?-?[0-9]*)
{:Name} соответствует выражению: ([A-Za-z][A-Za-z0-9]*)
Но их поисковая система не использует структурные элементы аналогичных выражений, а организованна встроенным машинным поиском, который работает значительно быстрее и возвращает одну целую строку текста, в которой содержится всё тело найденного соответствия а не части для каждого компонента в аналогичных регулярных выражениях.

Читать далее
Всего голосов 8: ↑5 и ↓3 +2
Просмотры 1.9K
Комментарии 16

«Крутое пике» для жестких дисков: продажи упали почти вдвое, но растут продажи ленточных накопителей. Что происходит?

Блог компании Selectel Исследования и прогнозы в IT *Гаджеты Компьютерное железо IT-компании

В 2022 году мы публиковали несколько статей на тему динамики продаж жестких дисков. Ну точнее, как, динамика — тут реально впору говорить и крутом пике, поскольку продажи очень быстро сокращаются. Причины достаточно прозрачные, но для большинства вендоров такого типа устройств это весьма болезненная проблема. Сейчас многие производители HDD фактически терпят бедствие — причем как в пользовательском, так и корпоративном сегментах.

Но если у «Вилларибо» проблемы, то в условном «Виллабаджо» — реальный праздник. Под последним подразумеваем производителей ленточных накопителей и всем, что с ними связано. Там, достаточно неожиданно для аналитиков, наблюдается довольно активный рост.
Читать дальше →
Всего голосов 28: ↑24 и ↓4 +20
Просмотры 16K
Комментарии 96

Иной взгляд на React компоненты

JavaScript *ReactJS *
Мнение
Из песочницы

Как мы все знаем, в React есть функциональные и классовые компоненты. Каждый вид имеет свои плюсы и минусы.

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

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 2.8K
Комментарии 8

ТОП-10 экспортеров для Prometheus 2023

Системное администрирование *DevOps *
Из песочницы

Статья Основы мониторинга (обзор Prometheus и Grafana) оборвалась на самом интересном месте. Автор предложил искать и использовать актуальные экспортеры, а читатель такой – окей, где референс? Что ж, давайте рассмотрим топ-10 наиболее полезных экспортеров на начало 2023 года – возможно именно их вам не хватало, чтобы построить свою идеальную систему мониторинга!

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 2.1K
Комментарии 4

Дарим книгу «Гарри Поттер и методы рационального мышления» победителям олимпиад (v2)

Читальный зал Научно-популярное

Несколько лет назад мы собрали 11 миллионов рублей на некоммерческую печать «Гарри Поттера и методов рационального мышления», побив рекорд российских краудфандинг-проектов по объёму сборов, и пообещали подарить трёхтомники ГПиМРМ школьникам и студентам, побеждавшим в олимпиадах.

Наконец, мы начали рассылать обещанные книги. Пять с половиной сотен экземпляров уже доставлены, ещё сотня — в пути. Если вы подходите под критерии, можете заполнить заявку и через несколько дней получить от курьера книжки (или через несколько недель почтой, если находитесь за границей).

Там же есть рекомендации книги от Александра Панчина (популяризатор науки, член комиссии РАН по борьбе с лженаукой, лауреат премии «Просветитель»); Владимира Брагина (преподаватель ЦПМ, тренер сборной Москвы на всероссийской олимпиаде школьников по математике); Дмитрия Ветрова (глава исследовательской группы байесовских методов, профессор-исследователь ФКН НИУ ВШЭ, руководитель центра глубинного обучения и байесовских методов НИУ ВШЭ); и Галины Юзефович (литературный критик, преподаватель ВШЭ и РЭШ).

Подробнее ->

Книга популяризирует идеи критического мышления и эффективного альтруизма — и мы решили, что стоит распространить её среди талантливых людей, которые благодаря ГПиМРМ смогут принести больше пользы миру.

Читать далее
Всего голосов 42: ↑38 и ↓4 +34
Просмотры 3.2K
Комментарии 1