Сборщик RSS-лент

[Перевод] Применение ключевого слова revert-layer в CSS

Habr.com - 2 часа 20 мин. назад

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

Читать дальше →

Что не делать, чтобы найти работу

Habr.com - 2 часа 44 мин. назад

Людям, выросшим на вредных советах Григория Остера посвящается.

Разрешите представиться - Ли, 22 года, в этом году получаю степень бакалавра по специальности программная инженерия. И я не имею опыта коммерческой разработки.

Вам, наверное, не очень интересно, как я оказался в такой ситуации, но я всё равно расскажу. 

Итак, что делать не надо, если вы хотите построить успешную карьеру в it сфере и получаете высшее образование.

(ну и немного о том, как не надо учиться в универе и почему)

Читать далее

[Перевод] Создаём надёжные API для бэкенда при помощи конечных автоматов: подробное руководство

Habr.com - 3 часа 4 мин. назад
Я — бэкенд-разработчик, поэтому мне довелось по достоинству оценить, насколько важны конечные автоматы при построении надёжных систем, которые хорошо масштабируются. Конечные автоматы отлично подходят для моделирования сложной бизнес-логики и автоматизации переходов между состояниями. В этом посте будет разобрано, что представляют собой конечные автоматы, в чём их польза для бэкенд-разработки, и как с их помощью решать распространённые задачи.

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

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

«Когда будет готово?». Декомпозируем задачи и оцениваем сроки без фатальных ошибок

Habr.com - 3 часа 14 мин. назад

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

Спойлер: вы все равно ошибетесь, прогнозируя сроки. Но что можно сделать? Минимизировать шанс на ошибки и сделать их менее фатальными. Я расскажу про рабочие инструменты, которые помогли мне в свое время, — брать их на вооружение или нет, решайте сами. Если вы не знаете, как подступиться к декомпозиции сложного проекта и с чего начать, — эта статья вам в помощь.

Читать далее

[Перевод] «42» как ответ на пять фундаментальных вопросов науки

Habr.com - 3 часа 28 мин. назад

Одна из самых забавных историй во всей научной фантастике — книжка «Автостопом по Галактике» Дугласа Адамса, в одном из эпизодов которой суперкомпьютеру поручили найти «ответ». Созданный якобы для того, чтобы дать ответ на «главный вопрос о жизни, Вселенной и всём остальном», компьютер тратит 7,5 миллиона лет на вычисление ответа и наконец выдаёт его: 42. Только вот когда ответ, наконец, раскрывается, никто не может вспомнить, в чём же, собственно, заключался «главный вопрос». Это ещё один пример того, что не стоит быть настолько одержимым идеей добраться до цели, чтобы изначально потерять из виду весь смысл путешествия – тогда её достижение уже не будет иметь значения,

К счастью для нас, существует ряд возможных вопросов-кандидатов, которые мы можем использовать задним числом, поскольку они действительно могут быть тем самым окончательным вопросом – ведь нам известно, что ответ на эти вопросы действительно «42». Мог ли хоть один из этих вариантов быть тем, о чём спрашивали суперкомпьютер, когда речь шла о раскрытии ответа на «главный вопрос о жизни, Вселенной и всём остальном»? Хотя никто не может быть уверен, даже в вымышленном мире Дугласа Адамса, вот пять возможных вопросов, которые относятся к числу самых увлекательных. Ответом на каждый из них действительно будет «42», и, возможно, один из них покажется вам по-настоящему захватывающим.

Читать далее

[Перевод] Доводы против самозакрывающихся тегов в HTML

Habr.com - 3 часа 36 мин. назад

Самозакрывающиеся теги - зло? Prettier не прав? Разбор с примерами острой темы в HTML, где все будет разложено по полочкам

Читать далее

GIGA R&D DAY: материалы конференции

Habr.com - 3 часа 52 мин. назад

На недавней конференции GIGA R&D DAY, организованной командой R&D SberDevices, участники обсудили последние достижения в разработке GigaChat, NLP, Vision и Audio.

