Типичный программист
81.5K subscribers
2.66K photos
902 videos
8 files
7.45K links
Всё самое интересное по программированию

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

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

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

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

VK: vk.com/tproger

Регистрация в перечне РКН: https://tprg.ru/mJwo
Download Telegram
Ловите дорожную карту по Python, в которой собраны актуальные для изучения инструменты и технологии в 2023 году

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

Оригинал в высоком качестве, подсказки и полезные ссылки по обучению: https://tproger.ru/articles/roadmap-python-razrabotchika-2023

#шпаргалка #python
Энтузиасты представили новый язык программирования под названием Birb — он состоит только из эмоджи разных птиц

Исходный код проекта Birb написан на языке Haskell и распространяется под открытой лицензией MIT, а язык — полный по Тьюрингу: https://github.com/marvinborner/birb

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

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

Например, эмодзи сова 🦉 определяется выражение «λab.b(ab)». А числа задаются с использованием кодирования Чёрча, например, 0 можно представить как «🐥🐦», 1 как «🪽🐧», а операцию 1+2 как «🐦🐦🕊🐧🕊🐧🐦🐧🕊🐧🕊🪽🐧🦢🐧🦢🐧🐥🐦🦢🐧🐥🐦». А все символы в листинге Birb, отличные от эмоджи птиц, обрабатываются как комментарии.

Удобно, не правда ли?

#кек
Soft Wars: прокачиваем soft skills за 7 дней

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

Итак, начнём действовать: https://tproger.ru/blogs/improve-soft-skills-in-7-days

#softskills
​Ликбез по распространённым Client-Side уязвимостям

Хороший и качественный код — не всегда безопасный код. Поэтому любому разработчику важно иногда изучать ИБ практики, чтобы не упускать хотя бы самые очевидные уязвимости в коде.

Начнем с Client Side-уязвимостей. Это слабые места или ошибки в ПО, работающем на стороне пользователя. Их можно использовать для хакерских атак или несанкционированного доступа к системе.

В статье — самые распространённые виды уязвимости на стороне клиента и некоторые методы Client-Side защиты: https://habr.com/ru/companies/bastion/articles/757590/

#безопасность #веб
Forwarded from IT Юмор
Тогда давайте наймем лампочку на роль ведущего разработчика
Подборка актуальных вакансий

— Стажёр-менеджер в КРОК
Где: удалённо
Опыт: без опыта

— Младший Python-разработчик в Kokoc Group
Где: удалённо
Опыт: можно без опыта

— Key Account Manager (крупный бизнес) в МТС
Где: удалённо
Опыт: можно без опыта

— Младший менеджер проектов в КРОК
Где: удалённо
Опыт: от 1 года

— Системный администратор Citrix в Открытие
Где: удалённо
Опыт: от 2 лет

— Разработчик SharePoint в Иннотех
Где: удалённо
Опыт: от 2 лет

— Разработчик PIX BI в Иннотех
Где: удалённо
Опыт: от 3 лет

— DevOps Engineer Центра HR TECH в Гринатом
Где: удалённо
Опыт: от 3 лет

— Сетевой инженер в Гринатом
Где: удалённо
Опыт: от 3 лет

— Руководитель группы администрирования Linux в Открытие
Где: удалённо
Опыт: от 4 лет

— Senior Frontend Developer в Kokoc Group
Где: удалённо
Опыт: от 4 лет

— Ведущий аналитик / программист (Отдел планирования и управленческой отчётности) в МТС
Где: удалённо
Опыт: не указан

#вакансии #работа
LawsOfUX — это сборник лучших практик, которые важно учитывать при создании пользовательских интерфейсов

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

#ux #шпаргалки
За что ненавидят JavaScript?

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

Изучили споры между фанатами и хейтерами JavaScript и разобрались, чем JS заслужил нелюбовь кодеров и справедливы ли нападки: https://tproger.ru/articles/za-chto-nenavidyat-yazyk-programmirovaniya-javascript

#javascript
Kokос ждёт сеньор фронтенд-разработчиков

Kokoc Group — группа компаний, включающая в себя более 30-ти агентств, сервисов и решений для эффективного развития бизнеса, у которой уже более 40 продуктов: высоконагруженные рекламные сети, маркетинговые сервисы и платформы, сервисы автоматизации для digital-специалистов, финансовые сервисы и др.

Если у вас есть опыт разработки от четырёх лет, знания React, JS, TS и Next.js, то вы можете попробовать попасть на работу в одну из крупнейших российских компаний в сфере digital.

Детали и возможность оставить отклик тут: https://tprg.ru/FnHQ

