Типичный программист
81.7K subscribers
2.69K photos
911 videos
8 files
7.47K links
Всё самое интересное по программированию

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

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

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

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

VK: vk.com/tproger

Регистрация в перечне РКН: https://tprg.ru/mJwo
Download Telegram
Вошли и вышли — делов на пару кликов

Мы в Tproger проводим небольшое исследование, которое поможет нам делать контент актуальнее, мемы смешнее, а статьи ещё интереснее.

С вас — пару кликов, а с нас — огромный плюс в карму
Создавали ли вы контент (статью или выступление) за последние пару лет?
Anonymous Poll
16%
Писал(-а) статью
11%
Выступал(-а)
6%
Давал(-а) комментарии
2%
Участвовал(-а) в подкасте
6%
Да, другое
72%
Не-а
​​Что делать, если на рабочем компьютере нельзя даже в «Cапёра» поиграть? Написать своего!

Вот простая реализация на Python с исходниками и пояснениями: https://github.com/r-ook/pymsweeper

Конечно, не по канону, что лицо при удержании кнопки не меняется, но для начала тоже сойдёт.

#python #gamdev
Редактировать JSON — не всегда простая задача, JSON Editor Online может здорово её упростить

Это бесплатный веб-инструмент для просмотра, редактирования и форматирования JSON. С его помощью вы можете просматривать ваши же данные рядом друг с другом в чётком, редактируемом древовидном виде и в редакторе кода:

https://jsoneditoronline.org

#веб #инструменты
Как работает Wine?

Если вы любите Linux, то наверняка когда-то запускали Wine. И наверняка вы задавались вопросом, а как он работает изнутри. Как можно взять файл Windows — и просто запустить его в Linux без каких-либо изменений?

Wine — это свободное программное обеспечение для запуска Windows-приложений на нескольких POSIX-совместимых операционных системах, включая Linux, macOS и BSD.

В статье — простым языком о том, как он работает под капотом: https://habr.com/ru/company/dcmiran/blog/693842/

#linux #windows
​​Кто такой системный аналитик?

Системный аналитик — это участник проектной команды, которая разрабатывает ПО. Он помогает переводить требования пользователей на язык разработчиков и наоборот.

Зачем это нужно? В каких сферах он востребован? А что по навыкам? Разбираемся вместе с экспертами из Яндекс.Практикума:

https://tprg.ru/nxsZ

#начинающим #эксперты
Сеньор просто что-то знает.

#twitter
Как уменьшить размер Android-приложения на примере огромного супераппа?

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

Ответ — Dynamic delivery. Она позволяет пользователю самостоятельно выбрать подходящие фичи и уменьшить размер приложения. Создать динамическую фичу с нуля — несложно. Но как превратить в динамическую фичу уже написанный код?

Рассказываем вместе с сеньором мобильной разработки на примере реального приложения Лаборатории Касперского: https://tprg.ru/cvY5

#android
Парень просканировал бродячего кота «флиппером», нашёл хозяев и вернул кота домой

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

Владелец такого флиппера случайно обнаружил бродячего кота в саду у подруги. Оказалось, что кот чипирован. Тогда парню пришла в голову идея использовать флиппер, чтобы получить больше сведений. После чего, по ID с чипа он нашел хозяев кота и вернул его домой. Оказалось что кот убежал из дома два года назад!

Пожалуй, самое доброе и милое применение хакерских инструментов.

#безопасность
Энтузиаст запарился и загрузил во все популярные облачные хранилища 4000 вирусов!

На основе полученных данных он сделал большой разбор облаков с точки зрения безопасности. Среди сервисов — Google Drive, iCloud, Dropbox и в отечественные Облако Mail.ru и Яндекс Диск: https://habr.com/ru/company/bastion/blog/691354/

#облака #безопасность
Прокачиваем скилл веб-разработки: контейнерные запросы CSS простым языком

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

Недавно в Google Chrome и Safari наконец-то внедрили полную поддержку контейнерных запросов. И вот отличная статья, которая поможет понять, как работают контейнерные запросы и как их использовать.

Всё простым языком и на реальных примерах: https://ishadeed.com/article/container-queries-are-finally-here/

#css #фронтенд
Подборка актуальных вакансий

Java-разработчик
Где: Москва, можно удалённо
Опыт: от 3 лет

Senior Golang-разработчик
Где: удалённо
Опыт: от 3 лет

Senior Python-разработчик
Где: Москва, можно удалённо
Опыт: от 3 лет

Разработчик 1C (Senior / Lead)
Где: Москва, Санкт-Петербург, Ростов-на-Дону
Опыт: от 3 лет

