HTML и CSS антипаттерны

Привет, Хабр! При обучении разным языкам программирования всегда есть практики, которым не рекомендуется следовать. Это очень сильно помогает разработчикам избегать ошибок. Только по какой-то причине сложно найти антипаттерны по языкам HTML и CSS. Может, потому что они не языки программирования? В общем, у меня появилось желание это исправить. Я собрал несколько примеров, которые лично отношу к антипаттернам. Возможно, это субъективно, но надеюсь, что нет. Давайте посмотрим, что я вам подготовил.

https://habr.com/ru/companies/ruvds/articles/961740/

#html #css #accessibility #антипаттерны #ruvds_статьи

HTML и CSS антипаттерны

Привет, Хабр! При обучении разным языкам программирования всегда есть практики, которым не рекомендуется следовать. Это очень сильно помогает разработчикам избегать ошибок. Только по какой-то причине...

Хабр

Кодекс продуктивной неэффективности. Вредные советы для разработчиков

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

https://habr.com/ru/articles/946760/

#вредные_советы #антипаттерны #работа_в_команде

Кодекс продуктивной неэффективности. Вредные советы для разработчиков

Дисклеймер Всё, что ты прочитаешь в этой статье - это стёб и сатира, чтобы показать, как не стоит работать. Не принимай всерьёз! Эти советы - абсолютная...

Хабр

Как НЕ нужно писать автотесты на Python

Разбираем самые странные антипаттерны в автотестах на Python: от sleep(0.1) и стрелочек вниз до глобальных курсоров и "фреймворков" на 3500 строк. Почему так делать не стоит и какие есть взрослые альтернативы.

https://habr.com/ru/articles/942532/

#автотесты #тестирование #антипаттерны #python #selenium #playwright #pytest #locust #костыли #велосипеды

Как НЕ нужно писать автотесты на Python

Введение В этой статье я разберу несколько типичных ошибок, которые встречаются при написании автотестов на Python. Цель не в том, чтобы высмеять конкретных людей или проекты. Главное — показать...

Хабр

Оверинжиниринг: простое сложным языком

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

https://habr.com/ru/articles/933412/

#оверинжиниринг #архитектура #чистый_код #паттерны_проектирования #паттерны_программирования #kiss #yagni #тестирование #python #антипаттерны

Оверинжиниринг: простое сложным языком

Введение Оверинжиниринг — это когда простая задача решается так, словно вы проектируете софт для NASA: с паттернами, абстракциями и «гибкостью на будущее», которой, скорее всего, никто так и не...

Хабр

Щи: симулятор жестокости» или «Как не надо делать игры»

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

https://habr.com/ru/articles/933744/

#геймдев ++ #паттерны #solid #качество_кода #антипаттерны #спагеттикод #ооп #gamedev #юмор

Щи: симулятор жестокости» или «Как не надо делать игры»

Перед прочтением Многие из нас слышали про лучшие практики в программировании (KISS, DRY, SOLID, паттерны и прочее). У начинавшего разработчика при их изучении встает немой...

Хабр

Story Points не работают? И другие мифы про оценку задач, в которые мы почему-то верим

Про Story Points можно услышать что угодно. На одной конференции спикер всерьёз говорил: «Story Points — это плохо. Не используйте их вообще. Плохая практика». Но почему столько хейта? Неужели всё действительно так плохо? Или дело не в Story Points, а в том, как именно их используют? Меня зовут Семён, я тимлид в МТС Аналитике, бывший Java-разработчик, сертифицированный Scrum Master и преподаватель курса по Java в МФТИ. Веду блог. За годы работы много раз видел, как команды мучаются с оценками задач. В этой статье расскажу, за что критикуют оценки, чем отличаются человеко-часы от футболок и Story Points, когда их стоит применять — а когда лучше не мучиться и попробовать NoEstimates. И почему отношение к Story Points столь неоднозначно.​ Будет и про типовые ошибки, и про работающие подходы — чтобы планировать задачи без лишней боли. Спойлер: идеального способа оценки задач не существует. Зато есть вполне рабочие способы не сойти с ума и при этом нормально планировать работу.

https://habr.com/ru/companies/oleg-bunin/articles/908522/

#story_points #noestimates #черный_лебедь #критерии_оценки #антипаттерны #scrum

Story Points не работают? И другие мифы про оценку задач, в которые мы почему-то верим

