JetBrains - компания, занимающаяся разработкой инструментов для разработки. Такие известные продукты как IntelliJ IDEA, PyCharm, CLion, Resharper, разрабатывает JetBrains.
До 5 мая можно зарегистрироваться на сайте JetBrains
и на протяжении 90 дней бесплатно пользоваться всеми продуктами компании. Это хорошая возможность ознакомиться с расширенными возможностями различных IDE.
До 5 мая можно зарегистрироваться на сайте JetBrains
и на протяжении 90 дней бесплатно пользоваться всеми продуктами компании. Это хорошая возможность ознакомиться с расширенными возможностями различных IDE.
Jetbrains
JetBrains Account
JetBrains Account provides easy access to your JetBrains products and makes upgrades and migration to new hardware smooth.
Использование систем контроля версий - важный аспект в любой разработке. На данный момент самой популярной системой контроля версий является git.
В серии статей подробно и с примерами рассматриваются основные концепции и принципы работы git, которые, зачастую, могут быть непонятны начинающим разработчикам.
Часть 1
Часть 2
Часть 3
#skills
В серии статей подробно и с примерами рассматриваются основные концепции и принципы работы git, которые, зачастую, могут быть непонятны начинающим разработчикам.
Часть 1
Часть 2
Часть 3
#skills
Хабр
Git: советы новичкам – часть 1
В Playrix приходит много новых сотрудников и большинство из них не работали с Git. Особенно это касается гейм-дизайнеров и художников. Хотя и для программистов это не редкость – опыт работы с другими...
Часто какие-то интересные задачи остаются за кадром, потому что просто не знаешь, где применять и как попробовать. Таким образом есть набор важных умений, которые вообще не покрываются до того момента, когда они понадобятся в практической деятельности.
Существует множество провайдеров облачных инфраструктур (VPS), которые предоставляют бесплатный пробный доступ. Например DigitalOcean дает 100$ всем новым пользователям на 2 месяца. Для этого нужно создать аккаунт и привязать карту (можно виртуальную).
Таким образом, создаешь облачный сервер и вот минимальный набор задач, которые можно решить:
1. настройка беспарольного ssh-доступа;
2. настройка своего vpn-сервера (а потом поделиться с друзьями, чтобы все могли через него ходить);
3. запуск вычислительных задач, которые не получается запустить локально;
4. поднятие веб-серва с простым сайтиком, настройка https доступа;
5. защита вашего веб-сервера от внешнего мира (а защищать понадобится практически моментально).
Существует множество провайдеров облачных инфраструктур (VPS), которые предоставляют бесплатный пробный доступ. Например DigitalOcean дает 100$ всем новым пользователям на 2 месяца. Для этого нужно создать аккаунт и привязать карту (можно виртуальную).
Таким образом, создаешь облачный сервер и вот минимальный набор задач, которые можно решить:
1. настройка беспарольного ssh-доступа;
2. настройка своего vpn-сервера (а потом поделиться с друзьями, чтобы все могли через него ходить);
3. запуск вычислительных задач, которые не получается запустить локально;
4. поднятие веб-серва с простым сайтиком, настройка https доступа;
5. защита вашего веб-сервера от внешнего мира (а защищать понадобится практически моментально).
Digitalocean
DigitalOcean: AI-Powered Unified Agentic Cloud Infrastructure
Build on DigitalOcean's unified agentic AI cloud infrastructure. AI-powered development, instant deployment, easy management. Simple and affordable.
Для тех кто пользуется git, но ему не нравится консоль.
Удобный git клиент Sublime Merge.
Удобный git клиент Sublime Merge.
Sublimemerge
Sublime Merge - Git client from the makers of Sublime Text
Blaze through your commits with Sublime Merge - available on Mac, Windows and Linux
Важным аспектом в разработке любого проекта является тестирование.
Рассмотрим несколько причин, почемунужно обязательно писать тесты:
— Контроль качества кода. Если вы не представляете, как протестировать тот или иной метод, то скорее всего метод написан плохо. Стоит провести рефакторинг, а потом вернуться к тестированию.
Этот тезис очень важен: плохой код всегда сложно тестировать.
— Внесение изменений в проект без опасений что-то сломать. Когда проект начинает увеличиваться, без тестов ваша судьба больше не в ваших руках. Вы не можете быть уверены, что с внесением изменений в проект, или внедрением нового функционала все будет работать так как раньше.
Когда к проекту есть тесты, вы можете запустить их и убедиться, что ваши изменения не ломают старый функционал и все работает как и раньше.
При разработке в команде значение это пункта сильно увеличивается.
— Документация. Тесты лучше документации! Документация может быть устаревшей. По тестам, которые успешно проходят, можно понять поведение программы, как различные функции отрабатывают на тех или иных входных данных.
— У проекта, к которому есть тесты фактор автобуса существенно ниже, чем у проекта без тестов.
— Крепкий сон. Если проект запущен в продакшн и кем-то используется, то вы будете спать крепче, если этот проект хорошо протестирован.
Хорошее руководство по написанию тестов с использованием библиотеки pytest:
Введение, Часть 1, Часть 2, Часть 3, Часть 4, Часть 5, Часть 6, Часть 7.
Для того чтобы начать тестировать свой код необязательно читать все приведенные статьи. Достаточно прочесть первые, а потом возвращаться к этому руководству с возникновением новых вопросов при написании тестов к своему коду.
Достоинством этого руководства является то, что в нем рассматриваются не тривиальные примеры, а тестирование полноценного приложения с рассмотрением ситуаций, часто встречающихся в реальной разработке.
#python
Рассмотрим несколько причин, почему
— Контроль качества кода. Если вы не представляете, как протестировать тот или иной метод, то скорее всего метод написан плохо. Стоит провести рефакторинг, а потом вернуться к тестированию.
Этот тезис очень важен: плохой код всегда сложно тестировать.
— Внесение изменений в проект без опасений что-то сломать. Когда проект начинает увеличиваться, без тестов ваша судьба больше не в ваших руках. Вы не можете быть уверены, что с внесением изменений в проект, или внедрением нового функционала все будет работать так как раньше.
Когда к проекту есть тесты, вы можете запустить их и убедиться, что ваши изменения не ломают старый функционал и все работает как и раньше.
При разработке в команде значение это пункта сильно увеличивается.
— Документация. Тесты лучше документации! Документация может быть устаревшей. По тестам, которые успешно проходят, можно понять поведение программы, как различные функции отрабатывают на тех или иных входных данных.
— У проекта, к которому есть тесты фактор автобуса существенно ниже, чем у проекта без тестов.
— Крепкий сон. Если проект запущен в продакшн и кем-то используется, то вы будете спать крепче, если этот проект хорошо протестирован.
Хорошее руководство по написанию тестов с использованием библиотеки pytest:
Введение, Часть 1, Часть 2, Часть 3, Часть 4, Часть 5, Часть 6, Часть 7.
Для того чтобы начать тестировать свой код необязательно читать все приведенные статьи. Достаточно прочесть первые, а потом возвращаться к этому руководству с возникновением новых вопросов при написании тестов к своему коду.
Достоинством этого руководства является то, что в нем рассматриваются не тривиальные примеры, а тестирование полноценного приложения с рассмотрением ситуаций, часто встречающихся в реальной разработке.
#python
Хабр
Python Testing with pytest. Просто, Быстро, Эффективно и Масштабируемо. Предисловие и Ведение
Дальше Систематическое тестирование программного обеспечения, особенно в сообществе Python, часто либо полностью игнорируются или выполняются специальным образо...
Тем, кому было скучно вчера вечером – вы могли послушать в онлайне технический подкаст Радио-Т. Для тех, кто не успел послушать в онлайне, можно слушать все выпуски в офлайне на сайте https://radio-t.com/
Для знакомства с подкастом выпуск получился хорошим — понятным и не сильно нагруженным гиковскими темами.
Рекомендую не ограничиваться только этим выпуском. Подкастинг – в целом удобный формат получения информации. Нет необходимости полноценно выделять на это время. Пока едешь в транспорте, занимаешься домашними делами или спортом, перед сном — можно включать подкаст. А если что-то прослушал, то ничего страшного, это же не книга, где все нужно держать в голове и не уловив предыдущего дальше будет непонятно.
Если начнете слушать другие выпуски, зачастую, обсуждаемые темы будут непонятны и специфичны. Не стоит переживать по этому поводу и переставать слушать. Во-первых вначале всегда так, а во-вторых всегда будут какие-то непонятные темы, и будет повод погуглить или потыкать новую технологию, о которой еще не слышали. В любом случае кругозор будет расширятся, многие вопросы и темы будут на слуху, а в постоянно меняющейся и развивающейся области это очень важно.
У некоторых может возникнуть и другое ощущение, что собрались какие-то чуваки болтают на около технические темы, но количество реально полезной информации слишком мало. И это не повод бросать слушать подкаст. В этом и прелесть подкаста, если бы вас постоянно грузили узкопрофильной и технической информацией, то слушать подкаст так, как я описал выше было бы невозможно и весь смысл такого канала информации пропал бы.
ЗЫ:
Если проникнуться этим подкастом (который вещается уже 15 лет), то это будет не просто информационный канал, а целый сериал со своим сюжетом, героями и шутками прибаутками.
Для знакомства с подкастом выпуск получился хорошим — понятным и не сильно нагруженным гиковскими темами.
Рекомендую не ограничиваться только этим выпуском. Подкастинг – в целом удобный формат получения информации. Нет необходимости полноценно выделять на это время. Пока едешь в транспорте, занимаешься домашними делами или спортом, перед сном — можно включать подкаст. А если что-то прослушал, то ничего страшного, это же не книга, где все нужно держать в голове и не уловив предыдущего дальше будет непонятно.
Если начнете слушать другие выпуски, зачастую, обсуждаемые темы будут непонятны и специфичны. Не стоит переживать по этому поводу и переставать слушать. Во-первых вначале всегда так, а во-вторых всегда будут какие-то непонятные темы, и будет повод погуглить или потыкать новую технологию, о которой еще не слышали. В любом случае кругозор будет расширятся, многие вопросы и темы будут на слуху, а в постоянно меняющейся и развивающейся области это очень важно.
У некоторых может возникнуть и другое ощущение, что собрались какие-то чуваки болтают на около технические темы, но количество реально полезной информации слишком мало. И это не повод бросать слушать подкаст. В этом и прелесть подкаста, если бы вас постоянно грузили узкопрофильной и технической информацией, то слушать подкаст так, как я описал выше было бы невозможно и весь смысл такого канала информации пропал бы.
ЗЫ:
Если проникнуться этим подкастом (который вещается уже 15 лет), то это будет не просто информационный канал, а целый сериал со своим сюжетом, героями и шутками прибаутками.
Radio-T
Радио-Т Подкаст
Еженедельные разговоры на темы хайтек, высоких компьютерных технологий, гаджетов, облаков, программирования и прочего интересного из мира ИТ.
Современный специалист должен быть в курсе большого количества различных технологий и инструментов. Подобное знание не появляется из ниоткуда и не может быть освоено за выходные. Только процесс постоянного поиска информации и решения прикладных задач может приблизить к умению решать любую проблему за счёт представления места обитания потенциальных источников проблем.
Как организовать процесс постоянного поиска информации? Нужно на постоянной основе (в идеале ежедневно, нормально раз в несколько дней, приемлемо еженедельно) потреблять разнородную информацию как в своей профессиональной области, так и в различных соседних. Это существенно расширяет кругозор и повышает вероятность решения новой задачи впоследствии. Не стоит забывать и про не-технические скиллы, куда входят управление людьми, воспитание детей, истории из жизни - это позволит ориентироваться не только в технологиях, но и в жизни.
Неплохим источником информации для постоянного потребления могут быть проверенные телеграм-каналы (следите за bobuk), подкасты (radio-T не дремлет), хабр, hackernews.
На хабре каждый день читай топ-3 статьи за сегодня, еженедельно читай лучшие 20 статей за неделю. При этом смотри не только саму статью. Часто более полезным является чтение комментариев, где сторонние люди любыми способами постараются доказать, что автор не прав. Чужие мнения могут развить твоё критическое мышление - умение видеть проблему в предлагаемом способе решения задачи.
В году чуть больше 50 недель. За год реально прочитать 500 статей при еженедельном чтении десятка. Эти 500 статей и комментарием с обсуждением пополнят копилку решений и обсуждений. Обсуждая с коллегами очередную задачу, можно приобрести опыт обсуждения 500 других задач.
#sudo #edu #devfm
Как организовать процесс постоянного поиска информации? Нужно на постоянной основе (в идеале ежедневно, нормально раз в несколько дней, приемлемо еженедельно) потреблять разнородную информацию как в своей профессиональной области, так и в различных соседних. Это существенно расширяет кругозор и повышает вероятность решения новой задачи впоследствии. Не стоит забывать и про не-технические скиллы, куда входят управление людьми, воспитание детей, истории из жизни - это позволит ориентироваться не только в технологиях, но и в жизни.
Неплохим источником информации для постоянного потребления могут быть проверенные телеграм-каналы (следите за bobuk), подкасты (radio-T не дремлет), хабр, hackernews.
На хабре каждый день читай топ-3 статьи за сегодня, еженедельно читай лучшие 20 статей за неделю. При этом смотри не только саму статью. Часто более полезным является чтение комментариев, где сторонние люди любыми способами постараются доказать, что автор не прав. Чужие мнения могут развить твоё критическое мышление - умение видеть проблему в предлагаемом способе решения задачи.
В году чуть больше 50 недель. За год реально прочитать 500 статей при еженедельном чтении десятка. Эти 500 статей и комментарием с обсуждением пополнят копилку решений и обсуждений. Обсуждая с коллегами очередную задачу, можно приобрести опыт обсуждения 500 других задач.
#sudo #edu #devfm
❤3👍2
Догонка к предыдущему посту.
Источников, откуда можно получать интересную информацию - множество.
Есть известное и хорошее приложение Pocket.
Из плюсов:
— оно позволяет агрегировать интересные статьи из различных источников с любого устройства;
— все интересное из разных источников в одном месте;
— что-то, что считаете важным и полезным можно добавлять в избранное и оно уже не потеряется;
— небольшой, но приятный плюс - чтение в условиях отсутствия интернета.
Важный совет:
Не нужно накапливать материал и думать, что прочтете его потом. В таком случае все превратится некоторую помойку статей, к которым вы никогда уже не вернетесь, но все же будете периодически добавлять туда новый материал, утешая себя мыселью, что обязательно вернетесь к ним.
Таким образом, если статья не прочитана в течение недели, то либо читать ее здесь и сейчас, либо беспощадно удалять. Она уже не будет прочитана. Никогда.
Источников, откуда можно получать интересную информацию - множество.
Есть известное и хорошее приложение Pocket.
Из плюсов:
— оно позволяет агрегировать интересные статьи из различных источников с любого устройства;
— все интересное из разных источников в одном месте;
— что-то, что считаете важным и полезным можно добавлять в избранное и оно уже не потеряется;
— небольшой, но приятный плюс - чтение в условиях отсутствия интернета.
Важный совет:
Не нужно накапливать материал и думать, что прочтете его потом. В таком случае все превратится некоторую помойку статей, к которым вы никогда уже не вернетесь, но все же будете периодически добавлять туда новый материал, утешая себя мыселью, что обязательно вернетесь к ним.
Таким образом, если статья не прочитана в течение недели, то либо читать ее здесь и сейчас, либо беспощадно удалять. Она уже не будет прочитана. Никогда.
Статья — обзор ряда важных терминов и технологий. Статья скомпонована как набор тезисов с пояснениями, после которых - ряд ссылок для углублённого изучения по теме. Тут и про CAP теорему, и про DNS, и CDN, и балансировщик в перемешку с обратным прокси. Дано неплохое введение в микросервисы и виды noSQL баз данных.
Так же не забываем, что сегодня в 23:00 будет онлайн вещание Радио-Т, а статья будет хорошим стартом для понимания ряда вещей, которые там обсуждаются.
#skills
Так же не забываем, что сегодня в 23:00 будет онлайн вещание Радио-Т, а статья будет хорошим стартом для понимания ряда вещей, которые там обсуждаются.
#skills
Хабр
Букварь по дизайну систем (Часть 1 с дополнениями по микросервисам)
Несколько лет назад, для закрытия одного их предметов мне довелось перевести данный букварь. Де-факто этот вариант стал официальным переводом. Но развитию этого перевода мешает, тот факт, что он был...
Перед разработкой чего-то более менее серьезного всегда встает вопрос, как организовать архитектуру. У начинающих разработчиков обычно так: что-то слышал про то, что нужна какая-то архитектура, даже слышал про паттерны и что с ними будет не жизнь, а сказка, но отсутствует конкретное понимание, как все должно быть устроено. Данная тема очень обширна.
Статья является понятным введением в проектирование программных средств. Автор начинает с критериев правильной архитектуры и далее описывает набор практик и подходов, применяя которые ваша архитектура будетудовлетворять критериям просто благоухать.
Так же даются ссылки для более глубокого понимания материала, что очень полезно.
З.Ы. Важно понимать: нельзя начитаться умных книг, статей и сказать, что знаешь, как проектировать программные средства. Понимание, куда запрягать коней появляется только с опытом, с пулом готовых проектов, в которых вы принимали участие или реализовывали самостоятельно.
З.З.Ы. Про паттерны: не стоит начинать свое знакомство с паттернами с такой известной книги как "Банда четырех". Никаких хороших впечатлений о паттернах проектирования у вас не останется.
Статья является понятным введением в проектирование программных средств. Автор начинает с критериев правильной архитектуры и далее описывает набор практик и подходов, применяя которые ваша архитектура будет
Так же даются ссылки для более глубокого понимания материала, что очень полезно.
З.Ы. Важно понимать: нельзя начитаться умных книг, статей и сказать, что знаешь, как проектировать программные средства. Понимание, куда запрягать коней появляется только с опытом, с пулом готовых проектов, в которых вы принимали участие или реализовывали самостоятельно.
З.З.Ы. Про паттерны: не стоит начинать свое знакомство с паттернами с такой известной книги как "Банда четырех". Никаких хороших впечатлений о паттернах проектирования у вас не останется.
Хабр
Создание архитектуры программы или как проектировать табуретку
Взявшись за написание небольшого, но реального и растущего проекта, мы «на собственной шкуре» убедились, насколько важно то, чтобы программа не только хорошо работала, но и была хорошо организована....
Начинающие разработчики часто сталкиваются в интернетах, в разговорах с более опытными коллегами с терминами "паттерн", "паттерн проектирования". После некоторого поиска обнаруживается, что этих самых паттернов превеликое множество, и на этом знакомство с паттернами обычно заканчивается.
Набор паттернов, которые обязательно нужно усвоить:
— Команда;
— Адаптер;
— Посетитель;
— Декоратор;
— Фасад;
— Абстрактная фабрика.
Как усваивать:
1. Прочитайте портянку о паттерне.
2. Разберите пример на любимом языке программирования.
3. Четко сформулируйте для себя тезис, когда этот паттерн можно применять. (В случае возникновения проблемы, паттерн должен возникнуть в голове, как вариант решения проблемы.)
4. Подумайте, в каком из ваших текущих проектов можно применить паттерн. Найдите время и примените паттерн на подходящей части проекта.
З.Ы. На сайте собраны понятные описания паттернов, с примерами на различных языках, с приведением аналогий из жизни для лучшего понимания.
#skills
Набор паттернов, которые обязательно нужно усвоить:
— Команда;
— Адаптер;
— Посетитель;
— Декоратор;
— Фасад;
— Абстрактная фабрика.
Как усваивать:
1. Прочитайте портянку о паттерне.
2. Разберите пример на любимом языке программирования.
3. Четко сформулируйте для себя тезис, когда этот паттерн можно применять. (В случае возникновения проблемы, паттерн должен возникнуть в голове, как вариант решения проблемы.)
4. Подумайте, в каком из ваших текущих проектов можно применить паттерн. Найдите время и примените паттерн на подходящей части проекта.
З.Ы. На сайте собраны понятные описания паттернов, с примерами на различных языках, с приведением аналогий из жизни для лучшего понимания.
#skills
refactoring.guru
Команда
Команда — это поведенческий паттерн проектирования, который превращает запросы в объекты, позволяя передавать их как аргументы при вызове методов, ставить запросы в очередь, логировать их, а также поддерживать отмену операций.
Вдогонку. Стоит обратить внимание на паттерн Синглтон и понять, почему в большинстве случаев - это анти паттерн.
refactoring.guru
Одиночка
Одиночка — это порождающий паттерн проектирования, который гарантирует, что у класса есть только один экземпляр, и предоставляет к нему глобальную точку доступа.
Пятничное развлекательное.
Среди ИТ-тусовки весьма популярен ресурс xkcd, существующий и на английском, и на русском языках. Это множество комиксов совершенно разного содержания, от чисто развлекательных до весьма познавательных (например, как создать стойкий пароль). К каждому комиксу есть небольшое заслуживающее внимание дополнение (в английской версии после наведения на картинку, в русской - просто под картинкой).
На Дзене вышла очаровательная статья про этот ресурс:
https://zen.yandex.ru/media/habr/istoriia-xkcd-5ebcd772d916883d118dee5d
Подборка годного:
сделай мне сендвич https://xkcd.ru/149/
адский тетрис https://xkcd.ru/724/
о вреде goto https://xkcd.ru/292/
компилируется https://xkcd.ru/303/
объяснение heartbleed https://xkcd.ru/1354/
git commits https://xkcd.ru/1296/
#fun #xkcd
Среди ИТ-тусовки весьма популярен ресурс xkcd, существующий и на английском, и на русском языках. Это множество комиксов совершенно разного содержания, от чисто развлекательных до весьма познавательных (например, как создать стойкий пароль). К каждому комиксу есть небольшое заслуживающее внимание дополнение (в английской версии после наведения на картинку, в русской - просто под картинкой).
На Дзене вышла очаровательная статья про этот ресурс:
https://zen.yandex.ru/media/habr/istoriia-xkcd-5ebcd772d916883d118dee5d
Подборка годного:
сделай мне сендвич https://xkcd.ru/149/
адский тетрис https://xkcd.ru/724/
о вреде goto https://xkcd.ru/292/
компилируется https://xkcd.ru/303/
объяснение heartbleed https://xkcd.ru/1354/
git commits https://xkcd.ru/1296/
#fun #xkcd
Дзен | Статьи
История xkcd
Статья автора «Habr.com» в Дзене ✍: 25 января 2003 года Рэндел Манро зарегистрировал доменное имя xkcd.com.