#работа #вакансии
Чистый» код и ужасная производительность

Программистам, особенно начинающим, часто рекомендуют писать «чистый» код. Вот основные правила чистого кода:
— Отдавайте предпочтение полиморфизму, а не «if/else» и «switch».
— Код не должен знать о внутреннем устройстве объектов, с которыми он работает.
— Функции должны быть маленькими.
— Каждая функция должна выполнять одну задачу.
— Принцип «DRY» — Don’t Repeat Yourself («не повторяйся»).

Но на самом деле большая часть этих правил не влияет на среду исполнения кода. А в добавок может ещё и сильно урезать производительность.

Почему так происходит и что с этим делать: https://habr.com/ru/articles/760184/

#чистыйкод #советы
Есть ли жизнь после Atlassian

В 2022 году Atlassian ограничила функциональность сервисов в России, поэтому Jira, Confluence и Trello стали недоступны многим компаниям. К счастью, сегодня есть аналоги этих сервисов и продолжают появляться новые.

Один такой продукт сделали для себя в Ростелекоме и теперь решили поделиться им с остальными. Подробнее:

https://tprg.ru/DAgc
Если когда-нибудь начнёте волноваться о качестве своего кода или испытывать острое желание что-нибудь отрефакторить, просто вспомните этот if из исходников игры Ratchet & Clank 3.

#говнокод #gamedev
Практикуемся в React, TypeScript и MobX

Небольшой гайд, как создать to-do лист с бесконечной вложенностью подзадач. Можно посмотреть код и попробовать результат в демо:

https://tproger.ru/articles/sozdanie-todo-list-beskonechnoj-vlozhennosti-react-typescript-mobx

#веб react #typescript #фронтенд
Почему приложения становятся хуже: тирания маржинального пользователя

Почему разработчики не всегда идут по пути улучшения приложений взамен на увеличение метрик и прибыли, и как вообще сложился такой парадокс?

Автор статьи за шесть лет работы в Google смог наблюдать, как из продуктов пропадают любимые пользователями фичи, последние остатки креативности и увлечённости. Причина — тирания маржинального пользователя: https://habr.com/ru/articles/761292/

#тренды #финансы
Разбираемся с Kubernetes: подборка статей для старта работы с контейнерами

— Kubernetes как профстандарт работы с контейнерами: https://tproger.ru/blogs/kubernetes-as-default-tool-for-containers

— Разработка приложений в среде Kubernetes: преимущества и нюансы: https://tproger.ru/articles/razrabotka-prilozhenij-v-srede-kubernetes-preimushhestva-i-njuansy

— Зачем и как использовать контейнеры: разбираемся с Docker, Kubernetes и другими инструментами: https://tproger.ru/articles/containers-explained

— Как Kubernetes повышает ценность ИТ-навыков: https://tproger.ru/articles/kak-kubernetes-povyshaet-cennost-it-navykov

#devops #инструменты #kubernetes
Forwarded from IT Юмор
Будильники московских айти-специалистов:
Стал ли пользователь ленивее?

У современных пользователей всё больше требований к сайтам и приложениям: они должны быть быстрыми, удобными, понятными и максимально простыми. Любой лишний клик, каждая дополнительная секунда или длинный скролл — и все, пользователь уходит с сайта или закрывает приложение.

Действительно ли пользователи стали ленивыми? Давайте разбираться: https://tproger.ru/articles/stal-li-polzovatel-lenivee-spojler-net-no-karty-emu-vsyo-ravno-nuzhny

#тренды #ux #веб
В одном месте собрали большую подборку самых важных команд терминала Linux

Они помогут здорово сэкономить своё время и повысить продуктивность: https://tproger.ru/articles/useful-linux-commands/

#linux
Главная проблема новичков в асинхронном программировании на Python

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

В статье вы узнаете про главную проблему асинхронного программирования на Python. И лучше разберётесь с async и await: https://tproger.ru/articles/glavnaya-problema-novichkov-v-asinhronnom-programmirovnaii-na-python

#python #асинхронность
Разработчики выпустили плагин Voices, позволяющий оставлять голосовые комментарии в коде

На GitHub опубликовали код плагина Voices для интегрированных сред разработки от компании JetBrains. С его помощью можно оставлять в коде голосовые комментарии: https://github.com/polina4096/voices

Для установки необходимо скачать jar-файл из раздела Releases. После следует перейти в настройки IDE и открыть раздел управления расширениями. В окне требуется выбрать установку из памяти и перезапустить IDE.

С каждым днём мы все дальше от Бога...

#кек