Про Story Points можно услышать что угодно. На одной конференции спикер всерьёз говорил: «Story Points — это плохо. Не используйте их вообще. Плохая практика».  Но почему столько хейта? Неужели...

Хабр

[Перевод] Почему дешёвые разработчики обходятся дорого

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

https://habr.com/ru/articles/908414/

#разработка #кодревью #технический_долг #управление_командой #стартапы #бизнес #антипаттерны

Почему дешёвые разработчики обходятся дорого

Эта статья — перевод моего поста, опубликованного на Medium в прошлом году. Поводом послужил очередной факап в одном из кросс-командных проектов, куда пригласили «экономных» разработчиков. Все имена и...

Хабр

Основные паттерны микросервисной архитектуры: Strangler Fig, API Gateway, Service Mesh и другие

Микросервисная архитектура стала де-факто стандартом для построения современных масштабируемых приложений. Вместо единого монолитного приложения система разбивается на набор мелких независимых сервисов, каждый из которых отвечает за свою четко обозначенную функцию. Такой подход позволяет упрощать разработку и развертывание отдельных компонентов, повышать отказоустойчивость и масштабируемость системы. Однако переход к микросервисам и их эффективное использование сопряжены с рядом сложных задач. Для их решения в практике выработаны архитектурные паттерны – типовые подходы и шаблоны проектирования. В данной статье мы разберем несколько ключевых паттернов, связанных с микросервисами. Речь пойдет о паттернах миграции и интеграции (таких как Strangler Fig – «удушающее дерево» и API Gateway ), о сетевых и структурных паттернах ( Service Mesh , Sidecar ), о шаблонах работы с данными ( Database per Service , CQRS ) и об особом подходе к хранению состояния ( Event Sourcing ). Для каждого паттерна мы рассмотрим его суть, назначение, примеры использования, а также плюсы и возможные сложности. К некоторым паттернам приведены упрощенные диаграммы и фрагменты кода, чтобы иллюстративно показать, как они работают на практике.

https://habr.com/ru/articles/904954/

#java #net #python #микросервисы #распределенные_системы #паттерны_проектирования #антипаттерны #распределение_трафика #распределенные_транзакции #высокая_производительность

Основные паттерны микросервисной архитектуры: Strangler Fig, API Gateway, Service Mesh и другие

Микросервисная архитектура стала де-факто стандартом для построения современных масштабируемых приложений. Вместо единого монолитного приложения система разбивается на набор мелких независимых...

Хабр

[Перевод] Синглтон — корень всех зол

Допустимые глобальные переменные и предполагаемая экономия памяти. Вот уже 20 лет я преподаю программирование в университете Буэнос-Айреса. На курсе программной инженерии мы изучаем паттерны проектирования, и одна и та же «схема» повторяется раз за разом, вызывая почти де жа вю. Я убедился в этом на нескольких проектах и при обращении со свободным ПО, которым мне приходилось пользоваться: Как «по волшебству» в коде возникает паттерн синглтон.

https://habr.com/ru/companies/piter/articles/874428/

#singleton #design_patterns #проектирование #ооп #рефакторинг #антипаттерны

Синглтон — корень всех зол

Допустимые глобальные переменные и предполагаемая экономия памяти. Вот уже 20 лет я преподаю программирование в университете Буэнос-Айреса. На курсе программной инженерии мы изучаем паттерны...

Хабр

Как создать плохой REST-сервис: краткое руководство

REST API — один из самых популярных типов веб‑сервисов. Но несмотря на множество туториалов по его созданию, на практике встречаются сервисы, которые вызывают лишь разочарование у пользователей. Это подтолкнуло Костю, проектного разработчика в Naumen, создать краткое руководство по написанию плохого REST‑сервиса. Уже несколько лет он занимается поддержкой и развитием проектов на Naumen Service Management Platform, часто сталкивается с проектированием REST API и точно знает, каких ошибок лучше не допускать. В статье Костя поделился основными антипаттернами и рассказал, что не нужно нести на прод.

https://habr.com/ru/companies/naumen/articles/856734/

#java #restсервис #антипаттерны #архитектура #HTTPметоды #шифрование_данных #TLS #restapi

Как создать плохой REST-сервис: краткое руководство

REST API — один из самых популярных типов веб‑сервисов. Но несмотря на множество туториалов по его созданию, на практике встречаются сервисы, которые вызывают лишь...

Хабр