Событие собрало ведущих специалистов и экспертов в области искусственного интеллекта, которые поделились своими идеями и разработками. В день рождения GigaChat'a делимся с вами видеозаписями выступлений и презентациями докладов, которые охватывают широкий спектр тем от мультимодальности и мультиэкспертности до проблем alignment и задач генерации речи.

Читать далее

[Перевод] Как управлять Kubernetes с помощью Ansible

Habr.com - 3 часа 57 мин. назад

Делимся переводом статьи об интеграции Kubernetes и Ansible. Из статьи вы узнаете, как подготовить среду для работы, как развернуть кластер Kubernetes с помощью Ansible, как управлять ресурсами Kubernetes и автоматизировать обновления. Кроме того, вы узнаете, как развернуть плейбук Ansible в Kubernetes на облачном провайдере и использовать Ansible для CI/CD в Kubernetes.

Читать далее

Как пытались (пере)программировать мозги, и что из этого получилось? Часть 6: гипноз, психоз и коматоз на службе MKUltra

Habr.com - 3 часа 59 мин. назад

В прошлой части мы рассказали, как неудачная попойка офицеров ЦРУ и военных химиков в доме у озера с подмешиванием коллегам ЛСД привела к гибели одного из лучших сотрудников проекта MKUltra Фрэнка Олсона. Тогда историю удалось замять и заставить молчать и полицию, и ФБР, и родственников погибшего. Сидни Готтлиб не только не притормозил свои опасные эксперименты, но и решил в очередной раз расширить экспериментальную базу. Тем самым он нечаянно выпустил из бутылки джинна, который поспособствует грандиозным изменениям американского общества в 1960-е годы… В чём многие увидят опасный антиамериканский заговор КГБ! Но об этом чуть позже, а пока что посмотрим, как ЦРУ экспериментировали с гипнозом, нанимали врачей-психопатов и умудрились в итоге выпустить джинна из своих рук Читать дальше →

Процесс перехода с монолитиной архитектуры на микросервсную

Habr.com - 3 часа 59 мин. назад

Общий процесс перехода с монолитной архитектуры на микросервисную:

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

2. Определение границ сервисов: Идентифицируйте компоненты и функциональные области монолита, которые могут быть выделены в отдельные микросервисы. Определите границы сервисов на основе их независимости и частоты изменений.

3. Разработка архитектуры микросервисов: Разработайте архитектуру микросервисов, учитывая требования по масштабируемости, отказоустойчивости, безопасности и управляемости. Это может включать в себя выбор технологий, определение методов взаимодействия между сервисами и разработку механизмов мониторинга и отслеживания.

4. Постепенное выделение сервисов: Выделяйте сервисы постепенно из монолита, начиная с наиболее критичных и независимых компонентов. Это позволит снизить риски и обеспечить плавный переход к новой архитектуре.

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

6. Тестирование и развертывание: Тестируйте каждый сервис в изоляции и в совокупности с другими сервисами, чтобы обеспечить их правильную работу. Затем развертывайте сервисы в среде продакшена, используя стратегии развертывания, такие как «постепенное развертывание» или «процентное развертывание».

Читать далее

[Перевод] Путь к потрясающему CSS Easing с помощью новой функции linear()

Habr.com - 4 часа 6 мин. назад

С появлением на горизонте новой CSS функции linear() возможности создания естественных анимаций и переходов в будущем значительно расширяются. В этой статье Джейхи Томпкинс рассматривает текущее состояние CSS easing и демонстрирует, чего можно ожидать от linear(), включая удобные инструменты для работы с ней уже сегодня.

Читать далее

Предложен новый тип аккумуляторов — натрий-ионный высокой емкости. Что это за технология и какие у нее преимущества?

Habr.com - 4 часа 25 мин. назад

Источник: theengineer

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

[Перевод] Применение чистой архитектуры в Go

Habr.com - 4 часа 58 мин. назад


Одна из проблем, с которыми мне часто доводится сталкиваться в различных софтверных проектов — это сильная связанность кода, при которой в него так сложно вносить даже простые изменения, не провоцируя нежелательных побочных эффектов. Дело в том, что программисты склонны сосредотачиваться на разработке конкретных фич, не задумываясь о том, как база кода станет развиваться в будущем. Также не все учитывают, что применяемые сегодня библиотеки и фреймворки могут постепенно сойти со сцены спустя несколько месяцев или лет.

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

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

Для решения именно таких проблем с сильной связностью кода многоопытные инженеры создали ряд архитектурных паттернов. Таковы, в частности, чистая архитектура Роберта Мартина («дядюшки Боба»), гексагональная архитектура Алистера Кокбёрна и явная архитектура Герберто Грацы. Читать дальше →

Как построить убежище и (не)облажаться

Habr.com - 4 часа 59 мин. назад

Вселенная культовой игры Fallout получила очередное перерождение с выходом сериала от Amazon. Хотя фабула произведения (почти) и не пересекается с играми, главная сюжетная арка осталась прежней: сливки общества укрываются в убежищах от ядерного безобразия, а выйдя на поверхность, оказываются совершенно не готовы к царящей там анархии. Как построить качественный бункер и не облажаться, и что на самом деле случится с людьми и убежищем даже не за двести, а всего за два года изоляции? Под впечатлением от сериала вспоминаем самый масштабный эксперимент по созданию «прототипа убежища» и разбираемся, насколько обнадеживающими оказались его результаты. Спойлер — не очень.

Читать далее

Остаться в живых (keepalive) feat. HTTP/2, Go & gRPC-Go

Habr.com - 5 часов 27 сек. назад

Привет, Хабр!) Меня зовут Ильяс. В этой статье мы разберём известную идею — keepalive в межсервисном взаимодействии, которая спасла уже не одну компанию в трудное время :). Но чтобы добавить интереса, мы разберём, какие проблемы в keepalive принесли современные технологии (ведь что может пойти не так с этой простой идеей?). Поэтому в статье мы рассмотрим механизмы, которые позволяют проверять стабильность соединения между клиентом и сервером в случае, когда обычные TCP keepalive из-за сложности архитектуры не могут определить состояние сервера.

Остаться в живых

Википедии на искусственных языках

Habr.com - 5 часов 39 мин. назад

Разделы википедии есть на 355 языках (плюс несколько десятков в инкубаторе).

Есть крупные разделы с более чем миллионом статей, их чуть менее 20 (на английском, немецком, русском и так далее; парадоксальным образом на втором месте - википедия на себуанском, одном из языков филиппин, накачанная ботозаливками).

Есть мелкие, но важные (например, на идише, на африканских языках, или на башкирском).

А есть несколько разделов на искусственных языках. Сейчас их 9 (когда-то был еще один, на токипоне; но его закрыли очень давно).

Я попытался разобраться с каждым из них

Решение проблемы дымки на изображениях с использованием .NET: Простой и эффективный подход

Habr.com - 8 часов 29 мин. назад

Простое .NET решение для четких фото: избавьтесь от дымки или тумана на изображениях всего за несколько шагов!

Читать далее

На пути к полной жизни: Онлайн-синтез речи для людей с неврологическими нарушениями

Habr.com - 8 часов 44 мин. назад

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

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

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

В данной статье я расскажу о тестировании возможности применения технологии имплантируемого интерфейса “мозг-компьютер” (brain–computer interface) для онлайн-синтеза речи с использованием активности мозга, регистрируемой внутричерепными электродами, чтобы проложить путь к новым коммуникационным возможностям для людей, потерявших способность говорить.

Приятного прочтения!

Читать далее

Отображение части иерархии в SQL запросе

Habr.com - 16 часов 30 мин. назад

Продолжение статьи, в которой предложено решение задачи визуализации иерархической структуры средствами SQL запросов, на примере MySQL и SQLite

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

Читать далее

Нужно ли писать документацию?

Habr.com - пт, 04/26/2024 - 22:16

Может ли IT-продукт жить без документации?

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

Читать далее

Сейчас на сайте

Сейчас на сайте 0 пользователей и 1 гость.
Ленты новостей