Notice: file_put_contents(): Write of 7155 bytes failed with errno=28 No space left on device in /var/www/group-telegram/post.php on line 50

Warning: file_put_contents(): Only 8192 of 15347 bytes written, possibly out of free disk space in /var/www/group-telegram/post.php on line 50
Борис опять | Telegram Webview: boris_again/1482 -
Telegram Group & Telegram Channel
# Минимальные знания Software Engineering для Data Scientist 1/3

## Git
Интерактивный туториал
Краткий курс по Git от Github
Git (или другая VCS) каждый день использует любой адекватный программист. Стоит инвестировать время не только в заучивание трех команд, а в понимание принципа работы. К счастью основы изучаются за пару вечеров, а большего и не надо. DS должно быть не сложно понять идею, ведь про графы и деревья вы наверное слышали. Только не используйте никаких GUI клиентов для Git по крайней мере пока учитесь! Например надо понимать разницу между git add и git commit, но GUI клиенты часто заменяют их одной кнопкой.

## Linux
The Linux command line for beginners
Если вы работаете из под Windows, то как можно быстрее бросайте это дело (если у вас уже Mac или Linux, то этот пункт можете пропустить). Считайте, что Python разработки под Windows не бывает. Не умея пользоваться линуксом вы беспомощны. Как слезть с иглы: поставьте себе Ubuntu и работайте только из под нее, а Windows оставьте для игр. Я бы не советовал пользоваться WSL, потому что это полумера, но и это подойдет как крайний вариант. Главное, чтобы вас не пугали фразы уровня “зайди на VPS по ssh по ключу, прокинь симлинк для этой штуки.” Иначе вы в большинстве команд будете тем парнем, которому надо постоянно помогать.

## Библиотеки и зависимости в Python
Python virtual environments: A Primer
Обязательное чтение про менеджмент библиотек и зависимостей в Python. Вы должны быть способны разрабатывать несколько DS проектов с конфликтующими зависимостями (один требует pytorch v1.12, второй v1.4) без использования Anaconda. Так не обязательно делать, но вы должны быть способны. Для вас не должно быть проблемой сделать так, чтобы проект запускался с одинаковыми версиями библиотек у вас, у вашего коллеги и на сервере.

## Практический Python
The Hitchiker’s Guide to Python
Чтение о практическом применении Python. Бесплатная, короткая и по делу написанная книга.

Особенное внимание:
Глава про структуру кода
Содержит очень важную информацию про модули и пакеты в Python (так же см. официальную документацию).
Для закрепления: взять любой свой проект и красиво разбить его на модули.
Глава про стиль кода
Стиль кода это недооцененная (особенно среди DS), но очень важная вещь. От умения писать код зависит, будут ваши коллеги плевать вам в чай или нет. Умение писать читабельный код сэкономит вам уйму времени даже если вы только прототипируете модели и вам никогда не придется поддерживать проекты. Решая Kaggle вы бы скорее хотели искать ошибки в коде или пробовать новые варианты решения?
Прочитали один раз - пишете код лучше, чем большинство DS. Бесплатное преимущество!
Для закрепления: написать любую программу максимально красиво. Достаточно даже задачи с Leetcode. Хороший критерий успеха: вы отложили код на две недели, вернулись и все еще понимаете, что в нем происходит.
Глава про тесты и гайд для pytest
Способность писать тесты отличает дилетанта от программиста. Знание о том, как писать тесты, навсегда меняет подход к написанию любого кода: просто понимаешь, какой код более вероятно содержит скрытые косяки. Минус: паранойя навсегда, потому узнаешь, что весь код без покрытия автотестами сломан. Это очень важно даже если вы только учить модели. Если ваш код невозможно затащить в прод, то вы беспомощны и возможно даже бесполезны.
Для закрепления: покрыть тестами свою программу. Бонусные очки, если вы покрываете тестами ML решение, потому что это довольно нетривиальная задача.

## Читаем код
Узнав про то, что такое модульный и читабельный код, изучаем его экземпляры в дикой природе. Просто читаем, вникаем что и откуда берется, задаем себе вопросы: “почему здесь так?”, “что это такое?”, “зачем это здесь?” Это симуляция ситуации, когда вам нужно работать с кодом коллеги. Только в реальной жизни код не будет хорошим.
Советую исходный код этой небольшой библиотеки для табличек: https://github.com/jazzband/tablib
Более продвинутый уровень, если в библиотеке выше уже все понятно: https://github.com/pallets/flask



group-telegram.com/boris_again/1482
Create:
Last Update:

# Минимальные знания Software Engineering для Data Scientist 1/3

## Git
Интерактивный туториал
Краткий курс по Git от Github
Git (или другая VCS) каждый день использует любой адекватный программист. Стоит инвестировать время не только в заучивание трех команд, а в понимание принципа работы. К счастью основы изучаются за пару вечеров, а большего и не надо. DS должно быть не сложно понять идею, ведь про графы и деревья вы наверное слышали. Только не используйте никаких GUI клиентов для Git по крайней мере пока учитесь! Например надо понимать разницу между git add и git commit, но GUI клиенты часто заменяют их одной кнопкой.

## Linux
The Linux command line for beginners
Если вы работаете из под Windows, то как можно быстрее бросайте это дело (если у вас уже Mac или Linux, то этот пункт можете пропустить). Считайте, что Python разработки под Windows не бывает. Не умея пользоваться линуксом вы беспомощны. Как слезть с иглы: поставьте себе Ubuntu и работайте только из под нее, а Windows оставьте для игр. Я бы не советовал пользоваться WSL, потому что это полумера, но и это подойдет как крайний вариант. Главное, чтобы вас не пугали фразы уровня “зайди на VPS по ssh по ключу, прокинь симлинк для этой штуки.” Иначе вы в большинстве команд будете тем парнем, которому надо постоянно помогать.

## Библиотеки и зависимости в Python
Python virtual environments: A Primer
Обязательное чтение про менеджмент библиотек и зависимостей в Python. Вы должны быть способны разрабатывать несколько DS проектов с конфликтующими зависимостями (один требует pytorch v1.12, второй v1.4) без использования Anaconda. Так не обязательно делать, но вы должны быть способны. Для вас не должно быть проблемой сделать так, чтобы проект запускался с одинаковыми версиями библиотек у вас, у вашего коллеги и на сервере.

## Практический Python
The Hitchiker’s Guide to Python
Чтение о практическом применении Python. Бесплатная, короткая и по делу написанная книга.

Особенное внимание:
Глава про структуру кода
Содержит очень важную информацию про модули и пакеты в Python (так же см. официальную документацию).
Для закрепления: взять любой свой проект и красиво разбить его на модули.
Глава про стиль кода
Стиль кода это недооцененная (особенно среди DS), но очень важная вещь. От умения писать код зависит, будут ваши коллеги плевать вам в чай или нет. Умение писать читабельный код сэкономит вам уйму времени даже если вы только прототипируете модели и вам никогда не придется поддерживать проекты. Решая Kaggle вы бы скорее хотели искать ошибки в коде или пробовать новые варианты решения?
Прочитали один раз - пишете код лучше, чем большинство DS. Бесплатное преимущество!
Для закрепления: написать любую программу максимально красиво. Достаточно даже задачи с Leetcode. Хороший критерий успеха: вы отложили код на две недели, вернулись и все еще понимаете, что в нем происходит.
Глава про тесты и гайд для pytest
Способность писать тесты отличает дилетанта от программиста. Знание о том, как писать тесты, навсегда меняет подход к написанию любого кода: просто понимаешь, какой код более вероятно содержит скрытые косяки. Минус: паранойя навсегда, потому узнаешь, что весь код без покрытия автотестами сломан. Это очень важно даже если вы только учить модели. Если ваш код невозможно затащить в прод, то вы беспомощны и возможно даже бесполезны.
Для закрепления: покрыть тестами свою программу. Бонусные очки, если вы покрываете тестами ML решение, потому что это довольно нетривиальная задача.

## Читаем код
Узнав про то, что такое модульный и читабельный код, изучаем его экземпляры в дикой природе. Просто читаем, вникаем что и откуда берется, задаем себе вопросы: “почему здесь так?”, “что это такое?”, “зачем это здесь?” Это симуляция ситуации, когда вам нужно работать с кодом коллеги. Только в реальной жизни код не будет хорошим.
Советую исходный код этой небольшой библиотеки для табличек: https://github.com/jazzband/tablib
Более продвинутый уровень, если в библиотеке выше уже все понятно: https://github.com/pallets/flask

BY Борис опять


Warning: Undefined variable $i in /var/www/group-telegram/post.php on line 260

Share with your friend now:
group-telegram.com/boris_again/1482

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

Pavel Durov, a billionaire who embraces an all-black wardrobe and is often compared to the character Neo from "the Matrix," funds Telegram through his personal wealth and debt financing. And despite being one of the world's most popular tech companies, Telegram reportedly has only about 30 employees who defer to Durov for most major decisions about the platform. Anastasia Vlasova/Getty Images Perpetrators of these scams will create a public group on Telegram to promote these investment packages that are usually accompanied by fake testimonies and sometimes advertised as being Shariah-compliant. Interested investors will be asked to directly message the representatives to begin investing in the various investment packages offered. "For Telegram, accountability has always been a problem, which is why it was so popular even before the full-scale war with far-right extremists and terrorists from all over the world," she told AFP from her safe house outside the Ukrainian capital. For tech stocks, “the main thing is yields,” Essaye said.
from in


Telegram Борис опять
FROM American