Системный аналитик
Где: Москва
Опыт: от 1 года

Ведущий системный аналитик
Где: Москва, можно удалённо
Опыт: от 2 лет

Data Engineer
Где: Москва, можно удалённо
Опыт: можно без опыта

Администратор БД Elasticsearch
Где: Москва
Опыт: можно без опыта

Senior DevOps Engineer
Где: Москва, можно удалённо
Опыт: от 3 лет

#вакансии #работа
Изучать тонкости языка не всегда увлекательное занятие, но для исключений в C++ сделаем исключение

Исключения — важный инструмент в программировании. Но в большинстве статей исключения раскрываются поверхностно: не описана механика их работы, производительность или особенности исключений в C++. И вот интересная статья от Георгия Осипова, разработчика в ВМК МГУ и автора курса по разработке на C++ в Яндекс.Практикуме

В статье есть всё, что вы хотели узнать об исключениях в C++, но боялись спросить. Новичкам она будет полезна, чтобы погрузиться в тему. А программистам с опытом — углубиться в явление и достичь его полного понимания:

https://tprg.ru/epuG

#cpp
​​В мире увлекательных геймдев-проектов пополнение: разработчик в одиночку делает ремастер легендарных симпсонов на Unreal Engine!

Это и просто залипательно, и полезно для обучения будущим геймдев-разработчикам. На его канале уже много видео, в которых он показывает процесс разработки и объясняет, что, как и зачем он делает: https://youtu.be/zFX9UlxcdHA

#gamedev #обучение
​​Как стать самым быстрым программистом?

Может, надо быстрее писать код? Или качественнее проверять код, чтобы потом меньше времени тратить на отладку? А может, стоит меньше времени проводить на митингах?

В статье Senior Java-разработчик отвечает на эти вопросы. И рассказывает, как:
— автоматизировать тестирование и инфраструктуру,
— реализовать «Конвейер развертывания»,
— обойти трясину легаси,
— правильно выбрать вектор работы и сэкономить кучу времени и разработчикам, и компании.

Приятного чтения: https://tproger.ru/articles/kak-stat-samym-bystrym-programmistom/

#тренды #работа #оптимизация
Кто такой архитектор ПО и как им стать?

Архитектор — опытный специалист помогает подобрать верные решения для ИТ-систем. Обычно, архитекторы не нужны в небольших проектах. Но если речь заходит про большие и высоконагруженные системы, ИТ-архитектор уже на старте поможет максимально удешевить разработку и сэкономить кучу времени и нервов.

В статье Lead architect Группы «Иннотех» Александр Соляр рассказал, чем конкретно занимается ИТ-архитектор и как войти в профессию: https://tprg.ru/FSBT

#карьера #советы #архитектура
This media is not supported in your browser
VIEW IN TELEGRAM
Как сразу экспортировать дизайн из Figma в готовые к производству приложения?

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

Оказывается, такие инструменты тоже уже есть, делимся одним из них. Locofy — бесплатный инструмент для экспорта дизайна в приложения: https://www.locofy.ai

Locofy поддерживает React, React Native, HTML-CSS, Gatsby, Next.js и популярные библиотеки интерфейса. В том числе Material, Chakra и Bootstrap. Из минусов — пользователи говорят, что с непривычки настройка перед экспортом может показаться сложной, но результат того стоит.

#инструменты #веб
This media is not supported in your browser
VIEW IN TELEGRAM
Наконец-то программисты решают действительно важные проблемы

Ответ на вопрос, сколько банок алфавитных макарон нужно, чтобы написать «Властелин колец», найден.

#кек
ИИ должен прекратить эксплуатировать труд Open Source разработчиков: из-за Copilot на Microsoft подали в суд

Copilot — это ИИ инструмент, генерирующий код по небольшому текстовому описанию. Он успел наделать шума в сообществе разработчиков. Кто-то нашёл в нём помощника в повседневной работе. А кто-то — всерьёз задумался о том, что с таким подходом программисты и вовсе скоро не понадобятся.

Но беда пришла откуда не ждали: разработчики подали в суд на Microsoft за новый вид пиратства ПО. Ведь по сути в платный сервис собрали весь открытый код, который создавался тысячами разработчиков абсолютно бесплатно.

Сейчас в Copilot используется код, распространяемый под открытыми лицензиями. Но в большинстве лицензий (GPL, MIT и Apache) при использовании кода нужно извещать об авторстве. Сейчас это требование не выполняется. А ущерб от таких действий оценивается примерно в 2500 долларов за каждое нарушение или 9 миллиардов долларов.

#microsoft #github #ии
​​HR: Почему мы должны взять именно вас?

Я: