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: |

The company maintains that it cannot act against individual or group chats, which are “private amongst their participants,” but it will respond to requests in relation to sticker sets, channels and bots which are publicly available. During the invasion of Ukraine, Pavel Durov has wrestled with this issue a lot more prominently than he has before. Channels like Donbass Insider and Bellum Acta, as reported by Foreign Policy, started pumping out pro-Russian propaganda as the invasion began. So much so that the Ukrainian National Security and Defense Council issued a statement labeling which accounts are Russian-backed. Ukrainian officials, in potential violation of the Geneva Convention, have shared imagery of dead and captured Russian soldiers on the platform. Just days after Russia invaded Ukraine, Durov wrote that Telegram was "increasingly becoming a source of unverified information," and he worried about the app being used to "incite ethnic hatred." Either way, Durov says that he withdrew his resignation but that he was ousted from his company anyway. Subsequently, control of the company was reportedly handed to oligarchs Alisher Usmanov and Igor Sechin, both allegedly close associates of Russian leader Vladimir Putin. Telegram users are able to send files of any type up to 2GB each and access them from any device, with no limit on cloud storage, which has made downloading files more popular on the platform. Since its launch in 2013, Telegram has grown from a simple messaging app to a broadcast network. Its user base isn’t as vast as WhatsApp’s, and its broadcast platform is a fraction the size of Twitter, but it’s nonetheless showing its use. While Telegram has been embroiled in controversy for much of its life, it has become a vital source of communication during the invasion of Ukraine. But, if all of this is new to you, let us explain, dear friends, what on Earth a Telegram is meant to be, and why you should, or should not, need to care.
from ms


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