Веб-страница
23.9K subscribers
1.77K photos
535 videos
1 file
3.97K links
Всё по фронтенду, бэкенду и девопсу в одном месте

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/64ai
Download Telegram
Годная статья по балансировке долгоживущих подключений в Kubernetes

https://learnk8s.io/kubernetes-long-lived-connections

Если коротко, то K8s по умолчанию не балансирует коннекшены, которые держатся долго: HTTP/2, gRPC, RSockets, AMQP или подключения в БД, например. И некоторые поды могут получить куда больше нагрузки, чем хотелось бы.

И тут можно задуматься о балансировке на клиенте. Вот в статье про это и пишут.

#devops #kubernetes
Обычная разработка веб-проекта
Продолжаем тему HTTP/3, потому что всем уже очень хочется, чтобы это заработало. Наши сайты просто станут быстрее работать, юзеры довольны, программисты, владельцы — все.

Попалась хорошая статейка о том, что вообще такое HTTP/3, откуда и как он появился, в чём плюсы: https://tprg.ru/YoQF

По срокам HTTP/3 хотя бы частично в реальной жизни можно ожидать в 2020 году, летом стандарт обещают окончательно утвердить, а экспериментальная поддержка есть уже почти везде. Особо никто не торопится, чтобы не накосячить в процессе.

А потом можно ждать и обновление с multipath (доступ к одному сайту по разным сетевым соединениям) и поддержкой ненадёжных или частично надёжных стримов (трансляторы всякие порадуются) и других вкусняшек.

#http
GitHub купил npm: https://github.blog/2020-03-16-npm-is-joining-github/

Говорят, что всё по прежнему будет бесплатным. Сейчас в npm более 1,3 миллиона пакетов и 75 миллиардов загрузок в месяц. Это очень важная часть JavaScript-мира.

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

Мы думаем, что новость скорее позитивная. MS довольно хорошо повлияла на GitHub после покупки. Посмотрим, что будет дальше.

#javascript #npm #github
Сегодня делимся полезными ссылками для всех программистов, не только по вебу. Да что уж там, это вообще для многих полезно.

Как возродить потерянную мотивацию: https://tprg.ru/c2af

Вам кажется, что все вокруг программируют лучше? Не беспокойтесь, вы не одиноки: https://tprg.ru/Pmjy

Зачем разработчику личный план развития и как его составить: https://tprg.ru/ICke

Как побороть прокрастинацию: https://tprg.ru/isha

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

Называется Monitoror: https://github.com/monitoror/monitoror

На картинке в посте пример дашборда, его же можно глянуть в лайв-режиме здесь: https://tprg.ru/Ibqk

Monitoror написан на Go, работает на Linux (64bits, ARM), macOS, Windows (64bits). Все подробности в репозитории.

#мониторинг
Инструмент для сканирования кластера Kubernetes на потенциально небезопасные права доступа: https://github.com/cyberark/KubiScan

Называется KubiScan. Эта штука была опубликована как часть отдельного исследования по безопасности Role-based access control в K8s: https://tprg.ru/5mk6

Все поднобности в репозитории, там же пример использования и демка.

#kubernetes
Зачем в современном вебе нужен title?

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

Подробней почитать про этот вопрос можно в статье разработчика, участника рабочих групп W3C:

https://tprg.ru/IGwV

#фронтенд #html
Большая подборка туториалов по работе с Kubernetes

В ней материалы от DigitalOcean, Google, Kubernetes, IBM, Amazon, Microsoft:

https://tprg.ru/Iv7c

#devops #kubernetes
SoundCloud выпустили Periskop — сервис для мониторинга за исключениями:

https://tprg.ru/ERvc

UI — на картинке в посте, код — на гитхабе:

https://tprg.ru/rNVY

#мониторинг
Хотите устроиться в Google JavaScript-разработчиком, но боитесь идти на собеседование, потому что не знаете, что там будут спрашивать?

Разработчик сходил туда за вас, а теперь всё подробно рассказывает:

https://tprg.ru/N3qZ

#javascript #google
Дашборд в терминале за 300 строк кода на Go? Легко:

https://tprg.ru/5N9o

#мониторинг #go
This media is not supported in your browser
VIEW IN TELEGRAM
Как создать hover-анимацию, показанную в этом видео? Вот подробный гайд:

https://tprg.ru/fdgR

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

В качестве хорошего примера такой системы можно привести дизайн-систему Альфа-Банка:

https://tprg.ru/giHV

А в статье на Хабре дизайнер из банка рассказал, почему такая система — это круто, с какими проблемами приходится сталкиваться и как эти проблемы решаются:

https://tprg.ru/SgmG

#фронтенд #дизайн
Подборка из 11 репозиториев, которые помогут прокачаться любому разработчику

1. Awesome — самый популярный репозиторий, в котором представлены все темы, от разработки ПО до аппаратного обеспечения и бизнеса: https://github.com/sindresorhus/awesome

2. Подборка бесплатного ПО и сервисов: https://github.com/ripienaar/free-for-dev

3. Пособие для технических интервью: https://github.com/yangshun/tech-interview-handbook

4. Подборка бесплатных источников для обучения: https://github.com/EbookFoundation/free-programming-b..

5. Подборка бесплатных API: https://github.com/public-apis/public-apis

6. Заметки эффективного инженера: https://gist.github.com/rondy/af1dee1d28c02e9a225ae55..

7. Разбор продвинутых вопросов по JavaScript: https://github.com/lydiahallie/javascript-questions

8. Алгоритмы и структуры данных на JavaScript: https://github.com/trekhleb/javascript-algorithms

9. Чистый код на JavaScript: https://github.com/ryanmcdermott/clean-code-javascript

10. Awesome для начинающих: https://github.com/MunGell/awesome-for-beginners

11. Большой список проблемных строк, которые пользователи могут вводить в ваше программу: https://github.com/minimaxir/big-list-of-naughty-stri..

#javascript
This media is not supported in your browser
VIEW IN TELEGRAM
Что там по погоде за окном? Напишите приложение и посмотрите.

Вот, например, приложение на React, можно будет посмотреть погоду на неделю вперёд:

https://tprg.ru/wnps

#фронтенд #react
Канареечный подход к разработке

Подход к разработке Canary Deployment называется так в честь интересного способа проверки наличия опасных газов в шахтах. Канарейки очень любят петь, а ещё они чувствительны к метану и угарному газу. Даже при небольшой концентрации этих газов в воздухе они теряют сознание или умирают. Золотоискатели и шахтёры брали птичек с собой: пока канарейки поют, можно работать. Замолчали — в шахте газ и пора уходить. Так шахтёры жертвовали маленькой птичкой, чтобы остаться в живых.

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

Как работает подход, чем он полезен и как его реализовать, смотрите в видеодокладе.

А текстовую версию можно почитать здесь: https://tprg.ru/y1Zp

#devops
This media is not supported in your browser
VIEW IN TELEGRAM
Гайд по созданию аркадной игры на ванильном JavaScript:

https://tprg.ru/tfbd

#фронтенд #javascript
CSS4 будет?

Последняя пронумерованная версия CSS — это CSS3. Но какой-то чёткой системы версионирования CSS сейчас нет. Что было добавлено после CSS3? Где можно найти систематизированную информацию в удобном виде?

В феврале этого года начала работу CSS4 Community Group, участники которой пытаются сформировать независимый набор спецификаций — CSS4.

В статье «CSS X» Берт Бос, один из отцов CSS, поделился своими мыслями по поводу вопроса версионирования CSS:

https://tprg.ru/Rkq3

#css
В качестве базы данных можно использовать и обычную таблицу в Google Sheets. Вот с помощью этого плагинчика:

https://tprg.ru/SdWo

#базыданных