Типичный программист
81.6K subscribers
2.67K photos
909 videos
8 files
7.46K links
Всё самое интересное по программированию

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

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

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

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

VK: vk.com/tproger

Регистрация в перечне РКН: https://tprg.ru/mJwo
Download Telegram
А вы знали, почему Stack Overflow называется именно так?

Оригинальный пост на Coding Horror датируется 6 апреля 2008 года, то есть почти за полгода до релиза сервиса. В нём Джефф Этвуд, сооснователь проекта, спрашивает у своих читателей, как лучше назвать новый проект: https://blog.codinghorror.com/help-name-our-website/

Название, ставшее финальным, получило 1721 голосов — 25% от общего числа проголосовавших. На втором месте по популярности было Private Void — этот вариант набрал 934 голоса (14%). Замкнуло тройку лидеров название Dereferenced с 755 голосами (11%).

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

#внезапныйфакт #кек #stackoverflow
С праздником всех воинов свитера и клавиатуры!

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

Желаем чинить меньше утюгов и микроволновок, писать больше рабочего кода и пропускать меньше багов. Пусть действие Ctrl+Z работает даже в реальной жизни. С праздником, программисты!

Кстати, в честь праздника предлагаем пройти наш тест на программиста. Old but gold: https://tproger.ru/quiz/proger-day/
Почему Линус Торвальдс ненавидит C++?

В 2007 году пользователь Дмитрий Какурин написал письмо Линусу Торвальдсу, в котором спросил программиста, почему тот использует чистый Си вместо того, чтобы написать все на C++. Само использование чистого Си Дмитрий Какурин назвал емким словом bullshit. В ответ Линус Торвальдс сказал, что bullshit — это сам Какурин, а C++ — ужасный язык, на котором кодеры генерируют, мягко говоря, «нечистоты».

Рассказываем, что еще сказал Линус и почему так вышло: https://tproger.ru/articles/pochemu-linus-torvalds-nenavidit-s

#linux #cpp #си
Из сеньора в тимлиды: всегда ли уместен этот карьерный скачок?

Наш читатель Павел Иванов рассказывает про свой путь в IT длиной в 20 лет. А так же о том, как в один момент стал руководить человеком, чей стаж превышал его в три раза.

Куда это привело — читайте в статье: https://tproger.ru/articles/iz-senior-razrabotchika-v-timlidy-vsegda-li-umesten-etot-karernyj-skachok

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

Мы так и знали...
Сообщество разработчиков игр в ярости: Unity внезапно решили поменять правила его использования

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

С 1 января 2024 Unity планирует изменить бизнес-модель — появится комиссия Unity Runtime Fee. Теперь, если количество установок выше определённого порога, то разработчик должен платить за каждую установку и даже переустановку своего приложения. Цены и пороги варьируются от видов подписок и показателей игры.

Дорожего всего придётся разработчикам на плане Personal и Plus — 20 центов за каждую установку (если прибыль за последний год превышает 200 тысяч долларов и количество установок за всё время превышает 200 тысяч). План Plus, кстати, перестанет быть доступным для новых пользователей, а текущим предложено перейти на план Pro.

Press F

#gamedev
Хамза Бенделладж — хакер, которого называют Робином Гудом

В русскоязычной среде полно информации о знаменитых хакерах вроде покойного Кевина Митника, однако мало кто знает о скандальном алжирском хактивисте Хамзе Бенделладже, которого многие считают Робином Гудом и который довольно известен в США.

Рассказали историю алжирского хакера Хамзы Бенделладжа, который украл миллионы долларов и стал народным героем вроде Робина Гуда: https://tproger.ru/articles/hamza-bendelladzh-haker-kotorogo-nazyvayut-robinom-gudom

#безопасность #история
Ловите дорожную карту по 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/

#тренды #финансы