Forwarded from Типичный программист
Шпаргалка: как пошагово решить задачу на собеседовании + советы для подготовки
https://tproger.ru/translations/technical-interview-cheatsheet/
Один программист из Канады попал на стажировку в Google и выложил чек-лист, по которому готовился и проходил техническое интервью. А мы перевели и адаптировали его.
Кроме него в статье есть несколько советов по подготовке. Информация достаточно общая, поэтому её можно применять к любому техническому интервью: хоть в Google, хоть в стартап, хоть для первой стажировки.
#собеседование #советы
https://tproger.ru/translations/technical-interview-cheatsheet/
Один программист из Канады попал на стажировку в Google и выложил чек-лист, по которому готовился и проходил техническое интервью. А мы перевели и адаптировали его.
Кроме него в статье есть несколько советов по подготовке. Информация достаточно общая, поэтому её можно применять к любому техническому интервью: хоть в Google, хоть в стартап, хоть для первой стажировки.
#собеседование #советы
Forwarded from Типичный программист
Паттерны
В одном репозитории собрано 111 паттернов проектирования. На данный момент это самый популярный репозиторий на языке Java, у него почти 50k звёзд.
Для каждого паттерна есть подробное описание и примеры реализации на Java: https://github.com/iluwatar/java-design-patterns
#паттерны #java
В одном репозитории собрано 111 паттернов проектирования. На данный момент это самый популярный репозиторий на языке Java, у него почти 50k звёзд.
Для каждого паттерна есть подробное описание и примеры реализации на Java: https://github.com/iluwatar/java-design-patterns
#паттерны #java
Forwarded from Типичный программист
This media is not supported in your browser
VIEW IN TELEGRAM
Сможете уверенно ответить, как в JavaScript работают функции map, filter, reduce? Создаётся копия исходного массива? А ссылка на исходный массив изменяется?
Даже если вам всё это известно, то всё равно предлагаем посмотреть, как автор этой статьи объяснил и визуализировал работу этих функций. Залипательно: https://tprg.ru/grAG
#javascript
Даже если вам всё это известно, то всё равно предлагаем посмотреть, как автор этой статьи объяснил и визуализировал работу этих функций. Залипательно: https://tprg.ru/grAG
#javascript
Forwarded from Типичный программист
Обзоры законов и принципов, которые часто встречаются на пути разработчиков
Собраны они в этом репозитории: https://solarrust.github.io/hacker-laws
Какие-то из них вы, скорее всего, знаете: например, принцип Парето («20% усилий дают 80% результата») или закон Паркинсона («Работа заполняет всё время, отпущенное на неё»). С другими вы встретитесь впервые: например, с циклом хайпа (да, есть и такой).
Какие-то принципы могут помочь вам писать лучший код, а какие-то заставят задуматься о каких-то более глобальных жизненных вопросах.
Какой принцип или закон вам кажется самым жизненным?
Собраны они в этом репозитории: https://solarrust.github.io/hacker-laws
Какие-то из них вы, скорее всего, знаете: например, принцип Парето («20% усилий дают 80% результата») или закон Паркинсона («Работа заполняет всё время, отпущенное на неё»). С другими вы встретитесь впервые: например, с циклом хайпа (да, есть и такой).
Какие-то принципы могут помочь вам писать лучший код, а какие-то заставят задуматься о каких-то более глобальных жизненных вопросах.
Какой принцип или закон вам кажется самым жизненным?
Forwarded from PythonDigest
Пишем приложение Todo на Flask
https://stackabuse.com/building-a-todo-app-with-flask-in-python/
https://stackabuse.com/building-a-todo-app-with-flask-in-python/
Forwarded from PythonDigest
Пишем Command Line Interfaces с argparse
https://realpython.com/command-line-interfaces-python-argparse/
https://realpython.com/command-line-interfaces-python-argparse/
Forwarded from PythonDigest
Параллельные вычисления на Python без multiprocessing
https://towardsdatascience.com/10x-faster-parallel-python-without-python-multiprocessing-e5017c93cce1
https://towardsdatascience.com/10x-faster-parallel-python-without-python-multiprocessing-e5017c93cce1
Forwarded from PythonDigest
Питон, блэкджек и … игры
https://habr.com/ru/post/455910/?utm_campaign=455910&utm_source=habrahabr&utm_medium=rss
К «Питону» приходят по-разному: кто-то увлекается ИИ, кто-то начинает изучать веб-разработку на «Питоне» взамен уже надоевшего PHP; у меня получилось по-другому – я стал замечать, что этот язык используется довольно часто в современном программировании не только среди энтузиастов, но и в среде крупных компаний. В общем, язык набирает популярность в массах, поэтому я решил к нему «присмотреться», ну, то есть, изучить.
Изучение нового алгоритмического языка, не сказать, что процесс уж очень увлекательный, если ты уже знаком с несколькими… Можно выбрать книгу, можно какой-нибудь онлайн-курс, а можно вообще «ролики-мультики» и … «сиди-читай-изучай». — Скука!
Набрёл я в Сети на самоучитель по «Питону», в принципе, неплохой, но не сказать, что претендующий на полноту изложения синтаксиса и наткнулся там на «Примеры программ». Среди нескольких других, был там один очень любопытный пример, который буквально «повернул время вспять», и я оказался в тех временах, когда «деревья были больше, а трава зеленее»…
https://habr.com/ru/post/455910/?utm_campaign=455910&utm_source=habrahabr&utm_medium=rss
К «Питону» приходят по-разному: кто-то увлекается ИИ, кто-то начинает изучать веб-разработку на «Питоне» взамен уже надоевшего PHP; у меня получилось по-другому – я стал замечать, что этот язык используется довольно часто в современном программировании не только среди энтузиастов, но и в среде крупных компаний. В общем, язык набирает популярность в массах, поэтому я решил к нему «присмотреться», ну, то есть, изучить.
Изучение нового алгоритмического языка, не сказать, что процесс уж очень увлекательный, если ты уже знаком с несколькими… Можно выбрать книгу, можно какой-нибудь онлайн-курс, а можно вообще «ролики-мультики» и … «сиди-читай-изучай». — Скука!
Набрёл я в Сети на самоучитель по «Питону», в принципе, неплохой, но не сказать, что претендующий на полноту изложения синтаксиса и наткнулся там на «Примеры программ». Среди нескольких других, был там один очень любопытный пример, который буквально «повернул время вспять», и я оказался в тех временах, когда «деревья были больше, а трава зеленее»…
Forwarded from PythonDigest
Использование библиотеки Matplotlib. Как делать анимированные графики
https://jenyay.net/Matplotlib/Ion
Анимированные графики в Matplotlib могут создаваться несколькими способами. Первый способ заключается в том, что можно самостоятельно обновлять график через заданный промежуток времени. Два других способа используют классы, производные от класса matplotlib.animation.Animation: FuncAnimation или ArtistAnimation. В данной статье будут рассмотрены все эти способы.
https://jenyay.net/Matplotlib/Ion
Анимированные графики в Matplotlib могут создаваться несколькими способами. Первый способ заключается в том, что можно самостоятельно обновлять график через заданный промежуток времени. Два других способа используют классы, производные от класса matplotlib.animation.Animation: FuncAnimation или ArtistAnimation. В данной статье будут рассмотрены все эти способы.
Forwarded from PythonDigest
Используйте __main__.py
https://habr.com/ru/post/456214/?utm_campaign=456214&utm_source=habrahabr&utm_medium=rss
Зачем нужен __init__.py знает, наверное, любой питонист, но что насчёт __main__.py? Я видел немало проектов либо рабочих, либо на Github, которые не используют это магический файл, хотя могли бы сделать свою жизнь проще. На мой взгляд, __main__.py это лучший способ для взаимодействия с питоновскими модулями, состоящими из нескольких файлов.
https://habr.com/ru/post/456214/?utm_campaign=456214&utm_source=habrahabr&utm_medium=rss
Зачем нужен __init__.py знает, наверное, любой питонист, но что насчёт __main__.py? Я видел немало проектов либо рабочих, либо на Github, которые не используют это магический файл, хотя могли бы сделать свою жизнь проще. На мой взгляд, __main__.py это лучший способ для взаимодействия с питоновскими модулями, состоящими из нескольких файлов.
Forwarded from PythonDigest
Многомерные графики в Python — от трёхмерных и до шестимерных
https://habr.com/ru/post/456282/?utm_campaign=456282&utm_source=habrahabr&utm_medium=rss
Визуализация — важная часть анализа данных, а способность посмотреть на несколько измерений одновременно эту задачу облегчает. В туториале мы будем рисовать графики вплоть до 6 измерений.
Plotly — это питоновская библиотека с открытым исходным кодом для разнообразной визуализации, которая предлагает гораздо больше настроек, чем известные matplotlib и seaborn. Модуль устанавливается как обычно — pip install plotly. Его мы и будем использовать для рисования графиков.
https://habr.com/ru/post/456282/?utm_campaign=456282&utm_source=habrahabr&utm_medium=rss
Визуализация — важная часть анализа данных, а способность посмотреть на несколько измерений одновременно эту задачу облегчает. В туториале мы будем рисовать графики вплоть до 6 измерений.
Plotly — это питоновская библиотека с открытым исходным кодом для разнообразной визуализации, которая предлагает гораздо больше настроек, чем известные matplotlib и seaborn. Модуль устанавливается как обычно — pip install plotly. Его мы и будем использовать для рисования графиков.
Forwarded from PythonDigest
Как опубликовать консольную утилиту на PyPI за 1 минуту
https://habr.com/ru/post/456304/?utm_campaign=456304&utm_source=habrahabr&utm_medium=rss
Разработав консольную утилиту, вы решаетесь опубликовать её на PyPI. Ну правда, что может быть лучше, чем сделать её доступной через pip install? Погуглив, что для этого надо, вы, возможно, наткнётесь на единственный найденный мной пост по теме (https://gehrcke.de/2014/02/distributing-a-python-command-line-application/), который мало того что от 2014 года, так ещё и требует от вас создать кучу папок и файлов для совершенно ненужных (вам) вещей.
Как же решить эту задачу без лишней головной боли в 2019 году? Я уже задавался этим вопросом и поэтому, прочитав тонну документации, создал для вас этот туториал. Вот пошаговая инструкция.
https://habr.com/ru/post/456304/?utm_campaign=456304&utm_source=habrahabr&utm_medium=rss
Разработав консольную утилиту, вы решаетесь опубликовать её на PyPI. Ну правда, что может быть лучше, чем сделать её доступной через pip install? Погуглив, что для этого надо, вы, возможно, наткнётесь на единственный найденный мной пост по теме (https://gehrcke.de/2014/02/distributing-a-python-command-line-application/), который мало того что от 2014 года, так ещё и требует от вас создать кучу папок и файлов для совершенно ненужных (вам) вещей.
Как же решить эту задачу без лишней головной боли в 2019 году? Я уже задавался этим вопросом и поэтому, прочитав тонну документации, создал для вас этот туториал. Вот пошаговая инструкция.
Forwarded from PythonDigest
Dataclasses и attrs: когда и почему
https://webdevblog.ru/dataclasses-i-attrs-kogda-i-pochemu/
В Python 3.7 были представлены dataclasses (https://docs.python.org/3/library/dataclasses.html) (PEP557 (https://www.python.org/dev/peps/pep-0557/)). Dataclasses могут быть удобным способом создания классов, основная цель которых состоит в том, чтобы содержать значения.
Дизайн dataclasses основан на существующей библиотеке attr.s. На самом деле Гинек Шлавак (Hynek Schlawack) является автором attrs и он же помог с написанием PEP557.
https://webdevblog.ru/dataclasses-i-attrs-kogda-i-pochemu/
В Python 3.7 были представлены dataclasses (https://docs.python.org/3/library/dataclasses.html) (PEP557 (https://www.python.org/dev/peps/pep-0557/)). Dataclasses могут быть удобным способом создания классов, основная цель которых состоит в том, чтобы содержать значения.
Дизайн dataclasses основан на существующей библиотеке attr.s. На самом деле Гинек Шлавак (Hynek Schlawack) является автором attrs и он же помог с написанием PEP557.
Forwarded from PythonDigest
Полезные инструменты Python
https://habr.com/ru/post/456624/?utm_campaign=456624&utm_source=habrahabr&utm_medium=rss
Когда вы только начинаете учить Python, кто-то объясняет вам, что вы можете добавить свою папку с исходниками в переменную среды PYTHONPATH и тогда ваш код можно будет импортировать из других директорий. Очень часто объясняющий забывает сказать, что в большинстве случаев – это плохая идея. Некоторые люди узнают это в интернете, другие просто понимают на собственном опыте. Но слишком большое количество людей (особенно неопытные программисты), думают, что других альтернатив быть не может.
Эта статья в основном для них.
https://habr.com/ru/post/456624/?utm_campaign=456624&utm_source=habrahabr&utm_medium=rss
Когда вы только начинаете учить Python, кто-то объясняет вам, что вы можете добавить свою папку с исходниками в переменную среды PYTHONPATH и тогда ваш код можно будет импортировать из других директорий. Очень часто объясняющий забывает сказать, что в большинстве случаев – это плохая идея. Некоторые люди узнают это в интернете, другие просто понимают на собственном опыте. Но слишком большое количество людей (особенно неопытные программисты), думают, что других альтернатив быть не может.
Эта статья в основном для них.
Forwarded from PythonDigest
Как превратить свою аватарку в Telegram в часы
https://habr.com/ru/post/457078/?utm_campaign=457078&utm_source=habrahabr&utm_medium=rss
Недавно сидел я в одном сообществе программистов в Telegram и заметил один очень любопытный профиль. Любопытным было следующее — на главном фото у него было изображено нынешнее время. Мне стало жутко интересно как он этого добился, и я решил во что бы то ни стало написать такую же программу.
https://habr.com/ru/post/457078/?utm_campaign=457078&utm_source=habrahabr&utm_medium=rss
Недавно сидел я в одном сообществе программистов в Telegram и заметил один очень любопытный профиль. Любопытным было следующее — на главном фото у него было изображено нынешнее время. Мне стало жутко интересно как он этого добился, и я решил во что бы то ни стало написать такую же программу.
Forwarded from PythonDigest
10 фич для ускорения анализа данных в Python
https://habr.com/ru/post/457302/?utm_campaign=457302&utm_source=habrahabr&utm_medium=rss
Советы и рекомендации, особенно в программировании, могут быть очень полезны. Маленький шоткат, аддон или хак может сэкономить кучу времени и серьёзно увеличить производительность. Я собрала свои самые любимые и сделала из них эту статью. Какие-то из советов ниже уже известны многим, а какие-то появились совсем недавно. Так или иначе, я уверена, они точно не будут лишними, когда вы в очередной раз приступите к проекту по анализу данных.
https://habr.com/ru/post/457302/?utm_campaign=457302&utm_source=habrahabr&utm_medium=rss
Советы и рекомендации, особенно в программировании, могут быть очень полезны. Маленький шоткат, аддон или хак может сэкономить кучу времени и серьёзно увеличить производительность. Я собрала свои самые любимые и сделала из них эту статью. Какие-то из советов ниже уже известны многим, а какие-то появились совсем недавно. Так или иначе, я уверена, они точно не будут лишними, когда вы в очередной раз приступите к проекту по анализу данных.
Forwarded from PythonDigest
Как использовать в Python лямбда-функции
https://webdevblog.ru/kak-ispolzovat-v-python-lyambda-funkcii/
В Python и других языках, таких как Java, C# и даже C++, в их синтаксис добавлены лямбда-функции, в то время как языки, такие как LISP или семейство языков ML, Haskell, OCaml и F#, используют лямбда-выражения.
Python-лямбды – это маленькие анонимные функции, подчиняющиеся более строгому, но более лаконичному синтаксису, чем обычные функции Python.
https://webdevblog.ru/kak-ispolzovat-v-python-lyambda-funkcii/
В Python и других языках, таких как Java, C# и даже C++, в их синтаксис добавлены лямбда-функции, в то время как языки, такие как LISP или семейство языков ML, Haskell, OCaml и F#, используют лямбда-выражения.
Python-лямбды – это маленькие анонимные функции, подчиняющиеся более строгому, но более лаконичному синтаксису, чем обычные функции Python.
Forwarded from PythonDigest
Форматирование Input, Output в Python
https://realpython.com/python-input-output/
https://realpython.com/python-input-output/
Forwarded from PythonDigest
Реализация целого типа в CPython
https://habr.com/ru/post/455114/?utm_campaign=455114&utm_source=habrahabr&utm_medium=rss
Казалось бы, что можно написать про обычный целочисленный тип? Однако тут не всё так просто и целочисленный тип не такой уж и очевидный.
Если вам интересно, почему x * 2 быстрее x << 1.
https://habr.com/ru/post/455114/?utm_campaign=455114&utm_source=habrahabr&utm_medium=rss
Казалось бы, что можно написать про обычный целочисленный тип? Однако тут не всё так просто и целочисленный тип не такой уж и очевидный.
Если вам интересно, почему x * 2 быстрее x << 1.